Commit graph

12 commits

Author SHA1 Message Date
Jonathan Hodgson
bb62ed3b1f Starts work on https as well as some moving about
I now start the listener in the main.c file rather than proxy given that
I didn't feel proxy was the right place if a normal (non-proxied)
request came in. webserver.{c,h} and proxy.{c,h} had some changes
relating to this.

The config changed slightly - we now create a folder in ~/.config/
called yaip. This is where certificates and so on will be stored along
with the user configuration

I created a helper function to get files inside this directory (it
changes based on xdg_config_home) and updated relevant tests.

In ssl.{c,h} I have started work. If they don't exist, the tool now
creates and stores a key and certificate for the CA that this tool will
need to pretend to be. I still need to write tests for this.
2022-01-20 16:53:35 +00:00
Jonathan Hodgson
6eaad263be Moves some logic out of proxy and into main
Also fixes some segfaults caused by trying to free memory that wasn't
allocated with strdup or malloc etc.

Fixes some tests
2022-01-19 12:56:11 +00:00
Jonathan Hodgson
8a5bfe9b36 Now working for simple, non-encrypted requests
making requests to something like example.com over a non-encrypted
connection now works. Binary files are unlikely to work at the moment
although I haven't tried. Also, non-encrypted doesn't work.

I have also changed a little about how tests work. Requests tests now
display much better.
2022-01-18 21:45:58 +00:00
Jonathan Hodgson
a3a48a841e Work on responses 2022-01-17 14:04:30 +00:00
Jonathan Hodgson
8912994e1d Work on requests 2022-01-17 14:03:34 +00:00
Jonathan Hodgson
0e53f180ad renames some things in config tests 2022-01-10 09:40:34 +00:00
Jonathan Hodgson
48e3092317 Split out some stuff that is shared between request and response
I now have files with the infinitely imaginative names
requestrespons.{c,h,test.c}.
2022-01-10 09:36:18 +00:00
Jonathan Hodgson
0e2b9dae2b Work on requests
This commit adds tests for a request and the implementation.

The first line of a request should now be decoded correctly
2022-01-05 21:12:11 +00:00
Jonathan Hodgson
f392af92c3 Updates how config options are set on command line 2021-12-28 10:00:41 +00:00
Jonathan Hodgson
8bed39700e Adds a test for defaults and fixes bug relating to it 2021-12-28 01:34:50 +00:00
Jonathan Hodgson
e42705280c Add tests for config
I have started writing tests for the config functions. This has resulted
in a few changes to the config code (tests working I guess)

I have also added a special "all" config file which (as the name
suggests) runs all test suites

In the makefile I have added the compiled test files to the clean target
and added targets for building and running tests
2021-12-28 00:28:56 +00:00
Jonathan Hodgson
c046ac37a9 Adds µnit submodule for tests 2021-12-27 21:46:47 +00:00