HTTP/s parse C library and algorithm development environment.
Go to file
2024-09-04 11:04:08 +02:00
streecmp@ca1293aa8f fix: remove cluttered state machine code 2024-09-03 21:07:52 +02:00
.gitignore feat: implement parsing of headers 2024-09-03 00:03:32 +02:00
.gitmodules feat: implement parsing of headers 2024-09-03 00:03:32 +02:00
Makefile repo: rename and update docs 2024-09-04 11:04:08 +02:00
parslib.c repo: rename and update docs 2024-09-04 11:04:08 +02:00
parslib.h repo: rename and update docs 2024-09-04 11:04:08 +02:00
README repo: rename and update docs 2024-09-04 11:04:08 +02:00
strings.c fix: remove cluttered state machine code 2024-09-03 21:07:52 +02:00

+=============+
|   parslib   |
+=============+

    HTTP/s parse C library and algorithm development
    environment for - my proxy library - proxlib.

    RES: github.com/tinyproxy/tinyproxy
    RES: github.com/nginx/nginx
    RES: git.0xdeadbeer.xyz/0xdeadbeer/proxlib

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);
    void printfpars(struct httpars *pars);

    Library is designed to follow source input unaltering. 
    Which suggests, that it does not directly alter the input
    data or strings while giving users the ability to 
    store the parsed information (struct httpars) either on 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..?