parslib/README
2024-09-04 09:06:42 +02:00

40 lines
1.2 KiB
Plaintext

+================+
| tinyparser |
+================+
HTTP parsing prototype and algorithm development
environment for tinyproxy - my new proxy.
RES: github.com/tinyproxy/tinyproxy
RES: github.com/nginx/nginx
TECHNICALS
int initres(void);
void fretres(void);
int readlin(char **buff, char **buff_lim);
int parshfield(char **offset, int len, /* out */ struct point *hentries);
int parstitle(char *offset, int len, /* out */ struct httitle *titl);
int parsme(char **buff, /* out */ struct httpars *pars);
Library is designed to follow source input unaltering.
Which means, that it does not directly alter the input
data or strings while storing the information of all
parsed results on the stack or as pointers to specific
parts of the source data. This allows to provide it
with input that resides both within the stack or heap.
LEAKS
LEAKS file contains the most recent valgrind memory leaks
dump ran on main.c
LEAKS.TEST.[id] files respectively contain the most recent
valgrind memory leaks dump ran on a test with an id=[id]
TODO
* implement tests
* integrations with tinyproxy..?