NAME
Net::FastCGI::Constant - FastCGI protocol constants.
DESCRIPTION
FastCGI protocol constants.
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
) FCGI_HEADER_LEN
-
Number of octets in
FCGI_Header
. (8
) FCGI_VERSION_1
-
Value for
version
component ofFCGI_Header
. (1
) FCGI_NULL_REQUEST_ID
-
Value for
request_id
component ofFCGI_Header
. (0
)
:type
Values for type
component of FCGI_Header
.
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
.
FCGI_KEEP_CONN
:role
Values for role
component of FCGI_BeginRequestBody
.
FCGI_RESPONDER
FCGI_AUTHORIZER
FCGI_FILTER
:protocol_status
Values for protocol_status
component of 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
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);
: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
.
Use boolean context instead:
($FCGI_TYPE_NAME[$type])
|| die;
EXPORTS
None by default. All functions can be exported using the :all
tag or individually.
SEE ALSO
AUTHOR
Christian Hansen chansen@cpan.org
COPYRIGHT
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.