| Net-FastCGI documentation | view source | Contained in the Net-FastCGI distribution. |
Net::FastCGI::Constant - FastCGI protocol constants.
FastCGI protocol constants.
Constants can either be imported individually or in sets grouped by tag names. The tag names are:
:commonFCGI_MAX_CONTENT_LENMaximum number of octets that the content component of the record can hold. (65535)
FCGI_HEADER_LENNumber of octets in FCGI_Header. (8)
FCGI_VERSION_1Value for version component of FCGI_Header. (1)
FCGI_NULL_REQUEST_IDValue for request_id component of FCGI_Header. (0)
:typeValues for type component of FCGI_Header.
FCGI_BEGIN_REQUESTFCGI_ABORT_REQUESTFCGI_END_REQUESTFCGI_PARAMSFCGI_STDINFCGI_STDOUTFCGI_STDERRFCGI_DATAFCGI_GET_VALUESFCGI_GET_VALUES_RESULTFCGI_UNKNOWN_TYPEFCGI_MAXTYPE:flagMask for flags component of FCGI_BeginRequestBody.
FCGI_KEEP_CONN:roleValues for role component of FCGI_BeginRequestBody.
FCGI_RESPONDERFCGI_AUTHORIZERFCGI_FILTER:protocol_statusValues for protocol_status component of FCGI_EndRequestBody.
FCGI_REQUEST_COMPLETEFCGI_CANT_MPX_CONNFCGI_OVERLOADEDFCGI_UNKNOWN_ROLE:valueVariable names for FCGI_GET_VALUES / FCGI_GET_VALUES_RESULT records.
FCGI_MAX_CONNSFCGI_MAX_REQSFCGI_MPXS_CONNS:packpack() / unpack() templates
FCGI_Header Octet/ 0 | 1 |
/ | |
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 |
+-----------------+-----------------+
0 | Version | Type |
+-----------------+-----------------+
2 | Request ID |
+-----------------+-----------------+
4 | Content Length |
+-----------------+-----------------+
6 | Padding Length | Reserved |
+-----------------+-----------------+
Total 8 octets
Template: CCnnCx
my ($version, $type, $request_id, $content_length, $padding_length)
= unpack(FCGI_Header, $octets);
FCGI_BeginRequestBody Octet/ 0 | 1 |
/ | |
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 |
+-----------------+-----------------+
0 | Role |
+-----------------+-----------------+
2 | Flags | |
+-----------------+ +
4 | |
+ Reserved +
6 | |
+-----------------+-----------------+
Total 8 octets
Template: nCx5
my ($role, $flags) = unpack(FCGI_BeginRequestBody, $octets);
FCGI_EndRequestBody Octet/ 0 | 1 |
/ | |
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 |
+-----------------+-----------------+
0 | |
+ Application Status +
2 | |
+-----------------+-----------------+
4 | Protocol Status | |
+-----------------+ Reserved +
6 | |
+-----------------+-----------------+
Total 8 octets
Template: NCx3
my ($app_status, $protocol_status)
= unpack(FCGI_EndRequestBody, $octets);
FCGI_UnknownTypeBody Octet/ 0 | 1 |
/ | |
| 0 1 2 3 4 5 6 7 | 0 1 2 3 4 5 6 7 |
+-----------------+-----------------+
0 | Unknown Type | |
+-----------------+ +
2 | |
+ +
4 | Reserved |
+ +
6 | |
+-----------------+-----------------+
Total 8 octets
Template: Cx7
my $unknown_type = unpack(FCGI_UnknownTypeBody, $octets);
:nameArrays containing names of value components. These are read-only.
@FCGI_TYPE_NAMEprint $FCGI_TYPE_NAME[FCGI_BEGIN_REQUEST]; # FCGI_BEGIN_REQUEST
@FCGI_ROLE_NAMEprint $FCGI_ROLE_NAME[FCGI_RESPONDER]; # FCGI_RESPONDER
@FCGI_PROTOCOL_STATUS_NAMEprint $FCGI_PROTOCOL_STATUS_NAME[FCGI_OVERLOADED]; # FCGI_OVERLOADED
Note
It's not safe to assume that exists works for validation purposes, index 0
might be undef.
Use boolean context instead:
($FCGI_TYPE_NAME[$type])
|| die;
None by default. All functions can be exported using the :all tag or individually.
Christian Hansen chansen@cpan.org
Copyright 2008-2010 by Christian Hansen.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
| Net-FastCGI documentation | view source | Contained in the Net-FastCGI distribution. |