some clean ups and debug messages
[ebb.git] / parser_callbacks.h
blob285a54d46fcdde4138c40eec64b53a0727dbca6a
1 /* Is there a way to get the preprocessor to do this so that this file isn't
2 * so redundant? */
4 void ebb_http_field_cb(void *data, const char *field, size_t flen, const char *value, size_t vlen)
6 ebb_client *client = (ebb_client*)(data);
7 ebb_env_pair *pair = ebb_env_pair_new(field, flen, value, vlen);
8 g_queue_push_head(client->env, pair);
11 void ebb_request_method_cb(void *data, const char *at, size_t length)
13 const char *key = "REQUEST_METHOD";
14 ebb_client *client = (ebb_client*)(data);
15 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
16 g_queue_push_head(client->env, pair);
19 void ebb_request_uri_cb(void *data, const char *at, size_t length)
21 const char *key = "REQUEST_URI";
22 ebb_client *client = (ebb_client*)(data);
23 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
24 g_queue_push_head(client->env, pair);
27 void ebb_fragment_cb(void *data, const char *at, size_t length)
29 const char *key = "FRAGMENT";
30 ebb_client *client = (ebb_client*)(data);
31 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
32 g_queue_push_head(client->env, pair);
35 void ebb_request_path_cb(void *data, const char *at, size_t length)
37 const char *key = "REQUEST_PATH";
38 ebb_client *client = (ebb_client*)(data);
39 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
40 g_queue_push_head(client->env, pair);
43 void ebb_query_string_cb(void *data, const char *at, size_t length)
45 const char *key = "QUERY_STRING";
46 ebb_client *client = (ebb_client*)(data);
47 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
48 g_queue_push_head(client->env, pair);
51 void ebb_http_version_cb(void *data, const char *at, size_t length)
53 const char *key = "HTTP_VERSION";
54 ebb_client *client = (ebb_client*)(data);
55 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
56 g_queue_push_head(client->env, pair);
59 /* TODO: this isn't handled correctly. Browser might send
60 * Expect: 100-continue
61 * Should ebb handle that?
63 void ebb_header_done_cb(void *data, const char *at, size_t length)
65 const char *key = "body";
66 ebb_client *client = (ebb_client*)(data);
67 ebb_env_pair *pair = ebb_env_pair_new(key, strlen(key), at, length);
68 g_queue_push_head(client->env, pair);