hugogogo
2a70c6b26d
Merge branch 'hugo3'
...
+ script output verification works (field duplicate and status)
+ parsing_message_http :
- the file is deleted
- of the three functions it contained, only one still exist
- 'parse_http_headers' is now in utils
+ changes in utils :
- http headers parsing doesn't change key case itself
- a new function change key case tolower case in map<str, str>
- added split_trim() that perform a split and a trim at once
- resolved pbm in trim
- added print_special to print special char '\r' and '\n'
- del_line became extract_line, because it returns the deleted line
- added get line, that does the same without deleting
- moved http_header in utils, and made it more consistent
+ in Client :
- parse_request is now named parse_request_headers to work with parse body
- private function _parse_request_headers is then now _parse_request_fields
(because it doesn't take care of request first line, but only fields)
- added a debug function 'print_client'
2022-08-12 14:05:11 +02:00
hugogogo
de09c2357c
php newline pbm resolved
2022-08-12 12:00:20 +02:00
hugogogo
c225063361
script output fields is checked for duplicate
2022-08-12 11:45:06 +02:00
LuckyLaszlo
400efbe720
Wip chunked decoding
...
+ Need to test normal body parsing
+ path_is_valid() renamed eval_file_type()
+ replaced atoi with strtol/strtoul
2022-08-12 05:50:00 +02:00
hugogogo
3a58b5d921
wip debug comparison fields output script
2022-08-11 19:42:09 +02:00
hugogogo
a1fff0f8c2
added colors, for print_special
...
+ renamed client's public function parse_request() into parse_request_headers()
2022-08-11 17:46:27 +02:00
hugogogo
ad2b5a629a
correct extract_line to avoid duplicate with erase or substr, and to resolve pbm of returning trailing delim
2022-08-11 17:33:42 +02:00
hugogogo
ff77dfd298
debug new request parsing
2022-08-11 14:50:56 +02:00
LuckyLaszlo
ab0bc2c4c0
added timeout response (status 408)
...
+ added EPOLLERR and EPOLLHUP handling
+ fix root substitution for default "/" location (temp or permanent ?)
+ tested siege a little, seems good
2022-08-11 07:12:13 +02:00
Me
08f6929db9
fixed autoindex
2022-08-11 02:15:40 +02:00
Me
c32fc2c8a2
I really hope this is the last time we fix Location Picker, i think it's good it's pretty elegant, basically set root and location path to never have / at end and that made things easier
2022-08-11 02:01:24 +02:00
hugogogo
27b4f96618
parsing headers is allright now
...
+ adding error codes in readme and in comments in client
2022-08-11 00:41:17 +02:00
Me
0b51d13f13
a few more things for location picker
2022-08-11 00:36:24 +02:00
hugogogo
1d67e6988d
http message parsin wip but really better
2022-08-11 00:28:01 +02:00
hugogogo
11f71ea74f
wip parsing first line http message with new utils functions
2022-08-10 20:27:48 +02:00
hugogogo
9a379c835d
correction of trim in case of str only fill with delim char
...
+ added a new split, that also does trim, to split without counting newlines
2022-08-10 20:01:23 +02:00
LuckyLaszlo
360c27df5f
done root substitution
...
+ autoindex/index adjustement
2022-08-10 19:59:05 +02:00
hugogogo
c7905ebd19
changed del_line_in_str to etract_line
2022-08-10 17:12:28 +02:00
hugogogo
17230ccc42
in cgi exec add save stdin and out
2022-08-10 16:24:24 +02:00
Me
69c1a6f6bf
A Much better way of picking locations
2022-08-10 16:14:21 +02:00
LuckyLaszlo
86f7740984
Moved most request errors check in Client
...
+ bugfix of "Bad file descriptor" due to empty operator=() in Client
+ added a condition in _determine_location_COOP_FIX()
+ udpate memo.txt
+ need fix for index/autoindex (location "/list" dont work)
2022-08-10 07:19:05 +02:00
Me
58f67bf42e
fixed a tiny mistake in location picker
2022-08-10 02:07:17 +02:00
Me
f7f3e42b15
Merge remote-tracking branch 'origin/master' into eric_config_parser
2022-08-10 01:59:39 +02:00
Me
8e90221058
location picker works, needs to be tested more tho
2022-08-10 01:59:10 +02:00
LuckyLaszlo
f393aa46bf
BUG: "Bad file descriptor" in _close_all_clients()
2022-08-09 22:29:35 +02:00
LuckyLaszlo
1eb989a3fd
_determine_location() new version (to complete and test)
2022-08-09 20:47:21 +02:00
Me
56f4cf7e15
Eric notes to self
2022-08-09 20:06:28 +02:00
hugogogo
482a38952e
Merge branch 'hugo2'
...
+ changed the appropriate getters for client
+ moved the functions to parse the http message
(first line, headers, and body)
outside client, in parsing_http_message.cpp
+ resolved some of the throw problems
2022-08-09 15:54:40 +02:00
hugogogo
53a548e314
wip script output verification working
...
+ trim secure pos segfault
+ concat script message with server message
2022-08-09 14:57:05 +02:00
hugogogo
3dad938e3c
add extern function for http message parsing
...
+ wip compare fields server and script
+ g tout cassey
2022-08-09 11:19:46 +02:00
Me
1d3cdef7a6
Merge remote-tracking branch 'origin/master' into eric_config_parser
2022-08-09 02:38:09 +02:00
Me
97c90236b9
cgi_ext, redirect and upload_repo now functional in config, fixed location picker, some cleanup
2022-08-09 02:37:28 +02:00
LuckyLaszlo
643b09c4f7
_request() and _response() refactoring
...
+ Wip redirection (weird behavior)
+ 505 HTTP Version Not Supported
2022-08-09 01:46:59 +02:00
LuckyLaszlo
a44b9b493a
split respone.cpp file
2022-08-08 20:36:01 +02:00
hugogogo
e1a68bc3e4
changes var in client
2022-08-08 18:06:41 +02:00
Me
7fdc81f5f4
a bit messy but merged index and autoindex work
2022-08-08 17:13:55 +02:00
hugogogo
f10931042f
rewrite readme cgi todo list
2022-08-08 16:16:11 +02:00
hugogogo
972f52ebc8
client variables are const ref
2022-08-08 15:36:16 +02:00
Me
0a72778c8c
successful merge?
2022-08-08 15:25:16 +02:00
hugogogo
da1f4b6e37
cgi exec compare with file method
2022-08-08 13:20:06 +02:00
LuckyLaszlo
02cfdf43bc
bad_alloc handling
...
+ map.insert() replace map.operator[] for init, more efficient
2022-08-08 04:24:03 +02:00
Me
9ee7205b95
Index and Autoindex work nicely, standarized way paths for root and location path are stored in config, still needs a little polishing prolly
2022-08-08 02:50:37 +02:00
Me
cf69168a84
some cleanup of config stuff
2022-08-07 22:54:58 +02:00
hugogogo
63365a9067
cgi_script read and write on a string
2022-08-07 22:33:39 +02:00
Me
94852babc6
autoindex is working, a few things to iron out be we well on our way
2022-08-07 22:25:24 +02:00
Me
f777441edf
autoindex in progress but need to check stuff on master branch
2022-08-07 20:37:53 +02:00
LuckyLaszlo
1ccf61bc68
assign server and location to client in _read_request()
2022-08-07 17:37:24 +02:00
hugogogo
7ecfc22c7b
script path is found and fill
2022-08-07 15:51:36 +02:00
hugogogo
e0fd743b5b
key fields headers in map are in lowercase
...
+ getters for this map are case insensitive
+ change request fiel 'path' for 'uri', 'query', and 'abs_path'
2022-08-07 13:07:50 +02:00
LuckyLaszlo
4ab099ee4d
redone _read_request(). Should work with any BUFSIZE.
...
+ WIP in some aspects. Need to adjust parse_request() among others things.
+ update memo.txt
2022-08-07 05:41:01 +02:00