Commits
- Commit:
3c680bddab146e8c8ccf5eba1fec7e1ee978d638
- From:
- Omar Polo <op@omarpolo.com>
- Date:
configless: fixing the case of the implicit "."
I got bitten by the scope visibility rules. After the end of the
block, the path variable is no longer valid, and in fact later
load_vhosts fails to open that (because the buffer gets invalidated)
- Commit:
35744950aa0953bee3035400e8035af844a675ba
- From:
- Omar Polo <op@omarpolo.com>
- Date:
simplify handle_cgi
Now that I got rid of the enum+switch, adding more state is easier.
Before, we used an hack to remember if we had read the CGI reply or
not (c->code = -1).
This introduces a new state, handle_cgi_reply that reads the CGI
script reply, logs it, and only then switches to handle_cgi.
handle_cgi itself is cleaner, now it only reads into c->sbuf and send
what it had red.
We even get, almost for free, the 42 error. If read exists with -1 or
0 from in handle_cgi_reply, we return a proper error to the client.
We can extend this further in the future and also try to validate the
CGI reply (for now we're only looking for a \n).
- Commit:
b06f80cdf43be684bd57f9674917d2479bc0d317
- From:
- Omar Polo <op@omarpolo.com>
- Date:
switch to handle_open_conn right after handshake
So we don't re-enter the handle_handsahke and re-do the loop on
fnmatch etc. This way, once we're successfully past the handshake,
we'll re-enter no handle_open_conn.
- Commit:
92da82858b6b8fe44f34e582967767d7f4d32f4d
- From:
- Omar Polo <op@omarpolo.com>
- Date:
document the DFA
- Commit:
112802ea3116b6e11a70d6060e6e238495498bbc
- From:
- Omar Polo <op@omarpolo.com>
- Date:
client state machine: function pointers instead of enum+switch
- Commit:
1e7591a9220359bc646562b161719d406cbbc267
- From:
- Omar Polo <op@omarpolo.com>
- Date:
parse_err is a const pointer
- Commit:
ad58806e300e61070e425856e746429beb6b4b7b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
drop unused target iri_test
- Commit:
d5f4d615cf243269c528a0c7de0cfe5ca52c4c84
- From:
- Omar Polo <op@omarpolo.com>
- Date:
generate compile_flags for clangd
- Commit:
3e5418099fb2d44e0ffa9c65af66657cb28b466b
- From:
- Omar Polo <op@omarpolo.com>
- Date:
[cgi] always set some variables
- Commit:
ee655e64d757e972d3fa3748b6dc4ade8a829035
- From:
- Omar Polo <op@omarpolo.com>
- Date:
sync CGI section with actual implementation
- Commit:
38f8a798b117968e9ab9fc3cf153c642da92bf92
- From:
- Omar Polo <op@omarpolo.com>
- Date:
mention v1.5
- Commit:
67528c1f82bed7d6626c3be7a68d3cd98b4944f5
- From:
- Omar Polo <op@omarpolo.com>
- Date:
don't add the query to argv
FRC3875 says that if the query does not contain any unecnoded "="
characters, we SHOULD treat the query string as a "search-string",
split in on "+" and add every word to the CGI argv.
In launch_cgi it's too late because iri->query is the *decoded* query!
I have in mind some refactoring around how we decode things, so this
is postponed.
- Commit:
2fafa2d23e5607def335902b7a9d10a9de5247a9
- From:
- Omar Polo <op@omarpolo.com>
- Date:
bring the CGI implementation in par with GLV-1.12556
- Commit:
e17642a7bb0f182c3c6a26c27681d49ca9dce8dc
- From:
- Omar Polo <op@omarpolo.com>
- Date:
require absolute paths in config file
- Commit:
bcf5d929e608a3c61a79f5c021478760db54d271
- From:
- Omar Polo <op@omarpolo.com>
- Date:
ensure absolute paths in config-less mode