44 #define APR_WANT_STRFUNC
47 #if APR_HAVE_NETINET_IN_H
48 #include <netinet/in.h>
50 #if APR_HAVE_ARPA_INET_H
51 #include <arpa/inet.h>
54 #define AJP13_DEF_HOST "127.0.0.1"
56 #define AJP13_DEF_PORT 9009
58 #define AJP13_DEF_PORT 8009
62 #define AJP13_HTTPS_INDICATOR "HTTPS"
63 #define AJP13_SSL_PROTOCOL_INDICATOR "SSL_PROTOCOL"
64 #define AJP13_SSL_CLIENT_CERT_INDICATOR "SSL_CLIENT_CERT"
65 #define AJP13_SSL_CIPHER_INDICATOR "SSL_CIPHER"
66 #define AJP13_SSL_SESSION_INDICATOR "SSL_SESSION_ID"
67 #define AJP13_SSL_KEY_SIZE_INDICATOR "SSL_CIPHER_USEKEYSIZE"
69 #ifdef AJP_USE_HTTPD_WRAP
70 #include "httpd_wrap.h"
87 #define AJP_EOVERFLOW (APR_OS_START_USERERR + 1)
89 #define AJP_ETOSMALL (APR_OS_START_USERERR + 2)
91 #define AJP_EINVAL (APR_OS_START_USERERR + 3)
93 #define AJP_EBAD_SIGNATURE (APR_OS_START_USERERR + 4)
95 #define AJP_ETOBIG (APR_OS_START_USERERR + 5)
97 #define AJP_ENO_HEADER (APR_OS_START_USERERR + 6)
99 #define AJP_EBAD_HEADER (APR_OS_START_USERERR + 7)
101 #define AJP_EBAD_MESSAGE (APR_OS_START_USERERR + 8)
103 #define AJP_ELOGFAIL (APR_OS_START_USERERR + 9)
129 #define AJP13_WS_HEADER 0x1234
130 #define AJP_HEADER_LEN 4
131 #define AJP_HEADER_SZ_LEN 2
132 #define AJP_HEADER_SZ 6
133 #define AJP_MSG_BUFFER_SZ 8192
134 #define AJP_MAX_BUFFER_SZ 65536
135 #define AJP13_MAX_SEND_BODY_SZ (AJP_MAX_BUFFER_SZ - AJP_HEADER_SZ)
136 #define AJP_PING_PONG_SZ 128
139 #define CMD_AJP13_FORWARD_REQUEST (unsigned char)2
141 #define CMD_AJP13_SEND_BODY_CHUNK (unsigned char)3
143 #define CMD_AJP13_SEND_HEADERS (unsigned char)4
145 #define CMD_AJP13_END_RESPONSE (unsigned char)5
147 #define CMD_AJP13_GET_BODY_CHUNK (unsigned char)6
149 #define CMD_AJP13_SHUTDOWN (unsigned char)7
151 #define CMD_AJP13_PING (unsigned char)8
153 #define CMD_AJP13_CPONG (unsigned char)9
155 #define CMD_AJP13_CPING (unsigned char)10
239 #define ajp_msg_append_string(m, v) ajp_msg_append_string_ex(m, v, 1)
244 #define ajp_msg_append_string_ascii(m, v) ajp_msg_append_string_ex(m, v, 0)
APR Platform Definitions.
APR-UTIL Buckets/Bucket Brigades.
APR general purpose library routines.
APR Versioning Interface.
APR Standard Headers Support.
apr_status_t ajp_send_header(apr_socket_t *sock, request_rec *r, apr_size_t buffsize, apr_uri_t *uri, const char *secret)
apr_status_t ajp_msg_peek_uint8(ajp_msg_t *msg, apr_byte_t *rvalue)
apr_status_t ajp_parse_reuse(request_rec *r, ajp_msg_t *msg, apr_byte_t *reuse)
int ajp_parse_type(request_rec *r, ajp_msg_t *msg)
apr_status_t ajp_msg_get_uint32(ajp_msg_t *msg, apr_uint32_t *rvalue)
apr_status_t ajp_parse_data(request_rec *r, ajp_msg_t *msg, apr_uint16_t *len, char **ptr)
apr_status_t ajp_msg_create(apr_pool_t *pool, apr_size_t size, ajp_msg_t **rmsg)
apr_status_t ajp_alloc_data_msg(apr_pool_t *pool, char **ptr, apr_size_t *len, ajp_msg_t **msg)
apr_status_t ajp_msg_append_uint8(ajp_msg_t *msg, apr_byte_t value)
apr_status_t ajp_msg_get_bytes(ajp_msg_t *msg, apr_byte_t **rvalue, apr_size_t *rvalue_len)
apr_status_t ajp_msg_dump(apr_pool_t *pool, ajp_msg_t *msg, char *err, apr_size_t count, char **buf)
apr_status_t ajp_handle_cping_cpong(apr_socket_t *sock, request_rec *r, apr_interval_time_t timeout)
apr_status_t ajp_msg_reuse(ajp_msg_t *msg)
apr_status_t ajp_msg_peek_uint16(ajp_msg_t *msg, apr_uint16_t *rvalue)
apr_status_t ajp_msg_check_header(ajp_msg_t *msg, apr_size_t *len)
apr_status_t ajp_msg_log(request_rec *r, ajp_msg_t *msg, char *err)
apr_status_t ajp_msg_get_string(ajp_msg_t *msg, const char **rvalue)
apr_status_t ajp_msg_serialize_ping(ajp_msg_t *msg)
apr_status_t ajp_msg_serialize_cping(ajp_msg_t *msg)
apr_status_t ajp_msg_append_uint32(ajp_msg_t *msg, apr_uint32_t value)
apr_status_t ajp_ilink_receive(apr_socket_t *sock, ajp_msg_t *msg)
const char * ajp_type_str(int type)
apr_status_t ajp_msg_get_uint8(ajp_msg_t *msg, apr_byte_t *rvalue)
apr_status_t ajp_send_data_msg(apr_socket_t *sock, ajp_msg_t *msg, apr_size_t len)
apr_status_t ajp_msg_copy(ajp_msg_t *smsg, ajp_msg_t *dmsg)
apr_status_t ajp_msg_append_bytes(ajp_msg_t *msg, const apr_byte_t *value, apr_size_t valuelen)
apr_status_t ajp_msg_reset(ajp_msg_t *msg)
apr_status_t ajp_msg_append_uint16(ajp_msg_t *msg, apr_uint16_t value)
apr_status_t ajp_msg_end(ajp_msg_t *msg)
apr_status_t ajp_msg_get_uint16(ajp_msg_t *msg, apr_uint16_t *rvalue)
apr_status_t ajp_ilink_send(apr_socket_t *sock, ajp_msg_t *msg)
apr_status_t ajp_parse_header(request_rec *r, proxy_dir_conf *conf, ajp_msg_t *msg)
apr_status_t ajp_msg_append_string_ex(ajp_msg_t *msg, const char *value, int convert)
apr_status_t ajp_read_header(apr_socket_t *sock, request_rec *r, apr_size_t buffsize, ajp_msg_t **msg)
dav_buffer apr_size_t size
Definition: mod_dav.h:461
request_rec * r
Definition: mod_dav.h:518
apr_bucket_brigade request_rec apr_pool_t * pool
Definition: mod_dav.h:557
const char const char * uri
Definition: mod_dav.h:631
dav_error * err
Definition: mod_dav.h:203
proxy_worker proxy_server_conf * conf
Definition: mod_proxy.h:657
int apr_status_t
Definition: apr_errno.h:44
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
apr_int64_t apr_interval_time_t
Definition: apr_time.h:55
Proxy Extension Module for Apache.
apr_size_t header_len
Definition: ajp.h:115
apr_size_t max_size
Definition: ajp.h:123
apr_byte_t * buf
Definition: ajp.h:113
apr_size_t len
Definition: ajp.h:117
int server_side
Definition: ajp.h:121
apr_size_t pos
Definition: ajp.h:119
Definition: apr_arch_networkio.h:37
Definition: mod_proxy.h:214
A structure that represents the current request.
Definition: httpd.h:856
Utilities for EBCDIC conversion.