123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195 |
- #ifndef _LSAPIDEF_H_
- #define _LSAPIDEF_H_
- #include <inttypes.h>
- #if defined (c_plusplus) || defined (__cplusplus)
- extern "C" {
- #endif
- enum
- {
- H_ACCEPT = 0,
- H_ACC_CHARSET,
- H_ACC_ENCODING,
- H_ACC_LANG,
- H_AUTHORIZATION,
- H_CONNECTION,
- H_CONTENT_TYPE,
- H_CONTENT_LENGTH,
- H_COOKIE,
- H_COOKIE2,
- H_HOST,
- H_PRAGMA,
- H_REFERER,
- H_USERAGENT,
- H_CACHE_CTRL,
- H_IF_MODIFIED_SINCE,
- H_IF_MATCH,
- H_IF_NO_MATCH,
- H_IF_RANGE,
- H_IF_UNMOD_SINCE,
- H_KEEP_ALIVE,
- H_RANGE,
- H_X_FORWARDED_FOR,
- H_VIA,
- H_TRANSFER_ENCODING
- };
- #define LSAPI_SOCK_FILENO 0
- #define LSAPI_VERSION_B0 'L'
- #define LSAPI_VERSION_B1 'S'
- #define LSAPI_ENDIAN_LITTLE 0
- #define LSAPI_ENDIAN_BIG 1
- #define LSAPI_ENDIAN_BIT 1
- #if defined(__i386__)||defined( __x86_64 )||defined( __x86_64__ )
- #define LSAPI_ENDIAN LSAPI_ENDIAN_LITTLE
- #else
- #define LSAPI_ENDIAN LSAPI_ENDIAN_BIG
- #endif
- #define LSAPI_BEGIN_REQUEST 1
- #define LSAPI_ABORT_REQUEST 2
- #define LSAPI_RESP_HEADER 3
- #define LSAPI_RESP_STREAM 4
- #define LSAPI_RESP_END 5
- #define LSAPI_STDERR_STREAM 6
- #define LSAPI_REQ_RECEIVED 7
- #define LSAPI_CONN_CLOSE 8
- #define LSAPI_INTERNAL_ERROR 9
- #define LSAPI_MAX_HEADER_LEN 65535
- #define LSAPI_MAX_DATA_PACKET_LEN 16384
- #define LSAPI_RESP_HTTP_HEADER_MAX 32768
- #define LSAPI_PACKET_HEADER_LEN 8
- struct lsapi_packet_header
- {
- char m_versionB0;
- char m_versionB1;
- char m_type;
- char m_flag;
- union
- {
- int32_t m_iLen;
- char m_bytes[4];
- }m_packetLen;
- };
- struct lsapi_req_header
- {
- struct lsapi_packet_header m_pktHeader;
- int32_t m_httpHeaderLen;
- int32_t m_reqBodyLen;
- int32_t m_scriptFileOff;
- int32_t m_scriptNameOff;
- int32_t m_queryStringOff;
- int32_t m_requestMethodOff;
- int32_t m_cntUnknownHeaders;
- int32_t m_cntEnv;
- int32_t m_cntSpecialEnv;
- } ;
- struct lsapi_http_header_index
- {
- uint16_t m_headerLen[H_TRANSFER_ENCODING+1];
- int32_t m_headerOff[H_TRANSFER_ENCODING+1];
- } ;
- struct lsapi_header_offset
- {
- int32_t nameOff;
- int32_t nameLen;
- int32_t valueOff;
- int32_t valueLen;
- } ;
- struct lsapi_resp_info
- {
- int32_t m_cntHeaders;
- int32_t m_status;
- };
- struct lsapi_resp_header
- {
- struct lsapi_packet_header m_pktHeader;
- struct lsapi_resp_info m_respInfo;
- };
- #if defined (c_plusplus) || defined (__cplusplus)
- }
- #endif
- #endif
|