diff options
author | Eric Bénard <eric@eukrea.com> | 2012-11-25 18:25:05 +0100 |
---|---|---|
committer | Paul Eggleton <paul.eggleton@linux.intel.com> | 2012-11-27 10:48:22 +0000 |
commit | 5b3749ca143c5e2a957d1509d65164e191a92883 (patch) | |
tree | 4a982d00b4450b2729eca6018a7f4c03ba0df9f5 | |
parent | 5b427f6daae0caa7439256ecf35a877f1cb2dbed (diff) | |
download | meta-openembedded-5b3749ca143c5e2a957d1509d65164e191a92883.tar.gz |
apache2: upgrade to 2.4.3
Signed-off-by: Eric Bénard <eric@eukrea.com>
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1326980+.patch | 74 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1327036+.patch | 87 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1337344+.patch | 350 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-restart.patch | 35 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-configure_perlbin.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-configure_perlbin.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-ssl-ltmain-rpath.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-ssl-ltmain-rpath.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/fix-libtool-name.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/fix-libtool-name.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-corelimit.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-corelimit.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-export.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-export.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-selinux.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-selinux.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.2-r1332643.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1332643.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/replace-lynx-to-curl-in-apachectl-script.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/replace-lynx-to-curl-in-apachectl-script.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-2.4.3/server-makefile.patch (renamed from meta-webserver/recipes-httpd/apache2/apache2-2.4.2/server-makefile.patch) | 0 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2-native_2.4.3.bb (renamed from meta-webserver/recipes-httpd/apache2/apache2-native_2.4.2.bb) | 4 | ||||
-rw-r--r-- | meta-webserver/recipes-httpd/apache2/apache2_2.4.3.bb (renamed from meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb) | 10 |
15 files changed, 5 insertions, 555 deletions
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1326980+.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1326980+.patch deleted file mode 100644 index 98b226bf90..0000000000 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1326980+.patch +++ /dev/null | |||
@@ -1,74 +0,0 @@ | |||
1 | |||
2 | * modules/loggers/mod_log_debug.c: Mark private globals as static. | ||
3 | http://svn.apache.org/viewvc?view=revision&revision=1326980 | ||
4 | |||
5 | * modules/filters/sed1.c: Mark private globals as static const. | ||
6 | (command): Change p3 pointer to const. | ||
7 | http://svn.apache.org/viewvc?view=revision&revision=1326984 | ||
8 | |||
9 | * modules/filters/config.m4: Prevent libsed internals from polluting | ||
10 | the global symbol namespace. | ||
11 | http://svn.apache.org/viewvc?view=revision&revision=1326991 | ||
12 | |||
13 | Upstream-Status: Backport | ||
14 | |||
15 | --- httpd-2.4.2/modules/loggers/mod_log_debug.c | ||
16 | +++ httpd-2.4.2/modules/loggers/mod_log_debug.c | ||
17 | @@ -35,8 +35,8 @@ | ||
18 | apr_array_header_t *entries; | ||
19 | } log_debug_dirconf; | ||
20 | |||
21 | -const char *allhooks = "all"; | ||
22 | -const char * const hooks[] = { | ||
23 | +static const char *allhooks = "all"; | ||
24 | +static const char * const hooks[] = { | ||
25 | "log_transaction", /* 0 */ | ||
26 | "quick_handler", /* 1 */ | ||
27 | "handler", /* 2 */ | ||
28 | --- httpd-2.4.2/modules/filters/sed1.c | ||
29 | +++ httpd-2.4.2/modules/filters/sed1.c | ||
30 | @@ -25,7 +25,7 @@ | ||
31 | #include "apr_strings.h" | ||
32 | #include "regexp.h" | ||
33 | |||
34 | -char *trans[040] = { | ||
35 | +static const char *const trans[040] = { | ||
36 | "\\01", | ||
37 | "\\02", | ||
38 | "\\03", | ||
39 | @@ -58,7 +58,7 @@ | ||
40 | "\\36", | ||
41 | "\\37" | ||
42 | }; | ||
43 | -char rub[] = {"\\177"}; | ||
44 | +static const char rub[] = {"\\177"}; | ||
45 | |||
46 | extern int sed_step(char *p1, char *p2, int circf, step_vars_storage *vars); | ||
47 | static int substitute(sed_eval_t *eval, sed_reptr_t *ipc, | ||
48 | @@ -692,7 +692,8 @@ | ||
49 | step_vars_storage *step_vars) | ||
50 | { | ||
51 | int i; | ||
52 | - char *p1, *p2, *p3; | ||
53 | + char *p1, *p2; | ||
54 | + const char *p3; | ||
55 | int length; | ||
56 | char sz[32]; /* 32 bytes enough to store 64 bit integer in decimal */ | ||
57 | apr_status_t rv = APR_SUCCESS; | ||
58 | --- httpd-2.4.2/modules/filters/config.m4 | ||
59 | +++ httpd-2.4.2/modules/filters/config.m4 | ||
60 | @@ -16,7 +16,13 @@ | ||
61 | APACHE_MODULE(substitute, response content rewrite-like filtering, , , most) | ||
62 | |||
63 | sed_obj="mod_sed.lo sed0.lo sed1.lo regexp.lo" | ||
64 | -APACHE_MODULE(sed, filter request and/or response bodies through sed, $sed_obj, , most) | ||
65 | +APACHE_MODULE(sed, filter request and/or response bodies through sed, $sed_obj, , most, [ | ||
66 | + if test "x$enable_sed" = "xshared"; then | ||
67 | + # The only symbol which needs to be exported is the module | ||
68 | + # structure, so ask libtool to hide libsed internals: | ||
69 | + APR_ADDTO(MOD_SED_LDADD, [-export-symbols-regex sed_module]) | ||
70 | + fi | ||
71 | +]) | ||
72 | |||
73 | if test "$ac_cv_ebcdic" = "yes"; then | ||
74 | # mod_charset_lite can be very useful on an ebcdic system, | ||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1327036+.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1327036+.patch deleted file mode 100644 index 57b5155c35..0000000000 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1327036+.patch +++ /dev/null | |||
@@ -1,87 +0,0 @@ | |||
1 | |||
2 | * server/mpm_unix.c (dummy_connection): Use a TLS 1.0 close_notify | ||
3 | alert if the chosen listener is configured for https; not perfect | ||
4 | but better than sending an HTTP request. Adjust comments. | ||
5 | http://svn.apache.org/viewvc?view=revision&revision=1327036 | ||
6 | |||
7 | * server/mpm_unix.c (dummy_connection): Fix spello. | ||
8 | http://svn.apache.org/viewvc?view=revision&revision=1327080 | ||
9 | |||
10 | Upstream-Status: Backport | ||
11 | |||
12 | --- httpd-2.4.2/server/mpm_unix.c | ||
13 | +++ httpd-2.4.2/server/mpm_unix.c | ||
14 | @@ -501,14 +501,14 @@ | ||
15 | return rv; | ||
16 | } | ||
17 | |||
18 | -/* This function connects to the server, then immediately closes the connection. | ||
19 | - * This permits the MPM to skip the poll when there is only one listening | ||
20 | - * socket, because it provides a alternate way to unblock an accept() when | ||
21 | - * the pod is used. | ||
22 | - */ | ||
23 | +/* This function connects to the server and sends enough data to | ||
24 | + * ensure the child wakes up and processes a new connection. This | ||
25 | + * permits the MPM to skip the poll when there is only one listening | ||
26 | + * socket, because it provides a alternate way to unblock an accept() | ||
27 | + * when the pod is used. */ | ||
28 | static apr_status_t dummy_connection(ap_pod_t *pod) | ||
29 | { | ||
30 | - char *srequest; | ||
31 | + const char *data; | ||
32 | apr_status_t rv; | ||
33 | apr_socket_t *sock; | ||
34 | apr_pool_t *p; | ||
35 | @@ -574,24 +574,37 @@ | ||
36 | return rv; | ||
37 | } | ||
38 | |||
39 | - /* Create the request string. We include a User-Agent so that | ||
40 | - * adminstrators can track down the cause of the odd-looking | ||
41 | - * requests in their logs. | ||
42 | - */ | ||
43 | - srequest = apr_pstrcat(p, "OPTIONS * HTTP/1.0\r\nUser-Agent: ", | ||
44 | + if (lp->protocol && strcasecmp(lp->protocol, "https") == 0) { | ||
45 | + /* Send a TLS 1.0 close_notify alert. This is perhaps the | ||
46 | + * "least wrong" way to open and cleanly terminate an SSL | ||
47 | + * connection. It should "work" without noisy error logs if | ||
48 | + * the server actually expects SSLv3/TLSv1. With | ||
49 | + * SSLv23_server_method() OpenSSL's SSL_accept() fails | ||
50 | + * ungracefully on receipt of this message, since it requires | ||
51 | + * an 11-byte ClientHello message and this is too short. */ | ||
52 | + static const unsigned char tls10_close_notify[7] = { | ||
53 | + '\x15', /* TLSPlainText.type = Alert (21) */ | ||
54 | + '\x03', '\x01', /* TLSPlainText.version = {3, 1} */ | ||
55 | + '\x00', '\x02', /* TLSPlainText.length = 2 */ | ||
56 | + '\x01', /* Alert.level = warning (1) */ | ||
57 | + '\x00' /* Alert.description = close_notify (0) */ | ||
58 | + }; | ||
59 | + data = (const char *)tls10_close_notify; | ||
60 | + len = sizeof(tls10_close_notify); | ||
61 | + } | ||
62 | + else /* ... XXX other request types here? */ { | ||
63 | + /* Create an HTTP request string. We include a User-Agent so | ||
64 | + * that adminstrators can track down the cause of the | ||
65 | + * odd-looking requests in their logs. A complete request is | ||
66 | + * used since kernel-level filtering may require that much | ||
67 | + * data before returning from accept(). */ | ||
68 | + data = apr_pstrcat(p, "OPTIONS * HTTP/1.0\r\nUser-Agent: ", | ||
69 | ap_get_server_description(), | ||
70 | " (internal dummy connection)\r\n\r\n", NULL); | ||
71 | + len = strlen(data); | ||
72 | + } | ||
73 | |||
74 | - /* Since some operating systems support buffering of data or entire | ||
75 | - * requests in the kernel, we send a simple request, to make sure | ||
76 | - * the server pops out of a blocking accept(). | ||
77 | - */ | ||
78 | - /* XXX: This is HTTP specific. We should look at the Protocol for each | ||
79 | - * listener, and send the correct type of request to trigger any Accept | ||
80 | - * Filters. | ||
81 | - */ | ||
82 | - len = strlen(srequest); | ||
83 | - apr_socket_send(sock, srequest, &len); | ||
84 | + apr_socket_send(sock, data, &len); | ||
85 | apr_socket_close(sock); | ||
86 | apr_pool_destroy(p); | ||
87 | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1337344+.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1337344+.patch deleted file mode 100644 index 646976a0fd..0000000000 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1337344+.patch +++ /dev/null | |||
@@ -1,350 +0,0 @@ | |||
1 | |||
2 | * support/suexec.c: Add gcc format-string attributes to logging | ||
3 | functions. | ||
4 | (main): Always print uid/gid as unsigned long, and cast to avoid | ||
5 | warnings (which somewhat defeats the point of the format string | ||
6 | attrs, but is necessary since the size of gid/uid varies). | ||
7 | http://svn.apache.org/viewvc?view=revision&revision=1337344 | ||
8 | |||
9 | |||
10 | |||
11 | suexec: Add support for logging to syslog as an alternative to a | ||
12 | logfile. | ||
13 | |||
14 | * support/suexec.c (err_output) [AP_LOG_SYSLOG]: Log to syslog. | ||
15 | (main): Close syslog fd if open, before execv. Add -V output | ||
16 | for AP_LOG_SYSLOG. | ||
17 | |||
18 | * configure.in: Add --with-suexec-syslog argument; allow | ||
19 | --without-suexec-logfile to omit definition of AP_LOG_EXEC. | ||
20 | |||
21 | http://svn.apache.org/viewvc?view=revision&revision=1341905 | ||
22 | |||
23 | |||
24 | |||
25 | suexec: Support use of setgid/setuid capability bits on Linux, a | ||
26 | weaker set of privileges than the full setuid/setgid root binary. | ||
27 | |||
28 | * configure.in: Add --enable-suexec-capabilites flag. | ||
29 | |||
30 | * Makefile.in: If configured, use setcap instead of chmod 7555 on | ||
31 | installed suexec binary. | ||
32 | |||
33 | * modules/arch/unix/mod_unixd.c (unixd_pre_config): Drop test for | ||
34 | setuid bit if capability bits are used. | ||
35 | |||
36 | * docs/manual/: Add docs. | ||
37 | |||
38 | http://svn.apache.org/viewvc?view=revision&revision=1342065 | ||
39 | |||
40 | |||
41 | |||
42 | * docs/manual/suexec.html.en: Update for syslog logging. | ||
43 | |||
44 | http://svn.apache.org/viewvc?view=revision&revision=1341930 | ||
45 | |||
46 | |||
47 | |||
48 | Upstream-Status: Backport | ||
49 | |||
50 | --- httpd-2.4.2/configure.in.r1337344+ | ||
51 | +++ httpd-2.4.2/configure.in | ||
52 | @@ -700,7 +700,24 @@ APACHE_HELP_STRING(--with-suexec-gidmin, | ||
53 | |||
54 | AC_ARG_WITH(suexec-logfile, | ||
55 | APACHE_HELP_STRING(--with-suexec-logfile,Set the logfile),[ | ||
56 | - AC_DEFINE_UNQUOTED(AP_LOG_EXEC, "$withval", [SuExec log file] ) ] ) | ||
57 | + if test "x$withval" = "xyes"; then | ||
58 | + AC_DEFINE_UNQUOTED(AP_LOG_EXEC, "$withval", [SuExec log file]) | ||
59 | + fi | ||
60 | +]) | ||
61 | + | ||
62 | +AC_ARG_WITH(suexec-syslog, | ||
63 | +APACHE_HELP_STRING(--with-suexec-syslog,Set the logfile),[ | ||
64 | + if test $withval = "yes"; then | ||
65 | + if test "x${with_suexec_logfile}" != "xno"; then | ||
66 | + AC_MSG_NOTICE([hint: use "--without-suexec-logfile --with-suexec-syslog"]) | ||
67 | + AC_MSG_ERROR([suexec does not support both logging to file and syslog]) | ||
68 | + fi | ||
69 | + AC_CHECK_FUNCS([vsyslog], [], [ | ||
70 | + AC_MSG_ERROR([cannot support syslog from suexec without vsyslog()])]) | ||
71 | + AC_DEFINE(AP_LOG_SYSLOG, 1, [SuExec log to syslog]) | ||
72 | + fi | ||
73 | +]) | ||
74 | + | ||
75 | |||
76 | AC_ARG_WITH(suexec-safepath, | ||
77 | APACHE_HELP_STRING(--with-suexec-safepath,Set the safepath),[ | ||
78 | @@ -710,6 +727,15 @@ AC_ARG_WITH(suexec-umask, | ||
79 | APACHE_HELP_STRING(--with-suexec-umask,umask for suexec'd process),[ | ||
80 | AC_DEFINE_UNQUOTED(AP_SUEXEC_UMASK, 0$withval, [umask for suexec'd process] ) ] ) | ||
81 | |||
82 | +INSTALL_SUEXEC=setuid | ||
83 | +AC_ARG_ENABLE([suexec-capabilities], | ||
84 | +APACHE_HELP_STRING(--enable-suexec-capabilities,Use Linux capability bits not setuid root suexec), [ | ||
85 | +INSTALL_SUEXEC=caps | ||
86 | +AC_DEFINE(AP_SUEXEC_CAPABILITIES, 1, | ||
87 | + [Enable if suexec is installed with Linux capabilities, not setuid]) | ||
88 | +]) | ||
89 | +APACHE_SUBST(INSTALL_SUEXEC) | ||
90 | + | ||
91 | dnl APR should go after the other libs, so the right symbols can be picked up | ||
92 | if test x${apu_found} != xobsolete; then | ||
93 | AP_LIBS="$AP_LIBS `$apu_config --avoid-ldap --link-libtool`" | ||
94 | --- httpd-2.4.2/docs/manual/suexec.html.en.r1337344+ | ||
95 | +++ httpd-2.4.2/docs/manual/suexec.html.en | ||
96 | @@ -369,6 +369,21 @@ | ||
97 | together with the <code>--enable-suexec</code> option to let | ||
98 | APACI accept your request for using the suEXEC feature.</dd> | ||
99 | |||
100 | + <dt><code>--enable-suexec-capabilities</code></dt> | ||
101 | + | ||
102 | + <dd><strong>Linux specific:</strong> Normally, | ||
103 | + the <code>suexec</code> binary is installed "setuid/setgid | ||
104 | + root", which allows it to run with the full privileges of the | ||
105 | + root user. If this option is used, the <code>suexec</code> | ||
106 | + binary will instead be installed with only the setuid/setgid | ||
107 | + "capability" bits set, which is the subset of full root | ||
108 | + priviliges required for suexec operation. Note that | ||
109 | + the <code>suexec</code> binary may not be able to write to a log | ||
110 | + file in this mode; it is recommended that the | ||
111 | + <code>--with-suexec-syslog --without-suexec-logfile</code> | ||
112 | + options are used in conjunction with this mode, so that syslog | ||
113 | + logging is used instead.</dd> | ||
114 | + | ||
115 | <dt><code>--with-suexec-bin=<em>PATH</em></code></dt> | ||
116 | |||
117 | <dd>The path to the <code>suexec</code> binary must be hard-coded | ||
118 | @@ -430,6 +445,12 @@ | ||
119 | "<code>suexec_log</code>" and located in your standard logfile | ||
120 | directory (<code>--logfiledir</code>).</dd> | ||
121 | |||
122 | + <dt><code>--with-suexec-syslog</code></dt> | ||
123 | + | ||
124 | + <dd>If defined, suexec will log notices and errors to syslog | ||
125 | + instead of a logfile. This option must be combined | ||
126 | + with <code>--without-suexec-logfile</code>.</dd> | ||
127 | + | ||
128 | <dt><code>--with-suexec-safepath=<em>PATH</em></code></dt> | ||
129 | |||
130 | <dd>Define a safe PATH environment to pass to CGI | ||
131 | @@ -546,9 +567,12 @@ | ||
132 | |||
133 | <p>The suEXEC wrapper will write log information | ||
134 | to the file defined with the <code>--with-suexec-logfile</code> | ||
135 | - option as indicated above. If you feel you have configured and | ||
136 | - installed the wrapper properly, have a look at this log and the | ||
137 | - error_log for the server to see where you may have gone astray.</p> | ||
138 | + option as indicated above, or to syslog if <code>--with-suexec-syslog</code> | ||
139 | + is used. If you feel you have configured and | ||
140 | + installed the wrapper properly, have a look at the log and the | ||
141 | + error_log for the server to see where you may have gone astray. | ||
142 | + The output of <code>"suexec -V"</code> will show the options | ||
143 | + used to compile suexec, if using a binary distribution.</p> | ||
144 | |||
145 | </div><div class="top"><a href="#page-header"><img alt="top" src="./images/up.gif" /></a></div> | ||
146 | <div class="section"> | ||
147 | @@ -615,4 +639,4 @@ | ||
148 | </div><div id="footer"> | ||
149 | <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> | ||
150 | <p class="menu"><a href="./mod/">Modules</a> | <a href="./mod/directives.html">Directives</a> | <a href="./faq/">FAQ</a> | <a href="./glossary.html">Glossary</a> | <a href="./sitemap.html">Sitemap</a></p></div> | ||
151 | -</body></html> | ||
152 | \ No newline at end of file | ||
153 | +</body></html> | ||
154 | --- httpd-2.4.2/Makefile.in.r1337344+ | ||
155 | +++ httpd-2.4.2/Makefile.in | ||
156 | @@ -236,11 +236,22 @@ install-man: | ||
157 | cd $(DESTDIR)$(manualdir) && find . -name ".svn" -type d -print | xargs rm -rf 2>/dev/null || true; \ | ||
158 | fi | ||
159 | |||
160 | -install-suexec: | ||
161 | +install-suexec: install-suexec-binary install-suexec-$(INSTALL_SUEXEC) | ||
162 | + | ||
163 | +install-suexec-binary: | ||
164 | @if test -f $(builddir)/support/suexec; then \ | ||
165 | test -d $(DESTDIR)$(sbindir) || $(MKINSTALLDIRS) $(DESTDIR)$(sbindir); \ | ||
166 | $(INSTALL_PROGRAM) $(top_builddir)/support/suexec $(DESTDIR)$(sbindir); \ | ||
167 | - chmod 4755 $(DESTDIR)$(sbindir)/suexec; \ | ||
168 | + fi | ||
169 | + | ||
170 | +install-suexec-setuid: | ||
171 | + @if test -f $(builddir)/support/suexec; then \ | ||
172 | + chmod 4755 $(DESTDIR)$(sbindir)/suexec; \ | ||
173 | + fi | ||
174 | + | ||
175 | +install-suexec-caps: | ||
176 | + @if test -f $(builddir)/support/suexec; then \ | ||
177 | + setcap 'cap_setuid,cap_setgid+pe' $(DESTDIR)$(sbindir)/suexec; \ | ||
178 | fi | ||
179 | |||
180 | suexec: | ||
181 | --- httpd-2.4.2/modules/arch/unix/mod_unixd.c.r1337344+ | ||
182 | +++ httpd-2.4.2/modules/arch/unix/mod_unixd.c | ||
183 | @@ -284,6 +284,13 @@ unixd_set_suexec(cmd_parms *cmd, void *d | ||
184 | return NULL; | ||
185 | } | ||
186 | |||
187 | +#ifdef AP_SUEXEC_CAPABILITIES | ||
188 | +/* If suexec is using capabilities, don't test for the setuid bit. */ | ||
189 | +#define SETUID_TEST(finfo) (1) | ||
190 | +#else | ||
191 | +#define SETUID_TEST(finfo) (finfo.protection & APR_USETID) | ||
192 | +#endif | ||
193 | + | ||
194 | static int | ||
195 | unixd_pre_config(apr_pool_t *pconf, apr_pool_t *plog, | ||
196 | apr_pool_t *ptemp) | ||
197 | @@ -300,7 +307,7 @@ unixd_pre_config(apr_pool_t *pconf, apr_ | ||
198 | ap_unixd_config.suexec_enabled = 0; | ||
199 | if ((apr_stat(&wrapper, SUEXEC_BIN, APR_FINFO_NORM, ptemp)) | ||
200 | == APR_SUCCESS) { | ||
201 | - if ((wrapper.protection & APR_USETID) && wrapper.user == 0 | ||
202 | + if (SETUID_TEST(wrapper) && wrapper.user == 0 | ||
203 | && (access(SUEXEC_BIN, R_OK|X_OK) == 0)) { | ||
204 | ap_unixd_config.suexec_enabled = 1; | ||
205 | ap_unixd_config.suexec_disabled_reason = ""; | ||
206 | --- httpd-2.4.2/support/suexec.c.r1337344+ | ||
207 | +++ httpd-2.4.2/support/suexec.c | ||
208 | @@ -58,6 +58,10 @@ | ||
209 | #include <grp.h> | ||
210 | #endif | ||
211 | |||
212 | +#ifdef AP_LOG_SYSLOG | ||
213 | +#include <syslog.h> | ||
214 | +#endif | ||
215 | + | ||
216 | #if defined(PATH_MAX) | ||
217 | #define AP_MAXPATH PATH_MAX | ||
218 | #elif defined(MAXPATHLEN) | ||
219 | @@ -69,7 +73,12 @@ | ||
220 | #define AP_ENVBUF 256 | ||
221 | |||
222 | extern char **environ; | ||
223 | + | ||
224 | +#ifdef AP_LOG_SYSLOG | ||
225 | +static int log_open; | ||
226 | +#else | ||
227 | static FILE *log = NULL; | ||
228 | +#endif | ||
229 | |||
230 | static const char *const safe_env_lst[] = | ||
231 | { | ||
232 | @@ -128,10 +137,23 @@ static const char *const safe_env_lst[] | ||
233 | NULL | ||
234 | }; | ||
235 | |||
236 | +static void log_err(const char *fmt,...) | ||
237 | + __attribute__((format(printf,1,2))); | ||
238 | +static void log_no_err(const char *fmt,...) | ||
239 | + __attribute__((format(printf,1,2))); | ||
240 | +static void err_output(int is_error, const char *fmt, va_list ap) | ||
241 | + __attribute__((format(printf,2,0))); | ||
242 | |||
243 | static void err_output(int is_error, const char *fmt, va_list ap) | ||
244 | { | ||
245 | -#ifdef AP_LOG_EXEC | ||
246 | +#if defined(AP_LOG_SYSLOG) | ||
247 | + if (!log_open) { | ||
248 | + openlog("suexec", LOG_PID, LOG_DAEMON); | ||
249 | + log_open = 1; | ||
250 | + } | ||
251 | + | ||
252 | + vsyslog(is_error ? LOG_ERR : LOG_INFO, fmt, ap); | ||
253 | +#elif defined(AP_LOG_EXEC) | ||
254 | time_t timevar; | ||
255 | struct tm *lt; | ||
256 | |||
257 | @@ -263,7 +285,7 @@ int main(int argc, char *argv[]) | ||
258 | */ | ||
259 | uid = getuid(); | ||
260 | if ((pw = getpwuid(uid)) == NULL) { | ||
261 | - log_err("crit: invalid uid: (%ld)\n", uid); | ||
262 | + log_err("crit: invalid uid: (%lu)\n", (unsigned long)uid); | ||
263 | exit(102); | ||
264 | } | ||
265 | /* | ||
266 | @@ -289,7 +311,9 @@ int main(int argc, char *argv[]) | ||
267 | #ifdef AP_HTTPD_USER | ||
268 | fprintf(stderr, " -D AP_HTTPD_USER=\"%s\"\n", AP_HTTPD_USER); | ||
269 | #endif | ||
270 | -#ifdef AP_LOG_EXEC | ||
271 | +#if defined(AP_LOG_SYSLOG) | ||
272 | + fprintf(stderr, " -D AP_LOG_SYSLOG\n"); | ||
273 | +#elif defined(AP_LOG_EXEC) | ||
274 | fprintf(stderr, " -D AP_LOG_EXEC=\"%s\"\n", AP_LOG_EXEC); | ||
275 | #endif | ||
276 | #ifdef AP_SAFE_PATH | ||
277 | @@ -440,7 +464,7 @@ int main(int argc, char *argv[]) | ||
278 | * a UID less than AP_UID_MIN. Tsk tsk. | ||
279 | */ | ||
280 | if ((uid == 0) || (uid < AP_UID_MIN)) { | ||
281 | - log_err("cannot run as forbidden uid (%d/%s)\n", uid, cmd); | ||
282 | + log_err("cannot run as forbidden uid (%lu/%s)\n", (unsigned long)uid, cmd); | ||
283 | exit(107); | ||
284 | } | ||
285 | |||
286 | @@ -449,7 +473,7 @@ int main(int argc, char *argv[]) | ||
287 | * or as a GID less than AP_GID_MIN. Tsk tsk. | ||
288 | */ | ||
289 | if ((gid == 0) || (gid < AP_GID_MIN)) { | ||
290 | - log_err("cannot run as forbidden gid (%d/%s)\n", gid, cmd); | ||
291 | + log_err("cannot run as forbidden gid (%lu/%s)\n", (unsigned long)gid, cmd); | ||
292 | exit(108); | ||
293 | } | ||
294 | |||
295 | @@ -460,7 +484,7 @@ int main(int argc, char *argv[]) | ||
296 | * and setgid() to the target group. If unsuccessful, error out. | ||
297 | */ | ||
298 | if (((setgid(gid)) != 0) || (initgroups(actual_uname, gid) != 0)) { | ||
299 | - log_err("failed to setgid (%ld: %s)\n", gid, cmd); | ||
300 | + log_err("failed to setgid (%lu: %s)\n", (unsigned long)gid, cmd); | ||
301 | exit(109); | ||
302 | } | ||
303 | |||
304 | @@ -468,7 +492,7 @@ int main(int argc, char *argv[]) | ||
305 | * setuid() to the target user. Error out on fail. | ||
306 | */ | ||
307 | if ((setuid(uid)) != 0) { | ||
308 | - log_err("failed to setuid (%ld: %s)\n", uid, cmd); | ||
309 | + log_err("failed to setuid (%lu: %s)\n", (unsigned long)uid, cmd); | ||
310 | exit(110); | ||
311 | } | ||
312 | |||
313 | @@ -556,11 +580,11 @@ int main(int argc, char *argv[]) | ||
314 | (gid != dir_info.st_gid) || | ||
315 | (uid != prg_info.st_uid) || | ||
316 | (gid != prg_info.st_gid)) { | ||
317 | - log_err("target uid/gid (%ld/%ld) mismatch " | ||
318 | - "with directory (%ld/%ld) or program (%ld/%ld)\n", | ||
319 | - uid, gid, | ||
320 | - dir_info.st_uid, dir_info.st_gid, | ||
321 | - prg_info.st_uid, prg_info.st_gid); | ||
322 | + log_err("target uid/gid (%lu/%lu) mismatch " | ||
323 | + "with directory (%lu/%lu) or program (%lu/%lu)\n", | ||
324 | + (unsigned long)uid, (unsigned long)gid, | ||
325 | + (unsigned long)dir_info.st_uid, (unsigned long)dir_info.st_gid, | ||
326 | + (unsigned long)prg_info.st_uid, (unsigned long)prg_info.st_gid); | ||
327 | exit(120); | ||
328 | } | ||
329 | /* | ||
330 | @@ -585,6 +609,12 @@ int main(int argc, char *argv[]) | ||
331 | #endif /* AP_SUEXEC_UMASK */ | ||
332 | |||
333 | /* Be sure to close the log file so the CGI can't mess with it. */ | ||
334 | +#ifdef AP_LOG_SYSLOG | ||
335 | + if (log_open) { | ||
336 | + closelog(); | ||
337 | + log_open = 0; | ||
338 | + } | ||
339 | +#else | ||
340 | if (log != NULL) { | ||
341 | #if APR_HAVE_FCNTL_H | ||
342 | /* | ||
343 | @@ -606,6 +636,7 @@ int main(int argc, char *argv[]) | ||
344 | log = NULL; | ||
345 | #endif | ||
346 | } | ||
347 | +#endif | ||
348 | |||
349 | /* | ||
350 | * Execute the command, replacing our image with its own. | ||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-restart.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-restart.patch deleted file mode 100644 index 42254d2f8c..0000000000 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-restart.patch +++ /dev/null | |||
@@ -1,35 +0,0 @@ | |||
1 | |||
2 | * server/main.c (main): Bail out *before* signalling the server | ||
3 | if the config is bad. (as per the claim in the docs!) | ||
4 | |||
5 | https://bugzilla.redhat.com/show_bug.cgi?id=814645 | ||
6 | http://svn.apache.org/viewvc?view=revision&revision=1328345 | ||
7 | |||
8 | Upstream-Status: Backport | ||
9 | |||
10 | --- httpd-2.4.2/server/main.c.restart | ||
11 | +++ httpd-2.4.2/server/main.c | ||
12 | @@ -671,6 +671,11 @@ int main(int argc, const char * const ar | ||
13 | } | ||
14 | } | ||
15 | |||
16 | + /* If our config failed, deal with that here. */ | ||
17 | + if (rv != OK) { | ||
18 | + destroy_and_exit_process(process, 1); | ||
19 | + } | ||
20 | + | ||
21 | signal_server = APR_RETRIEVE_OPTIONAL_FN(ap_signal_server); | ||
22 | if (signal_server) { | ||
23 | int exit_status; | ||
24 | @@ -680,11 +685,6 @@ int main(int argc, const char * const ar | ||
25 | } | ||
26 | } | ||
27 | |||
28 | - /* If our config failed, deal with that here. */ | ||
29 | - if (rv != OK) { | ||
30 | - destroy_and_exit_process(process, 1); | ||
31 | - } | ||
32 | - | ||
33 | apr_pool_clear(plog); | ||
34 | |||
35 | if ( ap_run_open_logs(pconf, plog, ptemp, ap_server_conf) != OK) { | ||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-configure_perlbin.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-configure_perlbin.patch index baa739fd44..baa739fd44 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-configure_perlbin.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-configure_perlbin.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-ssl-ltmain-rpath.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-ssl-ltmain-rpath.patch index 3a59fb0799..3a59fb0799 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/apache-ssl-ltmain-rpath.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/apache-ssl-ltmain-rpath.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/fix-libtool-name.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/fix-libtool-name.patch index 027af04c3b..027af04c3b 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/fix-libtool-name.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/fix-libtool-name.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-corelimit.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-corelimit.patch index 18e4107ec7..18e4107ec7 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-corelimit.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-corelimit.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-export.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-export.patch index ed629bfc81..ed629bfc81 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-export.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-export.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-selinux.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-selinux.patch index 873328d9b5..873328d9b5 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.1-selinux.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.1-selinux.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1332643.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.2-r1332643.patch index 16fd7d75b6..16fd7d75b6 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/httpd-2.4.2-r1332643.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/httpd-2.4.2-r1332643.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/replace-lynx-to-curl-in-apachectl-script.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/replace-lynx-to-curl-in-apachectl-script.patch index 584ddc8d94..584ddc8d94 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/replace-lynx-to-curl-in-apachectl-script.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/replace-lynx-to-curl-in-apachectl-script.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/server-makefile.patch b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/server-makefile.patch index f1349cb6a4..f1349cb6a4 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-2.4.2/server-makefile.patch +++ b/meta-webserver/recipes-httpd/apache2/apache2-2.4.3/server-makefile.patch | |||
diff --git a/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.2.bb b/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.3.bb index 17482ae0e1..230510c05e 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.2.bb +++ b/meta-webserver/recipes-httpd/apache2/apache2-native_2.4.3.bb | |||
@@ -14,8 +14,8 @@ SRC_URI = "http://www.apache.org/dist/httpd/httpd-${PV}.tar.bz2" | |||
14 | S = "${WORKDIR}/httpd-${PV}" | 14 | S = "${WORKDIR}/httpd-${PV}" |
15 | 15 | ||
16 | LIC_FILES_CHKSUM = "file://LICENSE;md5=eff226ae95d0516d6210ed77dfdf2dcc" | 16 | LIC_FILES_CHKSUM = "file://LICENSE;md5=eff226ae95d0516d6210ed77dfdf2dcc" |
17 | SRC_URI[md5sum] = "6bb12f726e22656f0ad2baf91f1f8329" | 17 | SRC_URI[md5sum] = "87aaf7bc7e8715f0455997bb8c6791aa" |
18 | SRC_URI[sha256sum] = "5382f9c507d3d02706e33d6308ea041f39e8511b5948aef0ca188df8f90159b8" | 18 | SRC_URI[sha256sum] = "d82102b9c111f1892fb20a2bccf4370de579c6521b2f172ed0b36f2759fb249e" |
19 | 19 | ||
20 | do_configure () { | 20 | do_configure () { |
21 | ./configure --with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ | 21 | ./configure --with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \ |
diff --git a/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb b/meta-webserver/recipes-httpd/apache2/apache2_2.4.3.bb index af7840d1a5..9179bcacb1 100644 --- a/meta-webserver/recipes-httpd/apache2/apache2_2.4.2.bb +++ b/meta-webserver/recipes-httpd/apache2/apache2_2.4.3.bb | |||
@@ -5,26 +5,22 @@ HOMEPAGE = "http://httpd.apache.org/" | |||
5 | DEPENDS = "libtool-native apache2-native openssl expat pcre apr apr-util" | 5 | DEPENDS = "libtool-native apache2-native openssl expat pcre apr apr-util" |
6 | SECTION = "net" | 6 | SECTION = "net" |
7 | LICENSE = "Apache-2.0" | 7 | LICENSE = "Apache-2.0" |
8 | PR = "r3" | 8 | PR = "r0" |
9 | 9 | ||
10 | SRC_URI = "http://www.apache.org/dist/httpd/httpd-${PV}.tar.bz2 \ | 10 | SRC_URI = "http://www.apache.org/dist/httpd/httpd-${PV}.tar.bz2 \ |
11 | file://server-makefile.patch \ | 11 | file://server-makefile.patch \ |
12 | file://httpd-2.4.1-corelimit.patch \ | 12 | file://httpd-2.4.1-corelimit.patch \ |
13 | file://httpd-2.4.1-export.patch \ | 13 | file://httpd-2.4.1-export.patch \ |
14 | file://httpd-2.4.1-selinux.patch \ | 14 | file://httpd-2.4.1-selinux.patch \ |
15 | file://httpd-2.4.2-r1326980+.patch \ | ||
16 | file://httpd-2.4.2-r1327036+.patch \ | ||
17 | file://httpd-2.4.2-r1332643.patch \ | 15 | file://httpd-2.4.2-r1332643.patch \ |
18 | file://httpd-2.4.2-r1337344+.patch \ | ||
19 | file://httpd-2.4.2-restart.patch \ | ||
20 | file://apache-configure_perlbin.patch \ | 16 | file://apache-configure_perlbin.patch \ |
21 | file://replace-lynx-to-curl-in-apachectl-script.patch \ | 17 | file://replace-lynx-to-curl-in-apachectl-script.patch \ |
22 | file://apache-ssl-ltmain-rpath.patch \ | 18 | file://apache-ssl-ltmain-rpath.patch \ |
23 | file://init" | 19 | file://init" |
24 | 20 | ||
25 | LIC_FILES_CHKSUM = "file://LICENSE;md5=eff226ae95d0516d6210ed77dfdf2dcc" | 21 | LIC_FILES_CHKSUM = "file://LICENSE;md5=eff226ae95d0516d6210ed77dfdf2dcc" |
26 | SRC_URI[md5sum] = "6bb12f726e22656f0ad2baf91f1f8329" | 22 | SRC_URI[md5sum] = "87aaf7bc7e8715f0455997bb8c6791aa" |
27 | SRC_URI[sha256sum] = "5382f9c507d3d02706e33d6308ea041f39e8511b5948aef0ca188df8f90159b8" | 23 | SRC_URI[sha256sum] = "d82102b9c111f1892fb20a2bccf4370de579c6521b2f172ed0b36f2759fb249e" |
28 | 24 | ||
29 | S = "${WORKDIR}/httpd-${PV}" | 25 | S = "${WORKDIR}/httpd-${PV}" |
30 | 26 | ||