From 3f90d8b7ede63a5bc47b1373a4b0bb7f0ec4a28f Mon Sep 17 00:00:00 2001 From: Quinten Mennen Date: Thu, 18 Sep 2025 17:33:29 +0200 Subject: [PATCH] server: switch from edge trigger to level trigger --- webserv/server/Server.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/webserv/server/Server.cpp b/webserv/server/Server.cpp index d790247..6449d0a 100644 --- a/webserv/server/Server.cpp +++ b/webserv/server/Server.cpp @@ -1,5 +1,4 @@ #include "webserv/socket/Socket.hpp" -#include // For std::find #include // For inet_addr #include // For exit() #include // For memset @@ -97,10 +96,9 @@ void Server::handleConnection(struct epoll_event *event) { Socket &listener = getListener(event->data.fd); std::unique_ptr clientSocket = listener.accept(); - addToEpoll(*clientSocket, EPOLLIN | EPOLLET); + addToEpoll(*clientSocket, EPOLLIN); clients_.insert( {clientSocket->getFd(), std::make_unique(std::move(clientSocket), *this, getConfig(listener))}); - // clients_.insert({clientSocket->getFd(), Client{std::move(clientSocket), *this, getConfig(listener)}}); } Socket &Server::getListener(int fd) const @@ -142,8 +140,6 @@ const ServerConfig &Server::getConfig(int fd) const void Server::handleRequest(struct epoll_event *event) { - std::cout << "Handling request...\n"; - int client_fd = event->data.fd; Client &client = getClient(client_fd); @@ -154,7 +150,7 @@ void Server::responseReady(int client_fd) const { std::cout << "Response ready for client fd: " << client_fd << '\n'; struct epoll_event ev{}; - ev.events = EPOLLOUT | EPOLLET; + ev.events = EPOLLOUT; ev.data.fd = client_fd; if (epoll_ctl(epoll_fd_, EPOLL_CTL_MOD, client_fd, &ev) == -1) {