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

commit e68865c2464652a570a3d4bca8b65cb252880b29
Author: kikadf <[email protected]>
Date:   Thu Jul 17 14:24:57 2014 +0200

php-5.5.14-1-x86_64

* Version bump

diff --git a/source/devel/php/CVE-2013-4113.patch 
b/source/devel/php/CVE-2013-4113.patch
deleted file mode 100644
index 107e2f8..0000000
--- a/source/devel/php/CVE-2013-4113.patch
+++ /dev/null
@@ -1,142 +0,0 @@
-From 7d163e8a0880ae8af2dd869071393e5dc07ef271 Mon Sep 17 00:00:00 2001
-From: Rob Richards <[email protected]>
-Date: Sat, 6 Jul 2013 07:53:07 -0400
-Subject: [PATCH] truncate results at depth of 255 to prevent corruption
-
----
- ext/xml/xml.c | 90 +++++++++++++++++++++++++++++++++--------------------------
- 1 file changed, 50 insertions(+), 40 deletions(-)
-
---- php5-squeeze.orig/ext/xml/xml.c
-+++ php5-squeeze/ext/xml/xml.c
-@@ -427,7 +427,7 @@ static void xml_parser_dtor(zend_rsrc_li
-       }
-       if (parser->ltags) {
-               int inx;
--              for (inx = 0; inx < parser->level; inx++)
-+              for (inx = 0; ((inx < parser->level) && (inx < XML_MAXLEVEL)); 
inx++)
-                       efree(parser->ltags[ inx ]);
-               efree(parser->ltags);
-       }
-@@ -905,45 +905,50 @@ void _xml_startElementHandler(void *user
-               }
-
-               if (parser->data) {
--                      zval *tag, *atr;
--                      int atcnt = 0;
-+                      if (parser->level <= XML_MAXLEVEL)  {
-+                              zval *tag, *atr;
-+                              int atcnt = 0;
-
--                      MAKE_STD_ZVAL(tag);
--                      MAKE_STD_ZVAL(atr);
-+                              MAKE_STD_ZVAL(tag);
-+                              MAKE_STD_ZVAL(atr);
-
--                      array_init(tag);
--                      array_init(atr);
-+                              array_init(tag);
-+                              array_init(atr);
-
--                      _xml_add_to_info(parser,((char *) tag_name) + 
parser->toffset);
-+                              _xml_add_to_info(parser,((char *) tag_name) + 
parser->toffset);
-
--                      add_assoc_string(tag,"tag",((char *) tag_name) + 
parser->toffset,1); /* cast to avoid gcc-warning */
--                      add_assoc_string(tag,"type","open",1);
--                      add_assoc_long(tag,"level",parser->level);
-+                              add_assoc_string(tag,"tag",((char *) tag_name) 
+ parser->toffset,1); /* cast to avoid gcc-warning */
-+                              add_assoc_string(tag,"type","open",1);
-+                              add_assoc_long(tag,"level",parser->level);
-
--                      parser->ltags[parser->level-1] = estrdup(tag_name);
--                      parser->lastwasopen = 1;
-+                              parser->ltags[parser->level-1] = 
estrdup(tag_name);
-+                              parser->lastwasopen = 1;
-
--                      attributes = (const XML_Char **) attrs;
-+                              attributes = (const XML_Char **) attrs;
-
--                      while (attributes && *attributes) {
--                              att = _xml_decode_tag(parser, attributes[0]);
--                              val = xml_utf8_decode(attributes[1], 
strlen(attributes[1]), &val_len, parser->target_encoding);
--
--                              add_assoc_stringl(atr,att,val,val_len,0);
-+                              while (attributes && *attributes) {
-+                                      att = _xml_decode_tag(parser, 
attributes[0]);
-+                                      val = xml_utf8_decode(attributes[1], 
strlen(attributes[1]), &val_len, parser->target_encoding);
-
--                              atcnt++;
--                              attributes += 2;
-+                                      
add_assoc_stringl(atr,att,val,val_len,0);
-
--                              efree(att);
--                      }
-+                                      atcnt++;
-+                                      attributes += 2;
-
--                      if (atcnt) {
--                              
zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL);
--                      } else {
--                              zval_ptr_dtor(&atr);
--                      }
-+                                      efree(att);
-+                              }
-+
-+                              if (atcnt) {
-+                                      
zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL);
-+                              } else {
-+                                      zval_ptr_dtor(&atr);
-+                              }
-
--                      
zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void 
*) &parser->ctag);
-+                              
zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void 
*) &parser->ctag);
-+                      } else if (parser->level == (XML_MAXLEVEL + 1)) {
-+                              TSRMLS_FETCH();
-+                              php_error_docref(NULL TSRMLS_CC, E_WARNING, 
"Maximum depth exceeded - Results truncated");
-+                      }
-               }
-
-               efree(tag_name);
-@@ -995,7 +1000,7 @@ void _xml_endElementHandler(void *userDa
-
-               efree(tag_name);
-
--              if (parser->ltags) {
-+              if ((parser->ltags) && (parser->level <= XML_MAXLEVEL)) {
-                       efree(parser->ltags[parser->level-1]);
-               }
-
-@@ -1079,18 +1084,23 @@ void _xml_characterDataHandler(void *use
-                                               }
-                                       }
-
--                                      MAKE_STD_ZVAL(tag);
--
--                                      array_init(tag);
--
--                                      
_xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset);
-+                                      if (parser->level <= XML_MAXLEVEL) {
-+                                              MAKE_STD_ZVAL(tag);
-
--                                      
add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1);
--                                      
add_assoc_string(tag,"value",decoded_value,0);
--                                      add_assoc_string(tag,"type","cdata",1);
--                                      
add_assoc_long(tag,"level",parser->level);
-+                                              array_init(tag);
-
--                                      
zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL);
-+                                              
_xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset);
-+
-+                                              
add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1);
-+                                              
add_assoc_string(tag,"value",decoded_value,0);
-+                                              
add_assoc_string(tag,"type","cdata",1);
-+                                              
add_assoc_long(tag,"level",parser->level);
-+
-+                                              
zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL);
-+                                      } else if (parser->level == 
(XML_MAXLEVEL + 1)) {
-+                                              TSRMLS_FETCH();
-+                                              php_error_docref(NULL 
TSRMLS_CC, E_WARNING, "Maximum depth exceeded - Results truncated");
-+                                      }
-                               }
-                       } else {
-                               efree(decoded_value);
diff --git a/source/devel/php/CVE-2013-4248.patch 
b/source/devel/php/CVE-2013-4248.patch
deleted file mode 100644
index d20d8d1..0000000
--- a/source/devel/php/CVE-2013-4248.patch
+++ /dev/null
@@ -1,176 +0,0 @@
-From dcea4ec698dcae39b7bba6f6aa08933cbfee6755 Mon Sep 17 00:00:00 2001
-From: Stanislav Malyshev <[email protected]>
-Date: Tue, 13 Aug 2013 22:20:33 -0700
-Subject: [PATCH] Fix CVE-2013-4073 - handling of certs with null bytes
-
----
- ext/openssl/openssl.c               | 86 ++++++++++++++++++++++++++++++++++++-
- ext/openssl/tests/cve2013_4073.pem  | 28 ++++++++++++
- ext/openssl/tests/cve2013_4073.phpt | 19 ++++++++
- 4 files changed, 135 insertions(+), 2 deletions(-)
- create mode 100644 ext/openssl/tests/cve2013_4073.pem
- create mode 100644 ext/openssl/tests/cve2013_4073.phpt
-
---- php5.orig/ext/openssl/openssl.c
-+++ php5/ext/openssl/openssl.c
-@@ -1325,6 +1325,74 @@ PHP_FUNCTION(openssl_x509_check_private_
- }
- /* }}} */
-
-+/* Special handling of subjectAltName, see CVE-2013-4073
-+ * Christian Heimes
-+ */
-+
-+static int openssl_x509v3_subjectAltName(BIO *bio, X509_EXTENSION *extension)
-+{
-+      GENERAL_NAMES *names;
-+      const X509V3_EXT_METHOD *method = NULL;
-+      long i, length, num;
-+      const unsigned char *p;
-+
-+      method = X509V3_EXT_get(extension);
-+      if (method == NULL) {
-+              return -1;
-+      }
-+
-+      p = extension->value->data;
-+      length = extension->value->length;
-+      if (method->it) {
-+              names = (GENERAL_NAMES*)(ASN1_item_d2i(NULL, &p, length,
-+                                                     
ASN1_ITEM_ptr(method->it)));
-+      } else {
-+              names = (GENERAL_NAMES*)(method->d2i(NULL, &p, length));
-+      }
-+      if (names == NULL) {
-+              return -1;
-+      }
-+
-+      num = sk_GENERAL_NAME_num(names);
-+      for (i = 0; i < num; i++) {
-+                      GENERAL_NAME *name;
-+                      ASN1_STRING *as;
-+                      name = sk_GENERAL_NAME_value(names, i);
-+                      switch (name->type) {
-+                              case GEN_EMAIL:
-+                                      BIO_puts(bio, "email:");
-+                                      as = name->d.rfc822Name;
-+                                      BIO_write(bio, ASN1_STRING_data(as),
-+                                                ASN1_STRING_length(as));
-+                                      break;
-+                              case GEN_DNS:
-+                                      BIO_puts(bio, "DNS:");
-+                                      as = name->d.dNSName;
-+                                      BIO_write(bio, ASN1_STRING_data(as),
-+                                                ASN1_STRING_length(as));
-+                                      break;
-+                              case GEN_URI:
-+                                      BIO_puts(bio, "URI:");
-+                                      as = name->d.uniformResourceIdentifier;
-+                                      BIO_write(bio, ASN1_STRING_data(as),
-+                                                ASN1_STRING_length(as));
-+                                      break;
-+                              default:
-+                                      /* use builtin print for GEN_OTHERNAME, 
GEN_X400,
-+                                       * GEN_EDIPARTY, GEN_DIRNAME, GEN_IPADD 
and GEN_RID
-+                                       */
-+                                      GENERAL_NAME_print(bio, name);
-+                      }
-+                      /* trailing ', ' except for last element */
-+                      if (i < (num - 1)) {
-+                              BIO_puts(bio, ", ");
-+                      }
-+      }
-+      sk_GENERAL_NAME_pop_free(names, GENERAL_NAME_free);
-+
-+      return 0;
-+}
-+
- /* {{{ proto array openssl_x509_parse(mixed x509 [, bool shortnames=true])
-    Returns an array of the fields/values of the CERT */
- PHP_FUNCTION(openssl_x509_parse)
-@@ -1421,15 +1489,30 @@ PHP_FUNCTION(openssl_x509_parse)
-
-
-       for (i = 0; i < X509_get_ext_count(cert); i++) {
-+              int nid;
-               extension = X509_get_ext(cert, i);
--              if (OBJ_obj2nid(X509_EXTENSION_get_object(extension)) != 
NID_undef) {
-+              nid = OBJ_obj2nid(X509_EXTENSION_get_object(extension));
-+              if (nid != NID_undef) {
-                       extname = (char 
*)OBJ_nid2sn(OBJ_obj2nid(X509_EXTENSION_get_object(extension)));
-               } else {
-                       OBJ_obj2txt(buf, sizeof(buf)-1, 
X509_EXTENSION_get_object(extension), 1);
-                       extname = buf;
-               }
-               bio_out = BIO_new(BIO_s_mem());
--              if (X509V3_EXT_print(bio_out, extension, 0, 0)) {
-+              if (nid == NID_subject_alt_name) {
-+                      if (openssl_x509v3_subjectAltName(bio_out, extension) 
== 0) {
-+                              BIO_get_mem_ptr(bio_out, &bio_buf);
-+                              add_assoc_stringl(subitem, extname, 
bio_buf->data, bio_buf->length, 1);
-+                      } else {
-+                              zval_dtor(return_value);
-+                              if (certresource == -1 && cert) {
-+                                      X509_free(cert);
-+                              }
-+                              BIO_free(bio_out);
-+                              RETURN_FALSE;
-+                      }
-+              }
-+              else if (X509V3_EXT_print(bio_out, extension, 0, 0)) {
-                       BIO_get_mem_ptr(bio_out, &bio_buf);
-                       add_assoc_stringl(subitem, extname, bio_buf->data, 
bio_buf->length, 1);
-               } else {
---- /dev/null
-+++ php5/ext/openssl/tests/cve2013_4073.pem
-@@ -0,0 +1,28 @@
-+-----BEGIN CERTIFICATE-----
-+MIIE2DCCA8CgAwIBAgIBADANBgkqhkiG9w0BAQUFADCBxTELMAkGA1UEBhMCVVMx
-+DzANBgNVBAgMBk9yZWdvbjESMBAGA1UEBwwJQmVhdmVydG9uMSMwIQYDVQQKDBpQ
-+eXRob24gU29mdHdhcmUgRm91bmRhdGlvbjEgMB4GA1UECwwXUHl0aG9uIENvcmUg
-+RGV2ZWxvcG1lbnQxJDAiBgNVBAMMG251bGwucHl0aG9uLm9yZwBleGFtcGxlLm9y
-+ZzEkMCIGCSqGSIb3DQEJARYVcHl0aG9uLWRldkBweXRob24ub3JnMB4XDTEzMDgw
-+NzEzMTE1MloXDTEzMDgwNzEzMTI1MlowgcUxCzAJBgNVBAYTAlVTMQ8wDQYDVQQI
-+DAZPcmVnb24xEjAQBgNVBAcMCUJlYXZlcnRvbjEjMCEGA1UECgwaUHl0aG9uIFNv
-+ZnR3YXJlIEZvdW5kYXRpb24xIDAeBgNVBAsMF1B5dGhvbiBDb3JlIERldmVsb3Bt
-+ZW50MSQwIgYDVQQDDBtudWxsLnB5dGhvbi5vcmcAZXhhbXBsZS5vcmcxJDAiBgkq
-+hkiG9w0BCQEWFXB5dGhvbi1kZXZAcHl0aG9uLm9yZzCCASIwDQYJKoZIhvcNAQEB
-+BQADggEPADCCAQoCggEBALXq7cn7Rn1vO3aA3TrzA5QLp6bb7B3f/yN0CJ2XFj+j
-+pHs+Gw6WWSUDpybiiKnPec33BFawq3kyblnBMjBU61ioy5HwQqVkJ8vUVjGIUq3P
-+vX/wBmQfzCe4o4uM89gpHyUL9UYGG8oCRa17dgqcv7u5rg0Wq2B1rgY+nHwx3JIv
-+KRrgSwyRkGzpN8WQ1yrXlxWjgI9de0mPVDDUlywcWze1q2kwaEPTM3hLAmD1PESA
-+oY/n8A/RXoeeRs9i/Pm/DGUS8ZPINXk/yOzsR/XvvkTVroIeLZqfmFpnZeF0cHzL
-+08LODkVJJ9zjLdT7SA4vnne4FEbAxDbKAq5qkYzaL4UCAwEAAaOB0DCBzTAMBgNV
-+HRMBAf8EAjAAMB0GA1UdDgQWBBSIWlXAUv9hzVKjNQ/qWpwkOCL3XDALBgNVHQ8E
-+BAMCBeAwgZAGA1UdEQSBiDCBhYIeYWx0bnVsbC5weXRob24ub3JnAGV4YW1wbGUu
-+Y29tgSBudWxsQHB5dGhvbi5vcmcAdXNlckBleGFtcGxlLm9yZ4YpaHR0cDovL251
-+bGwucHl0aG9uLm9yZwBodHRwOi8vZXhhbXBsZS5vcmeHBMAAAgGHECABDbgAAAAA
-+AAAAAAAAAAEwDQYJKoZIhvcNAQEFBQADggEBAKxPRe99SaghcI6IWT7UNkJw9aO9
-+i9eo0Fj2MUqxpKbdb9noRDy2CnHWf7EIYZ1gznXPdwzSN4YCjV5d+Q9xtBaowT0j
-+HPERs1ZuytCNNJTmhyqZ8q6uzMLoht4IqH/FBfpvgaeC5tBTnTT0rD5A/olXeimk
-+kX4LxlEx5RAvpGB2zZVRGr6LobD9rVK91xuHYNIxxxfEGE8tCCWjp0+3ksri9SXx
-+VHWBnbM9YaL32u3hxm8sYB/Yb8WSBavJCWJJqRStVRHM1koZlJmXNx2BX4vPo6iW
-+RFEIPQsFZRLrtnCAiEhyT8bC2s/Njlu6ly9gtJZWSV46Q3ZjBL4q9sHKqZQ=
-+-----END CERTIFICATE-----
---- /dev/null
-+++ php5/ext/openssl/tests/cve2013_4073.phpt
-@@ -0,0 +1,19 @@
-+--TEST--
-+CVE 2013-4073: Null-byte certificate handling
-+--SKIPIF--
-+<?php
-+if (!extension_loaded("openssl")) die("skip");
-+--FILE--
-+<?php
-+$cert = file_get_contents(__DIR__ . '/cve2013_4073.pem');
-+$info = openssl_x509_parse($cert);
-+var_export($info['extensions']);
-+
-+--EXPECTF--
-+array (
-+  'basicConstraints' => 'CA:FALSE',
-+  'subjectKeyIdentifier' => 
'88:5A:55:C0:52:FF:61:CD:52:A3:35:0F:EA:5A:9C:24:38:22:F7:5C',
-+  'keyUsage' => 'Digital Signature, Non Repudiation, Key Encipherment',
-+  'subjectAltName' => 'DNS:altnull.python.org' . "\0" . 'example.com, 
email:[email protected]' . "\0" . '[email protected], URI:http://null.python.org' 
. "\0" . 'http://example.org, IP Address:192.0.2.1, IP 
Address:2001:DB8:0:0:0:0:0:1
-+',
-+)
diff --git a/source/devel/php/CVE-2013-6420.patch 
b/source/devel/php/CVE-2013-6420.patch
deleted file mode 100644
index 3c2f9f4..0000000
--- a/source/devel/php/CVE-2013-6420.patch
+++ /dev/null
@@ -1,102 +0,0 @@
-From c1224573c773b6845e83505f717fbf820fc18415 Mon Sep 17 00:00:00 2001
-From: Stanislav Malyshev <[email protected]>
-Date: Sun, 8 Dec 2013 11:40:18 -0800
-Subject: [PATCH] Fix CVE-2013-6420 - memory corruption in openssl_x509_parse
-
----
- NEWS                                 |  4 +++-
- ext/openssl/openssl.c                | 18 ++++++++++++++----
- ext/openssl/tests/cve-2013-6420.crt  | 29 +++++++++++++++++++++++++++++
- ext/openssl/tests/cve-2013-6420.phpt | 18 ++++++++++++++++++
- 4 files changed, 64 insertions(+), 5 deletions(-)
- create mode 100644 ext/openssl/tests/cve-2013-6420.crt
- create mode 100644 ext/openssl/tests/cve-2013-6420.phpt
-
---- php5.orig/ext/openssl/openssl.c
-+++ php5/ext/openssl/openssl.c
-@@ -644,18 +644,28 @@ static time_t asn1_time_to_time_t(ASN1_U
-       char * thestr;
-       long gmadjust = 0;
-
--      if (timestr->length < 13) {
--              php_error_docref(NULL TSRMLS_CC, E_WARNING, "extension author 
too lazy to parse %s correctly", timestr->data);
-+      if (ASN1_STRING_type(timestr) != V_ASN1_UTCTIME) {
-+              php_error_docref(NULL TSRMLS_CC, E_WARNING, "illegal ASN1 data 
type for timestamp");
-               return (time_t)-1;
-       }
-
--      strbuf = estrdup((char *)timestr->data);
-+      if (ASN1_STRING_length(timestr) != strlen(ASN1_STRING_data(timestr))) {
-+              php_error_docref(NULL TSRMLS_CC, E_WARNING, "illegal length in 
timestamp");
-+              return (time_t)-1;
-+      }
-+
-+      if (ASN1_STRING_length(timestr) < 13) {
-+              php_error_docref(NULL TSRMLS_CC, E_WARNING, "unable to parse 
time string %s correctly", timestr->data);
-+              return (time_t)-1;
-+      }
-+
-+      strbuf = estrdup((char *)ASN1_STRING_data(timestr));
-
-       memset(&thetime, 0, sizeof(thetime));
-
-       /* we work backwards so that we can use atoi more easily */
-
--      thestr = strbuf + timestr->length - 3;
-+      thestr = strbuf + ASN1_STRING_length(timestr) - 3;
-
-       thetime.tm_sec = atoi(thestr);
-       *thestr = '\0';
---- /dev/null
-+++ php5/ext/openssl/tests/cve-2013-6420.crt
-@@ -0,0 +1,29 @@
-+-----BEGIN CERTIFICATE-----
-+MIIEpDCCA4ygAwIBAgIJAJzu8r6u6eBcMA0GCSqGSIb3DQEBBQUAMIHDMQswCQYD
-+VQQGEwJERTEcMBoGA1UECAwTTm9yZHJoZWluLVdlc3RmYWxlbjEQMA4GA1UEBwwH
-+S8ODwrZsbjEUMBIGA1UECgwLU2VrdGlvbkVpbnMxHzAdBgNVBAsMFk1hbGljaW91
-+cyBDZXJ0IFNlY3Rpb24xITAfBgNVBAMMGG1hbGljaW91cy5zZWt0aW9uZWlucy5k
-+ZTEqMCgGCSqGSIb3DQEJARYbc3RlZmFuLmVzc2VyQHNla3Rpb25laW5zLmRlMHUY
-+ZDE5NzAwMTAxMDAwMDAwWgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-+AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
-+AAAAAAAXDTE0MTEyODExMzkzNVowgcMxCzAJBgNVBAYTAkRFMRwwGgYDVQQIDBNO
-+b3JkcmhlaW4tV2VzdGZhbGVuMRAwDgYDVQQHDAdLw4PCtmxuMRQwEgYDVQQKDAtT
-+ZWt0aW9uRWluczEfMB0GA1UECwwWTWFsaWNpb3VzIENlcnQgU2VjdGlvbjEhMB8G
-+A1UEAwwYbWFsaWNpb3VzLnNla3Rpb25laW5zLmRlMSowKAYJKoZIhvcNAQkBFhtz
-+dGVmYW4uZXNzZXJAc2VrdGlvbmVpbnMuZGUwggEiMA0GCSqGSIb3DQEBAQUAA4IB
-+DwAwggEKAoIBAQDDAf3hl7JY0XcFniyEJpSSDqn0OqBr6QP65usJPRt/8PaDoqBu
-+wEYT/Na+6fsgPjC0uK9DZgWg2tHWWoanSblAMoz5PH6Z+S4SHRZ7e2dDIjPjdhjh
-+0mLg2UMO5yp0V797Ggs9lNt6JRfH81MN2obXWs4NtztLMuD6egqpr8dDbr34aOs8
-+pkdui5UawTZksy5pLPHq5cMhFGm06v65CLo0V2Pd9+KAokPrPcN5KLKebz7mLpk6
-+SMeEXOKP4idEqxyQ7O7fBuHMedsQhu+prY3si3BUyKfQtP5CZnX2bp0wKHxX12DX
-+1nfFIt9DbGvHTcyOuN+nZLPBm3vWxntyIIvVAgMBAAGjQjBAMAkGA1UdEwQCMAAw
-+EQYJYIZIAYb4QgEBBAQDAgeAMAsGA1UdDwQEAwIFoDATBgNVHSUEDDAKBggrBgEF
-+BQcDAjANBgkqhkiG9w0BAQUFAAOCAQEAG0fZYYCTbdj1XYc+1SnoaPR+vI8C8CaD
-+8+0UYhdnyU4gga0BAcDrY9e94eEAu6ZqycF6FjLqXXdAboppWocr6T6GD1x33Ckl
-+VArzG/KxQohGD2JeqkhIMlDomxHO7ka39+Oa8i2vWLVyjU8AZvWMAruHa4EENyG7
-+lW2AagaFKFCr9TnXTfrdxGVEbv7KVQ6bdhg5p5SjpWH1+Mq03uR3ZXPBYdyV8319
-+o0lVj1KFI2DCL/liWisJRoof+1cR35Ctd0wYBcpB6TZslMcOPl76dwKwJgeJo2Qg
-+Zsfmc2vC1/qOlNuNq/0TzzkVGv8ETT3CgaU+UXe4XOVvkccebJn2dg==
-+-----END CERTIFICATE-----
-+
-+
---- /dev/null
-+++ php5/ext/openssl/tests/cve-2013-6420.phpt
-@@ -0,0 +1,18 @@
-+--TEST--
-+CVE-2013-6420
-+--SKIPIF--
-+<?php
-+if (!extension_loaded("openssl")) die("skip");
-+?>
-+--FILE--
-+<?php
-+$crt = substr(__FILE__, 0, -4).'.crt';
-+$info = openssl_x509_parse("file://$crt");
-+var_dump($info['issuer']['emailAddress'], $info["validFrom_time_t"]);
-+?>
-+Done
-+--EXPECTF--
-+%s openssl_x509_parse(): illegal ASN1 data type for timestamp in 
%s%ecve-2013-6420.php on line 3
-+string(27) "[email protected]"
-+int(-1)
-+Done
diff --git a/source/devel/php/CVE-2013-6712.patch 
b/source/devel/php/CVE-2013-6712.patch
deleted file mode 100644
index 8e316d7..0000000
--- a/source/devel/php/CVE-2013-6712.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 12fe4e90be7bfa2a763197079f68f5568a14e071 Mon Sep 17 00:00:00 2001
-From: Remi Collet <[email protected]>
-Date: Wed, 27 Nov 2013 11:13:16 +0100
-Subject: [PATCH] Fixed bug #66060 (Heap buffer over-read in DateInterval)
-
----
- NEWS                                | 3 +++
- ext/date/lib/parse_iso_intervals.c  | 4 ++--
- ext/date/lib/parse_iso_intervals.re | 2 +-
- 3 files changed, 6 insertions(+), 3 deletions(-)
-
---- php5.orig/ext/date/lib/parse_iso_intervals.c
-+++ php5/ext/date/lib/parse_iso_intervals.c
-@@ -415,7 +415,7 @@ yy6:
-                                       break;
-                       }
-                       ptr++;
--              } while (*ptr);
-+              } while (!s->errors->error_count && *ptr);
-               s->have_period = 1;
-               TIMELIB_DEINIT;
-               return TIMELIB_PERIOD;
---- php5.orig/ext/date/lib/parse_iso_intervals.re
-+++ php5/ext/date/lib/parse_iso_intervals.re
-@@ -383,7 +383,7 @@ isoweek          = year4 "-"? "W" weekof
-                                       break;
-                       }
-                       ptr++;
--              } while (*ptr);
-+              } while (!s->errors->error_count && *ptr);
-               s->have_period = 1;
-               TIMELIB_DEINIT;
-               return TIMELIB_PERIOD;
diff --git a/source/devel/php/CVE-2014-0185.patch 
b/source/devel/php/CVE-2014-0185.patch
deleted file mode 100644
index 389f62e..0000000
--- a/source/devel/php/CVE-2014-0185.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- php5.orig/sapi/fpm/fpm/fpm_unix.c
-+++ php5/sapi/fpm/fpm/fpm_unix.c
-@@ -34,7 +34,7 @@ int fpm_unix_resolve_socket_premissions(
-       /* uninitialized */
-       wp->socket_uid = -1;
-       wp->socket_gid = -1;
--      wp->socket_mode = 0666;
-+      wp->socket_mode = 0660;
-
-       if (!c) {
-               return 0;
---- php5.orig/sapi/fpm/php-fpm.conf.in
-+++ php5/sapi/fpm/php-fpm.conf.in
-@@ -162,10 +162,10 @@ listen = /var/run/php5-fpm.sock
- ; permissions must be set in order to allow connections from a web server. 
Many
- ; BSD-derived systems allow connections regardless of permissions.
- ; Default Values: user and group are set as the running user
--;                 mode is set to 0666
-+;                 mode is set to 0660
- ;listen.owner = @php_fpm_user@
- ;listen.group = @php_fpm_group@
--;listen.mode = 0666
-+;listen.mode = 0660
-
- ; List of ipv4 addresses of FastCGI clients which are allowed to connect.
- ; Equivalent to the FCGI_WEB_SERVER_ADDRS environment variable in the original
diff --git a/source/devel/php/CVE-2014-0237.patch 
b/source/devel/php/CVE-2014-0237.patch
deleted file mode 100644
index ea96af0..0000000
--- a/source/devel/php/CVE-2014-0237.patch
+++ /dev/null
@@ -1,36 +0,0 @@
---- php5.orig/ext/fileinfo/libmagic/cdf.c
-+++ php5/ext/fileinfo/libmagic/cdf.c
-@@ -942,7 +942,7 @@ int
- cdf_unpack_summary_info(const cdf_stream_t *sst, const cdf_header_t *h,
-     cdf_summary_info_header_t *ssi, cdf_property_info_t **info, size_t *count)
- {
--      size_t i, maxcount;
-+      size_t maxcount;
-       const cdf_summary_info_header_t *si =
-           CAST(const cdf_summary_info_header_t *, sst->sst_tab);
-       const cdf_section_declaration_t *sd =
-@@ -957,21 +957,13 @@ cdf_unpack_summary_info(const cdf_stream
-       ssi->si_os = CDF_TOLE2(si->si_os);
-       ssi->si_class = si->si_class;
-       cdf_swap_class(&ssi->si_class);
--      ssi->si_count = CDF_TOLE2(si->si_count);
-+      ssi->si_count = CDF_TOLE4(si->si_count);
-       *count = 0;
-       maxcount = 0;
-       *info = NULL;
--      for (i = 0; i < CDF_TOLE4(si->si_count); i++) {
--              if (i >= CDF_LOOP_LIMIT) {
--                      DPRINTF(("Unpack summary info loop limit"));
--                      errno = EFTYPE;
-+      if (cdf_read_property_info(sst, h, CDF_TOLE4(sd->sd_offset), info,
-+              count, &maxcount) == -1)
-                       return -1;
--              }
--              if (cdf_read_property_info(sst, h, CDF_TOLE4(sd->sd_offset),
--                  info, count, &maxcount) == -1) {
--                      return -1;
--              }
--      }
-       return 0;
- }
-
diff --git a/source/devel/php/CVE-2014-0238.patch 
b/source/devel/php/CVE-2014-0238.patch
deleted file mode 100644
index 4bb631c..0000000
--- a/source/devel/php/CVE-2014-0238.patch
+++ /dev/null
@@ -1,24 +0,0 @@
---- php5.orig/ext/fileinfo/libmagic/cdf.c
-+++ php5/ext/fileinfo/libmagic/cdf.c
-@@ -823,6 +823,10 @@ cdf_read_property_info(const cdf_stream_
-                   i, inp[i].pi_id, inp[i].pi_type, q - p, offs));
-               if (inp[i].pi_type & CDF_VECTOR) {
-                       nelements = CDF_GETUINT32(q, 1);
-+                      if (nelements == 0) {
-+                              DPRINTF(("CDF_VECTOR with nelements == 0\n"));
-+                              goto out;
-+                      }
-                       o = 2;
-               } else {
-                       nelements = 1;
-@@ -897,7 +901,9 @@ cdf_read_property_info(const cdf_stream_
-                       }
-                       DPRINTF(("nelements = %" SIZE_T_FORMAT "u\n",
-                           nelements));
--                      for (j = 0; j < nelements; j++, i++) {
-+                      for (j = 0; j < nelements && i < sh.sh_properties;
-+                          j++, i++)
-+                      {
-                               uint32_t l = CDF_GETUINT32(q, o);
-                               inp[i].pi_str.s_len = l;
-                               inp[i].pi_str.s_buf = (const char *)
diff --git a/source/devel/php/CVE-2014-1943.patch 
b/source/devel/php/CVE-2014-1943.patch
deleted file mode 100644
index 794ba00..0000000
--- a/source/devel/php/CVE-2014-1943.patch
+++ /dev/null
@@ -1,139 +0,0 @@
-Upstream-Author: Christos Zoulas <[email protected]>
-Description:
- prevent infinite recursion.
- count indirect recursion as recursion.
-
-Upstream commit IDs:
-    3c081560c23f20b2985c285338b52c7aae9fdb0f
-    cc9e74dfeca5265ad725acc926ef0b8d2a18ee70
-
-Backport for 5.11: Christoph Biedl <[email protected]>
-
---- php5.orig/ext/fileinfo/libmagic/softmagic.c
-+++ php5/ext/fileinfo/libmagic/softmagic.c
-@@ -48,9 +48,9 @@ FILE_RCSID("@(#)$File: softmagic.c,v 1.1
-
-
- private int match(struct magic_set *, struct magic *, uint32_t,
--    const unsigned char *, size_t, int, int);
-+    const unsigned char *, size_t, int, int, int);
- private int mget(struct magic_set *, const unsigned char *,
--    struct magic *, size_t, unsigned int, int);
-+    struct magic *, size_t, unsigned int, int, int);
- private int magiccheck(struct magic_set *, struct magic *);
- private int32_t mprint(struct magic_set *, struct magic *);
- private int32_t moffset(struct magic_set *, struct magic *);
-@@ -72,13 +72,13 @@ private void cvt_64(union VALUETYPE *, c
- /*ARGSUSED1*/         /* nbytes passed for regularity, maybe need later */
- protected int
- file_softmagic(struct magic_set *ms, const unsigned char *buf, size_t nbytes,
--    int mode, int text)
-+    size_t level, int mode, int text)
- {
-       struct mlist *ml;
-       int rv;
-       for (ml = ms->mlist->next; ml != ms->mlist; ml = ml->next)
-               if ((rv = match(ms, ml->magic, ml->nmagic, buf, nbytes, mode,
--                  text)) != 0)
-+                  text, level)) != 0)
-                       return rv;
-
-       return 0;
-@@ -113,7 +113,8 @@ file_softmagic(struct magic_set *ms, con
-  */
- private int
- match(struct magic_set *ms, struct magic *magic, uint32_t nmagic,
--    const unsigned char *s, size_t nbytes, int mode, int text)
-+    const unsigned char *s, size_t nbytes, int mode, int text,
-+    int recursion_level)
- {
-       uint32_t magindex = 0;
-       unsigned int cont_level = 0;
-@@ -145,7 +146,7 @@ match(struct magic_set *ms, struct magic
-               ms->line = m->lineno;
-
-               /* if main entry matches, print it... */
--              switch (mget(ms, s, m, nbytes, cont_level, text)) {
-+              switch (mget(ms, s, m, nbytes, cont_level, text, 
recursion_level + 1)) {
-               case -1:
-                       return -1;
-               case 0:
-@@ -227,7 +228,7 @@ match(struct magic_set *ms, struct magic
-                                       continue;
-                       }
- #endif
--                      switch (mget(ms, s, m, nbytes, cont_level, text)) {
-+                      switch (mget(ms, s, m, nbytes, cont_level, text, 
recursion_level + 1)) {
-                       case -1:
-                               return -1;
-                       case 0:
-@@ -997,12 +998,18 @@ mcopy(struct magic_set *ms, union VALUET
-
- private int
- mget(struct magic_set *ms, const unsigned char *s,
--    struct magic *m, size_t nbytes, unsigned int cont_level, int text)
-+    struct magic *m, size_t nbytes, unsigned int cont_level, int text,
-+    int recursion_level)
- {
-       uint32_t offset = ms->offset;
-       uint32_t count = m->str_range;
-       union VALUETYPE *p = &ms->ms_value;
-
-+        if (recursion_level >= 20) {
-+                file_error(ms, 0, "recursion nesting exceeded");
-+                return -1;
-+        }
-+
-       if (mcopy(ms, p, m->type, m->flag & INDIR, s, offset, nbytes, count) == 
-1)
-               return -1;
-
-@@ -1550,13 +1557,15 @@ mget(struct magic_set *ms, const unsigne
-               break;
-
-       case FILE_INDIRECT:
-+              if (offset == 0)
-+                      return 0;
-               if ((ms->flags & (MAGIC_MIME|MAGIC_APPLE)) == 0 &&
-                   file_printf(ms, "%s", m->desc) == -1)
-                       return -1;
-               if (nbytes < offset)
-                       return 0;
-               return file_softmagic(ms, s + offset, nbytes - offset,
--                  BINTEST, text);
-+                  recursion_level, BINTEST, text);
-
-       case FILE_DEFAULT:      /* nothing to check */
-       default:
---- php5.orig/ext/fileinfo/libmagic/ascmagic.c
-+++ php5/ext/fileinfo/libmagic/ascmagic.c
-@@ -145,7 +145,7 @@ file_ascmagic_with_encoding(struct magic
-                   == NULL)
-                       goto done;
-               if ((rv = file_softmagic(ms, utf8_buf,
--                  (size_t)(utf8_end - utf8_buf), TEXTTEST, text)) == 0)
-+                  (size_t)(utf8_end - utf8_buf), 0, TEXTTEST, text)) == 0)
-                       rv = -1;
-       }
-
---- php5.orig/ext/fileinfo/libmagic/file.h
-+++ php5/ext/fileinfo/libmagic/file.h
-@@ -414,7 +414,7 @@ protected int file_encoding(struct magic
-     unichar **, size_t *, const char **, const char **, const char **);
- protected int file_is_tar(struct magic_set *, const unsigned char *, size_t);
- protected int file_softmagic(struct magic_set *, const unsigned char *, 
size_t,
--    int, int);
-+    size_t, int, int);
- protected struct mlist *file_apprentice(struct magic_set *, const char *, 
int);
- protected uint64_t file_signextend(struct magic_set *, struct magic *,
-     uint64_t);
---- php5.orig/ext/fileinfo/libmagic/funcs.c
-+++ php5/ext/fileinfo/libmagic/funcs.c
-@@ -235,7 +235,7 @@ file_buffer(struct magic_set *ms, php_st
-
-       /* try soft magic tests */
-       if ((ms->flags & MAGIC_NO_CHECK_SOFT) == 0)
--              if ((m = file_softmagic(ms, ubuf, nb, BINTEST,
-+              if ((m = file_softmagic(ms, ubuf, nb, 0, BINTEST,
-                   looks_text)) != 0) {
-                       if ((ms->flags & MAGIC_DEBUG) != 0)
-                               (void)fprintf(stderr, "softmagic %d\n", m);
diff --git a/source/devel/php/CVE-2014-2270.patch 
b/source/devel/php/CVE-2014-2270.patch
deleted file mode 100644
index 9f92bd2..0000000
--- a/source/devel/php/CVE-2014-2270.patch
+++ /dev/null
@@ -1,83 +0,0 @@
---- php5.orig/ext/fileinfo/libmagic/softmagic.c
-+++ php5/ext/fileinfo/libmagic/softmagic.c
-@@ -65,6 +65,8 @@ private void cvt_16(union VALUETYPE *, c
- private void cvt_32(union VALUETYPE *, const struct magic *);
- private void cvt_64(union VALUETYPE *, const struct magic *);
-
-+#define OFFSET_OOB(n, o, i)   ((n) < (o) || (i) > ((n) - (o)))
-+
- /*
-  * softmagic - lookup one file in parsed, in-memory copy of database
-  * Passed the name and FILE * of one file to be typed.
-@@ -1056,7 +1058,7 @@ mget(struct magic_set *ms, const unsigne
-               }
-               switch (m->in_type) {
-               case FILE_BYTE:
--                      if (nbytes < (offset + 1))
-+                      if (OFFSET_OOB(nbytes, offset, 1))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1091,7 +1093,7 @@ mget(struct magic_set *ms, const unsigne
-                               offset = ~offset;
-                       break;
-               case FILE_BESHORT:
--                      if (nbytes < (offset + 2))
-+                      if (OFFSET_OOB(nbytes, offset, 2))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1143,7 +1145,7 @@ mget(struct magic_set *ms, const unsigne
-                               offset = ~offset;
-                       break;
-               case FILE_LESHORT:
--                      if (nbytes < (offset + 2))
-+                      if (OFFSET_OOB(nbytes, offset, 2))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1195,7 +1197,7 @@ mget(struct magic_set *ms, const unsigne
-                               offset = ~offset;
-                       break;
-               case FILE_SHORT:
--                      if (nbytes < (offset + 2))
-+                      if (OFFSET_OOB(nbytes, offset, 2))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1232,7 +1234,7 @@ mget(struct magic_set *ms, const unsigne
-                       break;
-               case FILE_BELONG:
-               case FILE_BEID3:
--                      if (nbytes < (offset + 4))
-+                      if (OFFSET_OOB(nbytes, offset, 4))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1303,7 +1305,7 @@ mget(struct magic_set *ms, const unsigne
-                       break;
-               case FILE_LELONG:
-               case FILE_LEID3:
--                      if (nbytes < (offset + 4))
-+                      if (OFFSET_OOB(nbytes, offset, 4))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1373,7 +1375,7 @@ mget(struct magic_set *ms, const unsigne
-                               offset = ~offset;
-                       break;
-               case FILE_MELONG:
--                      if (nbytes < (offset + 4))
-+                      if (OFFSET_OOB(nbytes, offset, 4))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
-@@ -1443,7 +1445,7 @@ mget(struct magic_set *ms, const unsigne
-                               offset = ~offset;
-                       break;
-               case FILE_LONG:
--                      if (nbytes < (offset + 4))
-+                      if (OFFSET_OOB(nbytes, offset, 4))
-                               return 0;
-                       if (off) {
-                               switch (m->in_op & FILE_OPS_MASK) {
diff --git a/source/devel/php/CVE-2014-4049.patch 
b/source/devel/php/CVE-2014-4049.patch
deleted file mode 100644
index 380d7cf..0000000
--- a/source/devel/php/CVE-2014-4049.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 4f73394fdd95d3165b4391e1b0dedd57fced8c3b Mon Sep 17 00:00:00 2001
-From: Sara Golemon <[email protected]>
-Date: Tue, 10 Jun 2014 11:18:02 -0700
-Subject: [PATCH] Fix potential segfault in dns_get_record()
-
-If the remote sends us a packet with a malformed TXT record,
-we could end up trying to over-consume the packet and wander
-off into overruns.
----
- ext/standard/dns.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-Index: php5-5.3.10/ext/standard/dns.c
-===================================================================
---- php5-5.3.10.orig/ext/standard/dns.c        2014-06-19 13:42:51.333434663 
-0400
-+++ php5-5.3.10/ext/standard/dns.c     2014-06-19 13:42:51.289434662 -0400
-@@ -507,6 +507,10 @@
-
-                               while (ll < dlen) {
-                                       n = cp[ll];
-+                                      if ((ll + n) >= dlen) {
-+                                              // Invalid chunk length, 
truncate
-+                                              n = dlen - (ll + 1);
-+                                      }
-                                       memcpy(tp + ll , cp + ll + 1, n);
-                                       add_next_index_stringl(entries, cp + ll 
+ 1, n, 1);
-                                       ll = ll + n + 1;
diff --git a/source/devel/php/FrugalBuild b/source/devel/php/FrugalBuild
index 4ae21dc..ec7da32 100644
--- a/source/devel/php/FrugalBuild
+++ b/source/devel/php/FrugalBuild
@@ -3,8 +3,8 @@
# Contributor: Miklos Vajna <[email protected]>

pkgname=php
-pkgver=5.3.26
-pkgrel=4
+pkgver=5.5.14
+pkgrel=1
pkgdesc="A widely-used general-purpose scripting language"
url="http://www.php.net";
backup=(etc/{php.ini,httpd/conf/modules.d/$pkgname.conf})
@@ -15,12 +15,10 @@ makedepends=('apache' 'imap>=2006k-2' 'bzip2' 'mta' 
'tidy=1306.g4387491' 'freetd
'libxslt' 'enchant')
groups=('devel')
archs=('i686' 'x86_64')
-up2date="lynx -dump http://www.php.net/downloads.php | grep 'Complete Source 
Code' -B2 | awk '/stable/ {print \$2}'"
-#source=(http://www.php.net/distributions/$pkgname-$pkgver.tar.gz \
-source=(http://museum.php.net/php5/$pkgname-$pkgver.tar.gz \
-       autoconf_259.patch php.ini php.conf README.Frugalware phpize.in.patch)
-sha1sums=('99e8094051f94b0a03b05fa9d4cbe0794ee3ac4f' \
-          'c99534745f4dee26446c9e6f42e35a0c85ce961b' \
+up2date="lynx -dump $url | sed -n 's/.*downloads.php#v\(.*\)/\1/p' | head -1"
+source=(http://www.php.net/distributions/$pkgname-$pkgver.tar.gz \
+       php.ini php.conf README.Frugalware phpize.in.patch)
+sha1sums=('be2e4bf894952760275fe59a0390c6976a17a82e' \
'9249ca52e57a3069befe20311fd02fc8bee7aeef' \
'0850ef23512a02e8460dc36f08f453d148dcd9df' \
'40ae88f0721e02a2c75de76be342c51c85bf734d' \
@@ -33,24 +31,9 @@ subrodepends=("$pkgname=$pkgver")
subgroups=('devel-extra')
subarchs=('i686 x86_64')

-
-# FSA fix ***
-source=(${source[@]} CVE-2013-4113.patch CVE-2013-4248.patch 
CVE-2013-6420.patch
-                     CVE-2013-6712.patch CVE-2014-1943.patch 
CVE-2014-0185.patch
-                     CVE-2014-0237.patch CVE-2014-0238.patch 
CVE-2014-2270.patch
-                     CVE-2014-4049.patch)
-sha1sums=(${sha1sums[@]} '7b9f92b247bf141012b4a83d5bad1b823e4eb2d1' \
-                         'b75fe24356d0e6c5d375c4d2d2315f17d5e34e31' \
-                         '805231398c06b27e4e1f8c18ce9d6aed7b06382d' \
-                         '0e2ad0691c8a4bbb128d978f21f79e36df1a0bf5' \
-                         'ff4c9a129952081b9db72f5b941f6ffc53a6213d' \
-                         '89eb79fa23e49a3cf0ee4929233fccbbd2b9367d' \
-                         '9fd5280138a6a9d8bfa4c5239f9451869985de35' \
-                         '2c0db438c6773d5bc9d1af3b637c4d8cd93bf4e7' \
-                         'e2c4c40700c1004c4924abc329fc4f75030350e0' \
-                         'a3fa0995e26e03681f0ce20289587645e6a4e401')
-# ***********
-
+replaces=('php-pecl-fileinfo')
+conflicts=('php-pecl-fileinfo')
+provides=('php-pecl-fileinfo')

build()
{
@@ -166,6 +149,7 @@ build()
Fln /etc/php.ini /usr/lib/php.ini
Fln /usr/share/libtool/config/ltmain.sh /usr/lib/php/build/ltmain.sh
Fln /usr/share/aclocal/libtool.m4 /usr/lib/php/build/libtool.m4
+       Frm /usr/bin/php-cgi
}

# optimization OK
_______________________________________________
Frugalware-git mailing list
[email protected]
http://frugalware.org/mailman/listinfo/frugalware-git

Reply via email to