From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- dev-php/pecl-crack/Manifest | 7 + dev-php/pecl-crack/files/0.4-php7.patch | 356 +++++++++++++++++++++ dev-php/pecl-crack/files/fix-pecl-bug-5765.patch | 11 + dev-php/pecl-crack/files/fix-php-5-4-support.patch | 30 ++ dev-php/pecl-crack/metadata.xml | 8 + dev-php/pecl-crack/pecl-crack-0.4-r6.ebuild | 26 ++ dev-php/pecl-crack/pecl-crack-0.4-r7.ebuild | 26 ++ 7 files changed, 464 insertions(+) create mode 100644 dev-php/pecl-crack/Manifest create mode 100644 dev-php/pecl-crack/files/0.4-php7.patch create mode 100644 dev-php/pecl-crack/files/fix-pecl-bug-5765.patch create mode 100644 dev-php/pecl-crack/files/fix-php-5-4-support.patch create mode 100644 dev-php/pecl-crack/metadata.xml create mode 100644 dev-php/pecl-crack/pecl-crack-0.4-r6.ebuild create mode 100644 dev-php/pecl-crack/pecl-crack-0.4-r7.ebuild (limited to 'dev-php/pecl-crack') diff --git a/dev-php/pecl-crack/Manifest b/dev-php/pecl-crack/Manifest new file mode 100644 index 000000000000..4fc3e79aa2fc --- /dev/null +++ b/dev-php/pecl-crack/Manifest @@ -0,0 +1,7 @@ +AUX 0.4-php7.patch 8435 BLAKE2B 11b9d076a684fb1e3e4bef9cd733e7675909282a5e571b3db60fbd9f852273555e3ca7731a13a1811986f529ee52b24e7a9b1bf26a564bc30187241429758e26 SHA512 f164cc8e37e37636de843063426d1ba07be17362d4b0fa0de59e1a9e21a15b7d5a312ed64bd73bcd51db5185a843a05611c23c5f5c442b720f437347f0401649 +AUX fix-pecl-bug-5765.patch 375 BLAKE2B 6664659603006d260b578fc1169465007a600eb1b5ba4551339fc87488c7f94ac1ca49ebc829895ef2e6673fccbae2881e6f06a6cce4dfaa39db1350f2f4f0c6 SHA512 21f7d76242c630334e88c8bf1f6e4fe9718943c36c6886f8de6503c9c616beab7007e31127b40b1df66763893d692a65f20483addb1607e0cfc7ec7b92ff4500 +AUX fix-php-5-4-support.patch 674 BLAKE2B 5b2ce7a76aca15d6ff626ebced6e8844bac3d1fb959903c9882e1e59bdfc06027c6993431552deceb09df8d35e57e338818fa9b5ac11b31d4484369d3bd9d1e3 SHA512 ca2475557dc1d2f23a1e5745e7f3bac70855d0916a9d37d1a7efcd04e3bb973220b87aa2cc7ba8315473a2fd16dfd142c5c01608e94c595541ff15838c1e1d44 +DIST crack-0.4.tgz 25524 BLAKE2B 99e2289413a672d4dc3d8f9d70866efb499902a0d27379ac7b59d2873013c918d535851d8c3dbf2592596d6483f2abafe2f7bbd31fff40ce9827c7a97e16b8bc SHA512 0dec64d1ce859bb3d7e2b834e4bcc4ef8c6f3e88e5b61884e40dddc366a992a7c85bfad4227224d4401aad7f26843678709f29acd2dcc75563658040b8067d7f +EBUILD pecl-crack-0.4-r6.ebuild 581 BLAKE2B 04f52129dce7e4ec373a17fd4a68b256981743d568723f428dbae41883e511ca8adad3dfd155ebd3f56feb04162b8cecde4b9619814a990ab50870be7fc9764e SHA512 7d305dc22b4972335d32906f25582b35bedaef94b0b9b53d69683f41f5f9c4011b6c5aa75f23f4f7b1eba5c8f277c77a8fc78b013669a7a96d0922e2bbdc0a27 +EBUILD pecl-crack-0.4-r7.ebuild 592 BLAKE2B 961042f4d06b5e05493fde80a8041d298a2f0430ee626606ea5c5d4013ef9726e38edb156e95ebb3e9e97686922e9c4ee3f2f99268e972b0af585a666b7b0798 SHA512 2bc9aa4c712508e712e9cf70f0c574357fdcde19fd16126d8b1c3f917ee7e83db90e7b526463e4a5cc976c16300d8f972d11bb67d482ceff2d8087100d472f8b +MISC metadata.xml 239 BLAKE2B 9b7c5dcb74289073481cf07031b7a92f32496cc1097becb074d74a8fbb8133de429ce1baf284e446e44132943c8b32e6b824570f15828588e42ea49ef5661f00 SHA512 2181b874bfe8cd31e7730d8207e26cfd2f272eaf2d1b57ae0faff126347a5298fa1c506d9107e1da9736c8a0ed9c8c339e4d9509a8726b79dbe86e073c12dee0 diff --git a/dev-php/pecl-crack/files/0.4-php7.patch b/dev-php/pecl-crack/files/0.4-php7.patch new file mode 100644 index 000000000000..5a00c9121810 --- /dev/null +++ b/dev-php/pecl-crack/files/0.4-php7.patch @@ -0,0 +1,356 @@ +--- a/crack.c 2016-12-19 16:04:09.244782234 -0500 ++++ b/crack.c 2016-12-20 09:20:11.903140742 -0500 +@@ -36,13 +36,31 @@ + /* True global resources - no need for thread safety here */ + static int le_crack; + ++ZEND_BEGIN_ARG_INFO_EX(crack_opendict_args, 0, ZEND_RETURN_VALUE, 1) ++ ZEND_ARG_INFO(0, dictionary) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_INFO_EX(crack_closedict_args, 0, ZEND_RETURN_VALUE, 0) ++ ZEND_ARG_INFO(0, dictionary) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_INFO_EX(crack_check_args, 0, ZEND_RETURN_VALUE, 1) ++ ZEND_ARG_INFO(0, password) ++ ZEND_ARG_INFO(0, username) ++ ZEND_ARG_INFO(0, gecos) ++ ZEND_ARG_INFO(0, dictionary) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_INFO_EX(crack_getlastmessage_args, 0, ZEND_RETURN_VALUE, 0) ++ZEND_END_ARG_INFO() ++ + /* {{{ crack_functions[] + */ + zend_function_entry crack_functions[] = { +- PHP_FE(crack_opendict, NULL) +- PHP_FE(crack_closedict, NULL) +- PHP_FE(crack_check, NULL) +- PHP_FE(crack_getlastmessage, NULL) ++ ZEND_FE(crack_opendict, crack_opendict_args) ++ ZEND_FE(crack_closedict, crack_closedict_args) ++ ZEND_FE(crack_check, crack_check_args) ++ ZEND_FE(crack_getlastmessage, crack_getlastmessage_args) + {NULL, NULL, NULL} + }; + /* }}} */ +@@ -55,7 +73,7 @@ + #endif + "crack", + crack_functions, +- PHP_MINIT(crack), ++ PHP_MINIT(crack), + PHP_MSHUTDOWN(crack), + PHP_RINIT(crack), + PHP_RSHUTDOWN(crack), +@@ -84,7 +102,11 @@ + static void php_crack_init_globals(zend_crack_globals *crack_globals) + { + crack_globals->last_message = NULL; ++#if PHP_VERSION_ID >= 70000 ++ crack_globals->default_dict = NULL; ++#else + crack_globals->default_dict = -1; ++#endif + } + /* }}} */ + +@@ -95,7 +117,7 @@ + char *filename; + int filename_len; + int result = SUCCESS; +- ++ + #if PHP_VERSION_ID < 50400 + if (PG(safe_mode)) { + filename_len = strlen(path) + 10; +@@ -103,7 +125,7 @@ + if (NULL == filename) { + return FAILURE; + } +- ++ + memset(filename, '\0', filename_len); + strcpy(filename, path); + strcat(filename, ".pwd"); +@@ -111,7 +133,7 @@ + efree(filename); + return FAILURE; + } +- ++ + memset(filename, '\0', filename_len); + strcpy(filename, path); + strcat(filename, ".pwi"); +@@ -119,7 +141,7 @@ + efree(filename); + return FAILURE; + } +- ++ + memset(filename, '\0', filename_len); + strcpy(filename, path); + strcat(filename, ".hwm"); +@@ -129,39 +151,64 @@ + } + } + #endif +- ++ + if (php_check_open_basedir(path TSRMLS_CC)) { + return FAILURE; + } +- ++ + return SUCCESS; + } + /* }}} */ + + /* {{{ php_crack_set_default_dict + */ ++#if PHP_VERSION_ID >= 70000 ++static void php_crack_set_default_dict(zend_resource *id) ++{ ++ if (CRACKG(default_dict) != NULL) { ++ zend_list_close(CRACKG(default_dict)); ++ } ++ ++ CRACKG(default_dict) = id; ++ id->gc.refcount++; ++} ++#else + static void php_crack_set_default_dict(int id TSRMLS_DC) + { + if (CRACKG(default_dict) != -1) { + zend_list_delete(CRACKG(default_dict)); + } +- ++ + CRACKG(default_dict) = id; + zend_list_addref(id); + } ++#endif + /* }}} */ + + /* {{{ php_crack_get_default_dict + */ ++#if PHP_VERSION_ID >= 70000 ++static zend_resource * php_crack_get_default_dict(INTERNAL_FUNCTION_PARAMETERS) ++#else + static int php_crack_get_default_dict(INTERNAL_FUNCTION_PARAMETERS) ++#endif + { ++#if PHP_VERSION_ID >= 70000 ++ if ((NULL == CRACKG(default_dict)) && (NULL != CRACKG(default_dictionary))) { ++#else + if ((-1 == CRACKG(default_dict)) && (NULL != CRACKG(default_dictionary))) { ++#endif + CRACKLIB_PWDICT *pwdict; + printf("trying to open: %s\n", CRACKG(default_dictionary)); + pwdict = cracklib_pw_open(CRACKG(default_dictionary), "r"); + if (NULL != pwdict) { ++#if PHP_VERSION_ID >= 70000 ++ ZVAL_RES(return_value, zend_register_resource(pwdict, le_crack)); ++ php_crack_set_default_dict(Z_RES_P(return_value)); ++#else + ZEND_REGISTER_RESOURCE(return_value, pwdict, le_crack); + php_crack_set_default_dict(Z_LVAL_P(return_value) TSRMLS_CC); ++#endif + } + } + +@@ -171,7 +218,11 @@ + + /* {{{ php_crack_module_dtor + */ ++#if PHP_VERSION_ID >= 70000 ++static void php_crack_module_dtor(zend_resource *rsrc) ++#else + static void php_crack_module_dtor(zend_rsrc_list_entry *rsrc TSRMLS_DC) ++#endif + { + CRACKLIB_PWDICT *pwdict = (CRACKLIB_PWDICT *) rsrc->ptr; + +@@ -191,7 +242,9 @@ + + REGISTER_INI_ENTRIES(); + le_crack = zend_register_list_destructors_ex(php_crack_module_dtor, NULL, "crack dictionary", module_number); ++#if PHP_VERSION_ID < 70000 + Z_TYPE(crack_module_entry) = type; ++#endif + + return SUCCESS; + } +@@ -210,7 +263,11 @@ + PHP_RINIT_FUNCTION(crack) + { + CRACKG(last_message) = NULL; ++#if PHP_VERSION_ID >= 70000 ++ CRACKG(default_dict) = NULL; ++#else + CRACKG(default_dict) = -1; ++#endif + + return SUCCESS; + } +@@ -245,7 +302,7 @@ + PHP_FUNCTION(crack_opendict) + { + char *path; +- int path_len; ++ size_t path_len; + CRACKLIB_PWDICT *pwdict; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &path, &path_len) == FAILURE) { +@@ -265,9 +322,14 @@ + #endif + RETURN_FALSE; + } +- ++ ++#if PHP_VERSION_ID >= 70000 ++ RETURN_RES(zend_register_resource(pwdict, le_crack)); ++ php_crack_set_default_dict(Z_RES_P(return_value)); ++#else + ZEND_REGISTER_RESOURCE(return_value, pwdict, le_crack); + php_crack_set_default_dict(Z_LVAL_P(return_value) TSRMLS_CC); ++#endif + } + /* }}} */ + +@@ -276,7 +338,11 @@ + PHP_FUNCTION(crack_closedict) + { + zval *dictionary = NULL; ++#if PHP_VERSION_ID >= 70000 ++ zend_resource *id; ++#else + int id = -1; ++#endif + CRACKLIB_PWDICT *pwdict; + + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|r", &dictionary)) { +@@ -285,7 +351,11 @@ + + if (NULL == dictionary) { + id = php_crack_get_default_dict(INTERNAL_FUNCTION_PARAM_PASSTHRU); ++#if PHP_VERSION_ID >= 70000 ++ if (id == NULL) { ++#else + if (id == -1) { ++#endif + #if ZEND_MODULE_API_NO >= 20021010 + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Could not open default crack dicionary"); + #else +@@ -294,8 +364,21 @@ + RETURN_FALSE; + } + } ++#if PHP_VERSION_ID >= 70000 ++ if((pwdict = (CRACKLIB_PWDICT *)zend_fetch_resource(Z_RES_P(dictionary), "crack dictionary", le_crack)) == NULL) ++ { ++ RETURN_FALSE; ++ } ++ if (NULL == dictionary) { ++ zend_list_close(CRACKG(default_dict)); ++ CRACKG(default_dict) = NULL; ++ } ++ else { ++ zend_list_close(Z_RES_P(dictionary)); ++ } ++#else + ZEND_FETCH_RESOURCE(pwdict, CRACKLIB_PWDICT *, &dictionary, id, "crack dictionary", le_crack); +- ++ + if (NULL == dictionary) { + zend_list_delete(CRACKG(default_dict)); + CRACKG(default_dict) = -1; +@@ -303,7 +386,7 @@ + else { + zend_list_delete(Z_RESVAL_P(dictionary)); + } +- ++#endif + RETURN_TRUE; + } + /* }}} */ +@@ -314,14 +397,18 @@ + { + zval *dictionary = NULL; + char *password = NULL; +- int password_len; ++ size_t password_len; + char *username = NULL; +- int username_len; ++ size_t username_len; + char *gecos = NULL; +- int gecos_len; ++ size_t gecos_len; + char *message; + CRACKLIB_PWDICT *pwdict; ++#if PHP_VERSION_ID >= 70000 ++ zend_resource *crack_res; ++#else + int id = -1; ++#endif + + if (NULL != CRACKG(last_message)) { + efree(CRACKG(last_message)); +@@ -335,6 +422,21 @@ + } + + if (NULL == dictionary) { ++#if PHP_VERSION_ID >= 70000 ++ crack_res = php_crack_get_default_dict(INTERNAL_FUNCTION_PARAM_PASSTHRU); ++ if (crack_res == NULL || crack_res->ptr == NULL) { ++ php_error(E_WARNING, "Could not open default crack dicionary"); ++ RETURN_FALSE; ++ } ++ ++ } ++ else { ++ if((pwdict = (CRACKLIB_PWDICT *)zend_fetch_resource(Z_RES_P(dictionary), "crack dictionary", le_crack)) == NULL) { ++ php_error(E_WARNING, "Could not open crack dicionary resource"); ++ RETURN_FALSE; ++ } ++ } ++#else + id = php_crack_get_default_dict(INTERNAL_FUNCTION_PARAM_PASSTHRU); + if (id == -1) { + #if ZEND_MODULE_API_NO >= 20021010 +@@ -346,6 +448,7 @@ + } + } + ZEND_FETCH_RESOURCE(pwdict, CRACKLIB_PWDICT *, &dictionary, id, "crack dictionary", le_crack); ++#endif + + message = cracklib_fascist_look_ex(pwdict, password, username, gecos); + +@@ -377,7 +480,11 @@ + RETURN_FALSE; + } + ++#if PHP_VERSION_ID >= 70000 ++ RETURN_STRING(CRACKG(last_message)); ++#else + RETURN_STRING(CRACKG(last_message), 1); ++#endif + } + /* }}} */ + +--- a/php_crack.h 2005-09-21 05:00:06.000000000 -0400 ++++ b/php_crack.h 2016-12-19 16:51:22.449321851 -0500 +@@ -52,7 +52,11 @@ + ZEND_BEGIN_MODULE_GLOBALS(crack) + char *default_dictionary; + char *last_message; ++#if PHP_VERSION_ID >= 70000 ++ zend_resource *default_dict; ++#else + int default_dict; ++#endif + ZEND_END_MODULE_GLOBALS(crack) + + #ifdef ZTS diff --git a/dev-php/pecl-crack/files/fix-pecl-bug-5765.patch b/dev-php/pecl-crack/files/fix-pecl-bug-5765.patch new file mode 100644 index 000000000000..c180d5310b1b --- /dev/null +++ b/dev-php/pecl-crack/files/fix-pecl-bug-5765.patch @@ -0,0 +1,11 @@ +--- crack-0.4/libcrack/src/cracklib.h 2005-09-21 11:00:06.000000000 +0200 ++++ crack-0.4-new/libcrack/src/cracklib.h 2006-10-08 20:44:00.618783250 +0200 +@@ -46,7 +46,7 @@ + + typedef unsigned char int8; + typedef unsigned short int int16; +-typedef unsigned long int int32; ++typedef unsigned int int32; + + #ifndef NUMWORDS + # define NUMWORDS 16 diff --git a/dev-php/pecl-crack/files/fix-php-5-4-support.patch b/dev-php/pecl-crack/files/fix-php-5-4-support.patch new file mode 100644 index 000000000000..7fddadfabbbd --- /dev/null +++ b/dev-php/pecl-crack/files/fix-php-5-4-support.patch @@ -0,0 +1,30 @@ +Gentoo bug: 423869 +Thanks to hanno + +--- a/crack.c 2008/07/17 10:02:47 262854 ++++ b/crack.c 2012/06/07 16:13:34 326013 +@@ -38,7 +38,7 @@ + + /* {{{ crack_functions[] + */ +-function_entry crack_functions[] = { ++zend_function_entry crack_functions[] = { + PHP_FE(crack_opendict, NULL) + PHP_FE(crack_closedict, NULL) + PHP_FE(crack_check, NULL) +@@ -94,6 +94,7 @@ + int filename_len; + int result = SUCCESS; + ++#if PHP_VERSION_ID < 50400 + if (PG(safe_mode)) { + filename_len = strlen(path) + 10; + filename = (char *) emalloc(filename_len); +@@ -125,6 +126,7 @@ + return FAILURE; + } + } ++#endif + + if (php_check_open_basedir(path TSRMLS_CC)) { + return FAILURE; diff --git a/dev-php/pecl-crack/metadata.xml b/dev-php/pecl-crack/metadata.xml new file mode 100644 index 000000000000..b86acf66c756 --- /dev/null +++ b/dev-php/pecl-crack/metadata.xml @@ -0,0 +1,8 @@ + + + + + php-bugs@gentoo.org + PHP + + diff --git a/dev-php/pecl-crack/pecl-crack-0.4-r6.ebuild b/dev-php/pecl-crack/pecl-crack-0.4-r6.ebuild new file mode 100644 index 000000000000..dcda4876842a --- /dev/null +++ b/dev-php/pecl-crack/pecl-crack-0.4-r6.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PHP_EXT_NAME="crack" +PHP_EXT_INI="yes" +PHP_EXT_ZENDEXT="no" +PHP_EXT_EXTRA_ECONF="" +DOCS=( EXPERIMENTAL ) + +USE_PHP="php5-6 php7-0 php7-1" + +inherit php-ext-pecl-r3 + +KEYWORDS="amd64 ppc ppc64 x86" + +DESCRIPTION="PHP interface to the cracklib libraries" +LICENSE="PHP-3 CRACKLIB" +SLOT="0" +IUSE="" +# Patch for http://pecl.php.net/bugs/bug.php?id=5765 +PATCHES=( "${FILESDIR}/fix-php-5-4-support.patch" +"${FILESDIR}/fix-pecl-bug-5765.patch" +"${FILESDIR}/${PV}-php7.patch" +) diff --git a/dev-php/pecl-crack/pecl-crack-0.4-r7.ebuild b/dev-php/pecl-crack/pecl-crack-0.4-r7.ebuild new file mode 100644 index 000000000000..4a90b507cc29 --- /dev/null +++ b/dev-php/pecl-crack/pecl-crack-0.4-r7.ebuild @@ -0,0 +1,26 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PHP_EXT_NAME="crack" +PHP_EXT_INI="yes" +PHP_EXT_ZENDEXT="no" +PHP_EXT_EXTRA_ECONF="" +DOCS=( EXPERIMENTAL ) + +USE_PHP="php5-6 php7-0 php7-1 php7-2" + +inherit php-ext-pecl-r3 + +KEYWORDS="~amd64 ~ppc ~ppc64 ~x86" + +DESCRIPTION="PHP interface to the cracklib libraries" +LICENSE="PHP-3 CRACKLIB" +SLOT="0" +IUSE="" +# Patch for http://pecl.php.net/bugs/bug.php?id=5765 +PATCHES=( "${FILESDIR}/fix-php-5-4-support.patch" +"${FILESDIR}/fix-pecl-bug-5765.patch" +"${FILESDIR}/${PV}-php7.patch" +) -- cgit v1.2.3