Git-Url: 
http://git.frugalware.org/gitweb/gitweb.cgi?p=frugalware-1.9.git;a=commitdiff;h=dfe86512a390f385fe7527cd28ff29ef64ad550d

commit dfe86512a390f385fe7527cd28ff29ef64ad550d
Author: kikadf <[email protected]>
Date:   Mon Apr 14 13:50:00 2014 +0200

apache-2.2.23-3arcturus1-x86_64

* Fix CVE-2012-3499, CVE-2012-4558, CVE-2012-4929, CVE-2013-1862,
* CVE-2013-1896, CVE-2013-6438, CVE-2014-0098

diff --git a/source/network/apache/CVE-2012-3499_4558.patch 
b/source/network/apache/CVE-2012-3499_4558.patch
new file mode 100644
index 0000000..079fe30
--- /dev/null
+++ b/source/network/apache/CVE-2012-3499_4558.patch
@@ -0,0 +1,197 @@
+Description: fix multiple cross-site scripting issues
+Origin: upstream, http://svn.apache.org/viewvc?view=revision&revision=1447390
+
+Index: apache2-2.2.22/modules/generators/mod_info.c
+===================================================================
+--- apache2-2.2.22.orig/modules/generators/mod_info.c  2009-07-10 
08:18:07.000000000 -0400
++++ apache2-2.2.22/modules/generators/mod_info.c       2013-03-08 
09:29:14.641315405 -0500
+@@ -371,7 +371,8 @@
+                MODULE_MAGIC_NUMBER_MINOR);
+     ap_rprintf(r,
+                "<dt><strong>Hostname/port:</strong> "
+-               "<tt>%s:%u</tt></dt>\n", ap_get_server_name(r),
++               "<tt>%s:%u</tt></dt>\n",
++               ap_escape_html(r->pool, ap_get_server_name(r)),
+                ap_get_server_port(r));
+     ap_rprintf(r,
+                "<dt><strong>Timeouts:</strong> "
+Index: apache2-2.2.22/modules/generators/mod_status.c
+===================================================================
+--- apache2-2.2.22.orig/modules/generators/mod_status.c        2008-01-02 
04:43:52.000000000 -0500
++++ apache2-2.2.22/modules/generators/mod_status.c     2013-03-08 
09:29:17.137315382 -0500
+@@ -409,7 +409,8 @@
+                  "<html><head>\n<title>Apache 
Status</title>\n</head><body>\n",
+                  r);
+         ap_rputs("<h1>Apache Server Status for ", r);
+-        ap_rvputs(r, ap_get_server_name(r), "</h1>\n\n", NULL);
++        ap_rvputs(r, ap_escape_html(r->pool, ap_get_server_name(r)),
++                  "</h1>\n\n", NULL);
+         ap_rvputs(r, "<dl><dt>Server Version: ",
+                   ap_get_server_description(), "</dt>\n", NULL);
+         ap_rvputs(r, "<dt>Server Built: ",
+Index: apache2-2.2.22/modules/ldap/util_ldap_cache_mgr.c
+===================================================================
+--- apache2-2.2.22.orig/modules/ldap/util_ldap_cache_mgr.c     2010-07-11 
10:52:10.000000000 -0400
++++ apache2-2.2.22/modules/ldap/util_ldap_cache_mgr.c  2013-03-08 
09:29:19.301315361 -0500
+@@ -541,7 +541,7 @@
+     if (id) {
+         buf2 = apr_psprintf(p,
+                  "<a href=\"%s?%s\">%s</a>",
+-             r->uri,
++             ap_escape_html(r->pool, ap_escape_uri(r->pool, r->uri)),
+              id,
+              name);
+     }
+Index: apache2-2.2.22/modules/mappers/mod_imagemap.c
+===================================================================
+--- apache2-2.2.22.orig/modules/mappers/mod_imagemap.c 2007-12-12 
14:38:26.000000000 -0500
++++ apache2-2.2.22/modules/mappers/mod_imagemap.c      2013-03-08 
09:29:21.789315337 -0500
+@@ -320,7 +320,7 @@
+ /*
+  * returns the mapped URL or NULL.
+  */
+-static char *imap_url(request_rec *r, const char *base, const char *value)
++static const char *imap_url(request_rec *r, const char *base, const char 
*value)
+ {
+ /* translates a value into a URL. */
+     int slen, clen;
+@@ -342,7 +342,7 @@
+     if (!strcasecmp(value, "referer")) {
+         referer = apr_table_get(r->headers_in, "Referer");
+         if (referer && *referer) {
+-            return ap_escape_html(r->pool, referer);
++            return referer;
+         }
+         else {
+             /* XXX:  This used to do *value = '\0'; ... which is totally bogus
+@@ -459,7 +459,7 @@
+     return my_base;
+ }
+
+-static int imap_reply(request_rec *r, char *redirect)
++static int imap_reply(request_rec *r, const char *redirect)
+ {
+     if (!strcasecmp(redirect, "error")) {
+         /* they actually requested an error! */
+@@ -523,42 +523,52 @@
+                                    'formatted' form */
+ }
+
+-static void menu_default(request_rec *r, char *menu, char *href, char *text)
++static void menu_default(request_rec *r, const char *menu, const char *href, 
const char *text)
+ {
++    char *ehref, *etext;
+     if (!strcasecmp(href, "error") || !strcasecmp(href, "nocontent")) {
+         return;                 /* don't print such lines, these aren't
+                                    really href's */
+     }
++
++    ehref = ap_escape_uri(r->pool, href);
++    etext = ap_escape_html(r->pool, text);
++
+     if (!strcasecmp(menu, "formatted")) {
+-        ap_rvputs(r, "<pre>(Default) <a href=\"", href, "\">", text,
++        ap_rvputs(r, "<pre>(Default) <a href=\"", ehref, "\">", etext,
+                "</a></pre>\n", NULL);
+     }
+     if (!strcasecmp(menu, "semiformatted")) {
+-        ap_rvputs(r, "<pre>(Default) <a href=\"", href, "\">", text,
++        ap_rvputs(r, "<pre>(Default) <a href=\"", ehref, "\">", etext,
+                "</a></pre>\n", NULL);
+     }
+     if (!strcasecmp(menu, "unformatted")) {
+-        ap_rvputs(r, "<a href=\"", href, "\">", text, "</a>", NULL);
++        ap_rvputs(r, "<a href=\"", ehref, "\">", etext, "</a>", NULL);
+     }
+     return;
+ }
+
+-static void menu_directive(request_rec *r, char *menu, char *href, char *text)
++static void menu_directive(request_rec *r, const char *menu, const char 
*href, const char *text)
+ {
++    char *ehref, *etext;
+     if (!strcasecmp(href, "error") || !strcasecmp(href, "nocontent")) {
+         return;                 /* don't print such lines, as this isn't
+                                    really an href */
+     }
++
++    ehref = ap_escape_uri(r->pool, href);
++    etext = ap_escape_html(r->pool, text);
++
+     if (!strcasecmp(menu, "formatted")) {
+-        ap_rvputs(r, "<pre>          <a href=\"", href, "\">", text,
++        ap_rvputs(r, "<pre>          <a href=\"", ehref, "\">", etext,
+                "</a></pre>\n", NULL);
+     }
+     if (!strcasecmp(menu, "semiformatted")) {
+-        ap_rvputs(r, "<pre>          <a href=\"", href, "\">", text,
++        ap_rvputs(r, "<pre>          <a href=\"", ehref, "\">", etext,
+                "</a></pre>\n", NULL);
+     }
+     if (!strcasecmp(menu, "unformatted")) {
+-        ap_rvputs(r, "<a href=\"", href, "\">", text, "</a>", NULL);
++        ap_rvputs(r, "<a href=\"", ehref, "\">", etext, "</a>", NULL);
+     }
+     return;
+ }
+@@ -574,9 +584,9 @@
+     char *directive;
+     char *value;
+     char *href_text;
+-    char *base;
+-    char *redirect;
+-    char *mapdflt;
++    const char *base;
++    const char *redirect;
++    const char *mapdflt;
+     char *closest = NULL;
+     double closest_yet = -1;
+     apr_status_t status;
+Index: apache2-2.2.22/modules/proxy/mod_proxy_balancer.c
+===================================================================
+--- apache2-2.2.22.orig/modules/proxy/mod_proxy_balancer.c     2010-10-07 
14:51:18.000000000 -0400
++++ apache2-2.2.22/modules/proxy/mod_proxy_balancer.c  2013-03-08 
09:29:25.441315302 -0500
+@@ -818,7 +818,8 @@
+         ap_rputs(DOCTYPE_HTML_3_2
+                  "<html><head><title>Balancer Manager</title></head>\n", r);
+         ap_rputs("<body><h1>Load Balancer Manager for ", r);
+-        ap_rvputs(r, ap_get_server_name(r), "</h1>\n\n", NULL);
++        ap_rvputs(r, ap_escape_html(r->pool, ap_get_server_name(r)),
++                  "</h1>\n\n", NULL);
+         ap_rvputs(r, "<dl><dt>Server Version: ",
+                   ap_get_server_description(), "</dt>\n", NULL);
+         ap_rvputs(r, "<dt>Server Built: ",
+@@ -853,7 +854,8 @@
+             worker = (proxy_worker *)balancer->workers->elts;
+             for (n = 0; n < balancer->workers->nelts; n++) {
+                 char fbuf[50];
+-                ap_rvputs(r, "<tr>\n<td><a href=\"", r->uri, "?b=",
++                ap_rvputs(r, "<tr>\n<td><a href=\"",
++                          ap_escape_uri(r->pool, r->uri), "?b=",
+                           balancer->name + sizeof("balancer://") - 1, "&w=",
+                           ap_escape_uri(r->pool, worker->name),
+                           "&nonce=", balancer_nonce,
+@@ -894,7 +896,7 @@
+             ap_rputs("<h3>Edit worker settings for ", r);
+             ap_rvputs(r, wsel->name, "</h3>\n", NULL);
+             ap_rvputs(r, "<form method=\"GET\" action=\"", NULL);
+-            ap_rvputs(r, r->uri, "\">\n<dl>", NULL);
++            ap_rvputs(r, ap_escape_uri(r->pool, r->uri), "\">\n<dl>", NULL);
+             ap_rputs("<table><tr><td>Load factor:</td><td><input name=\"lf\" 
type=text ", r);
+             ap_rprintf(r, "value=\"%d\"></td></tr>\n", wsel->s->lbfactor);
+             ap_rputs("<tr><td>LB Set:</td><td><input name=\"ls\" type=text ", 
r);
+Index: apache2-2.2.22/modules/proxy/mod_proxy_ftp.c
+===================================================================
+--- apache2-2.2.22.orig/modules/proxy/mod_proxy_ftp.c  2009-09-14 
16:53:28.000000000 -0400
++++ apache2-2.2.22/modules/proxy/mod_proxy_ftp.c       2013-03-08 
09:29:29.445315264 -0500
+@@ -365,7 +365,9 @@
+                 " </head>\n"
+                 " <body>\n  <h2>Directory of "
+                 "<a href=\"/\">%s</a>/%s",
+-                site, basedir, escpath, site, basedir, escpath, site, str);
++                ap_escape_html(p, site), basedir, escpath,
++                ap_escape_uri(p, site), basedir, escpath,
++                ap_escape_uri(p, site), str);
+
+         APR_BRIGADE_INSERT_TAIL(out, apr_bucket_pool_create(str, strlen(str),
+                                                           p, 
c->bucket_alloc));
diff --git a/source/network/apache/CVE-2012-4929.patch 
b/source/network/apache/CVE-2012-4929.patch
new file mode 100644
index 0000000..14e362a
--- /dev/null
+++ b/source/network/apache/CVE-2012-4929.patch
@@ -0,0 +1,115 @@
+diff -Naur httpd-2.2.23/modules/ssl/mod_ssl.c 
httpd-2.2.23.new/modules/ssl/mod_ssl.c
+--- httpd-2.2.23/modules/ssl/mod_ssl.c 2012-08-20 17:53:11.000000000 +0200
++++ httpd-2.2.23.new/modules/ssl/mod_ssl.c     2014-04-02 23:18:29.251195400 
+0200
+@@ -156,6 +156,9 @@
+                 "('[+-][" SSL_PROTOCOLS "] ...' - see manual)")
+     SSL_CMD_SRV(HonorCipherOrder, FLAG,
+                 "Use the server's cipher ordering preference")
++    SSL_CMD_SRV(Compression, FLAG,
++                "Enable SSL level compression"
++                "(`on', `off')")
+     SSL_CMD_SRV(InsecureRenegotiation, FLAG,
+                 "Enable support for insecure renegotiation")
+     SSL_CMD_ALL(UserName, TAKE1,
+diff -Naur httpd-2.2.23/modules/ssl/ssl_engine_config.c 
httpd-2.2.23.new/modules/ssl/ssl_engine_config.c
+--- httpd-2.2.23/modules/ssl/ssl_engine_config.c       2012-08-20 
17:53:11.000000000 +0200
++++ httpd-2.2.23.new/modules/ssl/ssl_engine_config.c   2014-04-02 
23:18:29.266196300 +0200
+@@ -180,6 +180,9 @@
+ #ifdef HAVE_FIPS
+     sc->fips                   = UNSET;
+ #endif
++#ifndef OPENSSL_NO_COMP
++    sc->compression            = UNSET;
++#endif
+
+     modssl_ctx_init_proxy(sc, p);
+
+@@ -278,6 +281,9 @@
+ #ifdef HAVE_FIPS
+     cfgMergeBool(fips);
+ #endif
++#ifndef OPENSSL_NO_COMP
++    cfgMergeBool(compression);
++#endif
+
+     modssl_ctx_cfg_merge_proxy(base->proxy, add->proxy, mrg->proxy);
+
+@@ -711,6 +717,23 @@
+
+ }
+
++const char *ssl_cmd_SSLCompression(cmd_parms *cmd, void *dcfg, int flag)
++{
++#if !defined(OPENSSL_NO_COMP)
++    SSLSrvConfigRec *sc = mySrvConfig(cmd->server);
++#ifndef SSL_OP_NO_COMPRESSION
++    const char *err = ap_check_cmd_context(cmd, GLOBAL_ONLY);
++    if (err)
++        return "This version of openssl does not support configuring "
++               "compression within <VirtualHost> sections.";
++#endif
++    sc->compression = flag ? TRUE : FALSE;
++    return NULL;
++#else
++    return "Setting Compression mode unsupported; not implemented by the SSL 
library";
++#endif
++}
++
+ const char *ssl_cmd_SSLHonorCipherOrder(cmd_parms *cmd, void *dcfg, int flag)
+ {
+ #ifdef SSL_OP_CIPHER_SERVER_PREFERENCE
+diff -Naur httpd-2.2.23/modules/ssl/ssl_engine_init.c 
httpd-2.2.23.new/modules/ssl/ssl_engine_init.c
+--- httpd-2.2.23/modules/ssl/ssl_engine_init.c 2012-08-20 17:53:11.000000000 
+0200
++++ httpd-2.2.23.new/modules/ssl/ssl_engine_init.c     2014-04-02 
23:18:29.281197100 +0200
+@@ -533,6 +533,18 @@
+     }
+ #endif
+
++
++#ifndef OPENSSL_NO_COMP
++    if (sc->compression != TRUE) {
++#ifdef SSL_OP_NO_COMPRESSION
++        /* OpenSSL >= 1.0 only */
++        SSL_CTX_set_options(ctx, SSL_OP_NO_COMPRESSION);
++#elif OPENSSL_VERSION_NUMBER >= 0x00908000L
++        sk_SSL_COMP_zero(SSL_COMP_get_compression_methods());
++#endif
++    }
++#endif
++
+ #ifdef SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION
+     if (sc->insecure_reneg == TRUE) {
+         SSL_CTX_set_options(ctx, SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION);
+diff -Naur httpd-2.2.23/modules/ssl/ssl_private.h 
httpd-2.2.23.new/modules/ssl/ssl_private.h
+--- httpd-2.2.23/modules/ssl/ssl_private.h     2012-08-20 17:53:11.000000000 
+0200
++++ httpd-2.2.23.new/modules/ssl/ssl_private.h 2014-04-02 23:25:11.306191600 
+0200
+@@ -64,6 +64,11 @@
+ #define HAVE_TLSV1_X
+ #endif
+
++#if !defined(OPENSSL_NO_COMP) && !defined(SSL_OP_NO_COMPRESSION) \
++    && OPENSSL_VERSION_NUMBER < 0x00908000L
++#define OPENSSL_NO_COMP
++#endif
++
+ #include "ssl_util_ssl.h"
+
+ /** The #ifdef macros are only defined AFTER including the above
+@@ -504,6 +509,9 @@
+ #ifdef HAVE_FIPS
+     BOOL             fips;
+ #endif
++#ifndef OPENSSL_NO_COMP
++    BOOL             compression;
++#endif
+ };
+
+ /**
+@@ -560,6 +568,7 @@
+ const char  *ssl_cmd_SSLCARevocationPath(cmd_parms *, void *, const char *);
+ const char  *ssl_cmd_SSLCARevocationFile(cmd_parms *, void *, const char *);
+ const char  *ssl_cmd_SSLHonorCipherOrder(cmd_parms *cmd, void *dcfg, int 
flag);
++const char  *ssl_cmd_SSLCompression(cmd_parms *, void *, int flag);
+ const char  *ssl_cmd_SSLVerifyClient(cmd_parms *, void *, const char *);
+ const char  *ssl_cmd_SSLVerifyDepth(cmd_parms *, void *, const char *);
+ const char  *ssl_cmd_SSLSessionCache(cmd_parms *, void *, const char *);
diff --git a/source/network/apache/CVE-2013-1862.patch 
b/source/network/apache/CVE-2013-1862.patch
new file mode 100644
index 0000000..8b4a82e
--- /dev/null
+++ b/source/network/apache/CVE-2013-1862.patch
@@ -0,0 +1,33 @@
+Description: fix log file poisoning via mod_rewrite
+Origin: upstream, http://svn.apache.org/viewvc?view=revision&revision=1482349
+Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/apache2/+bug/1188069
+
+Index: apache2-2.2.22/modules/mappers/mod_rewrite.c
+===================================================================
+--- apache2-2.2.22.orig/modules/mappers/mod_rewrite.c  2013-07-12 
08:08:49.000000000 -0400
++++ apache2-2.2.22/modules/mappers/mod_rewrite.c       2013-07-12 
08:28:34.254549021 -0400
+@@ -493,11 +493,11 @@
+
+     logline = apr_psprintf(r->pool, "%s %s %s %s [%s/sid#%pp][rid#%pp/%s%s%s] 
"
+                                     "(%d) %s%s%s%s" APR_EOL_STR,
+-                           rhost ? rhost : "UNKNOWN-HOST",
+-                           rname ? rname : "-",
+-                           r->user ? (*r->user ? r->user : "\"\"") : "-",
++                           rhost ? ap_escape_logitem(r->pool, rhost) : 
"UNKNOWN-HOST",
++                           rname ? ap_escape_logitem(r->pool, rname) : "-",
++                           r->user ? (*r->user ? ap_escape_logitem(r->pool, 
r->user) : "\"\"") : "-",
+                            current_logtime(r),
+-                           ap_get_server_name(r),
++                           ap_escape_logitem(r->pool, ap_get_server_name(r)),
+                            (void *)(r->server),
+                            (void *)r,
+                            r->main ? "subreq" : "initial",
+@@ -507,7 +507,7 @@
+                            perdir ? "[perdir " : "",
+                            perdir ? perdir : "",
+                            perdir ? "] ": "",
+-                           text);
++                           ap_escape_logitem(r->pool, text));
+
+     nbytes = strlen(logline);
+     apr_file_write(conf->rewritelogfp, logline, &nbytes);
diff --git a/source/network/apache/CVE-2013-1896.patch 
b/source/network/apache/CVE-2013-1896.patch
new file mode 100644
index 0000000..c9da2a2
--- /dev/null
+++ b/source/network/apache/CVE-2013-1896.patch
@@ -0,0 +1,33 @@
+Description: fix denial of service via MERGE request
+Origin: upstream, http://svn.apache.org/viewvc?view=revision&revision=1497101
+Origin: upstream, http://svn.apache.org/viewvc?view=revision&revision=1497212
+
+Index: apache2-2.2.22/modules/dav/main/mod_dav.c
+===================================================================
+--- apache2-2.2.22.orig/modules/dav/main/mod_dav.c     2013-07-12 
08:28:50.666549535 -0400
++++ apache2-2.2.22/modules/dav/main/mod_dav.c  2013-07-12 08:29:07.298550056 
-0400
+@@ -719,6 +719,12 @@
+
+     conf = ap_get_module_config(r->per_dir_config, &dav_module);
+     /* assert: conf->provider != NULL */
++    if (conf->provider == NULL) {
++        return dav_new_error(r->pool, HTTP_METHOD_NOT_ALLOWED, 0,
++                             apr_psprintf(r->pool,
++                                        "DAV not enabled for %s",
++                                        ap_escape_html(r->pool, r->uri)));
++    }
+
+     /* resolve the resource */
+     err = (*conf->provider->repos->get_resource)(r, conf->dir,
+@@ -2655,11 +2661,6 @@
+                                   "Destination URI had an error.");
+     }
+
+-    if (dav_get_provider(lookup.rnew) == NULL) {
+-        return dav_error_response(r, HTTP_METHOD_NOT_ALLOWED,
+-                                  "DAV not enabled for Destination URI.");
+-    }
+-
+     /* Resolve destination resource */
+     err = dav_get_resource(lookup.rnew, 0 /* label_allowed */,
+                            0 /* use_checked_in */, &resnew);
diff --git a/source/network/apache/CVE-2013-6438.patch 
b/source/network/apache/CVE-2013-6438.patch
new file mode 100644
index 0000000..8f8d2d8
--- /dev/null
+++ b/source/network/apache/CVE-2013-6438.patch
@@ -0,0 +1,20 @@
+Description: fix denial of service via mod_dav incorrect end of string
+ calculation
+Origin: upstream, http://svn.apache.org/viewvc?view=revision&revision=1576706
+
+Index: apache2-2.2.22/modules/dav/main/util.c
+===================================================================
+--- apache2-2.2.22.orig/modules/dav/main/util.c        2010-07-21 
14:25:49.000000000 -0400
++++ apache2-2.2.22/modules/dav/main/util.c     2014-03-19 15:33:36.015875643 
-0400
+@@ -372,8 +372,10 @@
+
+     if (strip_white) {
+         /* trim leading whitespace */
+-        while (apr_isspace(*cdata))     /* assume: return false for '\0' */
++        while (apr_isspace(*cdata)) {     /* assume: return false for '\0' */
+             ++cdata;
++            --len;
++        }
+
+         /* trim trailing whitespace */
+         while (len-- > 0 && apr_isspace(cdata[len]))
diff --git a/source/network/apache/CVE-2014-0098.patch 
b/source/network/apache/CVE-2014-0098.patch
new file mode 100644
index 0000000..b584f7a
--- /dev/null
+++ b/source/network/apache/CVE-2014-0098.patch
@@ -0,0 +1,42 @@
+diff -Naur httpd-2.2.23/modules/loggers/mod_log_config.c 
httpd-2.2.23.new/modules/loggers/mod_log_config.c
+--- httpd-2.2.23/modules/loggers/mod_log_config.c      2012-08-18 
11:32:36.000000000 +0200
++++ httpd-2.2.23.new/modules/loggers/mod_log_config.c  2014-04-03 
00:10:28.311595500 +0200
+@@ -524,14 +524,24 @@
+
+         while ((cookie = apr_strtok(cookies, ";", &last1))) {
+             char *name = apr_strtok(cookie, "=", &last2);
+-            if (name) {
+-                char *value = name + strlen(name) + 1;
+-                apr_collapse_spaces(name, name);
++            /* last2 points to the next char following an '=' delim,
++               or the trailing NUL char of the string */
++            char *value = last2;
++            if (name && *name &&  value && *value) {
++                char *last = value - 2;
++                /* Move past leading WS */
++                name += strspn(name, " \t");
++                while (last >= name && apr_isspace(*last)) {
++                    *last = '\0';
++                    --last;
++                }
+
+                 if (!strcasecmp(name, a)) {
+-                    char *last;
+-                    value += strspn(value, " \t");  /* Move past leading WS */
+-                    last = value + strlen(value) - 1;
++                    /* last1 points to the next char following the ';' delim,
++                       or the trailing NUL char of the string */
++                    last = last1 - (*last1 ? 2 : 1);
++                    /* Move past leading WS */
++                    value += strspn(value, " \t");
+                     while (last >= value && apr_isspace(*last)) {
+                        *last = '\0';
+                        --last;
+@@ -540,6 +550,7 @@
+                     return ap_escape_logitem(r->pool, value);
+                 }
+             }
++            /* Iterate the remaining tokens using apr_strtok(NULL, ...) */
+             cookies = NULL;
+         }
+     }
diff --git a/source/network/apache/FrugalBuild 
b/source/network/apache/FrugalBuild
index d82313c..26cca41 100644
--- a/source/network/apache/FrugalBuild
+++ b/source/network/apache/FrugalBuild
@@ -4,7 +4,7 @@

pkgname=apache
pkgver=2.2.23
-pkgrel=2
+pkgrel=3arcturus1
pkgdesc="A high performance Unix-based HTTP server (with SSL)"
url="http://httpd.apache.org/";
backup=(etc/httpd/conf/{httpd.conf,ssl.conf,ssl.crt/server.crt,ssl.csr/server.csr,ssl.key/server.key}
 \
@@ -13,7 +13,7 @@ depends=('gdbm>=1.10' 'db>=4.7.25' 'openssl>=1.0.0' 'expat' 
'apr-util>=1.5.2')
groups=('network')
archs=('i686' 'x86_64' 'arm')
up2date="lynx -dump http://httpd.apache.org/download.cgi |grep 'best 
available'|sed 's/.* \([0-9.]\+\) i.*/\1/;q'"
-source=(http://www.apache.org/dist/httpd/httpd-$pkgver.tar.gz \
+source=(http://archive.apache.org/dist/httpd/httpd-$pkgver.tar.gz \
http://ftp.frugalware.org/pub/other/sources/apache/mkcert.tar.gz \
httpd.service httpd.conf ssl.conf \
README.Frugalware index.html http://frugalware.org/images/frugalware.png)
@@ -24,7 +24,7 @@ sha1sums=('966445d503ecb72e3eadf864cd21028d00d441a2' \
'e3f943dd5f96b77e90c003100c87757bb109b6f5' \
'6963bf679ed5836e4a3fcf796df761b60778abf4' \
'f7c90c628f8a4ee77222ad1d1a30106bc253b2ec' \
-          '62fdfe9e07b2b55be660bd107bb6e1c742d90a3e')
+          '4fea94a9eea4e8a7f3902de965da9b6e707beed7')

_F_systemd_units=(httpd=)
Finclude systemd
@@ -33,6 +33,17 @@ Finclude systemd
# http://svn.apache.org/viewvc/httpd/httpd/branches/2.2.x/
# use it when you dig for secfixes

+# FSA fix ***
+source=(${source[@]} CVE-2012-3499_4558.patch CVE-2012-4929.patch 
CVE-2013-1862.patch
+                     CVE-2013-1896.patch CVE-2013-6438.patch 
CVE-2014-0098.patch)
+sha1sums=(${sha1sums[@]} 'cabf7f65b365a19ff06ecb22b26099e0521a8b44' \
+                         '882e3dbfd79d34642741c2673adf6a0f1da1a823' \
+                         'c683b83a930efda1bf622996a423577f56ba769b' \
+                         '1b4fea1832cecc8d90c74e629c3c4f2e49306df4' \
+                         '5794eb4dd23e8d1e920a54dd40d886909e6214f0' \
+                         'd3a75bd2fcad2fd950a2564e763bc988c757fb9b')
+# ***********
+
build()
{
Fcd httpd-$pkgver
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to