Hi,
the backport below is in this form invalid ...
Am 14.02.2011 21:18, schrieb [email protected]:
Author: trawick
Date: Mon Feb 14 20:18:20 2011
New Revision: 1070639
URL: http://svn.apache.org/viewvc?rev=1070639&view=rev
Log:
backport from trunk r1033519:
*) suEXEC: Add Suexec directive to disable suEXEC without renaming the
binary (Suexec Off), or force startup failure if suEXEC is required
but not supported (Suexec On).
Submitted by: trawick
Reviewed by: covener, wrowe
Modified:
httpd/httpd/branches/2.2.x/CHANGES
httpd/httpd/branches/2.2.x/STATUS
httpd/httpd/branches/2.2.x/docs/manual/mod/core.xml
httpd/httpd/branches/2.2.x/docs/manual/mod/mod_suexec.xml
httpd/httpd/branches/2.2.x/os/unix/unixd.c
httpd/httpd/branches/2.2.x/os/unix/unixd.h
httpd/httpd/branches/2.2.x/server/core.c
Modified: httpd/httpd/branches/2.2.x/server/core.c
URL:
http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/server/core.c?rev=1070639&r1=1070638&r2=1070639&view=diff
==============================================================================
--- httpd/httpd/branches/2.2.x/server/core.c (original)
+++ httpd/httpd/branches/2.2.x/server/core.c Mon Feb 14 20:18:20 2011
@@ -3483,6 +3483,10 @@ AP_INIT_TAKE1("EnableExceptionHook", ap_
#endif
AP_INIT_TAKE1("TraceEnable", set_trace_enable, NULL, RSRC_CONF,
"'on' (default), 'off' or 'extended' to trace request body
content"),
+#ifdef SUEXEC_BIN
+AP_INIT_FLAG("Suexec", unixd_set_suexec, NULL, RSRC_CONF,
+ "Enable or disable suEXEC support"),
+#endif
{ NULL }
};
this one breaks NetWare build:
### mwccnlm Compiler:
# File: server\core.c
# ----------------------
# 3488: { "Suexec", unixd_set_suexec, ((void *) 0), 128, FLAG,
"Enable or disable suEXEC support" }
# Error: ^
# undefined identifier 'unixd_set_suexec'
Errors caused tool to abort.
the ifdef is pretty much useless since we define SUEXEC_BIN
unconditionally for all platforms in httpd.h:
/** The path to the suExec wrapper, can be overridden in Configuration */
#ifndef SUEXEC_BIN
#define SUEXEC_BIN HTTPD_ROOT "/bin/suexec"
#endif
and so I wonder how Win32 might pass this ....
anyway, we need to fix it. What is preferred?
1. move the SUEXEC_BIN define to $platform/os.h (and left undefined for
platforms which doint support suexec)
2. change to 'if !defined(NETWARE)' in core.c
3. move the whole unix stuff into a mod_unixd as it is in trunk (that
would be then another backport I guess)
?
Gün.