Репозиторий ALT Linux backports/2.4
Последнее обновление: 9 июля 2008 | Пакетов: 497 | Посещений: 1576900
 поиск   регистрация   авторизация 
 
Группа :: Система/Серверы
Пакет: apache

 Главная   Изменения   Спек   Патчи   Загрузить   Bugs and FR 

Патч: apache-1.3.31-acl-support.patch


diff -Naur apache_1.3.33-orig/src/modules/standard/mod_cgi.c apache_1.3.33/src/modules/standard/mod_cgi.c
--- apache_1.3.33-orig/src/modules/standard/mod_cgi.c	2004-02-20 22:37:40 +0200
+++ apache_1.3.33/src/modules/standard/mod_cgi.c	2005-01-29 20:12:24 +0200
@@ -382,9 +382,20 @@
 	return log_scripterror(r, conf, FORBIDDEN, APLOG_NOERRNO,
 			       "attempt to invoke directory as script");
     if (!ap_suexec_enabled) {
+#ifndef ACL_SUPPORT
 	if (!ap_can_exec(&r->finfo))
 	    return log_scripterror(r, conf, FORBIDDEN, APLOG_NOERRNO,
 				   "file permissions deny server execution");
+#else
+	if(access(r->filename, X_OK)) {
+		if (errno == EACCES)
+			return log_scripterror(r, conf, FORBIDDEN, APLOG_NOERRNO,
+					"file permissions deny server execution");
+		else
+			return log_scripterror(r, conf, SERVER_ERROR, APLOG_NOERRNO,
+					"system error checking execute access");
+	}
+#endif
     }
 
     if ((retval = ap_setup_client_block(r, REQUEST_CHUNKED_ERROR)))
 
design & coding: Vladimir Lettiev aka crux © 2004-2005