Proxy C library for HTTP/s protocol
Go to file
Kevin Jerebica 5dcc4c8bf7 proxy: finish re-writing all proxy states
Also fix some new bugs that showed up. Proxying now works with HTTP websites
but only the ones which serve their content through the content-length HTTP
header field
2024-09-12 19:31:01 +02:00
parslib@55835087d3 proxy: finish re-writing all proxy states 2024-09-12 19:31:01 +02:00
.gitignore proxy: add basic title parsing 2024-07-21 22:41:14 +02:00
.gitmodules proxy: begin transition from regex to parslib 2024-09-08 22:00:58 +02:00
Makefile proxy: finish re-writing all proxy states 2024-09-12 19:31:01 +02:00
proxlib proxy: finish re-writing all proxy states 2024-09-12 19:31:01 +02:00
proxlib.c proxy: finish re-writing all proxy states 2024-09-12 19:31:01 +02:00
proxlib.h proxy: finish re-writing all proxy states 2024-09-12 19:31:01 +02:00
README repo: rename library and update docs 2024-09-04 11:10:08 +02:00

+=============+
|   proxlib   |
+=============+

    Proxy C library for HTTP/s protocol 

    RFC: datatracker.ietf.org/doc/html/rfc1945
    RES: cs.princeton.edu/courses/archive/spr13/cos461/assignments-proxy.html
    RES: Beej's Guide to Network Programming - Using Internet Sockets
    RES: en.wikipedia.org/wiki/Proxy_server
    RES: TCP/IP sockets in C - Practical guide for programmers 2nd edition

TECHNICALS 

    Parsing is carried by a sub-library which I wrote named parslib.

TODO

    * Connect with parslib
    * Parse port out of Host header (default_value:80)
    * Implement server message parsing
    * Verify and search for memory leaks
    * More testing, debugging, fixing
    * Implement HTTPS with OpenSSL

COMMITS
    
    Each commit is prefixed with an indicator token of what the change is
    *mostly* about. List of tokens is: 
    
        * init: change initialized the repository
        * repo: change is about the repository in general
        * proxy: change is about the proxy in general
        * logic: change is about proxy logic - parsing, forwarding, ...
        * fix: change is about fixing a bug or TODO