summaryrefslogtreecommitdiff
path: root/ot_http.h
diff options
context:
space:
mode:
Diffstat (limited to 'ot_http.h')
-rw-r--r--ot_http.h18
1 files changed, 11 insertions, 7 deletions
diff --git a/ot_http.h b/ot_http.h
index 965820f..1ccabfd 100644
--- a/ot_http.h
+++ b/ot_http.h
@@ -10,9 +10,8 @@
10#include <sys/types.h> 10#include <sys/types.h>
11#include <sys/uio.h> 11#include <sys/uio.h>
12 12
13/* Libowfat */ 13#include "ot_batch.h"
14#include "iob.h" 14#include "ot_event.h"
15
16#include "ot_buf.h" 15#include "ot_buf.h"
17#include "trackerlogic.h" 16#include "trackerlogic.h"
18 17
@@ -22,22 +21,27 @@ typedef enum {
22 STRUCT_HTTP_FLAG_BZIP2 = 4, 21 STRUCT_HTTP_FLAG_BZIP2 = 4,
23 STRUCT_HTTP_FLAG_ZSTD = 8, 22 STRUCT_HTTP_FLAG_ZSTD = 8,
24 STRUCT_HTTP_FLAG_CHUNKED = 16, 23 STRUCT_HTTP_FLAG_CHUNKED = 16,
25 STRUCT_HTTP_FLAG_CHUNKED_IN_TRANSFER = 32 24 STRUCT_HTTP_FLAG_CHUNKED_IN_TRANSFER = 32,
25 STRUCT_HTTP_FLAG_KEEPALIVE = 64
26} STRUCT_HTTP_FLAG; 26} STRUCT_HTTP_FLAG;
27 27
28struct http_data { 28struct http_data {
29 ot_buf request; 29 ot_buf request;
30 io_batch *batch; 30 int interest; /* EVENT_IN and EVENT_OUT as asked for */
31 size_t batches; 31 ot_batch *batch;
32 ot_ip6 ip; 32 ot_ip6 ip;
33 STRUCT_HTTP_FLAG flag; 33 STRUCT_HTTP_FLAG flag;
34}; 34};
35 35
36/* Add to or drop from what this connection is waiting to be told about */
37void http_interest_add(const int64_t s, struct http_data *cookie, int what);
38void http_interest_drop(const int64_t s, struct http_data *cookie, int what);
39
36ssize_t http_handle_request(const int64_t s, struct ot_workstruct *ws); 40ssize_t http_handle_request(const int64_t s, struct ot_workstruct *ws);
37ssize_t http_sendiovecdata(const int64_t s, struct ot_workstruct *ws, size_t iovec_entries, struct iovec *iovector, int is_partial); 41ssize_t http_sendiovecdata(const int64_t s, struct ot_workstruct *ws, size_t iovec_entries, struct iovec *iovector, int is_partial);
38ssize_t http_issue_error(const int64_t s, struct ot_workstruct *ws, int code); 42ssize_t http_issue_error(const int64_t s, struct ot_workstruct *ws, int code);
39 43
40extern char *g_stats_path; 44extern const char *g_stats_path;
41extern ssize_t g_stats_path_len; 45extern ssize_t g_stats_path_len;
42 46
43#endif 47#endif