7 #define HTTP_BUF_SIZE 4096
11 struct http_buf *next;
17 struct http_buf *iqueue;
18 struct http_buf *oqueue;
20 struct http_proxy *proxy;
24 Http_Busy // Don't process new HTTP requests while we're busy
28 struct http_request *request;
29 struct http_response *response;
30 struct http_channel *next; // for freelist
33 struct http_proxy // attached to iochan for proxy connection
36 struct http_channel *channel;
37 struct http_buf *oqueue;
45 struct http_header *next;
52 struct http_argument *next;
57 struct http_channel *channel;
58 char http_version[20];
62 struct http_header *headers;
63 struct http_argument *arguments;
70 struct http_channel *channel;
71 struct http_header *headers;
75 void http_set_proxyaddr(char *url, char *baseurl);
76 void http_init(const char *addr);
77 void http_addheader(struct http_response *r,
78 const char *name, const char *value);
79 struct http_header * http_header_append(struct http_channel *ch,
80 struct http_header * hp,
83 char *http_argbyname(struct http_request *r, char *name);
84 char *http_headerbyname(struct http_header *r, char *name);
85 struct http_response *http_create_response(struct http_channel *c);
86 void http_send_response(struct http_channel *c);
87 void urlencode(const char *i, char *o);
92 * indent-tabs-mode: nil
94 * vim: shiftwidth=4 tabstop=8 expandtab