[packages/php/PHP_5_3] - rel 42; fix linking
arekm
arekm at pld-linux.org
Tue Sep 25 14:32:36 CEST 2018
commit 7a3db4b1fb94414b88c9afb35456f970c6dadabd
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Tue Sep 25 14:32:27 2018 +0200
- rel 42; fix linking
openssl.patch | 158 +++++++++++++++++++++++++++++-----------------------------
php.spec | 2 +-
2 files changed, 81 insertions(+), 79 deletions(-)
---
diff --git a/php.spec b/php.spec
index e014655..43f375d 100644
--- a/php.spec
+++ b/php.spec
@@ -143,7 +143,7 @@ ERROR: You need to select at least one Apache SAPI to build shared modules.
%undefine with_alternatives
%endif
-%define rel 41
+%define rel 42
%define orgname php
%define ver_suffix 53
%define php_suffix %{!?with_default_php:%{ver_suffix}}
diff --git a/openssl.patch b/openssl.patch
index 7d5f6bd..ffdd438 100644
--- a/openssl.patch
+++ b/openssl.patch
@@ -1,6 +1,6 @@
-diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
---- php-5.3.29/ext/openssl.org/openssl.c 2018-09-25 10:04:14.977464124 +0200
-+++ php-5.3.29/ext/openssl/openssl.c 2018-09-25 10:52:55.905608895 +0200
+diff -urN php-5.3.29.org/ext/openssl/openssl.c php-5.3.29/ext/openssl/openssl.c
+--- php-5.3.29.org/ext/openssl/openssl.c 2018-09-25 12:32:51.062376414 +0200
++++ php-5.3.29/ext/openssl/openssl.c 2018-09-25 12:38:20.995593826 +0200
@@ -68,6 +68,13 @@
#define DEBUG_SMIME 0
@@ -39,7 +39,28 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
default:
return NULL;
break;
-@@ -1344,6 +1348,7 @@
+@@ -989,14 +993,17 @@
+ le_x509 = zend_register_list_destructors_ex(php_x509_free, NULL, "OpenSSL X.509", module_number);
+ le_csr = zend_register_list_destructors_ex(php_csr_free, NULL, "OpenSSL X.509 CSR", module_number);
+
++#if OPENSSL_VERSION_NUMBER < 0x10100000L
++ OPENSSL_config(NULL);
+ SSL_library_init();
+ OpenSSL_add_all_ciphers();
+ OpenSSL_add_all_digests();
+ OpenSSL_add_all_algorithms();
+
+- ERR_load_ERR_strings();
+- ERR_load_crypto_strings();
+- ERR_load_EVP_strings();
++ SSL_load_error_strings();
++#else
++ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_CONFIG, NULL);
++#endif
+
+ /* register a resource id number with OpenSSL so that we can map SSL -> stream structures in
+ * OpenSSL callbacks */
+@@ -1344,6 +1351,7 @@
{
GENERAL_NAMES *names;
const X509V3_EXT_METHOD *method = NULL;
@@ -47,7 +68,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
long i, length, num;
const unsigned char *p;
-@@ -1352,8 +1357,9 @@
+@@ -1352,8 +1360,9 @@
return -1;
}
@@ -59,7 +80,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (method->it) {
names = (GENERAL_NAMES*)(ASN1_item_d2i(NULL, &p, length,
ASN1_ITEM_ptr(method->it)));
-@@ -1416,6 +1422,8 @@
+@@ -1416,6 +1425,8 @@
char * tmpstr;
zval * subitem;
X509_EXTENSION *extension;
@@ -68,7 +89,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
char *extname;
BIO *bio_out;
BUF_MEM *bio_buf;
-@@ -1430,12 +1438,12 @@
+@@ -1430,12 +1441,12 @@
}
array_init(return_value);
@@ -86,7 +107,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
/* hash as used in CA directories to lookup cert by subject name */
{
char buf[32];
-@@ -2921,13 +2929,20 @@
+@@ -2921,13 +2932,20 @@
{
assert(pkey != NULL);
@@ -111,7 +132,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
break;
#endif
-@@ -2937,19 +2952,41 @@
+@@ -2937,19 +2955,41 @@
case EVP_PKEY_DSA2:
case EVP_PKEY_DSA3:
case EVP_PKEY_DSA4:
@@ -159,7 +180,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
break;
#endif
-@@ -2961,6 +2998,31 @@
+@@ -2961,6 +3001,31 @@
}
/* }}} */
@@ -191,7 +212,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
#define OPENSSL_PKEY_GET_BN(_type, _name) do { \
if (pkey->pkey._type->_name != NULL) { \
int len = BN_num_bytes(pkey->pkey._type->_name); \
-@@ -2980,7 +3042,144 @@
+@@ -2980,7 +3045,144 @@
Z_STRLEN_PP(bn), NULL); \
} \
} while (0);
@@ -201,7 +222,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
+zend_bool php_openssl_pkey_init_and_assign_rsa(EVP_PKEY *pkey, RSA *rsa, zval **data)
+{
+ BIGNUM *n, *e, *d, *p, *q, *dmp1, *dmq1, *iqmp;
-
++
+ OPENSSL_PKEY_SET_BN(data, n);
+ OPENSSL_PKEY_SET_BN(data, e);
+ OPENSSL_PKEY_SET_BN(data, d);
@@ -262,7 +283,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
+ return 1;
+}
+/* }}} */
-+
+
+/* {{{ php_openssl_dh_pub_from_priv */
+static BIGNUM *php_openssl_dh_pub_from_priv(BIGNUM *priv_key, BIGNUM *g, BIGNUM *p)
+{
@@ -336,7 +357,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
/* {{{ proto resource openssl_pkey_new([array configargs])
Generates a new private key */
-@@ -3004,18 +3203,8 @@
+@@ -3004,18 +3206,8 @@
if (pkey) {
RSA *rsa = RSA_new();
if (rsa) {
@@ -357,7 +378,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
RSA_free(rsa);
}
-@@ -3028,15 +3217,7 @@
+@@ -3028,15 +3220,7 @@
if (pkey) {
DSA *dsa = DSA_new();
if (dsa) {
@@ -374,7 +395,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (EVP_PKEY_assign_DSA(pkey, dsa)) {
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
}
-@@ -3052,14 +3233,7 @@
+@@ -3052,14 +3236,7 @@
if (pkey) {
DH *dh = DH_new();
if (dh) {
@@ -390,7 +411,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (EVP_PKEY_assign_DH(pkey, dh)) {
RETURN_RESOURCE(zend_list_insert(pkey, le_key));
}
-@@ -3289,63 +3463,79 @@
+@@ -3289,63 +3466,79 @@
/*TODO: Use the real values once the openssl constants are used
* See the enum at the top of this file
*/
@@ -515,7 +536,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
break;
#ifdef EVP_PKEY_EC
case EVP_PKEY_EC:
-@@ -3844,13 +4034,13 @@
+@@ -3844,13 +4037,13 @@
cryptedlen = EVP_PKEY_size(pkey);
cryptedbuf = emalloc(cryptedlen + 1);
@@ -531,7 +552,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
padding) == cryptedlen);
break;
default:
-@@ -3902,13 +4092,13 @@
+@@ -3902,13 +4095,13 @@
cryptedlen = EVP_PKEY_size(pkey);
crypttemp = emalloc(cryptedlen + 1);
@@ -547,7 +568,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
padding);
if (cryptedlen != -1) {
cryptedbuf = emalloc(cryptedlen + 1);
-@@ -3967,13 +4157,13 @@
+@@ -3967,13 +4160,13 @@
cryptedlen = EVP_PKEY_size(pkey);
cryptedbuf = emalloc(cryptedlen + 1);
@@ -563,7 +584,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
padding) == cryptedlen);
break;
default:
-@@ -4026,13 +4216,13 @@
+@@ -4026,13 +4219,13 @@
cryptedlen = EVP_PKEY_size(pkey);
crypttemp = emalloc(cryptedlen + 1);
@@ -579,7 +600,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
padding);
if (cryptedlen != -1) {
cryptedbuf = emalloc(cryptedlen + 1);
-@@ -4096,7 +4286,7 @@
+@@ -4096,7 +4289,7 @@
long keyresource = -1;
char * data;
int data_len;
@@ -588,7 +609,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
zval *method = NULL;
long signature_algo = OPENSSL_ALGO_SHA1;
const EVP_MD *mdtype;
-@@ -4129,9 +4319,11 @@
+@@ -4129,9 +4322,11 @@
siglen = EVP_PKEY_size(pkey);
sigbuf = emalloc(siglen + 1);
@@ -603,7 +624,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
zval_dtor(signature);
sigbuf[siglen] = '\0';
ZVAL_STRINGL(signature, (char *)sigbuf, siglen, 0);
-@@ -4140,7 +4332,7 @@
+@@ -4140,7 +4335,7 @@
efree(sigbuf);
RETVAL_FALSE;
}
@@ -612,7 +633,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (keyresource == -1) {
EVP_PKEY_free(pkey);
}
-@@ -4154,7 +4346,7 @@
+@@ -4154,7 +4349,7 @@
zval **key;
EVP_PKEY *pkey;
int err;
@@ -621,7 +642,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
const EVP_MD *mdtype;
long keyresource = -1;
char * data; int data_len;
-@@ -4188,10 +4380,13 @@
+@@ -4188,10 +4383,13 @@
RETURN_FALSE;
}
@@ -639,7 +660,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (keyresource == -1) {
EVP_PKEY_free(pkey);
-@@ -4215,7 +4410,7 @@
+@@ -4215,7 +4413,7 @@
char *method =NULL;
int method_len = 0;
const EVP_CIPHER *cipher;
@@ -648,7 +669,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "szza/|s", &data, &data_len, &sealdata, &ekeys, &pubkeys, &method, &method_len) == FAILURE) {
return;
-@@ -4262,7 +4457,9 @@
+@@ -4262,7 +4460,9 @@
i++;
}
@@ -659,7 +680,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
RETVAL_FALSE;
goto clean_exit;
}
-@@ -4273,15 +4470,16 @@
+@@ -4273,15 +4473,16 @@
iv = ivlen ? emalloc(ivlen + 1) : NULL;
#endif
/* allocate one byte extra to make room for \0 */
@@ -679,7 +700,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (len1 + len2 > 0) {
zval_dtor(sealdata);
-@@ -4310,6 +4508,7 @@
+@@ -4310,6 +4511,7 @@
efree(buf);
}
RETVAL_LONG(len1 + len2);
@@ -687,7 +708,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
clean_exit:
for (i=0; i<nkeys; i++) {
-@@ -4336,7 +4535,7 @@
+@@ -4336,7 +4538,7 @@
int len1, len2;
unsigned char *buf;
long keyresource = -1;
@@ -696,7 +717,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
char * data; int data_len;
char * ekey; int ekey_len;
char *method =NULL;
-@@ -4365,28 +4564,22 @@
+@@ -4365,28 +4567,22 @@
buf = emalloc(data_len + 1);
@@ -736,7 +757,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
/* }}} */
-@@ -4691,7 +4884,7 @@
+@@ -4691,7 +4887,7 @@
char *data, *method;
int data_len, method_len;
const EVP_MD *mdtype;
@@ -745,7 +766,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
int siglen;
unsigned char *sigbuf;
-@@ -4707,9 +4900,11 @@
+@@ -4707,9 +4903,11 @@
siglen = EVP_MD_size(mdtype);
sigbuf = emalloc(siglen + 1);
@@ -760,7 +781,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (raw_output) {
sigbuf[siglen] = '\0';
RETVAL_STRINGL((char *)sigbuf, siglen, 0);
-@@ -4725,6 +4920,7 @@
+@@ -4725,6 +4923,7 @@
efree(sigbuf);
RETVAL_FALSE;
}
@@ -768,7 +789,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
/* }}} */
-@@ -4770,7 +4966,7 @@
+@@ -4770,7 +4969,7 @@
char *data, *method, *password, *iv = "";
int data_len, method_len, password_len, iv_len = 0, max_iv_len;
const EVP_CIPHER *cipher_type;
@@ -777,7 +798,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
int i = 0, outlen, keylen;
unsigned char *outbuf, *key;
zend_bool free_iv;
-@@ -4784,6 +4980,12 @@
+@@ -4784,6 +4983,12 @@
RETURN_FALSE;
}
@@ -790,7 +811,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
keylen = EVP_CIPHER_key_length(cipher_type);
if (keylen > password_len) {
key = emalloc(keylen);
-@@ -4802,16 +5004,16 @@
+@@ -4802,16 +5007,16 @@
outlen = data_len + EVP_CIPHER_block_size(cipher_type);
outbuf = emalloc(outlen + 1);
@@ -812,7 +833,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
outlen += i;
if (raw_output) {
outbuf[outlen] = '\0';
-@@ -4834,7 +5036,7 @@
+@@ -4834,7 +5039,7 @@
if (free_iv) {
efree(iv);
}
@@ -821,7 +842,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
/* }}} */
-@@ -4846,7 +5048,7 @@
+@@ -4846,7 +5051,7 @@
char *data, *method, *password, *iv = "";
int data_len, method_len, password_len, iv_len = 0;
const EVP_CIPHER *cipher_type;
@@ -830,7 +851,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
int i, outlen, keylen;
unsigned char *outbuf, *key;
int base64_str_len;
-@@ -4868,10 +5070,17 @@
+@@ -4868,10 +5073,17 @@
RETURN_FALSE;
}
@@ -848,7 +869,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
RETURN_FALSE;
}
data_len = base64_str_len;
-@@ -4892,14 +5101,14 @@
+@@ -4892,14 +5104,14 @@
outlen = data_len + EVP_CIPHER_block_size(cipher_type);
outbuf = emalloc(outlen + 1);
@@ -868,7 +889,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
outlen += i;
outbuf[outlen] = '\0';
RETVAL_STRINGL((char *)outbuf, outlen, 0);
-@@ -4916,7 +5125,7 @@
+@@ -4916,7 +5128,7 @@
if (base64_str) {
efree(base64_str);
}
@@ -877,7 +898,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
}
/* }}} */
-@@ -4954,6 +5163,7 @@
+@@ -4954,6 +5166,7 @@
zval *key;
char *pub_str;
int pub_len;
@@ -885,7 +906,7 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
EVP_PKEY *pkey;
BIGNUM *pub;
char *data;
-@@ -4962,15 +5172,18 @@
+@@ -4962,15 +5175,18 @@
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sr", &pub_str, &pub_len, &key) == FAILURE) {
return;
}
@@ -908,36 +929,17 @@ diff -ur php-5.3.29/ext/openssl.org/openssl.c php-5.3.29/ext/openssl/openssl.c
if (len >= 0) {
data[len] = 0;
---- php-5.3.29/ext/openssl/openssl.c~ 2018-09-25 11:02:55.000000000 +0200
-+++ php-5.3.29/ext/openssl/openssl.c 2018-09-25 11:19:53.586616971 +0200
-@@ -998,9 +998,7 @@ PHP_MINIT_FUNCTION(openssl)
- OpenSSL_add_all_digests();
- OpenSSL_add_all_algorithms();
-
-- ERR_load_ERR_strings();
-- ERR_load_crypto_strings();
-- ERR_load_EVP_strings();
-+ SSL_load_error_strings();
-
- /* register a resource id number with OpenSSL so that we can map SSL -> stream structures in
- * OpenSSL callbacks */
---- php-5.3.29/ext/openssl/openssl.c~ 2018-09-25 11:20:46.000000000 +0200
-+++ php-5.3.29/ext/openssl/openssl.c 2018-09-25 11:34:01.849675832 +0200
-@@ -993,12 +993,17 @@ PHP_MINIT_FUNCTION(openssl)
- le_x509 = zend_register_list_destructors_ex(php_x509_free, NULL, "OpenSSL X.509", module_number);
- le_csr = zend_register_list_destructors_ex(php_csr_free, NULL, "OpenSSL X.509 CSR", module_number);
-
-+#if OPENSSL_VERSION_NUMBER < 0x10100000L
-+ OPENSSL_config(NULL);
- SSL_library_init();
- OpenSSL_add_all_ciphers();
- OpenSSL_add_all_digests();
- OpenSSL_add_all_algorithms();
-
- SSL_load_error_strings();
-+#else
-+ OPENSSL_init_ssl(OPENSSL_INIT_LOAD_CONFIG, NULL);
-+#endif
-
- /* register a resource id number with OpenSSL so that we can map SSL -> stream structures in
- * OpenSSL callbacks */
+--- php-5.2.17/acinclude.m4~ 2018-09-25 11:43:17.000000000 +0200
++++ php-5.2.17/acinclude.m4 2018-09-25 13:52:29.178130416 +0200
+@@ -2325,8 +2325,10 @@ AC_DEFUN([PHP_SETUP_OPENSSL],[
+ AC_MSG_ERROR([OpenSSL version 0.9.6 or greater required.])
+ fi
+
+- if test -n "$OPENSSL_LIBS" && test -n "$OPENSSL_INCS"; then
++ if test -n "$OPENSSL_LIBS"; then
+ PHP_EVAL_LIBLINE($OPENSSL_LIBS, $1)
++ fi
++ if test -n "$OPENSSL_INCS"; then
+ PHP_EVAL_INCLINE($OPENSSL_INCS)
+ fi
+ fi
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/php.git/commitdiff/7a3db4b1fb94414b88c9afb35456f970c6dadabd
More information about the pld-cvs-commit
mailing list