57 Commits

Author SHA1 Message Date
Hugo LAMY
875810c992 merge hugo5 with script cgi tests 2022-08-17 18:26:06 +02:00
Me
1a99c6cc84 merging small fixes andmore telnet tests 2022-08-17 02:51:32 +02:00
lperrey
ccc542f52b Fixed big problem with CGI handling
+ remains somes minors problems
2022-08-17 01:11:20 +02:00
lperrey
4dc70373f8 debug message 2022-08-16 20:58:48 +02:00
Eric LAZO
1b7d388231 a few small fixes here and there, more telnet tests, starting Siege load testing 2022-08-16 20:41:57 +02:00
lperrey
2c6bc096cc WIP CGI monitered by epoll
+ OK, but some errors case need to be lookup
2022-08-16 18:38:58 +02:00
Hugo LAMY
1ed4128afc more script tests
+ add cgi checks for error in script output
+ fix script_path relative to absolute
+ cgi makefile more efficient
2022-08-16 18:24:49 +02:00
LuckyLaszlo
4602844f5a Multiples minors changes (cgi env, comment, ...) 2022-08-16 04:00:33 +02:00
lperrey
a284e400c1 changed client_body_limit (now in KB)
+ multiples little adjusts
2022-08-15 02:14:27 +02:00
Hugo LAMY
a6bfea3b56 Merge branch 'hugo4' 2022-08-15 00:32:47 +02:00
Eric LAZO
21efbef86a better telnet tester, merging 2022-08-14 21:41:46 +02:00
Hugo LAMY
d663a4c7e6 added debug print 2022-08-14 16:17:24 +02:00
LuckyLaszlo
ce0a004d28 Le merge / 20 2022-08-14 06:30:27 +02:00
LuckyLaszlo
84babec82b added multipart upload file,
it works, but need some adjustements,
refactoring and testing
2022-08-14 06:25:06 +02:00
Hugo LAMY
41db4fc12b Merge branch 'hugo4' 2022-08-14 01:10:01 +02:00
Hugo LAMY
a20a5eff27 Merge branch 'master' of bitbucket.org:LuckyLaszlo/webserv 2022-08-14 01:09:25 +02:00
Hugo LAMY
db4c7468cc is_cgi function is back and is working
+ in utils added function eval_file_mode(), it returns http errors codes about file
2022-08-14 01:05:20 +02:00
LuckyLaszlo
b0949615c8 fixed mistake in _read_request()
+ changes to some log output
2022-08-13 19:17:32 +02:00
hugogogo
285f2d049f + in fill_script_path() : scipt_path and script_info are filled, removing leadin dot
+ in _cgi_pos() : check validity of extension if it's only alpha characters
+ severall pbm appears
2022-08-13 14:38:50 +02:00
Me
a69273b88e fixed an autoindex issue, working on uploading files 2022-08-12 23:45:13 +02:00
Eric LAZO
4d395088d0 trying to get submit form to work... 2022-08-12 20:08:49 +02:00
LuckyLaszlo
c7bbf29a1b NPOS macro 2022-08-12 18:16:49 +02:00
LuckyLaszlo
b44acafefe CGI discussion and a little bit of work done 2022-08-12 18:08:39 +02:00
Me
cade79c37f started non hardcoded cgi call 2022-08-12 16:20:50 +02:00
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
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
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
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
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
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
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
hugogogo
e1a68bc3e4 changes var in client 2022-08-08 18:06:41 +02:00
hugogogo
972f52ebc8 client variables are const ref 2022-08-08 15:36:16 +02:00
hugogogo
da1f4b6e37 cgi exec compare with file method 2022-08-08 13:20:06 +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
LuckyLaszlo
8ec1353723 fixed response.append(body) problem.
+ File I/O working but maybe not perfect (it seems complicated to do it with std::filebuf)
+ fixed Content-Type for unknown file extension
2022-08-07 01:38:33 +02:00
hugogogo
63ff42b57d client variables are made const 2022-08-06 19:58:09 +02:00
hugogogo
6f171ec07b wip cgi env variables 2022-08-06 11:34:48 +02:00
LuckyLaszlo
b0df37df60 fix Client uninitialised values 2022-08-06 04:50:19 +02:00