7 void split_fields(char *line
, ...)
13 for (char** field
= va_arg(args
, char**); field
!= NULL
;
14 field
= va_arg(args
, char**)) {
17 for (; *c
!= '\t' && *c
!= '\n'; c
++) {
27 int url_decode(char* buffer
)
29 char *c
= buffer
, *o
= buffer
;
34 int count
= sscanf(c
+ 1, "%2hhx", o
);
56 int parse_query_param(char** query
, char** key
, char** value
)
65 bool string_ended
= false;
66 int value_length
= -1;
69 for(c
= *query
; *c
!= '&'; c
++) {
73 } else if (*value
== NULL
&& *c
== '=') {