10 #ifndef HTTP_INTERNAL_H_INCLUDED_
11 #define HTTP_INTERNAL_H_INCLUDED_
14 #include "util-internal.h"
15 #include "defer-internal.h"
17 #define HTTP_CONNECT_TIMEOUT 45
18 #define HTTP_WRITE_TIMEOUT 50
19 #define HTTP_READ_TIMEOUT 50
21 enum message_read_status {
23 MORE_DATA_EXPECTED = 0,
25 REQUEST_CANCELED = -2,
34 #define EVHTTP_REQ_UNKNOWN_ (1<<15)
36 enum evhttp_connection_state {
40 EVCON_READING_FIRSTLINE,
42 EVCON_READING_HEADERS,
44 EVCON_READING_TRAILER,
59 struct event retry_ev;
62 ev_uint16_t bind_port;
67 size_t max_headers_size;
68 ev_uint64_t max_body_size;
71 #define EVHTTP_CON_INCOMING 0x0001
72 #define EVHTTP_CON_OUTGOING 0x0002
73 #define EVHTTP_CON_CLOSEDETECT 0x0004
75 #define EVHTTP_CON_AUTOFREE EVHTTP_CON_PUBLIC_FLAGS_END
78 #define EVHTTP_CON_READING_ERROR (EVHTTP_CON_AUTOFREE << 1)
80 struct timeval timeout;
83 struct timeval initial_retry_timeout;
87 enum evhttp_connection_state state;
90 struct evhttp *http_server;
136 TAILQ_ENTRY(
evhttp) next_vhost;
141 TAILQ_HEAD(httpcbq,
evhttp_cb) callbacks;
144 struct evconq connections;
146 TAILQ_HEAD(vhostsq,
evhttp) virtualhosts;
153 struct timeval timeout;
155 size_t default_max_headers_size;
156 ev_uint64_t default_max_body_size;
158 const char *default_content_type;
162 ev_uint16_t allowed_methods;
188 enum message_read_status;
199 void evhttp_response_code_(
struct evhttp_request *,
int,
const char *);
203 int evhttp_decode_uri_internal(
const char *uri,
size_t length,
204 char *ret,
int decode_plus);
evhttp_request_error
Definition: http.h:574
Definition: bufferevent_struct.h:70
Definition: evbuffer-internal.h:80
Definition: listener.c:76
Definition: event-internal.h:208
Definition: event_struct.h:107
Definition: event_struct.h:123
Definition: http-internal.h:121
Definition: http-internal.h:108
Definition: http-internal.h:51
Definition: http_struct.h:57
Definition: http-internal.h:128
Definition: http-internal.h:134
#define evutil_socket_t
Definition: util.h:310