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:
:common
FCGI_MAX_CONTENT_LEN
Maximum number of octets that the content component of the record can hold. (65535)
65535
FCGI_HEADER_LEN
Number of octets in FCGI_Header. (8)
FCGI_Header
8
FCGI_VERSION_1
Value for version component of FCGI_Header. (1)
version
1
FCGI_NULL_REQUEST_ID
Value for request_id component of FCGI_Header. (0)
request_id
0
:type
Values for type component of FCGI_Header.
type
FCGI_BEGIN_REQUEST
FCGI_ABORT_REQUEST
FCGI_END_REQUEST
FCGI_PARAMS
FCGI_STDIN
FCGI_STDOUT
FCGI_STDERR
FCGI_DATA
FCGI_GET_VALUES
FCGI_GET_VALUES_RESULT
FCGI_UNKNOWN_TYPE
FCGI_MAXTYPE
:flag
Mask for flags component of FCGI_BeginRequestBody.
flags
FCGI_BeginRequestBody
FCGI_KEEP_CONN
:role
Values for role component of FCGI_BeginRequestBody.
role
FCGI_RESPONDER
FCGI_AUTHORIZER
FCGI_FILTER
:protocol_status
Values for protocol_status component of FCGI_EndRequestBody.
protocol_status
FCGI_EndRequestBody
FCGI_REQUEST_COMPLETE
FCGI_CANT_MPX_CONN
FCGI_OVERLOADED
FCGI_UNKNOWN_ROLE
:value
Variable names for FCGI_GET_VALUES / FCGI_GET_VALUES_RESULT records.
FCGI_MAX_CONNS
FCGI_MAX_REQS
FCGI_MPXS_CONNS
:pack
pack() / unpack() templates
pack()
unpack()
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);
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);
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);
:name
Arrays containing names of value components. These are read-only.
@FCGI_TYPE_NAME
print $FCGI_TYPE_NAME[FCGI_BEGIN_REQUEST]; # FCGI_BEGIN_REQUEST
@FCGI_ROLE_NAME
print $FCGI_ROLE_NAME[FCGI_RESPONDER]; # FCGI_RESPONDER
@FCGI_PROTOCOL_STATUS_NAME
print $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.
exists
undef
Use boolean context instead:
($FCGI_TYPE_NAME[$type]) || die;
None by default. All functions can be exported using the :all tag or individually.
:all
Christian Hansen chansen@cpan.org
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.
To install Net::FastCGI, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Net::FastCGI
CPAN shell
perl -MCPAN -e shell install Net::FastCGI
For more information on module installation, please visit the detailed CPAN module installation guide.