2 FCGI_LISTENSOCK_FILENO
= 0
5 # unsigned char version; -> B
6 # unsigned char type; -> B
7 # unsigned char requestIdB1; -> H
8 # unsigned char requestIdB0;
9 # unsigned char contentLengthB1; -> H
10 # unsigned char contentLengthB0;
11 # unsigned char paddingLength; -> B
12 # unsigned char reserved;
14 FCGI_Header
= "!BBHHBx"
16 # While not part of the official spec, the definition of the header implies it
17 # since contentLength is only 2 bytes, no record can describe more than that much data
18 FCGI_MAX_WRITE
= 65535
24 FCGI_BEGIN_REQUEST
= 1
25 FCGI_ABORT_REQUEST
= 2
33 FCGI_GET_VALUES_RESULT
= 10
34 FCGI_UNKNOWN_TYPE
= 11
35 FCGI_MAXTYPE
= (FCGI_UNKNOWN_TYPE
)
37 FCGI_NULL_REQUEST_ID
= 0
40 # unsigned char roleB1;
41 # unsigned char roleB0;
42 # unsigned char flags;
43 # unsigned char reserved[5];
45 FCGI_BeginRequestBody
= "!Hbxxxxx"
49 #FCGI_BeginRequestBody body;
51 FCGI_BeginRequestRecord
= FCGI_Header
+ FCGI_BeginRequestBody
61 #unsigned char appStatusB3;
62 #unsigned char appStatusB2;
63 #unsigned char appStatusB1;
64 #unsigned char appStatusB0;
65 #unsigned char protocolStatus;
66 #unsigned char reserved[3];
68 FCGI_EndRequestBody
= "!LBxxx"
72 # FCGI_EndRequestBody body;
74 FCGI_EndRequestRecord
= FCGI_Header
+ FCGI_EndRequestBody
76 FCGI_REQUEST_COMPLETE
= 0
77 FCGI_CANT_MPX_CONN
= 1
81 FCGI_MAX_CONNS
= "FCGI_MAX_CONNS"
82 FCGI_MAX_REQS
= "FCGI_MAX_REQS"
83 FCGI_MPXS_CONNS
= "FCGI_MPXS_CONNS"
87 # unsigned char reserved[7];
89 FCGI_UnknownTypeBody
= "!Bxxxxxxx"
93 #FCGI_UnknownTypeBody body;
95 FCGI_UnknownTypeRecord
= FCGI_Header
+ FCGI_UnknownTypeBody