From 5076ab06300a4471a478e8ad3cb4cd7478b7596b Mon Sep 17 00:00:00 2001 From: Quinten Date: Wed, 5 Nov 2025 14:59:31 +0100 Subject: [PATCH] fix: missing permissions --- webserv/handler/CgiHandler.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/webserv/handler/CgiHandler.cpp b/webserv/handler/CgiHandler.cpp index 566f21d..8b2eecd 100644 --- a/webserv/handler/CgiHandler.cpp +++ b/webserv/handler/CgiHandler.cpp @@ -7,6 +7,7 @@ #include // for Log, LOCATION #include // for CgiSocket #include // for TimerSocket +#include // for URI #include // for trim #include @@ -27,6 +28,11 @@ void CgiHandler::handle() { Log::info("CgiHandler handling request"); + if (request_.getUri().isCgi() && request_.getUri().getCgiPath().empty() && access(request_.getUri().getFullPath().c_str(), X_OK) != 0) + { + ErrorHandler::createErrorResponse(403, response_); + return; + } // Initialize CGI process cgiProcess_ = std::make_unique(request_, *this);