Remove parameter client_num from fastcgi_init()

This commit is contained in:
2023-01-02 20:11:28 +01:00
parent fc9538fa6d
commit 24cb993cb8
3 changed files with 6 additions and 13 deletions

View File

@ -53,15 +53,9 @@ char *fastcgi_add_param(char *buf, const char *key, const char *value) {
return ptr;
}
int fastcgi_init(fastcgi_cnx_t *conn, int mode, unsigned int client_num, unsigned int req_num, const sock *client, const http_req *req, const http_uri *uri) {
unsigned short req_id = (client_num & 0xFFF) << 4;
if (client_num == 0) {
req_id |= (req_num + 1) & 0xF;
} else {
req_id |= req_num & 0xF;
}
int fastcgi_init(fastcgi_cnx_t *conn, int mode, unsigned int req_num, const sock *client, const http_req *req, const http_uri *uri) {
conn->mode = mode;
conn->req_id = req_id;
conn->req_id = (req_num + 1) & 0xFFFF;
conn->out_buf = NULL;
conn->out_off = 0;
conn->webroot = uri->webroot;
@ -87,8 +81,8 @@ int fastcgi_init(fastcgi_cnx_t *conn, int mode, unsigned int client_num, unsigne
FCGI_Header header = {
.version = FCGI_VERSION_1,
.requestIdB1 = req_id >> 8,
.requestIdB0 = req_id & 0xFF,
.requestIdB1 = conn->req_id >> 8,
.requestIdB0 = conn->req_id & 0xFF,
.paddingLength = 0,
.reserved = 0
};

View File

@ -42,8 +42,7 @@ typedef struct {
char *fastcgi_add_param(char *buf, const char *key, const char *value);
int fastcgi_init(fastcgi_cnx_t *conn, int mode, unsigned int client_num, unsigned int req_num, const sock *client,
const http_req *req, const http_uri *uri);
int fastcgi_init(fastcgi_cnx_t *conn, int mode, unsigned int req_num, const sock *client, const http_req *req, const http_uri *uri);
int fastcgi_close_stdin(fastcgi_cnx_t *conn);

View File

@ -62,7 +62,7 @@ static int fastcgi_handler_1(client_ctx_t *ctx, fastcgi_cnx_t *fcgi_cnx) {
http_add_header_field(&res->hdr, "Last-Modified", last_modified);
res->status = http_get_status(200);
if (fastcgi_init(fcgi_cnx, mode, 0 /* TODO */, ctx->req_num, client, req, uri) != 0) {
if (fastcgi_init(fcgi_cnx, mode, ctx->req_num, client, req, uri) != 0) {
res->status = http_get_status(503);
sprintf(err_msg, "Unable to communicate with FastCGI socket.");
return 2;