blob: a302d613cefb12a52b696794d4f08a0c6905802e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#pragma once
struct span
{
int start;
int length;
};
struct header
{
struct span name;
struct span value;
};
struct request
{
int (* step)(struct request *);
char * data;
int length;
int position;
struct span method;
struct span path;
struct span version;
struct header * headerv;
int headerc;
struct span body;
};
struct request * new_request(void);
void free_request(struct request *);
int parse_request(int, struct request **);
int parse_step_method(struct request *);
int parse_step_path(struct request *);
int parse_step_version(struct request *);
int parse_step_header_name(struct request *);
int parse_step_header_value(struct request *);
|