From 5aabeb6b469101ab1dbda03e36cb7105cb39e0c5 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Tue, 2 Aug 2022 14:26:07 +0200 Subject: [PATCH 01/11] removed useless files + MethodType renamed to http_method, and moved to utils.hpp + operator= overload for Client moved to Client.cpp --- Makefile | 3 +- srcs/Client.cpp | 11 + srcs/ConfigParser.cpp | 6 +- srcs/ConfigParser.hpp | 7 +- srcs/ConfigParserUtils.cpp | 2 +- srcs/LocationConfig.hpp | 8 +- srcs/MethodType.hpp | 15 - srcs/Server.hpp | 21 - srcs/ServerConfig.hpp | 4 +- srcs/Webserv_hugo.cpp | 447 ------------------ srcs/ft_itoa.cpp | 13 - srcs/utils.hpp | 8 + srcs/{ => webserv}/Webserv.hpp | 20 - srcs/webserv/response.cpp | 2 +- srcs/webserv/run_loop.cpp | 8 - website/index.html | 11 - www/index.html | 15 +- .../rfc2119_sigabrt.html => www/rfc2119.html | 0 {website => www}/rfc2119_no_link.html | 0 19 files changed, 39 insertions(+), 562 deletions(-) delete mode 100644 srcs/MethodType.hpp delete mode 100644 srcs/Server.hpp delete mode 100644 srcs/Webserv_hugo.cpp delete mode 100644 srcs/ft_itoa.cpp rename srcs/{ => webserv}/Webserv.hpp (91%) delete mode 100644 website/index.html rename website/rfc2119_sigabrt.html => www/rfc2119.html (100%) rename {website => www}/rfc2119_no_link.html (100%) diff --git a/Makefile b/Makefile index a775cd8..221d18b 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,8 @@ CXXFLAGS += -MMD -MP #header dependencie VPATH = $(SRCS_D) -HEADERS_D = srcs +HEADERS_D = srcs \ + srcs/webserv SRCS_D = srcs \ srcs/webserv diff --git a/srcs/Client.cpp b/srcs/Client.cpp index e6c6f39..db3e2c8 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -113,4 +113,15 @@ void Client::_parse_request_body( size_t pos ) _request.body = body; } +/********************************************* + * OVERLOAD + *********************************************/ +bool operator==(const Client& lhs, const Client& rhs) + { return lhs.fd == rhs.fd; } + +bool operator==(const Client& lhs, int fd) + { return lhs.fd == fd; } + +bool operator==(int fd, const Client& rhs) + { return fd == rhs.fd; } diff --git a/srcs/ConfigParser.cpp b/srcs/ConfigParser.cpp index ad9257b..c63326b 100644 --- a/srcs/ConfigParser.cpp +++ b/srcs/ConfigParser.cpp @@ -6,7 +6,7 @@ /* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/13 22:11:17 by me #+# #+# */ -/* Updated: 2022/07/31 13:18:14 by simplonco ### ########.fr */ +/* Updated: 2022/08/02 14:05:03 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ @@ -262,7 +262,7 @@ void ConfigParser::_set_server_values(ServerConfig *server, \ { for (unsigned long i = 0; i != tmp_val.size(); i++) { - MethodType m = _str_to_method_type(tmp_val[i]); + http_method m = _str_to_method_type(tmp_val[i]); if (m == 3) throw std::invalid_argument("not a valid method"); server->allow_methods.push_back(m); @@ -347,7 +347,7 @@ void ConfigParser::_set_location_values(LocationConfig *location, \ { for (unsigned long i = 0; i != tmp_val.size(); i++) { - MethodType m = _str_to_method_type(tmp_val[i]); + http_method m = _str_to_method_type(tmp_val[i]); if (m == 3) throw std::invalid_argument("not a valid method"); location->allow_methods.push_back(m); diff --git a/srcs/ConfigParser.hpp b/srcs/ConfigParser.hpp index 9ae1577..119e043 100644 --- a/srcs/ConfigParser.hpp +++ b/srcs/ConfigParser.hpp @@ -3,10 +3,10 @@ /* ::: :::::::: */ /* ConfigParser.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: me +#+ +:+ +#+ */ +/* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/11 23:01:41 by me #+# #+# */ -/* Updated: 2022/07/27 19:27:57 by me ### ########.fr */ +/* Updated: 2022/08/02 14:05:30 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ @@ -15,7 +15,6 @@ # include "ServerConfig.hpp" # include "LocationConfig.hpp" -# include "MethodType.hpp" # include "utils.hpp" # include @@ -77,7 +76,7 @@ private: // why static? it's an enum... - static MethodType _str_to_method_type(std::string str); + static http_method _str_to_method_type(std::string str); diff --git a/srcs/ConfigParserUtils.cpp b/srcs/ConfigParserUtils.cpp index 861ae83..c9e483c 100644 --- a/srcs/ConfigParserUtils.cpp +++ b/srcs/ConfigParserUtils.cpp @@ -83,7 +83,7 @@ std::string ConfigParser::_get_rest_of_line(size_t *curr) } -MethodType ConfigParser::_str_to_method_type(std::string str) +http_method ConfigParser::_str_to_method_type(std::string str) { if (str == "GET") return GET; diff --git a/srcs/LocationConfig.hpp b/srcs/LocationConfig.hpp index 2a077f6..6db5d58 100644 --- a/srcs/LocationConfig.hpp +++ b/srcs/LocationConfig.hpp @@ -3,18 +3,16 @@ /* ::: :::::::: */ /* LocationConfig.hpp :+: :+: :+: */ /* +:+ +:+ +:+ */ -/* By: me +#+ +:+ +#+ */ +/* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/23 16:08:00 by me #+# #+# */ -/* Updated: 2022/07/25 20:09:48 by me ### ########.fr */ +/* Updated: 2022/08/02 14:06:07 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ #ifndef LOCATIONCONFIG_HPP # define LOCATIONCONFIG_HPP -# include "MethodType.hpp" - # include # include # include @@ -31,7 +29,7 @@ public: int client_body_limit; std::string root; std::vector index; - std::vector allow_methods; + std::vector allow_methods; std::map cgi_info; // wait if i can call several times, shouldn't it be a map? diff --git a/srcs/MethodType.hpp b/srcs/MethodType.hpp deleted file mode 100644 index 9c815f5..0000000 --- a/srcs/MethodType.hpp +++ /dev/null @@ -1,15 +0,0 @@ - - -#ifndef METHODTYPE_HPP -# define METHODTYPE_HPP - -enum MethodType -{ - GET, - POST, - DELETE, - INVALID, -}; - - -#endif diff --git a/srcs/Server.hpp b/srcs/Server.hpp deleted file mode 100644 index 7fcb4d9..0000000 --- a/srcs/Server.hpp +++ /dev/null @@ -1,21 +0,0 @@ - -#ifndef SERVER_HPP -# define SERVER_HPP - -# include -# include - -class Server -{ - public: - // Server(Placeholder); - // Server(); - // Server(Server const &src); - // ~Server(); - // Server &operator=(Server const &rhs); - - private: - -}; - -#endif diff --git a/srcs/ServerConfig.hpp b/srcs/ServerConfig.hpp index ce49255..dc658da 100644 --- a/srcs/ServerConfig.hpp +++ b/srcs/ServerConfig.hpp @@ -2,7 +2,7 @@ #ifndef SERVERCONFIG_HPP # define SERVERCONFIG_HPP -# include "MethodType.hpp" +# include "utils.hpp" # include "LocationConfig.hpp" # include @@ -42,7 +42,7 @@ public: // i'm tempted to do something diff for storing method types... // fuck it, you can only call allow_methods once in Server // once more in each location. - std::vector allow_methods; + std::vector allow_methods; std::vector locations; diff --git a/srcs/Webserv_hugo.cpp b/srcs/Webserv_hugo.cpp deleted file mode 100644 index e373ffa..0000000 --- a/srcs/Webserv_hugo.cpp +++ /dev/null @@ -1,447 +0,0 @@ - -#include "Webserv.hpp" - -int g_last_signal; -bool g_run; -void signal_handler(int signum) -{ - g_last_signal = signum; -} - -Webserv::Webserv() -{ - std::cerr << "Server init\n"; - - _epfd = ::epoll_create1(0); // (EPOLL_CLOEXEC) for CGI fork ? - if (_epfd == -1) - { - std::perror("err epoll_create1()"); - throw std::runtime_error("Epoll init"); - } - - std::signal(SIGPIPE, signal_handler); - std::signal(SIGINT, signal_handler); -} - -/* Webserv::Webserv(Webserv const &src) -{ - -} */ - -Webserv::~Webserv() -{ - close(_socket_fd); - close(_epfd); - _close_all_clients(); - std::cerr << "Server destroyed\n"; -} - -/* Webserv & Webserv::operator=(Webserv const &rhs) -{ - -} */ - - /////////////// - // Functions // - -void Webserv::init_virtual_servers() // ADD config param -{ - _socket_fd = ::socket(AF_INET, SOCK_STREAM | SOCK_NONBLOCK, 0); // (SOCK_CLOEXEC) for CGI fork ? - if (_socket_fd == -1) - { - std::perror("err socket()"); - throw std::runtime_error("Socket init"); - } - // HUGO ADD - // allow socket descriptor to be reuseable - int on = 1; - if (setsockopt(_socket_fd, SOL_SOCKET, SO_REUSEADDR, (char *)&on, sizeof(on)) < 0) - { - ::perror("setsockopt() failed"); - throw std::runtime_error("Socket init"); - } - // HUGO ADD END - - _bind(_socket_fd, 4040); - _listen(_socket_fd, 512); // 512 arbitrary - - if (_epoll_update(_socket_fd, EPOLLIN, EPOLL_CTL_ADD) == -1) - throw std::runtime_error("Socket init"); -} - -void Webserv::start() -{ - std::cerr << "Server started\n"; - struct epoll_event events[MAX_EVENTS]; - int nfds; - int i; - int count_loop = 0; - - g_run = true; - while (g_run) - { - std::cerr << ++count_loop << "----loop epoll()\n"; - nfds = ::epoll_wait(_epfd, events, MAX_EVENTS, TIMEOUT); - if (nfds == -1) - { - std::perror("err epoll_wait(): "); - throw std::runtime_error("Epoll wait"); - } - else if (nfds == 0) - { - if (!_clients.empty()) - { - std::cerr << "Timeout " << TIMEOUT << "ms\n"; - _close_all_clients(); - } - } - i = 0; - while (i < nfds) - { - // if ((events[i].data.u32 == SERVER_FD) && (events[i].events & EPOLLIN)) // Dont work, see "SERVER_FD" define - if ((events[i].data.fd == _socket_fd) && (events[i].events & EPOLLIN)) - _accept_connection(events[i].data.fd); - else if (events[i].events & EPOLLIN) - _read_request(static_cast(events[i].data.ptr)); - else if (events[i].events & EPOLLOUT) - _send_response(static_cast(events[i].data.ptr)); - ++i; - _actual_client = NULL; - } - } -} - - - /////////////////////// - // Private Functions // - -void Webserv::_accept_connection(int fd) -{ - struct sockaddr_in addr; - socklen_t addr_len; - int accepted_fd; - - std::cerr << "accept()\n"; - addr_len = sizeof addr; - accepted_fd = ::accept(fd, (sockaddr*)&addr, &addr_len); - if (accepted_fd == -1) - { - std::perror("err accept(): "); - return ; - } - ::fcntl(accepted_fd, F_SETFL, O_NONBLOCK); - - _clients.push_back(Client()); - _clients.back().fd = accepted_fd; - - _epoll_update(accepted_fd, EPOLLIN, EPOLL_CTL_ADD, &_clients.back()); -} - - ////////// - // READ // -void Webserv::_read_request(Client *client) -{ - char buf[BUFSIZE+1]; - ssize_t ret; - _actual_client = client; - - std::cerr << "recv()\n"; - ret = ::recv(client->fd, buf, BUFSIZE, 0); - if (ret == -1) - { - std::perror("err recv(): "); - // if (g_last_signal) - // _handle_last_signal(); - // else - // _close_client(client->fd); - - std::cerr << "client ptr =" << client << "\n"; // DEBUG - std::cerr << "client.fd =" << client->fd << "\n"; // DEBUG - return ; - } - /* - if (ret == BUFSIZE) - // send error like "request too long" to client - */ - - buf[ret] = '\0'; - client->raw_request.append(buf); - - // HUGO TMP - // - _parse_request(client); - // - // HUGO TMP END - - _epoll_update(client->fd, EPOLLOUT, EPOLL_CTL_MOD, client); -} - - /////////// - // WRITE // -void Webserv::_send_response(Client *client) -{ - ssize_t ret; - _actual_client = client; - - std::cerr << "send()\n"; - std::cerr << "RAW_REQUEST\n|\n" << client->raw_request << "|\n"; - - - // TMP HUGO test cgi - // - // if "POST" found in _buf, execve a cgi - if (client->raw_request.find("POST") != std::string::npos) - _exec_cgi_script(client); - // if "index.html" found in _buf, send the page - if (client->raw_request.find("index.html") != std::string::npos) - _serve_file(client, "index.html"); - // - // TMP HUGO end test cgi - - - ret = ::send(client->fd, MSG_TEST, sizeof MSG_TEST - 1, 0); - if (ret == -1) - { - std::perror("err send(): "); - if (g_last_signal) - _handle_last_signal(); - // else - // _close_client(client->fd); - return ; - } - - _close_client(client->fd); - // if (client->raw_request.find("Connection: keep-alive") == std::string::npos) - // _close_client(client->fd); - // else - // _epoll_update(client->fd, EPOLLIN, EPOLL_CTL_MOD, client); - - client->raw_request.clear(); -} - - - //////////////////// - // Misc functions // - -int Webserv::_epoll_update(int fd, uint32_t events, int op) -{ - struct epoll_event ev; - std::memset(&ev, 0, sizeof ev); - ev.events = events; - ev.data.fd = fd; - if (::epoll_ctl(_epfd, op, fd, &ev) == -1) - { - std::perror("err _epoll_update(): "); - return (-1); - } - return (0); -} - -// TMP HUGO -// -void _parse_request(Client *client) -{ - std::string request = client->raw_request; - std::map field = client->request; -// size_t size = request.size(); - size_t begin = 0; - size_t end; - size_t len; - -// std::string str ("test un: deux\ntest deux: trois quatre\ntest :trois quatre cinq"); -// std::string sub; - - std::cout << str << "\n\n"; - - int i = 0; - while (end != std::string::npos) - { - // find first portion, before ':' - end = str.find(':', begin); - len = end - begin; - if (end == std::string::npos) - len = end; - sub = str.substr(begin, len); - std::cout << i << "|" << sub << "\n"; - // std::cout << "[begin:" << begin << " - end:" << end << " - len:" << len << "] " << sub << "\n"; - begin = end + 1; - - // find second portion, until '\n' - end = str.find('\n', begin); - len = end - begin; - if (end == std::string::npos) - len = end; - sub = str.substr(begin, len); - std::cout << i << "|" << sub << "\n"; - begin = end + 1; - i++; - } - -// for (size_t i = 0; i < size; i++) -// { -// field.insert(request); -// } - -// GET /home.html HTTP/1.1 -// Host: developer.mozilla.org -// User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:50.0) Gecko/20100101 Firefox/50.0 -// Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 -// Accept-Language: en-US,en;q=0.5 -// Accept-Encoding: gzip, deflate, br -// Referer: https://developer.mozilla.org/testpage.html -// Connection: keep-alive -// Upgrade-Insecure-Requests: 1 -// If-Modified-Since: Mon, 18 Jul 2016 02:36:04 GMT -// If-None-Match: "c561c68d0ba92bbeb8b0fff2a9199f722e3a621a" -// Cache-Control: max-age=0 - -} -void Webserv::_serve_file(Client *client, std::string page) -{ - int page_fd; - std::string to_send; - std::string end_header = "\r\n\r\n"; - std::string body; - std::stringstream strs; - char buffer[1]; - - to_send = "HTTP/1.1 200 OK\n"; - to_send += "Content-Type: text/html;\n"; - to_send += "Content-Length: "; - page_fd = open(page.c_str(), O_RDONLY); - for (int ret = 1; ret > 0;) - { - ret = read(page_fd, buffer, 1); - body += buffer; - } - strs << body.size(); - to_send += strs.str(); - to_send += end_header; - to_send += body; - if (::send(client->fd, to_send.c_str(), to_send.size(), 0) == -1) - std::perror("err send()"); -} -void Webserv::_exec_cgi_script(Client *client) -{ - int save_stdout; - char** env = new char*[5]; - char * const * nll = NULL; - - // set env - env[0] = strdup("PATH_INFO=/no"); - env[1] = strdup("REQUEST_METHOD=POST"); - env[2] = strdup("SERVER_PROTOCOL=HTTP/1.1"); - env[3] = strdup("CONTENT_LENGTH=665"); - env[4] = NULL; - // save STDOUT - save_stdout = dup(STDOUT_FILENO); - // inside child process - if (fork() == 0) - { - dup2(client->fd, STDOUT_FILENO); -// execve("./srcs/cgi-bin/cgi_cpp.cgi", nll, env); - execve("./srcs/cgi-bin/php-cgi", nll, env); - } - // inside parent process - else - waitpid(-1, NULL, 0); - // restore stdout - dup2(save_stdout, STDOUT_FILENO); -} -// -// END TMP HUGO - -int Webserv::_epoll_update(int fd, uint32_t events, int op, void *ptr) -{ - struct epoll_event ev; - std::memset(&ev, 0, sizeof ev); - ev.events = events; - ev.data.ptr = ptr; - if (::epoll_ctl(_epfd, op, fd, &ev) == -1) - { - std::perror("err _epoll_update(): "); - return (-1); - } - return (0); -} - -void Webserv::_handle_last_signal() -{ - if (g_last_signal == SIGPIPE) - { - std::cerr << "SIGPIPE\n"; - if (_actual_client) - { - _close_client(_actual_client->fd); - _actual_client = NULL; - } - } - else if (g_last_signal == SIGINT) - { - g_run = false; - } - g_last_signal = 0; -} - -void Webserv::_close_client(int fd) -{ - std::vector::iterator it = _clients.begin(); - while (it != _clients.end()) - { - if (it->fd == fd) - { - // _epoll_update(fd, 0, EPOLL_CTL_DEL); // normalement superflu, DEBUG - if (::close(fd) == -1) - std::perror("err close(): "); - else - std::cerr << "close fd " << fd << "\n"; - _clients.erase(it); - break; - } - ++it; - } -} - -void Webserv::_close_all_clients() -{ - while (!_clients.empty()) - { - // _epoll_update(_clients.back().fd, 0, EPOLL_CTL_DEL); // normalement superflu, DEBUG - if (::close(_clients.back().fd) == -1) - std::perror("err close(): "); - else - std::cerr << "close fd " << _clients.back().fd << "\n"; - _clients.pop_back(); - } -} - - - //////////////////// - // Init functions // - -void Webserv::_bind(int socket_fd, in_port_t port) -{ - // cast invalid ? how to ? - // const struct sockaddr* cast_test = static_cast(addr); - - struct sockaddr_in addr; - std::memset(&addr, 0, sizeof addr); - addr.sin_family = AF_INET; - addr.sin_port = ::htons(port); - addr.sin_addr.s_addr = ::htonl(INADDR_ANY); // htonl useless with 0 value (INADDR_ANY) ? - - if (::bind(socket_fd, (const sockaddr*)&addr, sizeof addr) == -1) - { - std::perror("err bind(): "); - throw std::runtime_error("Socket bind"); - } -} - -void Webserv::_listen(int socket_fd, unsigned int max_connections) -{ - if (::listen(socket_fd, max_connections) == -1) - { - std::perror("err listen(): "); - throw std::runtime_error("Socket listen"); - } -} diff --git a/srcs/ft_itoa.cpp b/srcs/ft_itoa.cpp deleted file mode 100644 index 90f6ff7..0000000 --- a/srcs/ft_itoa.cpp +++ /dev/null @@ -1,13 +0,0 @@ - -# include -# include - -char* itoa(int n) -{ - std::stringstream strs; - char * str; - - strs << n; - str = (char*)(strs.str().c_str()); - return (str); -} diff --git a/srcs/utils.hpp b/srcs/utils.hpp index a2e2409..70b16c5 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -7,6 +7,14 @@ # include # include // atoi +enum http_method +{ + GET = 1, + POST, + DELETE, + INVALID, +}; + std::vector split(std::string input, char delimiter); bool isNumeric(std::string str); bool isNumeric_btw(int low, int high, std::string str); diff --git a/srcs/Webserv.hpp b/srcs/webserv/Webserv.hpp similarity index 91% rename from srcs/Webserv.hpp rename to srcs/webserv/Webserv.hpp index 6b858a4..193b57d 100644 --- a/srcs/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -29,30 +29,10 @@ # include "ServerConfig.hpp" # include "utils.hpp" -// TODO: A virer -//# include "ConfigParser.hpp" -//# include "LocationConfig.hpp" -//# include "MethodType.hpp" -//# include "utils.hpp" -// TODO: A virer - extern bool g_run; extern int g_last_signal; void signal_handler(int signum); -/* enum // WIP test -{ - SERVER_FD = 1, - CLIENT_FD -}; - -struct s // WIP test -{ - int fd; - Client *ptr; -}; - */ - // these might only be TMP # define FAILURE -1 # define SUCCESS 1 diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index da818e7..0e97c6c 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -84,7 +84,7 @@ void Webserv::_insert_status_line(Client *client) client->response.insert(0, status_line); } -#define ROOT "website" +#define ROOT "www" #define INDEX "index.html" #define MAX_FILESIZE 1000000 // (1Mo) void Webserv::_get_ressource(Client *client) diff --git a/srcs/webserv/run_loop.cpp b/srcs/webserv/run_loop.cpp index 215e4f9..7f93043 100644 --- a/srcs/webserv/run_loop.cpp +++ b/srcs/webserv/run_loop.cpp @@ -4,14 +4,6 @@ #define MAX_EVENTS 42 // arbitrary #define TIMEOUT 3000 -// Temp. To move in other file -bool operator==(const Client& lhs, const Client& rhs) - { return lhs.fd == rhs.fd; } -bool operator==(const Client& lhs, int fd) - { return lhs.fd == fd; } -bool operator==(int fd, const Client& rhs) - { return fd == rhs.fd; } - void Webserv::run() { std::cerr << "Server started\n"; diff --git a/website/index.html b/website/index.html deleted file mode 100644 index bc65643..0000000 --- a/website/index.html +++ /dev/null @@ -1,11 +0,0 @@ - - - - Le Webserv - - -

Le index (˘ ͜ʖ˘)

-
-

(˚3˚)

- - \ No newline at end of file diff --git a/www/index.html b/www/index.html index 7de0cd1..bc65643 100644 --- a/www/index.html +++ b/www/index.html @@ -1,16 +1,11 @@ - - - + Le Webserv - -

My First Heading

-

My first paragraph.

- +

Le index (˘ ͜ʖ˘)

+
+

(˚3˚)

- - - + \ No newline at end of file diff --git a/website/rfc2119_sigabrt.html b/www/rfc2119.html similarity index 100% rename from website/rfc2119_sigabrt.html rename to www/rfc2119.html diff --git a/website/rfc2119_no_link.html b/www/rfc2119_no_link.html similarity index 100% rename from website/rfc2119_no_link.html rename to www/rfc2119_no_link.html From 8f167d85f340198eff7e2ccd89c976c9c737f9bb Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Tue, 2 Aug 2022 21:11:54 +0200 Subject: [PATCH 02/11] wip integration of client.request and ServerConfig + Client get return reference + wip binary flags for http_method + moved config parser files --- Makefile | 7 +- memo.txt | 13 ++- srcs/Client.cpp | 10 +-- srcs/Client.hpp | 11 +-- srcs/{ => config}/ConfigParser.cpp | 6 +- srcs/{ => config}/ConfigParser.hpp | 0 srcs/{ => config}/ConfigParserPost.cpp | 0 srcs/{ => config}/ConfigParserUtils.cpp | 0 srcs/{ => config}/LocationConfig.hpp | 0 srcs/{ => config}/ServerConfig.hpp | 0 srcs/utils.hpp | 14 +++- srcs/webserv/Webserv.hpp | 11 +-- srcs/webserv/close.cpp | 2 +- srcs/webserv/response.cpp | 103 ++++++++++++++---------- 14 files changed, 107 insertions(+), 70 deletions(-) rename srcs/{ => config}/ConfigParser.cpp (99%) rename srcs/{ => config}/ConfigParser.hpp (100%) rename srcs/{ => config}/ConfigParserPost.cpp (100%) rename srcs/{ => config}/ConfigParserUtils.cpp (100%) rename srcs/{ => config}/LocationConfig.hpp (100%) rename srcs/{ => config}/ServerConfig.hpp (100%) diff --git a/Makefile b/Makefile index 221d18b..ad045bd 100644 --- a/Makefile +++ b/Makefile @@ -12,10 +12,13 @@ CXXFLAGS += -MMD -MP #header dependencie VPATH = $(SRCS_D) HEADERS_D = srcs \ - srcs/webserv + srcs/webserv \ + srcs/config SRCS_D = srcs \ - srcs/webserv + srcs/webserv \ + srcs/config + SRCS = main.cpp \ base.cpp init.cpp close.cpp epoll_update.cpp signal.cpp \ accept.cpp request.cpp response.cpp \ diff --git a/memo.txt b/memo.txt index 6f8b3ab..5482d1f 100644 --- a/memo.txt +++ b/memo.txt @@ -1,7 +1,14 @@ -- un thread par serveur présent dans le fichier de config ? ----------------- ----------------- +- http_method en mode binary flags. "std::vector allow_methods" -> "unsigned int allow_methods;" +- Dans le parsing, trier les "locations" par ordre de precision. +Compter les "/" dans le chemin, les locations avec le plus de "/" seront en premier dans le vector. +- Il faut vérifier le path de la requête, voir si le serveur est bien censé délivrer cette ressource et si le client y a accès, avant d'appeler le CGI. + + +__________________________ +-------------------------- + +----Discord 42------------ Un truc cool et surtout bien utile ici c'est d'utiliser un proxy entre ton navigateur et ton serveur pour vérifier ce qui est envoyé en raw. Les navigateurs peuvent avoir des comportements différents. Vous avez des modules sur vos navigateur ou des logiciels externe. C'est assez rapide et gratuit. \ No newline at end of file diff --git a/srcs/Client.cpp b/srcs/Client.cpp index db3e2c8..5551a1f 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -49,11 +49,11 @@ void Client::parse_request() -std::string Client::get_method() { return _request.method; } -std::string Client::get_path() { return _request.path; } -std::string Client::get_version() { return _request.version; } -std::string Client::get_body() { return _request.body; } -std::string Client::get_headers(std::string key) { return _request.headers[key]; } +std::string &Client::get_method() { return _request.method; } +std::string &Client::get_path() { return _request.path; } +std::string &Client::get_version() { return _request.version; } +std::string &Client::get_body() { return _request.body; } +std::string &Client::get_headers(const std::string &key) { return _request.headers[key]; } /********************************************* * PRIVATE MEMBER FUNCTIONS diff --git a/srcs/Client.hpp b/srcs/Client.hpp index 002f1c5..24a6c9c 100644 --- a/srcs/Client.hpp +++ b/srcs/Client.hpp @@ -30,11 +30,12 @@ class Client std::string response; unsigned int status; - std::string get_method(); - std::string get_path(); - std::string get_version(); - std::string get_body(); - std::string get_headers(std::string key); + // const functions ? + std::string &get_method(); + std::string &get_path(); + std::string &get_version(); + std::string &get_body(); + std::string &get_headers(const std::string &key); void parse_request(); diff --git a/srcs/ConfigParser.cpp b/srcs/config/ConfigParser.cpp similarity index 99% rename from srcs/ConfigParser.cpp rename to srcs/config/ConfigParser.cpp index c63326b..69ab9d0 100644 --- a/srcs/ConfigParser.cpp +++ b/srcs/config/ConfigParser.cpp @@ -6,7 +6,7 @@ /* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/13 22:11:17 by me #+# #+# */ -/* Updated: 2022/08/02 14:05:03 by lperrey ### ########.fr */ +/* Updated: 2022/08/02 19:21:49 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ @@ -263,7 +263,7 @@ void ConfigParser::_set_server_values(ServerConfig *server, \ for (unsigned long i = 0; i != tmp_val.size(); i++) { http_method m = _str_to_method_type(tmp_val[i]); - if (m == 3) + if (m == INVALID) throw std::invalid_argument("not a valid method"); server->allow_methods.push_back(m); } @@ -348,7 +348,7 @@ void ConfigParser::_set_location_values(LocationConfig *location, \ for (unsigned long i = 0; i != tmp_val.size(); i++) { http_method m = _str_to_method_type(tmp_val[i]); - if (m == 3) + if (m == INVALID) throw std::invalid_argument("not a valid method"); location->allow_methods.push_back(m); } diff --git a/srcs/ConfigParser.hpp b/srcs/config/ConfigParser.hpp similarity index 100% rename from srcs/ConfigParser.hpp rename to srcs/config/ConfigParser.hpp diff --git a/srcs/ConfigParserPost.cpp b/srcs/config/ConfigParserPost.cpp similarity index 100% rename from srcs/ConfigParserPost.cpp rename to srcs/config/ConfigParserPost.cpp diff --git a/srcs/ConfigParserUtils.cpp b/srcs/config/ConfigParserUtils.cpp similarity index 100% rename from srcs/ConfigParserUtils.cpp rename to srcs/config/ConfigParserUtils.cpp diff --git a/srcs/LocationConfig.hpp b/srcs/config/LocationConfig.hpp similarity index 100% rename from srcs/LocationConfig.hpp rename to srcs/config/LocationConfig.hpp diff --git a/srcs/ServerConfig.hpp b/srcs/config/ServerConfig.hpp similarity index 100% rename from srcs/ServerConfig.hpp rename to srcs/config/ServerConfig.hpp diff --git a/srcs/utils.hpp b/srcs/utils.hpp index 70b16c5..6df52cb 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -7,12 +7,20 @@ # include # include // atoi +// enum http_method +// { +// GET = 0b000001, +// POST = 0b000010, +// DELETE = 0b000100, +// INVALID = 0b001000, +// }; + enum http_method { GET = 1, - POST, - DELETE, - INVALID, + POST = 1 << 1, + DELETE = 1 << 2, + INVALID = 1 << 3, }; std::vector split(std::string input, char delimiter); diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index 193b57d..7a1715c 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -22,7 +22,7 @@ // # include // usefull for what ? -> 'man (7) ip' says it's a superset of 'netinet/in.h' # include // find # include // string -# include // perror +# include // perror, remove # include // atoi (athough it's already cover by ) # include "Client.hpp" @@ -68,10 +68,11 @@ class Webserv void _read_request(Client *client); // response.cpp void _response(Client *client); - void _send_response(Client *client); - void _construct_response(Client *client); - void _insert_status_line(Client *client); - void _get_ressource(Client *client); + ServerConfig &_determine_process_server(Client *client); + void _send_response(Client *client, ServerConfig &server); + void _construct_response(Client *client, ServerConfig &server); + void _insert_status_line(Client *client, ServerConfig &server); + void _get_ressource(Client *client, ServerConfig &server); // cgi_script.cpp bool _is_cgi(Client *client); void _exec_cgi(Client *client); diff --git a/srcs/webserv/close.cpp b/srcs/webserv/close.cpp index f4bc0b9..70a1e3f 100644 --- a/srcs/webserv/close.cpp +++ b/srcs/webserv/close.cpp @@ -6,7 +6,7 @@ void Webserv::_close_client(int fd) std::vector::iterator it = _clients.begin(); while (it != _clients.end()) { - if (it->fd == fd) + if (*it == fd) { // _epoll_update(fd, 0, EPOLL_CTL_DEL); // normalement superflu, DEBUG if (::close(fd) == -1) diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 0e97c6c..0f4373f 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -3,25 +3,48 @@ void Webserv::_response(Client *client) { - _send_response(client); + ServerConfig &server = _determine_process_server(client); + _send_response(client, server); if (g_last_signal) _handle_last_signal(); } -void Webserv::_send_response(Client *client) +ServerConfig &Webserv::_determine_process_server(Client *client) +{ +/* + TODO : determine virtual server based on ip_address::port and server_name + Ior now its just based on server_name. + (maybe with a map< string, std::vector > where the string is "ip_adress::port") + http://nginx.org/en/docs/http/request_processing.html +*/ + + std::string &server_name = client->get_headers("Host"); + std::vector::iterator it = _servers.begin(); + while (it != _servers.end()) + { + if ( std::find(it->server_name.begin(), it->server_name.end(), server_name) != it->server_name.end() ) + break; + ++it; + } + if (it != _servers.end()) + return (*it); + else + return (_servers.front()); +} + +void Webserv::_send_response(Client *client, ServerConfig &server) { ssize_t ret; std::cerr << "send()\n"; - std::cerr << "RAW_REQUEST\n|\n" << client->raw_request << "|\n"; // DEBUG + // std::cerr << "RAW_REQUEST\n|\n" << client->raw_request << "|\n"; // DEBUG - _construct_response(client); + _construct_response(client, server); - ret = ::send(client->fd, client->response.data(), client->response.size(), 0); + ret = ::send(client->fd, client->response.c_str(), client->response.size(), 0); if (ret == -1) { std::perror("err send()"); - std::cerr << "client ptr =" << client << "\n"; // DEBUG std::cerr << "client.fd =" << client->fd << "\n"; // DEBUG _close_client(client->fd); return ; @@ -37,25 +60,29 @@ void Webserv::_send_response(Client *client) } } -void Webserv::_construct_response(Client *client) +void Webserv::_construct_response(Client *client, ServerConfig &server) { client->status = 200; client->response.append("Server: Webserv/0.1\r\n"); - if (client->raw_request.find("Connection: close") != std::string::npos) + if (client->get_headers("Connection") == "close") client->response.append("Connection: close\r\n"); else client->response.append("Connection: keep-alive\r\n"); - _get_ressource(client); + // TODO : Method switch (GET, POST, DELETE) + _get_ressource(client, server); - _insert_status_line(client); + _insert_status_line(client, server); } -#define E400 "\r\n400 Bad Request

400 Bad Request


Le Webserv/0.1

" -#define E404 "\r\n404 Not Found

404 Not Found


Le Webserv/0.1

" -#define E500 "\r\n500 Internal Server Error

500 Internal Server Error


Le Webserv/0.1

" -void Webserv::_insert_status_line(Client *client) +// https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml +#define HTML_ERROR(STATUS) "\r\n"STATUS"

"STATUS"


Le Webserv/0.1

" +#define S200 "200 OK" +#define S400 "400 Bad Request" +#define S404 "404 Not Found" +#define S500 "500 Internal Server Error" +void Webserv::_insert_status_line(Client *client, ServerConfig &server) { std::string status_line; @@ -64,19 +91,19 @@ void Webserv::_insert_status_line(Client *client) switch (client->status) { case (200): - status_line.append("200 OK"); + status_line.append(S200); break; case (400): - status_line.append("400 Not Found"); - client->response.append(E400); + status_line.append(S400); + client->response.append(HTML_ERROR(S400)); break; case (404): - status_line.append("404 Not Found"); - client->response.append(E404); + status_line.append(S404); + client->response.append(HTML_ERROR(S404)); break; case (500): - status_line.append("500 Internal Server Error"); - client->response.append(E500); + status_line.append(S500); + client->response.append(HTML_ERROR(S500)); break; } status_line.append("\r\n"); @@ -87,11 +114,18 @@ void Webserv::_insert_status_line(Client *client) #define ROOT "www" #define INDEX "index.html" #define MAX_FILESIZE 1000000 // (1Mo) -void Webserv::_get_ressource(Client *client) +void Webserv::_get_ressource(Client *client, ServerConfig &server) { std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? char buf[MAX_FILESIZE+1]; std::string tmp; + std::string path = client->get_path(); + + if (path == "/") // TODO ; With server config + path.append(INDEX); + path.insert(0, ROOT); + + std::cerr << "path = " << path << "\n"; // TMP HUGO // @@ -103,32 +137,15 @@ void Webserv::_get_ressource(Client *client) // // END TMP HUGO - // Mini parsing à l'arrache du PATH - std::string path; - try - { - path = client->raw_request.substr(0, client->raw_request.find("\r\n")); - path = path.substr(0, path.rfind(" ")); - path = path.substr(path.find("/")); - if (path == "/") - path.append(INDEX); - path.insert(0, ROOT); - } - catch (std::out_of_range& e) - { - std::cout << e.what() << '\n'; - client->status = 400; - return ; - } - - if (access(path.data(), R_OK) == -1) + + if (access(path.c_str(), R_OK) == -1) { std::perror("err access()"); client->status = 404; return ; } - ifd.open(path.data(), std::ios::binary | std::ios::ate); // std::ios::binary (binary for files like images ?) + ifd.open(path.c_str(), std::ios::binary | std::ios::ate); // std::ios::binary (binary for files like images ?) if (!ifd) { std::cerr << path << ": open fail" << '\n'; @@ -151,7 +168,7 @@ void Webserv::_get_ressource(Client *client) ifd.read(buf, size); buf[ifd.gcount()] = '\0'; - client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); + client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); // TODO : determine Content-Type client->response.append("Content-Length: "); From 6f5b28dd9326efae905dc2b1a064a350d9f13fb7 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Wed, 3 Aug 2022 18:39:22 +0200 Subject: [PATCH 03/11] wip, need somes changes in ConfigParser. + _determine_location() + http_method changes + http_method switch in _construct_response() + ConfigParser::_str_to_method_type() moved to global utils.cpp --- default.config | 8 +- srcs/Client.cpp | 4 +- srcs/Client.hpp | 4 +- srcs/config/ConfigParser.cpp | 10 +-- srcs/config/ConfigParser.hpp | 4 +- srcs/config/ConfigParserUtils.cpp | 14 ---- srcs/utils.cpp | 32 ++++++++ srcs/utils.hpp | 22 +++--- srcs/webserv/Webserv.hpp | 7 +- srcs/webserv/cgi_script.cpp | 2 +- srcs/webserv/response.cpp | 120 ++++++++++++++++++++++-------- 11 files changed, 159 insertions(+), 68 deletions(-) diff --git a/default.config b/default.config index a3de0b3..024d45c 100644 --- a/default.config +++ b/default.config @@ -12,6 +12,12 @@ server { index index.html; # this is another comment root ./www/; +# If not explicitly set, ConfigParser need to genererate a location block +# like this for path "/" (based on field "root" and "index" of the server) + location / { + root ./www/; + index index.html; + } + allow_methods GET; } - diff --git a/srcs/Client.cpp b/srcs/Client.cpp index 5551a1f..8641916 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -49,7 +49,7 @@ void Client::parse_request() -std::string &Client::get_method() { return _request.method; } +http_method Client::get_method() { return _request.method; } std::string &Client::get_path() { return _request.path; } std::string &Client::get_version() { return _request.version; } std::string &Client::get_body() { return _request.body; } @@ -73,7 +73,7 @@ void Client::_parse_request_line( std::string rline ) // method tmp = ::trim(sline[0], ' '); tmp = ::trim(tmp, '\r'); - _request.method = tmp; + _request.method = str_to_http_method(tmp); // TODO uri in request_line // https://www.rfc-editor.org/rfc/rfc7230#section-5.3 // https://stackoverflow.com/questions/40311306/when-is-absoluteuri-used-from-the-http-request-specs diff --git a/srcs/Client.hpp b/srcs/Client.hpp index 24a6c9c..eef125a 100644 --- a/srcs/Client.hpp +++ b/srcs/Client.hpp @@ -11,7 +11,7 @@ struct Request { std::map headers; - std::string method; + http_method method; std::string path; std::string version; std::string body; @@ -31,7 +31,7 @@ class Client unsigned int status; // const functions ? - std::string &get_method(); + http_method get_method(); std::string &get_path(); std::string &get_version(); std::string &get_body(); diff --git a/srcs/config/ConfigParser.cpp b/srcs/config/ConfigParser.cpp index 69ab9d0..d754ec6 100644 --- a/srcs/config/ConfigParser.cpp +++ b/srcs/config/ConfigParser.cpp @@ -6,7 +6,7 @@ /* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/13 22:11:17 by me #+# #+# */ -/* Updated: 2022/08/02 19:21:49 by lperrey ### ########.fr */ +/* Updated: 2022/08/03 17:51:35 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ @@ -262,8 +262,8 @@ void ConfigParser::_set_server_values(ServerConfig *server, \ { for (unsigned long i = 0; i != tmp_val.size(); i++) { - http_method m = _str_to_method_type(tmp_val[i]); - if (m == INVALID) + http_method m = ::str_to_http_method(tmp_val[i]); + if (m == UNKNOWN) throw std::invalid_argument("not a valid method"); server->allow_methods.push_back(m); } @@ -347,8 +347,8 @@ void ConfigParser::_set_location_values(LocationConfig *location, \ { for (unsigned long i = 0; i != tmp_val.size(); i++) { - http_method m = _str_to_method_type(tmp_val[i]); - if (m == INVALID) + http_method m = ::str_to_http_method(tmp_val[i]); + if (m == UNKNOWN) throw std::invalid_argument("not a valid method"); location->allow_methods.push_back(m); } diff --git a/srcs/config/ConfigParser.hpp b/srcs/config/ConfigParser.hpp index 119e043..c5e29f3 100644 --- a/srcs/config/ConfigParser.hpp +++ b/srcs/config/ConfigParser.hpp @@ -6,7 +6,7 @@ /* By: lperrey +#+ +:+ +#+ */ /* +#+#+#+#+#+ +#+ */ /* Created: 2022/07/11 23:01:41 by me #+# #+# */ -/* Updated: 2022/08/02 14:05:30 by lperrey ### ########.fr */ +/* Updated: 2022/08/03 17:32:33 by lperrey ### ########.fr */ /* */ /* ************************************************************************** */ @@ -75,8 +75,6 @@ private: std::string _get_rest_of_line(size_t *curr); // const? - // why static? it's an enum... - static http_method _str_to_method_type(std::string str); diff --git a/srcs/config/ConfigParserUtils.cpp b/srcs/config/ConfigParserUtils.cpp index c9e483c..ee5ef4e 100644 --- a/srcs/config/ConfigParserUtils.cpp +++ b/srcs/config/ConfigParserUtils.cpp @@ -82,20 +82,6 @@ std::string ConfigParser::_get_rest_of_line(size_t *curr) return (values); } - -http_method ConfigParser::_str_to_method_type(std::string str) -{ - if (str == "GET") - return GET; - else if (str == "POST") - return POST; - else if (str == "DELETE") - return DELETE; - return INVALID; -} - - - void ConfigParser::_print_content() const { std::cout << _content; diff --git a/srcs/utils.cpp b/srcs/utils.cpp index 48af746..73c1606 100644 --- a/srcs/utils.cpp +++ b/srcs/utils.cpp @@ -52,3 +52,35 @@ bool isNumeric_btw(int low, int high, std::string str) return true; } +http_method str_to_http_method(std::string &str) +{ + if (str == "GET") + return GET; + else if (str == "POST") + return POST; + else if (str == "DELETE") + return DELETE; + return UNKNOWN; +} + +std::string http_methods_to_str(unsigned int methods) +{ + std::string str; + + if (methods & GET) + str.append("GET"); + if (methods & POST) + { + if (!str.empty()) + str.append(", "); + str.append("POST"); + } + if (methods & DELETE) + { + if (!str.empty()) + str.append(", "); + str.append("DELETE"); + } + + return (str); +} diff --git a/srcs/utils.hpp b/srcs/utils.hpp index 6df52cb..c035cfb 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -9,24 +9,28 @@ // enum http_method // { -// GET = 0b000001, -// POST = 0b000010, -// DELETE = 0b000100, -// INVALID = 0b001000, +// UNKNOWN = 0b00000000, +// GET = 0b00000001, +// POST = 0b00000010, +// DELETE = 0b00000100, +// ALL_METHODS = 0b11111111, // }; enum http_method { - GET = 1, + UNKNOWN = 0b0, + GET = 1 << 0, POST = 1 << 1, DELETE = 1 << 2, - INVALID = 1 << 3, + ALL_METHODS = 0b11111111, }; -std::vector split(std::string input, char delimiter); -bool isNumeric(std::string str); -bool isNumeric_btw(int low, int high, std::string str); +std::vector split(std::string input, char delimiter); +bool isNumeric(std::string str); +bool isNumeric_btw(int low, int high, std::string str); std::string itos(int n); std::string trim(std::string str, char c); +http_method str_to_http_method(std::string &str); +std::string http_methods_to_str(unsigned int methods); #endif diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index 7a1715c..a9d69fe 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -68,11 +68,14 @@ class Webserv void _read_request(Client *client); // response.cpp void _response(Client *client); - ServerConfig &_determine_process_server(Client *client); void _send_response(Client *client, ServerConfig &server); void _construct_response(Client *client, ServerConfig &server); void _insert_status_line(Client *client, ServerConfig &server); - void _get_ressource(Client *client, ServerConfig &server); + void _get_ressource(Client *client, ServerConfig &server, LocationConfig &location); + void _post(Client *client, ServerConfig &server, LocationConfig &location); + void _delete(Client *client, ServerConfig &server, LocationConfig &location); + ServerConfig &_determine_process_server(Client *client); + LocationConfig &_determine_location(ServerConfig &server, std::string &path); // cgi_script.cpp bool _is_cgi(Client *client); void _exec_cgi(Client *client); diff --git a/srcs/webserv/cgi_script.cpp b/srcs/webserv/cgi_script.cpp index ee1319e..636303d 100644 --- a/srcs/webserv/cgi_script.cpp +++ b/srcs/webserv/cgi_script.cpp @@ -40,7 +40,7 @@ char** Webserv::_set_env(Client *client) env[8] = _dup_env("REMOTE_HOST", client->get_headers("Host")); // just test env[9] = _dup_env("REMOTE_IDENT"); env[10] = _dup_env("REMOTE_USER"); - env[11] = _dup_env("REQUEST_METHOD", client->get_method()); + env[11] = _dup_env("REQUEST_METHOD", ::http_methods_to_str(client->get_method())); env[12] = _dup_env("SCRIPT_NAME"); env[13] = _dup_env("SERVER_NAME"); env[14] = _dup_env("SERVER_PORT"); diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 0f4373f..e751ac0 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -9,29 +9,6 @@ void Webserv::_response(Client *client) _handle_last_signal(); } -ServerConfig &Webserv::_determine_process_server(Client *client) -{ -/* - TODO : determine virtual server based on ip_address::port and server_name - Ior now its just based on server_name. - (maybe with a map< string, std::vector > where the string is "ip_adress::port") - http://nginx.org/en/docs/http/request_processing.html -*/ - - std::string &server_name = client->get_headers("Host"); - std::vector::iterator it = _servers.begin(); - while (it != _servers.end()) - { - if ( std::find(it->server_name.begin(), it->server_name.end(), server_name) != it->server_name.end() ) - break; - ++it; - } - if (it != _servers.end()) - return (*it); - else - return (_servers.front()); -} - void Webserv::_send_response(Client *client, ServerConfig &server) { ssize_t ret; @@ -62,7 +39,10 @@ void Webserv::_send_response(Client *client, ServerConfig &server) void Webserv::_construct_response(Client *client, ServerConfig &server) { - client->status = 200; + LocationConfig &location = _determine_location(server, client->get_path()); + + client->status = 200; // default value + client->response.append("Server: Webserv/0.1\r\n"); if (client->get_headers("Connection") == "close") @@ -70,8 +50,31 @@ void Webserv::_construct_response(Client *client, ServerConfig &server) else client->response.append("Connection: keep-alive\r\n"); - // TODO : Method switch (GET, POST, DELETE) - _get_ressource(client, server); + + unsigned int allow_methods = ALL_METHODS; // TEMP VARIABLE + // after update in ConfigParser, use the "allow_methods" of location. + // TODO in ConfigParser : by default if no field in config file, "allow_methods" must be set to ALL_METHODS + + if (client->get_method() == UNKNOWN) + { + client->status = 400; + } + else if (allow_methods & client->get_method()) + { + if (client->get_method() & GET) + _get_ressource(client, server, location); + else if (client->get_method() & POST) + _post(client, server, location); + else if (client->get_method() & DELETE) + _delete(client, server, location); + } + else + { + client->status = 405; + client->response.append("Allow: "); + client->response.append(::http_methods_to_str(allow_methods)); + client->response.append("\r\n"); + } _insert_status_line(client, server); } @@ -114,7 +117,7 @@ void Webserv::_insert_status_line(Client *client, ServerConfig &server) #define ROOT "www" #define INDEX "index.html" #define MAX_FILESIZE 1000000 // (1Mo) -void Webserv::_get_ressource(Client *client, ServerConfig &server) +void Webserv::_get_ressource(Client *client, ServerConfig &server, LocationConfig &location) { std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? char buf[MAX_FILESIZE+1]; @@ -171,9 +174,8 @@ void Webserv::_get_ressource(Client *client, ServerConfig &server) client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); // TODO : determine Content-Type client->response.append("Content-Length: "); - tmp = ::itos(ifd.gcount()); - client->response.append(tmp.c_str()); + client->response.append(tmp); client->response.append("\r\n"); // Body @@ -184,3 +186,63 @@ void Webserv::_get_ressource(Client *client, ServerConfig &server) } } +void Webserv::_post(Client *client, ServerConfig &server, LocationConfig &location) +{ +/* + TODO +*/ + (void)0; +} + +void Webserv::_delete(Client *client, ServerConfig &server, LocationConfig &location) +{ +/* + TODO +*/ + (void)0; +} + +ServerConfig &Webserv::_determine_process_server(Client *client) +{ +/* + TODO : determine virtual server based on ip_address::port and server_name + Ior now its just based on server_name. + (maybe with a map< string, std::vector > where the string is "ip_adress::port") + http://nginx.org/en/docs/http/request_processing.html +*/ + + std::string &server_name = client->get_headers("Host"); + std::vector::iterator it = _servers.begin(); + while (it != _servers.end()) + { + if ( std::find(it->server_name.begin(), it->server_name.end(), server_name) != it->server_name.end() ) + break; + ++it; + } + if (it != _servers.end()) + return (*it); + else + return (_servers.front()); +} + +LocationConfig &Webserv::_determine_location(ServerConfig &server, std::string &path) +{ +/* + Assume there is at least one location in vector for path "/" + TODO in ConfigParser : + If no location block in config file, one need to be generated + for path "/", and filled with fields "root" and "index" based on parent server block +*/ + + std::vector::iterator it = server.locations.begin(); + while (it != server.locations.end()) + { + if (it->path.compare(0, path.size(), path)) + break; + ++it; + } + if (it != server.locations.end()) + return (*it); + else + return (server.locations.front()); +} From 0026106bf65aaf73fcb59fca4960df988a02d8f7 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Thu, 4 Aug 2022 02:52:31 +0200 Subject: [PATCH 04/11] default and custom error pages response + refactoring in response.cpp (functions split) + added Client::clear() + added replace_all_substr() in utils.cpp --- srcs/Client.cpp | 17 ++++ srcs/Client.hpp | 4 +- srcs/config/ServerConfig.hpp | 2 +- srcs/utils.cpp | 15 ++++ srcs/utils.hpp | 1 + srcs/webserv/Webserv.hpp | 16 +++- srcs/webserv/base.cpp | 2 + srcs/webserv/http_status.hpp | 27 +++++++ srcs/webserv/init.cpp | 12 +++ srcs/webserv/response.cpp | 148 ++++++++++++++++++++--------------- 10 files changed, 176 insertions(+), 68 deletions(-) create mode 100644 srcs/webserv/http_status.hpp diff --git a/srcs/Client.cpp b/srcs/Client.cpp index 8641916..88aba00 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -45,9 +45,26 @@ void Client::parse_request() _parse_request_headers(list); //body- message _parse_request_body(pos + 4); + + // add "raw_request.clear()" after parsing ? for little less memory usage ? } +void Client::clear() +{ + clear_request(); + raw_request.clear(); + response.clear(); + status = 0; +} +void Client::clear_request() +{ + _request.method = UNKNOWN; + _request.path.clear(); + _request.version.clear(); + _request.headers.clear(); + _request.body.clear(); +} http_method Client::get_method() { return _request.method; } std::string &Client::get_path() { return _request.path; } diff --git a/srcs/Client.hpp b/srcs/Client.hpp index eef125a..38fcd33 100644 --- a/srcs/Client.hpp +++ b/srcs/Client.hpp @@ -10,10 +10,10 @@ struct Request { - std::map headers; http_method method; std::string path; std::string version; + std::map headers; std::string body; }; @@ -38,6 +38,8 @@ class Client std::string &get_headers(const std::string &key); void parse_request(); + void clear(); + void clear_request(); private: struct Request _request; diff --git a/srcs/config/ServerConfig.hpp b/srcs/config/ServerConfig.hpp index dc658da..1875592 100644 --- a/srcs/config/ServerConfig.hpp +++ b/srcs/config/ServerConfig.hpp @@ -30,7 +30,7 @@ public: // there can only be one. std::string root; - int client_body_limit; // set to default max if none set + unsigned int client_body_limit; // set to default max if none set // might be the only one we let slide if bad input... bool autoindex; diff --git a/srcs/utils.cpp b/srcs/utils.cpp index 73c1606..87b2741 100644 --- a/srcs/utils.cpp +++ b/srcs/utils.cpp @@ -84,3 +84,18 @@ std::string http_methods_to_str(unsigned int methods) return (str); } + +void replace_all_substr(std::string &str, const std::string &ori_substr, const std::string &new_substr) +{ + if (ori_substr.empty()) + return; + size_t pos = 0; + while (1) + { + pos = str.find(ori_substr, pos); + if (pos == std::string::npos) + break; + str.replace(pos, ori_substr.size(), new_substr); + pos += new_substr.size(); + } +} diff --git a/srcs/utils.hpp b/srcs/utils.hpp index c035cfb..fa22d09 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -32,5 +32,6 @@ std::string itos(int n); std::string trim(std::string str, char c); http_method str_to_http_method(std::string &str); std::string http_methods_to_str(unsigned int methods); +void replace_all_substr(std::string &str, const std::string &ori_substr, const std::string &new_substr); #endif diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index a9d69fe..f859ea3 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -28,6 +28,7 @@ # include "Client.hpp" # include "ServerConfig.hpp" # include "utils.hpp" +# include "http_status.hpp" extern bool g_run; extern int g_last_signal; @@ -60,6 +61,7 @@ class Webserv std::vector _listen_sockets; std::vector _servers; std::vector _clients; + std::map _http_status; // accept.cpp void _accept_connection(int fd); @@ -69,11 +71,20 @@ class Webserv // response.cpp void _response(Client *client); void _send_response(Client *client, ServerConfig &server); + + void _append_base_headers(Client *client); void _construct_response(Client *client, ServerConfig &server); - void _insert_status_line(Client *client, ServerConfig &server); - void _get_ressource(Client *client, ServerConfig &server, LocationConfig &location); + void _process_method(Client *client, ServerConfig &server, LocationConfig &location); + void _insert_status_line(Client *client); + void _error_html_response(Client *client, ServerConfig &server); + + void _get(Client *client, ServerConfig &server, LocationConfig &location); + void _get_file(Client *client, const std::string &path); + void _append_body(Client *client, const char *body, size_t body_size); + void _post(Client *client, ServerConfig &server, LocationConfig &location); void _delete(Client *client, ServerConfig &server, LocationConfig &location); + ServerConfig &_determine_process_server(Client *client); LocationConfig &_determine_location(ServerConfig &server, std::string &path); // cgi_script.cpp @@ -94,6 +105,7 @@ class Webserv // init.cpp void _bind(int socket_fd, in_port_t port, std::string host); void _listen(int socket_fd, unsigned int max_connections); + void _init_http_status_map(); }; #endif diff --git a/srcs/webserv/base.cpp b/srcs/webserv/base.cpp index 6267ec9..30fa868 100644 --- a/srcs/webserv/base.cpp +++ b/srcs/webserv/base.cpp @@ -12,6 +12,8 @@ Webserv::Webserv() throw std::runtime_error("Epoll init"); } + _init_http_status_map(); + std::signal(SIGPIPE, signal_handler); std::signal(SIGINT, signal_handler); } diff --git a/srcs/webserv/http_status.hpp b/srcs/webserv/http_status.hpp new file mode 100644 index 0000000..efc64b4 --- /dev/null +++ b/srcs/webserv/http_status.hpp @@ -0,0 +1,27 @@ + +#ifndef HTTP_STATUS_HPP +# define HTTP_STATUS_HPP + +// https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml + +/* + First version of macro HTML_ERROR(STATUS) dont work with call like this : + client->response.append( HTML_ERROR( _http_status[client->status].c_str() ) ); + so I made the other version with dynamic replacement of STATUS . +*/ +// # define HTML_ERROR(STATUS) "\r\n"STATUS"

"STATUS"


Le Webserv/0.1

" + +# define STATUS_PLACEHOLDER "$STATUS" +# define HTML_ERROR "" STATUS_PLACEHOLDER "

" STATUS_PLACEHOLDER "


Le Webserv/0.1

" + +// When new status added, need to update _init_http_status_map() +# define S200 "200 OK" + +# define S400 "400 Bad Request" +# define S404 "404 Not Found" +# define S405 "405 Method Not Allowed" +# define S413 "413 Content Too Large" + +# define S500 "500 Internal Server Error" + +#endif diff --git a/srcs/webserv/init.cpp b/srcs/webserv/init.cpp index 4c5956e..4445ca8 100644 --- a/srcs/webserv/init.cpp +++ b/srcs/webserv/init.cpp @@ -76,3 +76,15 @@ void Webserv::_listen(int socket_fd, unsigned int max_connections) throw std::runtime_error("Socket listen"); } } + +void Webserv::_init_http_status_map() +{ + _http_status[200] = S200; + + _http_status[400] = S400; + _http_status[404] = S404; + _http_status[405] = S405; + _http_status[413] = S413; + + _http_status[500] = S500; +} diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index e751ac0..359a327 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -3,6 +3,8 @@ void Webserv::_response(Client *client) { + client->status = 200; // default value + ServerConfig &server = _determine_process_server(client); _send_response(client, server); if (g_last_signal) @@ -14,9 +16,12 @@ void Webserv::_send_response(Client *client, ServerConfig &server) ssize_t ret; std::cerr << "send()\n"; - // std::cerr << "RAW_REQUEST\n|\n" << client->raw_request << "|\n"; // DEBUG + _append_base_headers(client); _construct_response(client, server); + _insert_status_line(client); + if (client->status >= 400) + _error_html_response(client, server); ret = ::send(client->fd, client->response.c_str(), client->response.size(), 0); if (ret == -1) @@ -27,30 +32,38 @@ void Webserv::_send_response(Client *client, ServerConfig &server) return ; } - if (client->raw_request.find("Connection: close") != std::string::npos) + if (client->get_headers("Connection") == "close") _close_client(client->fd); else { _epoll_update(client->fd, EPOLLIN, EPOLL_CTL_MOD); - client->raw_request.clear(); - client->response.clear(); + client->clear(); } } -void Webserv::_construct_response(Client *client, ServerConfig &server) +void Webserv::_append_base_headers(Client *client) { - LocationConfig &location = _determine_location(server, client->get_path()); - - client->status = 200; // default value - client->response.append("Server: Webserv/0.1\r\n"); if (client->get_headers("Connection") == "close") client->response.append("Connection: close\r\n"); else client->response.append("Connection: keep-alive\r\n"); +} +void Webserv::_construct_response(Client *client, ServerConfig &server) +{ + if (client->get_body().size() > server.client_body_limit) + { + client->status = 413; + return; + } + LocationConfig &location = _determine_location(server, client->get_path()); + _process_method(client, server, location); +} +void Webserv::_process_method(Client *client, ServerConfig &server, LocationConfig &location) +{ unsigned int allow_methods = ALL_METHODS; // TEMP VARIABLE // after update in ConfigParser, use the "allow_methods" of location. // TODO in ConfigParser : by default if no field in config file, "allow_methods" must be set to ALL_METHODS @@ -61,12 +74,20 @@ void Webserv::_construct_response(Client *client, ServerConfig &server) } else if (allow_methods & client->get_method()) { - if (client->get_method() & GET) - _get_ressource(client, server, location); - else if (client->get_method() & POST) - _post(client, server, location); - else if (client->get_method() & DELETE) - _delete(client, server, location); + switch (client->get_method()) + { + case (GET): + _get(client, server, location); + break; + case (POST): + _post(client, server, location); + break; + case (DELETE): + _delete(client, server, location); + break; + default: + break; + } } else { @@ -75,58 +96,38 @@ void Webserv::_construct_response(Client *client, ServerConfig &server) client->response.append(::http_methods_to_str(allow_methods)); client->response.append("\r\n"); } - - _insert_status_line(client, server); } -// https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml -#define HTML_ERROR(STATUS) "\r\n"STATUS"

"STATUS"


Le Webserv/0.1

" -#define S200 "200 OK" -#define S400 "400 Bad Request" -#define S404 "404 Not Found" -#define S500 "500 Internal Server Error" -void Webserv::_insert_status_line(Client *client, ServerConfig &server) +void Webserv::_insert_status_line(Client *client) { std::string status_line; status_line.append("HTTP/1.1 "); - // WIP, maybe make a map for status response - switch (client->status) - { - case (200): - status_line.append(S200); - break; - case (400): - status_line.append(S400); - client->response.append(HTML_ERROR(S400)); - break; - case (404): - status_line.append(S404); - client->response.append(HTML_ERROR(S404)); - break; - case (500): - status_line.append(S500); - client->response.append(HTML_ERROR(S500)); - break; - } + status_line.append(_http_status[client->status]); status_line.append("\r\n"); - client->response.insert(0, status_line); } -#define ROOT "www" -#define INDEX "index.html" -#define MAX_FILESIZE 1000000 // (1Mo) -void Webserv::_get_ressource(Client *client, ServerConfig &server, LocationConfig &location) +void Webserv::_error_html_response(Client *client, ServerConfig &server) +{ + if (server.error_pages[client->status].empty()) + { + std::string html_page = HTML_ERROR; + ::replace_all_substr(html_page, STATUS_PLACEHOLDER, _http_status[client->status]); + _append_body(client, html_page.c_str(), html_page.size()); + } + else + _get_file(client, server.error_pages[client->status]); +} + +#define INDEX "index.html" // temp wip +void Webserv::_get(Client *client, ServerConfig &server, LocationConfig &location) { - std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? - char buf[MAX_FILESIZE+1]; - std::string tmp; std::string path = client->get_path(); - if (path == "/") // TODO ; With server config + if (path == "/") // TODO : index and autoindex path.append(INDEX); - path.insert(0, ROOT); + path.insert(0, location.root); std::cerr << "path = " << path << "\n"; @@ -140,7 +141,15 @@ void Webserv::_get_ressource(Client *client, ServerConfig &server, LocationConfi // // END TMP HUGO - + _get_file(client, path); +} + +#define MAX_FILESIZE 1000000 // (1Mo) +void Webserv::_get_file(Client *client, const std::string &path) +{ + std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? + char buf[MAX_FILESIZE+1]; + if (access(path.c_str(), R_OK) == -1) { std::perror("err access()"); @@ -171,21 +180,32 @@ void Webserv::_get_ressource(Client *client, ServerConfig &server, LocationConfi ifd.read(buf, size); buf[ifd.gcount()] = '\0'; - client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); // TODO : determine Content-Type - - client->response.append("Content-Length: "); - tmp = ::itos(ifd.gcount()); - client->response.append(tmp); - client->response.append("\r\n"); - - // Body - client->response.append("\r\n"); - client->response.append(buf); + _append_body(client, buf, ifd.gcount()); ifd.close(); } } +void Webserv::_append_body(Client *client, const char *body, size_t body_size) +{ +/* + TODO : determine Content-Type + how ? read the body ? + or before in other way (like based and file extension) and pass here as argument ? + http://nginx.org/en/docs/http/ngx_http_core_module.html#types + Need to look "conf/mime.types" of nginx. Maybe make a map<> based on that. +*/ + client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); + + client->response.append("Content-Length: "); + std::string tmp = ::itos(body_size); + client->response.append(tmp); + client->response.append("\r\n"); + + client->response.append("\r\n"); + client->response.append(body); +} + void Webserv::_post(Client *client, ServerConfig &server, LocationConfig &location) { /* From a9ada4cb2805783cc203fa35ad248f3b3dcc63e0 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Thu, 4 Aug 2022 14:45:16 +0200 Subject: [PATCH 05/11] CRLF macro --- srcs/Client.cpp | 2 +- srcs/utils.hpp | 4 ++++ srcs/webserv/response.cpp | 16 ++++++++-------- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/srcs/Client.cpp b/srcs/Client.cpp index 88aba00..8de09f4 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -35,7 +35,7 @@ void Client::parse_request() std::vector list; size_t pos; - pos = (raw_request).find("\r\n\r\n"); + pos = (raw_request).find(CRLF CRLF); sub = (raw_request).substr(0, pos); list = split(sub, '\n'); // request_line diff --git a/srcs/utils.hpp b/srcs/utils.hpp index fa22d09..7933552 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -7,6 +7,10 @@ # include # include // atoi +# define CR "\r" +# define LF "\n" +# define CRLF CR LF + // enum http_method // { // UNKNOWN = 0b00000000, diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 359a327..0a09f28 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -43,12 +43,12 @@ void Webserv::_send_response(Client *client, ServerConfig &server) void Webserv::_append_base_headers(Client *client) { - client->response.append("Server: Webserv/0.1\r\n"); + client->response.append("Server: Webserv/0.1" CRLF); if (client->get_headers("Connection") == "close") - client->response.append("Connection: close\r\n"); + client->response.append("Connection: close" CRLF); else - client->response.append("Connection: keep-alive\r\n"); + client->response.append("Connection: keep-alive" CRLF); } void Webserv::_construct_response(Client *client, ServerConfig &server) @@ -94,7 +94,7 @@ void Webserv::_process_method(Client *client, ServerConfig &server, LocationConf client->status = 405; client->response.append("Allow: "); client->response.append(::http_methods_to_str(allow_methods)); - client->response.append("\r\n"); + client->response.append(CRLF); } } @@ -104,7 +104,7 @@ void Webserv::_insert_status_line(Client *client) status_line.append("HTTP/1.1 "); status_line.append(_http_status[client->status]); - status_line.append("\r\n"); + status_line.append(CRLF); client->response.insert(0, status_line); } @@ -195,14 +195,14 @@ void Webserv::_append_body(Client *client, const char *body, size_t body_size) http://nginx.org/en/docs/http/ngx_http_core_module.html#types Need to look "conf/mime.types" of nginx. Maybe make a map<> based on that. */ - client->response.append("Content-Type: text/html; charset=UTF-8\r\n"); + client->response.append("Content-Type: text/html; charset=UTF-8" CRLF); client->response.append("Content-Length: "); std::string tmp = ::itos(body_size); client->response.append(tmp); - client->response.append("\r\n"); + client->response.append(CRLF); - client->response.append("\r\n"); + client->response.append(CRLF); client->response.append(body); } From 31022530922bc502b838e3cc7a44ed33ed457c72 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Thu, 4 Aug 2022 20:56:37 +0200 Subject: [PATCH 06/11] wip DELETE, POST (no cgi, need testing) --- memo.txt | 8 ++- srcs/webserv/Webserv.hpp | 5 +- srcs/webserv/http_status.hpp | 3 + srcs/webserv/init.cpp | 3 + srcs/webserv/response.cpp | 126 ++++++++++++++++++++++++++++++++--- 5 files changed, 133 insertions(+), 12 deletions(-) diff --git a/memo.txt b/memo.txt index 5482d1f..28280f6 100644 --- a/memo.txt +++ b/memo.txt @@ -1,5 +1,11 @@ - +- handle redirection +- maybe add a "last_action_time" in Client for timeout handling + little global timeout on epoll, like 100ms, then find client that actualy need to timeout + if (actual_time - client.last_action_time > 10000ms){timeout(client)} +- add headers "Date" and "Last-Modified" to response +- change "std::string" to reference "std::string &" in most functions +and add "const" if apropriate. - http_method en mode binary flags. "std::vector allow_methods" -> "unsigned int allow_methods;" - Dans le parsing, trier les "locations" par ordre de precision. Compter les "/" dans le chemin, les locations avec le plus de "/" seront en premier dans le vector. diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index f859ea3..585feac 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -77,13 +77,16 @@ class Webserv void _process_method(Client *client, ServerConfig &server, LocationConfig &location); void _insert_status_line(Client *client); void _error_html_response(Client *client, ServerConfig &server); + void _append_body(Client *client, const char *body, size_t body_size); void _get(Client *client, ServerConfig &server, LocationConfig &location); void _get_file(Client *client, const std::string &path); - void _append_body(Client *client, const char *body, size_t body_size); void _post(Client *client, ServerConfig &server, LocationConfig &location); + void _post_file(Client *client, const std::string &path); + void _delete(Client *client, ServerConfig &server, LocationConfig &location); + void _delete_file(Client *client, const std::string &path); ServerConfig &_determine_process_server(Client *client); LocationConfig &_determine_location(ServerConfig &server, std::string &path); diff --git a/srcs/webserv/http_status.hpp b/srcs/webserv/http_status.hpp index efc64b4..c53170d 100644 --- a/srcs/webserv/http_status.hpp +++ b/srcs/webserv/http_status.hpp @@ -16,8 +16,11 @@ // When new status added, need to update _init_http_status_map() # define S200 "200 OK" +# define S201 "201 Created" +# define S204 "204 No Content" # define S400 "400 Bad Request" +# define S403 "403 Forbidden" # define S404 "404 Not Found" # define S405 "405 Method Not Allowed" # define S413 "413 Content Too Large" diff --git a/srcs/webserv/init.cpp b/srcs/webserv/init.cpp index 4445ca8..db0c4be 100644 --- a/srcs/webserv/init.cpp +++ b/srcs/webserv/init.cpp @@ -80,8 +80,11 @@ void Webserv::_listen(int socket_fd, unsigned int max_connections) void Webserv::_init_http_status_map() { _http_status[200] = S200; + _http_status[201] = S201; + _http_status[204] = S204; _http_status[400] = S400; + _http_status[403] = S403; _http_status[404] = S404; _http_status[405] = S405; _http_status[413] = S413; diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 0a09f28..705f77d 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -123,6 +123,7 @@ void Webserv::_error_html_response(Client *client, ServerConfig &server) #define INDEX "index.html" // temp wip void Webserv::_get(Client *client, ServerConfig &server, LocationConfig &location) { + (void)server; // To remove from arg if we determine its useless std::string path = client->get_path(); if (path == "/") // TODO : index and autoindex @@ -150,23 +151,31 @@ void Webserv::_get_file(Client *client, const std::string &path) std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? char buf[MAX_FILESIZE+1]; - if (access(path.c_str(), R_OK) == -1) + if (access(path.c_str(), F_OK) == -1) { std::perror("err access()"); client->status = 404; return ; } + if (access(path.c_str(), R_OK) == -1) + { + std::perror("err access()"); + client->status = 403; + return ; + } + ifd.open(path.c_str(), std::ios::binary | std::ios::ate); // std::ios::binary (binary for files like images ?) if (!ifd) { - std::cerr << path << ": open fail" << '\n'; + std::cerr << path << ": ifd.open fail" << '\n'; client->status = 500; } else { - // WIP : Chunk or not chunk (if filesize too big) std::streampos size = ifd.tellg(); + + // WIP : Chunk or not chunk (if filesize too big) if (size > MAX_FILESIZE) { // Then chunk @@ -178,9 +187,17 @@ void Webserv::_get_file(Client *client, const std::string &path) ifd.seekg(0, std::ios::beg); ifd.read(buf, size); - buf[ifd.gcount()] = '\0'; - - _append_body(client, buf, ifd.gcount()); + if (!ifd) + { + std::cerr << path << ": ifd.read fail" << '\n'; + client->status = 500; + } + else + { + client->status = 200; + buf[ifd.gcount()] = '\0'; + _append_body(client, buf, ifd.gcount()); + } ifd.close(); } @@ -208,18 +225,107 @@ void Webserv::_append_body(Client *client, const char *body, size_t body_size) void Webserv::_post(Client *client, ServerConfig &server, LocationConfig &location) { + (void)server; // To remove from arg if we determine its useless /* - TODO + WIP + https://www.rfc-editor.org/rfc/rfc9110.html#name-post */ - (void)0; + std::string path = client->get_path(); + path.insert(0, location.root); + + /* CGI Here ? */ + + _post_file(client, path); +} + +void Webserv::_post_file(Client *client, const std::string &path) +{ + std::ofstream ofd; + + bool file_existed; + if (access(path.c_str(), F_OK) == -1) + file_existed = false; + else + file_existed = true; + + // How to determine status 403 for file that dont already exist ? + if (file_existed && access(path.c_str(), W_OK) == -1) + { + std::perror("err access()"); + client->status = 403; + return ; + } + + ofd.open(path.c_str(), std::ios::binary | std::ios::trunc); + if (!ofd) + { + std::cerr << path << ": ofd.open fail" << '\n'; + client->status = 500; + } + else + { + // Used body.size() so Content-Length useless at this point ? + // Maybe usefull in _read_request() for rejecting too big content. + // Need to _determine_process_server() as soon as possible, + // like in _read_request() for stopping read if body is too big ? + ofd.write(client->get_body().c_str(), client->get_body().size()); + if (!ofd) + { + std::cerr << path << ": ofd.write fail" << '\n'; + client->status = 500; + } + else if (file_existed) + { + client->status = 200; + // WIP https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok + } + else + { + client->status = 201; + // WIP https://www.rfc-editor.org/rfc/rfc9110.html#section-9.3.3-4 + } + + ofd.close(); + } } void Webserv::_delete(Client *client, ServerConfig &server, LocationConfig &location) { + (void)server; // To remove from arg if we determine its useless /* - TODO + WIP + https://www.rfc-editor.org/rfc/rfc9110.html#name-delete */ - (void)0; + std::string path = client->get_path(); + path.insert(0, location.root); + + /* CGI Here ? */ + + _delete_file(client, path); +} + +void Webserv::_delete_file(Client *client, const std::string &path) +{ + if (access(path.c_str(), F_OK) == -1) + { + std::perror("err access()"); + client->status = 404; + return ; + } + + if (access(path.c_str(), W_OK) == -1) + { + std::perror("err access()"); + client->status = 403; + return ; + } + + if (remove(path.c_str()) == -1) + { + std::perror("err remove()"); + client->status = 500; + return ; + } } ServerConfig &Webserv::_determine_process_server(Client *client) From e596d8f093465a598513fe72e34f9a598181efe0 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Fri, 5 Aug 2022 04:24:15 +0200 Subject: [PATCH 07/11] MIME types map for correct Content-type header + append body to string cause encoding problem, so added temp buf in Client. --- memo.txt | 1 + srcs/Client.cpp | 3 + srcs/Client.hpp | 3 + srcs/webserv/Webserv.hpp | 4 +- srcs/webserv/base.cpp | 1 + srcs/webserv/init.cpp | 116 ++++++++ srcs/webserv/response.cpp | 45 +++- www/drill.jpg | Bin 0 -> 15900 bytes www/favicon.ico | Bin 0 -> 2242 bytes www/kermit.ico | Bin 0 -> 2242 bytes www/rfc2119.html | 4 +- www/rfc2119_files/errata-base.css | 139 ++++++++++ www/rfc2119_files/errata-color.css | 43 +++ www/rfc2119_files/errata-monochrome.css | 34 +++ www/rfc2119_files/errata-printer.css | 43 +++ www/rfc2119_files/errata.js | 4 + www/rfc2119_files/errata.js.téléchargement | 4 + www/rfc2119_no_link.html | 300 --------------------- www/root.png | Bin 0 -> 456678 bytes 19 files changed, 432 insertions(+), 312 deletions(-) create mode 100644 www/drill.jpg create mode 100644 www/favicon.ico create mode 100644 www/kermit.ico create mode 100644 www/rfc2119_files/errata-base.css create mode 100644 www/rfc2119_files/errata-color.css create mode 100644 www/rfc2119_files/errata-monochrome.css create mode 100644 www/rfc2119_files/errata-printer.css create mode 100644 www/rfc2119_files/errata.js create mode 100644 www/rfc2119_files/errata.js.téléchargement delete mode 100644 www/rfc2119_no_link.html create mode 100644 www/root.png diff --git a/memo.txt b/memo.txt index 28280f6..dd03cec 100644 --- a/memo.txt +++ b/memo.txt @@ -1,4 +1,5 @@ +- do correct handling of special character in url (/rfc2119_files/errata.js.t%C3%A9l%C3%A9chargement -> /rfc2119_files/errata.js.téléchargement) - handle redirection - maybe add a "last_action_time" in Client for timeout handling little global timeout on epoll, like 100ms, then find client that actualy need to timeout diff --git a/srcs/Client.cpp b/srcs/Client.cpp index 8de09f4..471da4e 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -1,6 +1,8 @@ #include "Client.hpp" +char Client::buf[MAX_FILESIZE+1]; + /********************************************* * COPLIENS *********************************************/ @@ -54,6 +56,7 @@ void Client::clear() clear_request(); raw_request.clear(); response.clear(); + body_size = 0; status = 0; } diff --git a/srcs/Client.hpp b/srcs/Client.hpp index 38fcd33..c23a7de 100644 --- a/srcs/Client.hpp +++ b/srcs/Client.hpp @@ -17,6 +17,7 @@ struct Request std::string body; }; +# define MAX_FILESIZE 1000000 // (1Mo) class Client { public: @@ -28,6 +29,8 @@ class Client int fd; std::string raw_request; std::string response; + static char buf[MAX_FILESIZE+1]; + size_t body_size; unsigned int status; // const functions ? diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index 585feac..67e2c13 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -62,6 +62,7 @@ class Webserv std::vector _servers; std::vector _clients; std::map _http_status; + std::map _mime_types; // accept.cpp void _accept_connection(int fd); @@ -77,7 +78,7 @@ class Webserv void _process_method(Client *client, ServerConfig &server, LocationConfig &location); void _insert_status_line(Client *client); void _error_html_response(Client *client, ServerConfig &server); - void _append_body(Client *client, const char *body, size_t body_size); + void _append_body(Client *client, const char *body, size_t body_size, const std::string &file_extension = ""); void _get(Client *client, ServerConfig &server, LocationConfig &location); void _get_file(Client *client, const std::string &path); @@ -109,6 +110,7 @@ class Webserv void _bind(int socket_fd, in_port_t port, std::string host); void _listen(int socket_fd, unsigned int max_connections); void _init_http_status_map(); + void _init_mime_types_map(); }; #endif diff --git a/srcs/webserv/base.cpp b/srcs/webserv/base.cpp index 30fa868..3392619 100644 --- a/srcs/webserv/base.cpp +++ b/srcs/webserv/base.cpp @@ -13,6 +13,7 @@ Webserv::Webserv() } _init_http_status_map(); + _init_mime_types_map(); std::signal(SIGPIPE, signal_handler); std::signal(SIGINT, signal_handler); diff --git a/srcs/webserv/init.cpp b/srcs/webserv/init.cpp index db0c4be..ddd0edc 100644 --- a/srcs/webserv/init.cpp +++ b/srcs/webserv/init.cpp @@ -91,3 +91,119 @@ void Webserv::_init_http_status_map() _http_status[500] = S500; } + +void Webserv::_init_mime_types_map() +{ + _mime_types[""] = "application/octet-stream"; + + _mime_types["html"] = "text/html"; + _mime_types["htm"] = "text/html"; + _mime_types["shtml"] = "text/html"; + _mime_types["css"] = "text/css"; + _mime_types["xml"] = "text/xml"; + _mime_types["gif"] = "image/gif"; + _mime_types["jpeg"] = "image/jpeg"; + _mime_types["jpg"] = "image/jpeg"; + _mime_types["js"] = "application/javascript"; + _mime_types["atom"] = "application/atom+xml"; + _mime_types["rss"] = "application/rss+xml"; + + _mime_types["mml"] = "text/mathml"; + _mime_types["txt"] = "text/plain"; + _mime_types["jad"] = "text/vnd.sun.j2me.app-descriptor"; + _mime_types["wml"] = "text/vnd.wap.wml"; + _mime_types["htc"] = "text/x-component"; + + _mime_types["png"] = "image/png"; + _mime_types["tif"] = "image/tiff"; + _mime_types["tiff"] = "image/tiff"; + _mime_types["wbmp"] = "image/vnd.wap.wbmp"; + _mime_types["ico"] = "image/x-icon"; + _mime_types["jng"] = "image/x-jng"; + _mime_types["bmp"] = "image/x-ms-bmp"; + _mime_types["svg"] = "image/svg+xml"; + _mime_types["svgz"] = "image/svg+xml"; + _mime_types["webp"] = "image/webp"; + + _mime_types["woff"] = "application/font-woff"; + _mime_types["jar"] = "application/java-archive"; + _mime_types["war"] = "application/java-archive"; + _mime_types["ear"] = "application/java-archive"; + _mime_types["json"] = "application/json"; + _mime_types["hqx"] = "application/mac-binhex40"; + _mime_types["doc"] = "application/msword"; + _mime_types["pdf"] = "application/pdf"; + _mime_types["ps"] = "application/postscript"; + _mime_types["eps"] = "application/postscript"; + _mime_types["ai"] = "application/postscript"; + _mime_types["rtf"] = "application/rtf"; + _mime_types["m3u8"] = "application/vnd.apple.mpegurl"; + _mime_types["xls"] = "application/vnd.ms-excel"; + _mime_types["eot"] = "application/vnd.ms-fontobject"; + _mime_types["ppt"] = "application/vnd.ms-powerpoint"; + _mime_types["wmlc"] = "application/vnd.wap.wmlc"; + _mime_types["kml"] = "application/vnd.google-earth.kml+xml"; + _mime_types["kmz"] = "application/vnd.google-earth.kmz"; + _mime_types["7z"] = "application/x-7z-compressed"; + _mime_types["cco"] = "application/x-cocoa"; + _mime_types["jardiff"] = "application/x-java-archive-diff"; + _mime_types["jnlp"] = "application/x-java-jnlp-file"; + _mime_types["run"] = "application/x-makeself"; + _mime_types["pl"] = "application/x-perl"; + _mime_types["pm"] = "application/x-perl"; + _mime_types["prc"] = "application/x-pilot"; + _mime_types["pdb"] = "application/x-pilot"; + _mime_types["rar"] = "application/x-rar-compressed"; + _mime_types["rpm"] = "application/x-redhat-package-manager"; + _mime_types["sea"] = "application/x-sea"; + _mime_types["swf"] = "application/x-shockwave-flash"; + _mime_types["sit"] = "application/x-stuffit"; + _mime_types["tcl"] = "application/x-tcl"; + _mime_types["tk"] = "application/x-tcl"; + _mime_types["der"] = "application/x-x509-ca-cert"; + _mime_types["pem"] = "application/x-x509-ca-cert"; + _mime_types["crt"] = "application/x-x509-ca-cert"; + _mime_types["xpi"] = "application/x-xpinstall"; + _mime_types["xhtml"] = "application/xhtml+xml"; + _mime_types["xspf"] = "application/xspf+xml"; + _mime_types["zip"] = "application/zip"; + + _mime_types["bin"] = "application/octet-stream"; + _mime_types["exe"] = "application/octet-stream"; + _mime_types["dll"] = "application/octet-stream"; + _mime_types["deb"] = "application/octet-stream"; + _mime_types["dmg"] = "application/octet-stream"; + _mime_types["iso"] = "application/octet-stream"; + _mime_types["img"] = "application/octet-stream"; + _mime_types["msi"] = "application/octet-stream"; + _mime_types["msp"] = "application/octet-stream"; + _mime_types["msm"] = "application/octet-stream"; + + _mime_types["docx"] = "application/vnd.openxmlformats-officedocument.wordprocessingml.document"; + _mime_types["xlsx"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; + _mime_types["pptx"] = "application/vnd.openxmlformats-officedocument.presentationml.presentation"; + + _mime_types["mid"] = "audio/midi"; + _mime_types["midi"] = "audio/midi"; + _mime_types["kar"] = "audio/midi"; + _mime_types["mp3"] = "audio/mpeg"; + _mime_types["ogg"] = "audio/ogg"; + _mime_types["m4a"] = "audio/x-m4a"; + _mime_types["ra"] = "audio/x-realaudio"; + + _mime_types["3gpp"] = "video/3gpp"; + _mime_types["3gp"] = "video/3gpp"; + _mime_types["ts"] = "video/mp2t"; + _mime_types["mp4"] = "video/mp4"; + _mime_types["mpeg"] = "video/mpeg"; + _mime_types["mpg"] = "video/mpeg"; + _mime_types["mov"] = "video/quicktime"; + _mime_types["webm"] = "video/webm"; + _mime_types["flv"] = "video/x-flv"; + _mime_types["m4v"] = "video/x-m4v"; + _mime_types["mng"] = "video/x-mng"; + _mime_types["asx"] = "video/x-ms-asf"; + _mime_types["asf"] = "video/x-ms-asf"; + _mime_types["wmv"] = "video/x-ms-wmv"; + _mime_types["avi"] = "video/x-msvideo"; +} diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 705f77d..0b6f3fa 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -32,6 +32,19 @@ void Webserv::_send_response(Client *client, ServerConfig &server) return ; } + // Body send (WIP for working binary files) + if (client->body_size) + { + ret = ::send(client->fd, client->buf, client->body_size, 0); + if (ret == -1) + { + std::perror("err send()"); + std::cerr << "client.fd =" << client->fd << "\n"; // DEBUG + _close_client(client->fd); + return ; + } + } + if (client->get_headers("Connection") == "close") _close_client(client->fd); else @@ -114,7 +127,7 @@ void Webserv::_error_html_response(Client *client, ServerConfig &server) { std::string html_page = HTML_ERROR; ::replace_all_substr(html_page, STATUS_PLACEHOLDER, _http_status[client->status]); - _append_body(client, html_page.c_str(), html_page.size()); + _append_body(client, html_page.c_str(), html_page.size(), "html"); } else _get_file(client, server.error_pages[client->status]); @@ -145,11 +158,10 @@ void Webserv::_get(Client *client, ServerConfig &server, LocationConfig &locatio _get_file(client, path); } -#define MAX_FILESIZE 1000000 // (1Mo) void Webserv::_get_file(Client *client, const std::string &path) { std::ifstream ifd; // For chunk, ifstream directly in struct CLient for multiples read without close() ? - char buf[MAX_FILESIZE+1]; + // char buf[MAX_FILESIZE+1]; if (access(path.c_str(), F_OK) == -1) { @@ -186,7 +198,7 @@ void Webserv::_get_file(Client *client, const std::string &path) } ifd.seekg(0, std::ios::beg); - ifd.read(buf, size); + ifd.read(client->buf, size); if (!ifd) { std::cerr << path << ": ifd.read fail" << '\n'; @@ -195,15 +207,25 @@ void Webserv::_get_file(Client *client, const std::string &path) else { client->status = 200; - buf[ifd.gcount()] = '\0'; - _append_body(client, buf, ifd.gcount()); + client->buf[ifd.gcount()] = '\0'; + + std::string file_ext = ""; + size_t dot_pos = path.rfind("."); + std::cerr << "dot_pos = " << dot_pos << "\n"; + if (dot_pos != std::string::npos && dot_pos + 1 < path.size()) + file_ext = path.substr(dot_pos + 1); + std::cerr << "file_ext = " << file_ext << "\n"; + + client->body_size = ifd.gcount(); + // WIP, pass empty body argument because append to string mess up binary file + _append_body(client, "", client->body_size, file_ext); } ifd.close(); } } -void Webserv::_append_body(Client *client, const char *body, size_t body_size) +void Webserv::_append_body(Client *client, const char *body, size_t body_size, const std::string &file_extension) { /* TODO : determine Content-Type @@ -212,7 +234,12 @@ void Webserv::_append_body(Client *client, const char *body, size_t body_size) http://nginx.org/en/docs/http/ngx_http_core_module.html#types Need to look "conf/mime.types" of nginx. Maybe make a map<> based on that. */ - client->response.append("Content-Type: text/html; charset=UTF-8" CRLF); + const std::string &mime_type = _mime_types[file_extension]; + client->response.append("Content-Type: "); + client->response.append(mime_type); + if (mime_type.find("text/") != std::string::npos) + client->response.append("; charset=UTF-8"); + client->response.append(CRLF); client->response.append("Content-Length: "); std::string tmp = ::itos(body_size); @@ -220,7 +247,7 @@ void Webserv::_append_body(Client *client, const char *body, size_t body_size) client->response.append(CRLF); client->response.append(CRLF); - client->response.append(body); + client->response.append(body); } void Webserv::_post(Client *client, ServerConfig &server, LocationConfig &location) diff --git a/www/drill.jpg b/www/drill.jpg new file mode 100644 index 0000000000000000000000000000000000000000..1812dbd3c5b67d39e76835ebf5953a4da9048217 GIT binary patch literal 15900 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

v_3L**U z@A0U|8{0&-IWF}i^#hXW44k%DR4SJyMUmvaRMD-B5_B>85@f_Bsi!E6Ge}u7s60Hn zoQU6e20F#gq!DnmsVEM%NG1Y50BNi7hHOtDHTy-<6n81WfOxY6=H(O z7w{&O-vCaBJ!eIgkX0m3Bc0T+bMmine_UV#Vo_wMk8806JsGd99$P9aVL4j`f8wJj zGZF92&2)@E4PI|?E-)qe)@>n|cK@~H8ng13bG+tV|7|i8e|tOLM%!uVpAQ|hq}RXQRb;<5fj%*VZ}(YI7HBVEB&J$M*Jf3HQu*!LLxUg z-$+dQjt2$5{qlN%0O`tTS}V(^I`NL@K66yntM^{;aEo4Hp{C+VbBG&?T-v4In;oUi zS|m0dvFfd1L1+GKnV*T7^lS&CtM-$=@;$~zbex|*n&Sh^Gx%L(@2sf>O$0R2ywWb@ zc2yEYLNV3YNs*Xd2`ci?_#3!&oyPeANT*fc4xWuEjLO@a^Ai)F7&;plIk7nWzT}x1 z5#7tR9yCL`ZDikYZxW9Ik7;PgIqf9tOpim;yOZwjjq}LT1Y6pV&r-hc-t#_nEUayC zpS3(jESlvSLZ5em$pvqlBi$$`eVJPjd8>Bn6zP$(+9gkv7D@4xgLZ{8xLgg>UF{nw zwydsrz}X^PpJwJMh`YZ1O54Yv-l=_gKlurUnewowA?Wbe<8I}?= zBf2My5FX~G24%>UPFlqCVrwJwg_em|BDO2-Uxmj_+CLD z0LKN+iiaoPfT3jQTUhOMn|i1J0LTp;e~GG>?%a871I2w0VyToqz`oc0u3MnGWl|cH z8+`6Rd34-KK?L{0@Ll&oL_?%}_f7!EpU6ahcLt0u0s;fSkDPZ0-cjJ2zm6sMZX?P9 zer(c$zm5voUF0((bApGj5T*?60r+yG7x039hM#zGgRRuf6MUDz=NR}}9dwRJ@ zdWVYSrzrN`XO4#~_02!IMc{OUQ(=Fl!XQz` zl80DGAr;nQR-@3WX9!4&ZpnjXC6nBzo~Y(IGGSB z;%9a-OLMg7oL2(^(>MFF$&>zTUs|Ww+C$;sEE9LubaVBeQV%Xn;F0qZ@>wtx0;BZ2 zUxZ+>tT|;>j|S{=4{E%EbCC=<7O9YJ5w)Z;QHMa{nEC=DsZ!nXR$t~vheyCC`)~mh z%)9hoG-W14)&*LmjL&#DYxFyZc`ZQ7oLlgNH?^Uj_V@IS4!%HSIg|S0p z#Alc`G8mImO)bF69J%-A`rnDuetLPWKZk=lvc zlnOScJlK-7pLdq3ZvLeomG;K{@lpx53sl-RuY!56eYD<4dulDoi>Mu>u1$3uIue@? zKe?4#mm7wNFXA|mgA+6s1*`?%jR`<{cpIbb@U*$IT%{&Hyt zJHk~`c>prJfFWrWnexC`4g-MB7J-x?5 zXXJY^_*(SnS}9zp(&`hLD1E{;)GaLYQ;)OW&%T4ooii&LMnZa12T!yay|N!fx8CcD0>~_7+5Rv0H4eH>ywx8M2E(o=6hP-;hI*wCSKc zs`c%Vjx!}=k!*5dqspndzGUFR?`qh=iB6A{df$nUS#v5XP42r%a^W70x6`N+NMPwzh7ho{R^PZ~ zX~`EH1Hi0cbsls^^$i|2i-?l5BU$rkB<)s|e6%$b(LiMLhrv`Ez|9rGvX-g3?^ z*Vgug9(u`c97K-?Hs2>hmaYp{9V>`ZvbZ=TFFNw3(14H?Ccnf)JYSgiMiSJ)SiCEW*XlRom7# z!{qYXa*X@Ef8i-(968GdXbk(0v!sn-v8QSu9?BdkgTk~yFbaIPMW zs2-Xam_aql9D&EDgNV|v9)6G2XjL>4*}eo$UsObo%E2hDZni1^-0vTsElh*feg^E2 z`TaK`Lw~1kA24Apjs>_-I|5QL05_xYH-m1_QQX~2hyt@Sk1RXAT}M*Qn~%4xAkH9S zym2j0TVn+a literal 0 HcmV?d00001 diff --git a/www/favicon.ico b/www/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..8be776b58e6bfb513b2942c9223a5f27958f4fa5 GIT binary patch literal 2242 zcmV;z2tD_SP)R7l5-mV0d8WfjLi&+~hJm-o`QeS7cPZf!Sq={8`nF%a0|xKG%Gh>kEZ zs3=4O2~mk8kno=dV+<+@D57MLU`z}PH+6GkB16W88*Fsl#xC8uZf)PT@BMdqp2t5F zP@p=+>6-JE4+I|%41Q$u1#Hd%d{Qm#6B>*rc zK^VXHqUFmkFN}}U*wW14f_6TC(~XSQPI2NaG{_+em4l46e8imG4Qm>+y=&67@DIhZ z|8$^(ZN+MJO00Xd;XE)4NCXP&Pve&tKDE02k#AglX$PGx9W=)Cn9Tm2Cl9YCG$GBt zM|Yctlr{3{UOF;^wEDC0RGwU>u{u3spK_Mpn#E5!pO6wi<>Cb{9o@OdMyjI^9^O(S zZ`;TPO`L4p&PyYA;ACnzQj*5QlM3TFD3cI}1xCFS9GiKI_qM<4c8GRgxt{tT0|a9& zCV?c9_+D^3Qasu-U>S{HWk>Ze`_39HhnYJIQnHDeaza#bh+|D-peVVPsn!zS8&e$n zNf~!V(=mISdyBaFJ6-=ZMC?D+oA~$& zszFGc7v#=5WS*{b{1;GM*S72WpI^3q_E_&}HSy88veniijKp<3+UNK^vN3*Rsxn0` z1=UcY>VjO(!8(?>4qnP3P>Q;;9BZl2P!Cx4l1KSRihUC)#vcftXkXj)fD;PhT7+^_ z_FSJ}F|ol@(s7&hjxd<$5K)~ll(-TySxuxZQY*57N7=*_8>%#mMpnMufcrzq_LC*M z?;`We^^bh!r>zZg->DN5=-vb&1}O;ODyNLS(uAN8M$##&GWWV+)& z>h`J6R!cQ>z;Wjl#x_s>J*(4>SJk2DY3r& zO6Z)vN7o{#xzs8NwW35smXno)zU7kjSHP7o^iVvQ;R#N#=8O08C1(-seFH>GU6%fG zDdEx|vv22LpY2+)>P+|=uhrZLM=4z6;B?JP5f&39PMh|NTWYrCI*B4mEO9I`p&%?6 zs^bo(?67dHhVO-3-QUe!?{=|rq>b#x8^D=D7A*GL>*>xcq5bY{46i+Lr*~Q3D}F(Y z3a^Ipz?nUm!S!6MG_RNAiMa>~LK4NAD71J|V6{VOCSv@U;mELH+Jqe4FimhznptPY z;b;4(XS>l?Ex`4B%*Lx|R0A}B_YF#S2DdT0;Tcnyths^3>A$cEFDve->B56y68*~< z0>^Q11B>Gugpvp;smxf$4;jvU;8NIMV}Edlv2QtaUK`Q!@(A|DA>wKo+cArz&yauf z1i4++^yqC9D=^vTT%mC0FYjCuiQ?u`vFI7=Vhc!S@1`K1^cPmk?eW>@xU+DDJWz@X zjY0{8Z;?u(T!9r9sRTFzq(Qm@H>=4uK`O5h3hG5m?WkgON5VUYPIL68X;Ke$FsG*# z^?nL-po9>Dz&MOtt#kE~_gitzy>2CRNvG0aT?nluNx+6+wLut#wcrQ=XmBhR2xCD~ zwU}v3ea2v_4l$aJHE_%QUEJQeoJGIufoEMPkFfKFo2Bf zXcmWiN=FN3dO$qCdEVG7yH0lO9j>E82N_xF6@`v9VI7jlpkhgs7$g#@1?YrCz`TK` zi3=Amd2G(?g?o=2KQ#O8U4L7a#GaKV7Yh*?H(wiQSs~`mTat^f>0kV0OFr|0YR!4x zm)8u?*FDD0L(@za3_&R&4lOd2U?si;sU_92r97i?fGY*KN%UO#Yfn+F3M^V|a3!FOB8w>t8a>PMi(IZe+d;XMgiSFvEe;=+ZUwB;v9%at(} zE-EuV6JSIiapHY^zRw%VN;~KvNq_`_z>pD^bk;|s7+euk=y91YIHVgDQhJP@Jt1OS z!Sh^tdm_TR;=sWaS}TM&KT!I@U7aL`#0e=BqTS<@)vZ!#gmAE0;JZFO{VuJ&9tl2L z8l+=A&*mUbQLi+TOO3F2?g%q*8l(j literal 0 HcmV?d00001 diff --git a/www/kermit.ico b/www/kermit.ico new file mode 100644 index 0000000000000000000000000000000000000000..8be776b58e6bfb513b2942c9223a5f27958f4fa5 GIT binary patch literal 2242 zcmV;z2tD_SP)R7l5-mV0d8WfjLi&+~hJm-o`QeS7cPZf!Sq={8`nF%a0|xKG%Gh>kEZ zs3=4O2~mk8kno=dV+<+@D57MLU`z}PH+6GkB16W88*Fsl#xC8uZf)PT@BMdqp2t5F zP@p=+>6-JE4+I|%41Q$u1#Hd%d{Qm#6B>*rc zK^VXHqUFmkFN}}U*wW14f_6TC(~XSQPI2NaG{_+em4l46e8imG4Qm>+y=&67@DIhZ z|8$^(ZN+MJO00Xd;XE)4NCXP&Pve&tKDE02k#AglX$PGx9W=)Cn9Tm2Cl9YCG$GBt zM|Yctlr{3{UOF;^wEDC0RGwU>u{u3spK_Mpn#E5!pO6wi<>Cb{9o@OdMyjI^9^O(S zZ`;TPO`L4p&PyYA;ACnzQj*5QlM3TFD3cI}1xCFS9GiKI_qM<4c8GRgxt{tT0|a9& zCV?c9_+D^3Qasu-U>S{HWk>Ze`_39HhnYJIQnHDeaza#bh+|D-peVVPsn!zS8&e$n zNf~!V(=mISdyBaFJ6-=ZMC?D+oA~$& zszFGc7v#=5WS*{b{1;GM*S72WpI^3q_E_&}HSy88veniijKp<3+UNK^vN3*Rsxn0` z1=UcY>VjO(!8(?>4qnP3P>Q;;9BZl2P!Cx4l1KSRihUC)#vcftXkXj)fD;PhT7+^_ z_FSJ}F|ol@(s7&hjxd<$5K)~ll(-TySxuxZQY*57N7=*_8>%#mMpnMufcrzq_LC*M z?;`We^^bh!r>zZg->DN5=-vb&1}O;ODyNLS(uAN8M$##&GWWV+)& z>h`J6R!cQ>z;Wjl#x_s>J*(4>SJk2DY3r& zO6Z)vN7o{#xzs8NwW35smXno)zU7kjSHP7o^iVvQ;R#N#=8O08C1(-seFH>GU6%fG zDdEx|vv22LpY2+)>P+|=uhrZLM=4z6;B?JP5f&39PMh|NTWYrCI*B4mEO9I`p&%?6 zs^bo(?67dHhVO-3-QUe!?{=|rq>b#x8^D=D7A*GL>*>xcq5bY{46i+Lr*~Q3D}F(Y z3a^Ipz?nUm!S!6MG_RNAiMa>~LK4NAD71J|V6{VOCSv@U;mELH+Jqe4FimhznptPY z;b;4(XS>l?Ex`4B%*Lx|R0A}B_YF#S2DdT0;Tcnyths^3>A$cEFDve->B56y68*~< z0>^Q11B>Gugpvp;smxf$4;jvU;8NIMV}Edlv2QtaUK`Q!@(A|DA>wKo+cArz&yauf z1i4++^yqC9D=^vTT%mC0FYjCuiQ?u`vFI7=Vhc!S@1`K1^cPmk?eW>@xU+DDJWz@X zjY0{8Z;?u(T!9r9sRTFzq(Qm@H>=4uK`O5h3hG5m?WkgON5VUYPIL68X;Ke$FsG*# z^?nL-po9>Dz&MOtt#kE~_gitzy>2CRNvG0aT?nluNx+6+wLut#wcrQ=XmBhR2xCD~ zwU}v3ea2v_4l$aJHE_%QUEJQeoJGIufoEMPkFfKFo2Bf zXcmWiN=FN3dO$qCdEVG7yH0lO9j>E82N_xF6@`v9VI7jlpkhgs7$g#@1?YrCz`TK` zi3=Amd2G(?g?o=2KQ#O8U4L7a#GaKV7Yh*?H(wiQSs~`mTat^f>0kV0OFr|0YR!4x zm)8u?*FDD0L(@za3_&R&4lOd2U?si;sU_92r97i?fGY*KN%UO#Yfn+F3M^V|a3!FOB8w>t8a>PMi(IZe+d;XMgiSFvEe;=+ZUwB;v9%at(} zE-EuV6JSIiapHY^zRw%VN;~KvNq_`_z>pD^bk;|s7+euk=y91YIHVgDQhJP@Jt1OS z!Sh^tdm_TR;=sWaS}TM&KT!I@U7aL`#0e=BqTS<@)vZ!#gmAE0;JZFO{VuJ&9tl2L z8l+=A&*mUbQLi+TOO3F2?g%q*8l(j literal 0 HcmV?d00001 diff --git a/www/rfc2119.html b/www/rfc2119.html index b8b389b..42168fa 100644 --- a/www/rfc2119.html +++ b/www/rfc2119.html @@ -13,7 +13,7 @@ - +

@@ -309,4 +309,4 @@ Full stop should appear outside the parentheses in the last sentence. - + \ No newline at end of file diff --git a/www/rfc2119_files/errata-base.css b/www/rfc2119_files/errata-base.css new file mode 100644 index 0000000..c34a536 --- /dev/null +++ b/www/rfc2119_files/errata-base.css @@ -0,0 +1,139 @@ + diff --git a/www/rfc2119_files/errata-color.css b/www/rfc2119_files/errata-color.css new file mode 100644 index 0000000..74428de --- /dev/null +++ b/www/rfc2119_files/errata-color.css @@ -0,0 +1,43 @@ + diff --git a/www/rfc2119_files/errata-monochrome.css b/www/rfc2119_files/errata-monochrome.css new file mode 100644 index 0000000..be74384 --- /dev/null +++ b/www/rfc2119_files/errata-monochrome.css @@ -0,0 +1,34 @@ + diff --git a/www/rfc2119_files/errata-printer.css b/www/rfc2119_files/errata-printer.css new file mode 100644 index 0000000..4a3dab3 --- /dev/null +++ b/www/rfc2119_files/errata-printer.css @@ -0,0 +1,43 @@ + diff --git a/www/rfc2119_files/errata.js b/www/rfc2119_files/errata.js new file mode 100644 index 0000000..4e29587 --- /dev/null +++ b/www/rfc2119_files/errata.js @@ -0,0 +1,4 @@ +function hideFunction(nodeId) { + var ul = document.getElementById(nodeId) + ul.className = (ul.className=="nodeOpenClass") ? "nodeCloseClass" : "nodeOpenClass" +} diff --git a/www/rfc2119_files/errata.js.téléchargement b/www/rfc2119_files/errata.js.téléchargement new file mode 100644 index 0000000..4e29587 --- /dev/null +++ b/www/rfc2119_files/errata.js.téléchargement @@ -0,0 +1,4 @@ +function hideFunction(nodeId) { + var ul = document.getElementById(nodeId) + ul.className = (ul.className=="nodeOpenClass") ? "nodeCloseClass" : "nodeOpenClass" +} diff --git a/www/rfc2119_no_link.html b/www/rfc2119_no_link.html deleted file mode 100644 index eec8fe5..0000000 --- a/www/rfc2119_no_link.html +++ /dev/null @@ -1,300 +0,0 @@ - - - - rfc2119 - - -
-This is a purely informative rendering of an RFC that includes verified errata. This rendering may not be used as a reference. -
-
-The following 'Verified' errata have been incorporated in this document: - EID 493, EID 494, EID 495, EID 496, EID 498, EID 499, EID 500, EID 5101 -
- -
Network Working Group                                         S. Bradner
-Request for Comments: 2119                            Harvard University
-BCP: 14                                                       March 1997
-Category: Best Current Practice
-
-
-        Key words for use in RFCs to Indicate Requirement Levels
-
-Status of this Memo
-
-   This document specifies an Internet Best Current Practices for the
-   Internet Community, and requests discussion and suggestions for
-   improvements.  Distribution of this memo is unlimited.
-
-Abstract
-
-   In many standards track documents several words are used to signify
-   the requirements in the specification.  These words are often
-   capitalized.  This document defines these words as they should be
-   interpreted in IETF documents.  Authors who follow these guidelines
-   should incorporate this phrase near the beginning of their document:
-
-             The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL 
-       NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT 
-       RECOMMENDED",  "MAY", and "OPTIONAL" in this document are to 
-       be interpreted as described in RFC 2119.
-
-
EID 499 (Verified) is as follows:
-
-Section: Abstract
-
-Original Text:
-
-       The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
-       NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and
-       "OPTIONAL" in this document are to be interpreted as described in
-       RFC 2119.
-
-Corrected Text:
-
-       The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
-       NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT 
-       RECOMMENDED",  "MAY", and "OPTIONAL" in this document are to 
-       be interpreted as described in RFC 2119.
-
-Notes:
-The phrase "NOT RECOMMENDED" is missing from this sentence. -
-
- Note that the force of these words is modified by the requirement - level of the document in which they are used. - -1. MUST This word, or the terms "REQUIRED" or "SHALL", means that the - definition is an absolute requirement of the specification. -
-
EID 493 (Verified) is as follows:
-
-Section: 1
-
-Original Text:
-
-2. MUST NOT   This phrase, or the phrase "SHALL NOT", mean that the
-   definition is an absolute prohibition of the specification.
-
-Corrected Text:
-
-2. MUST NOT   This phrase, or the phrase "SHALL NOT", means that the
-   definition is an absolute prohibition of the specification.
-
-Notes:
- -
-
-
EID 498 (Verified) is as follows:
-
-Section: 1
-
-Original Text:
-
-4. SHOULD NOT   This phrase, or the phrase "NOT RECOMMENDED" mean that
-   there may exist valid reasons in particular circumstances when the
-   particular behavior is acceptable or even useful, but the full
-   implications should be understood and the case carefully weighed
-   before implementing any behavior described with this label.
-
-Corrected Text:
-
-4. SHOULD NOT   This phrase, or the phrase "NOT RECOMMENDED", means that
-   there may exist valid reasons in particular circumstances when the
-   particular behavior is acceptable or even useful, but the full
-   implications should be understood and the case carefully weighed
-   before implementing any behavior described with this label.
-
-Notes:
- -
-
-
EID 500 (Verified) is as follows:
-
-Section: 1
-
-Original Text:
-
-3. SHOULD   This word, or the adjective "RECOMMENDED", mean that there
-   may exist valid reasons in particular circumstances to ignore a
-   particular item, but the full implications must be understood and
-   carefully weighed before choosing a different course.
-
-Corrected Text:
-
-3. SHOULD   This word, or the adjective "RECOMMENDED", means that there
-   may exist valid reasons in particular circumstances to ignore a
-   particular item, but the full implications must be understood and
-   carefully weighed before choosing a different course.
-
-Notes:
- -
-
-
-
EID 495 (Verified) is as follows:
-
-Section: 1
-
-Original Text:
-
-1. MUST   This word, or the terms "REQUIRED" or "SHALL", mean that the
-   definition is an absolute requirement of the specification.
-
-
-Corrected Text:
-
-1. MUST   This word, or the terms "REQUIRED" or "SHALL", means that the
-   definition is an absolute requirement of the specification.
-
-Notes:
- -
-
-2. MUST NOT This phrase, or the phrase "SHALL NOT", mean that the - definition is an absolute prohibition of the specification. - -3. SHOULD This word, or the adjective "RECOMMENDED", mean that there - may exist valid reasons in particular circumstances to ignore a - particular item, but the full implications must be understood and - carefully weighed before choosing a different course. - -4. SHOULD NOT This phrase, or the phrase "NOT RECOMMENDED" mean that - there may exist valid reasons in particular circumstances when the - particular behavior is acceptable or even useful, but the full - implications should be understood and the case carefully weighed - before implementing any behavior described with this label. - -5. MAY This word, or the adjective "OPTIONAL", mean that an item is - truly optional. One vendor may choose to include the item because a - particular marketplace requires it or because the vendor feels that - it enhances the product while another vendor may omit the same item. - An implementation which does not include a particular option MUST be - prepared to interoperate with another implementation which does - include the option, though perhaps with reduced functionality. In the - same vein an implementation which does include a particular option - MUST be prepared to interoperate with another implementation which - does not include the option (except, of course, for the feature the - option provides). -
-
EID 5101 (Verified) is as follows:
-
-Section: 5
-
-Original Text:
-
-5. MAY   This word, or the adjective "OPTIONAL", mean that an item is
-   truly optional.  One vendor may choose to include the item because a
-   particular marketplace requires it or because the vendor feels that
-   it enhances the product while another vendor may omit the same item.
-   An implementation which does not include a particular option MUST be
-   prepared to interoperate with another implementation which does
-   include the option, though perhaps with reduced functionality. In the
-   same vein an implementation which does include a particular option
-   MUST be prepared to interoperate with another implementation which
-   does not include the option (except, of course, for the feature the
-   option provides.)
-
-Corrected Text:
-
-5. MAY   This word, or the adjective "OPTIONAL", mean that an item is
-   truly optional.  One vendor may choose to include the item because a
-   particular marketplace requires it or because the vendor feels that
-   it enhances the product while another vendor may omit the same item.
-   An implementation which does not include a particular option MUST be
-   prepared to interoperate with another implementation which does
-   include the option, though perhaps with reduced functionality. In the
-   same vein an implementation which does include a particular option
-   MUST be prepared to interoperate with another implementation which
-   does not include the option (except, of course, for the feature the
-   option provides).
-
-Notes:
-Full stop should appear outside the parentheses in the last sentence. -
-
-6. Guidance in the use of these Imperatives - - Imperatives of the type defined in this memo must be used with care - and sparingly. In particular, they MUST only be used where it is - actually required for interoperation or to limit behavior which has - potential for causing harm (e.g., limiting retransmissions) For -
-
EID 494 (Verified) is as follows:
-
-Section: 6
-
-Original Text:
-
-(e.g., limiting retransmisssions)
-
-Corrected Text:
-
-(e.g., limiting retransmissions)
-
-Notes:
- -
-
-
EID 496 (Verified) is as follows:
-
-Section: 6
-
-Original Text:
-
-   In particular, they MUST only be used where it is actually required
-   for interoperation or to limit behavior which has potential for
-   causing harm (e.g., limiting retransmisssions)  For example, they
-   must not be used to try to impose a particular method on
-   implementors where the method is not required for interoperability.   
-
-Corrected Text:
-
-   In particular, they MUST only be used where it is actually required
-   for interoperation or to limit behavior which has potential for
-   causing harm (e.g., limiting retransmissions).  For example, they
-   must not be used to try to impose a particular method on
-   implementors where the method is not required for interoperability.
-
-Notes:
- -
-
example, they must not be used to try to impose a particular method - on implementors where the method is not required for - interoperability. - -7. Security Considerations - - These terms are frequently used to specify behavior with security - implications. The effects on security of not implementing a MUST or - SHOULD, or doing something the specification says MUST NOT or SHOULD - NOT be done may be very subtle. Document authors should take the time - to elaborate the security implications of not following - recommendations or requirements as most implementors will not have - had the benefit of the experience and discussion that produced the - specification. - -8. Acknowledgments - - The definitions of these terms are an amalgam of definitions taken - from a number of RFCs. In addition, suggestions have been - incorporated from a number of people including Robert Ullmann, Thomas - Narten, Neal McBurnett, and Robert Elz. - -9. Author's Address - - Scott Bradner - Harvard University - 1350 Mass. Ave. - Cambridge, MA 02138 - - phone - +1 617 495 3864 - - email - sob@harvard.edu - - - - - - -
\ No newline at end of file diff --git a/www/root.png b/www/root.png new file mode 100644 index 0000000000000000000000000000000000000000..ebd1548b513d3dce429b71916e997020fe7992f1 GIT binary patch literal 456678 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

Y9-Gef=lwzkdn}wq4JvZ(+lC#D`Pl!MHi)bd^M& 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

    mAwbe7RWY?OGX$Bv~E93YtWsK>!CY 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
    niWqsG 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≀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

    "STATUS"


    Le Webserv/0.1

    " # define STATUS_PLACEHOLDER "$STATUS" -# define HTML_ERROR "" STATUS_PLACEHOLDER "

    " STATUS_PLACEHOLDER "


    Le Webserv/0.1

    " +# define HTML_ERROR \ +""\ +""\ +""\ + "" STATUS_PLACEHOLDER ""\ +""\ +""\ + "

    " STATUS_PLACEHOLDER "

    "\ + "
    "\ + "

    Le Webserv/0.1

    "\ +""\ +"" // When new status added, need to update _init_http_status_map() # define S200 "200 OK" From 79bdc1ecbfbb818522c7fe691a9d4bd934419146 Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Fri, 5 Aug 2022 23:01:06 +0200 Subject: [PATCH 09/11] ALL_METHODS renamed to ANY_METHODS --- srcs/utils.hpp | 4 ++-- srcs/webserv/http_status.hpp | 1 + srcs/webserv/init.cpp | 1 + srcs/webserv/response.cpp | 16 +++++++--------- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/srcs/utils.hpp b/srcs/utils.hpp index 7933552..b59df2f 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -17,7 +17,7 @@ // GET = 0b00000001, // POST = 0b00000010, // DELETE = 0b00000100, -// ALL_METHODS = 0b11111111, +// ANY_METHODS = 0b11111111, // }; enum http_method @@ -26,7 +26,7 @@ enum http_method GET = 1 << 0, POST = 1 << 1, DELETE = 1 << 2, - ALL_METHODS = 0b11111111, + ANY_METHODS = 0b11111111, }; std::vector split(std::string input, char delimiter); diff --git a/srcs/webserv/http_status.hpp b/srcs/webserv/http_status.hpp index 8aa513a..d6017f0 100644 --- a/srcs/webserv/http_status.hpp +++ b/srcs/webserv/http_status.hpp @@ -37,5 +37,6 @@ # define S413 "413 Content Too Large" # define S500 "500 Internal Server Error" +# define S501 "501 Not Implemented" #endif diff --git a/srcs/webserv/init.cpp b/srcs/webserv/init.cpp index ddd0edc..361eaa2 100644 --- a/srcs/webserv/init.cpp +++ b/srcs/webserv/init.cpp @@ -90,6 +90,7 @@ void Webserv::_init_http_status_map() _http_status[413] = S413; _http_status[500] = S500; + _http_status[501] = S501; } void Webserv::_init_mime_types_map() diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 0b6f3fa..405d0a7 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -66,6 +66,7 @@ void Webserv::_append_base_headers(Client *client) void Webserv::_construct_response(Client *client, ServerConfig &server) { + // TODO : Move this in read(), stop read if content too large if (client->get_body().size() > server.client_body_limit) { client->status = 413; @@ -77,27 +78,24 @@ void Webserv::_construct_response(Client *client, ServerConfig &server) void Webserv::_process_method(Client *client, ServerConfig &server, LocationConfig &location) { - unsigned int allow_methods = ALL_METHODS; // TEMP VARIABLE + unsigned int allow_methods = ANY_METHODS; // TEMP VARIABLE // after update in ConfigParser, use the "allow_methods" of location. - // TODO in ConfigParser : by default if no field in config file, "allow_methods" must be set to ALL_METHODS + // TODO in ConfigParser : by default if no field in config file, "allow_methods" must be set to ANY_METHODS if (client->get_method() == UNKNOWN) { - client->status = 400; + client->status = 501; } else if (allow_methods & client->get_method()) { switch (client->get_method()) { case (GET): - _get(client, server, location); - break; + _get(client, server, location); break; case (POST): - _post(client, server, location); - break; + _post(client, server, location); break; case (DELETE): - _delete(client, server, location); - break; + _delete(client, server, location); break; default: break; } From 05c7faf1f3f1325ad08b662e511ad3d31983231d Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Sat, 6 Aug 2022 04:46:40 +0200 Subject: [PATCH 10/11] server search for client completed with host:port --- srcs/Client.hpp | 1 + srcs/utils.cpp | 6 ++++++ srcs/utils.hpp | 9 +++++++++ srcs/webserv/Webserv.hpp | 5 +++-- srcs/webserv/accept.cpp | 5 +++-- srcs/webserv/base.cpp | 3 +-- srcs/webserv/close.cpp | 13 +++++++++++++ srcs/webserv/init.cpp | 26 ++++++++++++++++++-------- srcs/webserv/response.cpp | 19 +++++++++++++------ srcs/webserv/run_loop.cpp | 7 ++++--- 10 files changed, 71 insertions(+), 23 deletions(-) diff --git a/srcs/Client.hpp b/srcs/Client.hpp index c23a7de..5a67601 100644 --- a/srcs/Client.hpp +++ b/srcs/Client.hpp @@ -32,6 +32,7 @@ class Client static char buf[MAX_FILESIZE+1]; size_t body_size; unsigned int status; + listen_socket *lsocket; // const functions ? http_method get_method(); diff --git a/srcs/utils.cpp b/srcs/utils.cpp index 87b2741..2144a51 100644 --- a/srcs/utils.cpp +++ b/srcs/utils.cpp @@ -99,3 +99,9 @@ void replace_all_substr(std::string &str, const std::string &ori_substr, const s pos += new_substr.size(); } } + +bool operator==(const listen_socket& lhs, int fd) + { return lhs.fd == fd; } + +bool operator==(int fd, const listen_socket& rhs) + { return fd == rhs.fd; } diff --git a/srcs/utils.hpp b/srcs/utils.hpp index b59df2f..6ea657c 100644 --- a/srcs/utils.hpp +++ b/srcs/utils.hpp @@ -29,6 +29,15 @@ enum http_method ANY_METHODS = 0b11111111, }; +struct listen_socket +{ + int fd; + std::string host; + std::string port; +}; +bool operator==(const listen_socket& lhs, int fd); +bool operator==(int fd, const listen_socket& rhs); + std::vector split(std::string input, char delimiter); bool isNumeric(std::string str); bool isNumeric_btw(int low, int high, std::string str); diff --git a/srcs/webserv/Webserv.hpp b/srcs/webserv/Webserv.hpp index 67e2c13..c5d6409 100644 --- a/srcs/webserv/Webserv.hpp +++ b/srcs/webserv/Webserv.hpp @@ -58,14 +58,14 @@ class Webserv private: int _epfd; - std::vector _listen_sockets; + std::vector _listen_sockets; std::vector _servers; std::vector _clients; std::map _http_status; std::map _mime_types; // accept.cpp - void _accept_connection(int fd); + void _accept_connection(listen_socket &lsocket); // request.cpp void _request(Client *client); void _read_request(Client *client); @@ -106,6 +106,7 @@ class Webserv // close.cpp void _close_client(int fd); void _close_all_clients(); + void _close_all_listen_sockets(); // init.cpp void _bind(int socket_fd, in_port_t port, std::string host); void _listen(int socket_fd, unsigned int max_connections); diff --git a/srcs/webserv/accept.cpp b/srcs/webserv/accept.cpp index f6db17b..ac620db 100644 --- a/srcs/webserv/accept.cpp +++ b/srcs/webserv/accept.cpp @@ -1,7 +1,7 @@ #include "Webserv.hpp" -void Webserv::_accept_connection(int fd) +void Webserv::_accept_connection(listen_socket &lsocket) { struct sockaddr_in addr; socklen_t addr_len; @@ -9,7 +9,7 @@ void Webserv::_accept_connection(int fd) std::cerr << "accept()\n"; addr_len = sizeof addr; - accepted_fd = ::accept(fd, (sockaddr*)&addr, &addr_len); + accepted_fd = ::accept(lsocket.fd, (sockaddr*)&addr, &addr_len); if (accepted_fd == -1) { std::perror("err accept()"); @@ -21,6 +21,7 @@ void Webserv::_accept_connection(int fd) _clients.push_back(Client()); _clients.back().fd = accepted_fd; + _clients.back().lsocket = &lsocket; _epoll_update(accepted_fd, EPOLLIN, EPOLL_CTL_ADD); } diff --git a/srcs/webserv/base.cpp b/srcs/webserv/base.cpp index 3392619..ee59bbd 100644 --- a/srcs/webserv/base.cpp +++ b/srcs/webserv/base.cpp @@ -45,10 +45,9 @@ Webserv::Webserv(std::vector* servers) Webserv::~Webserv() { - //close(_socket_fd); - // TODO : CLOSE ALL _listen_sockets close(_epfd); _close_all_clients(); + _close_all_listen_sockets(); std::cerr << "Server destroyed\n"; } diff --git a/srcs/webserv/close.cpp b/srcs/webserv/close.cpp index 70a1e3f..9b28f6b 100644 --- a/srcs/webserv/close.cpp +++ b/srcs/webserv/close.cpp @@ -32,3 +32,16 @@ void Webserv::_close_all_clients() _clients.pop_back(); } } + +void Webserv::_close_all_listen_sockets() +{ + while (!_listen_sockets.empty()) + { + // _epoll_update(_listen_sockets.back().fd, 0, EPOLL_CTL_DEL); // normalement superflu, DEBUG + if (::close(_listen_sockets.back().fd) == -1) + std::perror("err close()"); + else + std::cerr << "close fd " << _listen_sockets.back().fd << "\n"; + _listen_sockets.pop_back(); + } +} diff --git a/srcs/webserv/init.cpp b/srcs/webserv/init.cpp index 361eaa2..3a33ed1 100644 --- a/srcs/webserv/init.cpp +++ b/srcs/webserv/init.cpp @@ -4,7 +4,9 @@ void Webserv::init_virtual_servers(std::vector* servers) { int ret; - std::vector _open_ports; + std::vector open_sockets; + struct listen_socket new_socket; + std::string host_port; _servers = *servers; _listen_sockets.clear(); @@ -12,7 +14,11 @@ void Webserv::init_virtual_servers(std::vector* servers) while (it != _servers.end()) { - if ( std::find(_open_ports.begin(), _open_ports.end(), std::atoi(it->port.data()) ) != _open_ports.end() ) + host_port.clear(); + host_port.append(it->host); + host_port.append(":"); + host_port.append(it->port); + if ( std::find(open_sockets.begin(), open_sockets.end(), host_port) != open_sockets.end() ) { ++it; continue; @@ -24,27 +30,31 @@ void Webserv::init_virtual_servers(std::vector* servers) std::perror("err socket()"); throw std::runtime_error("Socket init"); } + new_socket.fd = ret; + new_socket.host = it->host; + new_socket.port = it->port; + _listen_sockets.push_back(new_socket); + // HUGO ADD // // allow socket descriptor to be reuseable // I just copied it from https://www.ibm.com/docs/en/i/7.2?topic=designs-example-nonblocking-io-select int on = 1; - if (setsockopt(ret, SOL_SOCKET, SO_REUSEADDR, (char *)&on, sizeof(on)) < 0) + if (setsockopt(new_socket.fd, SOL_SOCKET, SO_REUSEADDR, &on, sizeof(on)) < 0) { ::perror("err setsockopt()"); throw std::runtime_error("Socket init"); } // // HUGO ADD END - _listen_sockets.push_back(ret); - _bind(_listen_sockets.back(), std::atoi(it->port.data()), it->host); - _listen(_listen_sockets.back(), 512); // 512 arbitrary + _bind(new_socket.fd, std::atoi(it->port.c_str()), it->host); + _listen(new_socket.fd, 512); // 512 arbitrary - if (_epoll_update(_listen_sockets.back(), EPOLLIN, EPOLL_CTL_ADD) == -1) + if (_epoll_update(new_socket.fd, EPOLLIN, EPOLL_CTL_ADD) == -1) throw std::runtime_error("Socket init"); - _open_ports.push_back(std::atoi(it->port.data())); + open_sockets.push_back(host_port); ++it; } } diff --git a/srcs/webserv/response.cpp b/srcs/webserv/response.cpp index 405d0a7..134dcff 100644 --- a/srcs/webserv/response.cpp +++ b/srcs/webserv/response.cpp @@ -356,24 +356,31 @@ void Webserv::_delete_file(Client *client, const std::string &path) ServerConfig &Webserv::_determine_process_server(Client *client) { /* - TODO : determine virtual server based on ip_address::port and server_name - Ior now its just based on server_name. - (maybe with a map< string, std::vector > where the string is "ip_adress::port") http://nginx.org/en/docs/http/request_processing.html + _determine_process_server() should be complete. + TODO : test it */ std::string &server_name = client->get_headers("Host"); std::vector::iterator it = _servers.begin(); + std::vector::iterator default_server = _servers.end(); + while (it != _servers.end()) { - if ( std::find(it->server_name.begin(), it->server_name.end(), server_name) != it->server_name.end() ) - break; + if (it->host == client->lsocket->host + && it->port == client->lsocket->port) + { + if ( std::find(it->server_name.begin(), it->server_name.end(), server_name) != it->server_name.end() ) + break; + else if (default_server == _servers.end()) + default_server = it; + } ++it; } if (it != _servers.end()) return (*it); else - return (_servers.front()); + return (*default_server); } LocationConfig &Webserv::_determine_location(ServerConfig &server, std::string &path) diff --git a/srcs/webserv/run_loop.cpp b/srcs/webserv/run_loop.cpp index 7f93043..ec9165d 100644 --- a/srcs/webserv/run_loop.cpp +++ b/srcs/webserv/run_loop.cpp @@ -11,6 +11,7 @@ void Webserv::run() int nfds; int i; int count_loop = 0; + std::vector::iterator it_socket; g_run = true; while (g_run) @@ -34,9 +35,9 @@ void Webserv::run() while (i < nfds) { // TODO : handle EPOLLERR and EPOLLHUP - if ((std::find(_listen_sockets.begin(), _listen_sockets.end(), events[i].data.fd) != _listen_sockets.end()) - && (events[i].events & EPOLLIN)) - _accept_connection(events[i].data.fd); + it_socket = std::find(_listen_sockets.begin(), _listen_sockets.end(), events[i].data.fd); + if (it_socket != _listen_sockets.end() && events[i].events & EPOLLIN) + _accept_connection(*it_socket); else if (events[i].events & EPOLLIN) _request( &(*std::find(_clients.begin(), _clients.end(), events[i].data.fd)) ); else if (events[i].events & EPOLLOUT) From b0df37df60ace07208b5a6009728a2e0d409031c Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Sat, 6 Aug 2022 04:50:19 +0200 Subject: [PATCH 11/11] fix Client uninitialised values --- srcs/Client.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/srcs/Client.cpp b/srcs/Client.cpp index 471da4e..f994d57 100644 --- a/srcs/Client.cpp +++ b/srcs/Client.cpp @@ -7,7 +7,7 @@ char Client::buf[MAX_FILESIZE+1]; * COPLIENS *********************************************/ -Client::Client( ) { +Client::Client() : fd(0), body_size(0), status(0) { return; }

    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�-Op|s;@7)&VP@^3XhVkdjL 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 -)y|K6m^%VO%Pq`o$)HOh(yS`WVLh3az( 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 iEoo0? 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±ERBzk_Vt}~mks}s7puie5bgstncloTN`(m6 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 >zz-uuuH#?3s})~xoHqZeQdzSv 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 ajUgi}D~oFBu6%@fuO%kpBk=Al>2s literal 0 HcmV?d00001 From 914d4cb0c03715d888ae4b6c8970499e7df123de Mon Sep 17 00:00:00 2001 From: LuckyLaszlo Date: Fri, 5 Aug 2022 04:44:23 +0200 Subject: [PATCH 08/11] HTML_ERROR Macro reformat --- srcs/webserv/http_status.hpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/srcs/webserv/http_status.hpp b/srcs/webserv/http_status.hpp index c53170d..8aa513a 100644 --- a/srcs/webserv/http_status.hpp +++ b/srcs/webserv/http_status.hpp @@ -12,7 +12,18 @@ // # define HTML_ERROR(STATUS) "\r\n"STATUS"