aboutsummaryrefslogtreecommitdiff
path: root/net/pecl-radius
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2021-05-07 09:20:43 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2021-05-07 09:39:04 +0000
commit50b69d3263d84a6770346b126482bafe46a89b1f (patch)
tree5681c283eea1f857854944636197e9b7be821d41 /net/pecl-radius
parentef025c135094d29756f3f18c50a77ab8b628c875 (diff)
downloadports-50b69d3263d84a6770346b126482bafe46a89b1f.tar.gz
ports-50b69d3263d84a6770346b126482bafe46a89b1f.zip
net/pecl-radius: Fix build with PHP 8.0
Diffstat (limited to 'net/pecl-radius')
-rw-r--r--net/pecl-radius/Makefile4
-rw-r--r--net/pecl-radius/files/patch-php80413
2 files changed, 415 insertions, 2 deletions
diff --git a/net/pecl-radius/Makefile b/net/pecl-radius/Makefile
index 70d4e51b3e34..190635f961ae 100644
--- a/net/pecl-radius/Makefile
+++ b/net/pecl-radius/Makefile
@@ -1,7 +1,8 @@
# Created by: Antonio Carlos Venancio Junior (<antonio@inf.ufsc.br>)
PORTNAME= radius
-DISTVERSION= 1.4.0b1
+PORTVERSION= 1.4.0b1
+PORTREVISION= 1
CATEGORIES= net security pear
MAINTAINER= sunpoet@FreeBSD.org
@@ -12,7 +13,6 @@ LICENSE= BSD3CLAUSE
USES= php:pecl
CONFIGURE_ARGS= --enable-radius
-IGNORE_WITH_PHP=80
OPTIONS_DEFINE= EXAMPLES
diff --git a/net/pecl-radius/files/patch-php80 b/net/pecl-radius/files/patch-php80
new file mode 100644
index 000000000000..4e364750fa51
--- /dev/null
+++ b/net/pecl-radius/files/patch-php80
@@ -0,0 +1,413 @@
+Obtained from: https://github.com/Jan-E/php-radius/commit/d2d10e1781dbae70c39112a98ef14602bf99a221
+
+--- pecl-compat/src/zend_resource.h.orig 2016-02-15 15:11:50 UTC
++++ pecl-compat/src/zend_resource.h
+@@ -54,7 +54,7 @@
+ *
+ * @param zv The IS_RESOURCE zval to delete.
+ */
+-static void compat_zend_delete_resource(const zval *zv TSRMLS_DC);
++static void compat_zend_delete_resource(const zval *zv);
+
+ /**
+ * Fetches the resource.
+@@ -68,7 +68,7 @@ static void compat_zend_delete_resource(const zval *zv
+ * @return A void pointer to the resource, which needs to be typecast, or NULL
+ * on error.
+ */
+-static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type TSRMLS_DC);
++static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type);
+
+ /**
+ * Registers a new resource.
+@@ -77,12 +77,12 @@ static void *compat_zend_fetch_resource(zval *zv, cons
+ * @param ptr A void pointer to the resource.
+ * @param rsrc_type The resource type ID.
+ */
+-static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type TSRMLS_DC);
++static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type);
+
+ #ifdef PHP_7
+ /*============================================================================*/
+
+-static void compat_zend_delete_resource(const zval *zv TSRMLS_DC)
++static void compat_zend_delete_resource(const zval *zv)
+ {
+ if (IS_RESOURCE != Z_TYPE_P(zv)) {
+ return;
+@@ -91,7 +91,7 @@ static void compat_zend_delete_resource(const zval *zv
+ zend_list_close(Z_RES_P(zv));
+ }
+
+-static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type TSRMLS_DC)
++static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type)
+ {
+ if (IS_RESOURCE != Z_TYPE_P(zv)) {
+ return NULL;
+@@ -100,7 +100,7 @@ static void *compat_zend_fetch_resource(zval *zv, cons
+ return zend_fetch_resource(Z_RES_P(zv), rsrc_type_name, rsrc_type);
+ }
+
+-static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type TSRMLS_DC)
++static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type)
+ {
+ ZVAL_RES(zv, zend_register_resource(ptr, rsrc_type));
+ }
+@@ -111,7 +111,7 @@ static void compat_zend_register_resource(zval *zv, vo
+ /* Used for destructors. */
+ typedef zend_rsrc_list_entry zend_resource;
+
+-static void compat_zend_delete_resource(const zval *zv TSRMLS_DC)
++static void compat_zend_delete_resource(const zval *zv)
+ {
+ if (IS_RESOURCE != Z_TYPE_P(zv)) {
+ return;
+@@ -120,16 +120,16 @@ static void compat_zend_delete_resource(const zval *zv
+ zend_list_delete(Z_LVAL_P(zv));
+ }
+
+-static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type TSRMLS_DC)
++static void *compat_zend_fetch_resource(zval *zv, const char *rsrc_type_name, int rsrc_type)
+ {
+ #if ZEND_MODULE_API_NO >= 20100412
+- return zend_fetch_resource(&zv TSRMLS_CC, -1, rsrc_type_name, NULL, 1, rsrc_type);
++ return zend_fetch_resource(&zv, -1, rsrc_type_name, NULL, 1, rsrc_type);
+ #else
+- return zend_fetch_resource(&zv TSRMLS_CC, -1, (char *)rsrc_type_name, NULL, 1, rsrc_type);
++ return zend_fetch_resource(&zv, -1, (char *)rsrc_type_name, NULL, 1, rsrc_type);
+ #endif
+ }
+
+-static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type TSRMLS_DC)
++static void compat_zend_register_resource(zval *zv, void *ptr, int rsrc_type)
+ {
+ ZEND_REGISTER_RESOURCE(zv, ptr, rsrc_type);
+ }
+--- radius.c.orig 2016-02-15 15:11:50 UTC
++++ radius.c
+@@ -51,12 +51,12 @@ any other GPL-like (LGPL, GPL2) License.
+
+ #include "pecl-compat/compat.h"
+
+-void _radius_close(zend_resource *res TSRMLS_DC);
++void _radius_close(zend_resource *res);
+
+ static int _init_options(struct rad_attr_options *out, int options, int tag);
+
+ #define RADIUS_FETCH_RESOURCE(radh, zv) \
+- radh = (struct rad_handle *)compat_zend_fetch_resource(zv, "rad_handle", le_radius TSRMLS_CC); \
++ radh = (struct rad_handle *)compat_zend_fetch_resource(zv, "rad_handle", le_radius); \
+ if (!radh) { \
+ RETURN_FALSE; \
+ }
+@@ -165,7 +165,7 @@ PHP_FUNCTION(radius_auth_open)
+ struct rad_handle *radh = rad_auth_open();
+
+ if (radh != NULL) {
+- compat_zend_register_resource(return_value, radh, le_radius TSRMLS_CC);
++ compat_zend_register_resource(return_value, radh, le_radius);
+ } else {
+ RETURN_FALSE;
+ }
+@@ -178,7 +178,7 @@ PHP_FUNCTION(radius_acct_open)
+ struct rad_handle *radh = rad_acct_open();
+
+ if (radh != NULL) {
+- compat_zend_register_resource(return_value, radh, le_radius TSRMLS_CC);
++ compat_zend_register_resource(return_value, radh, le_radius);
+ } else {
+ RETURN_FALSE;
+ }
+@@ -191,13 +191,13 @@ PHP_FUNCTION(radius_close)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh) == FAILURE) {
+ return;
+ }
+
+ /* Fetch the resource to verify it. */
+ RADIUS_FETCH_RESOURCE(radh, z_radh);
+- compat_zend_delete_resource(z_radh TSRMLS_CC);
++ compat_zend_delete_resource(z_radh);
+ RETURN_TRUE;
+ }
+ /* }}} */
+@@ -209,7 +209,7 @@ PHP_FUNCTION(radius_strerror)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh) == FAILURE) {
+ return;
+ }
+
+@@ -227,7 +227,7 @@ PHP_FUNCTION(radius_config)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &z_radh, &filename, &filename_len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs", &z_radh, &filename, &filename_len) == FAILURE) {
+ return;
+ }
+
+@@ -250,7 +250,7 @@ PHP_FUNCTION(radius_add_server)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rslsll", &z_radh,
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rslsll", &z_radh,
+ &hostname, &hostname_len,
+ &port,
+ &secret, &secret_len,
+@@ -275,7 +275,7 @@ PHP_FUNCTION(radius_create_request)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rl", &z_radh, &code) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rl", &z_radh, &code) == FAILURE) {
+ return;
+ }
+
+@@ -299,7 +299,7 @@ PHP_FUNCTION(radius_put_string)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rls|ll", &z_radh, &type, &str, &str_len, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rls|ll", &z_radh, &type, &str, &str_len, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -324,7 +324,7 @@ PHP_FUNCTION(radius_put_int)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rll|ll", &z_radh, &type, &val, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rll|ll", &z_radh, &type, &val, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -351,7 +351,7 @@ PHP_FUNCTION(radius_put_attr)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rls|ll", &z_radh, &type, &data, &len, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rls|ll", &z_radh, &type, &data, &len, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -380,7 +380,7 @@ PHP_FUNCTION(radius_put_addr)
+ zval *z_radh;
+ struct in_addr intern_addr;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rls|ll", &z_radh, &type, &addr, &addrlen, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rls|ll", &z_radh, &type, &addr, &addrlen, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -412,7 +412,7 @@ PHP_FUNCTION(radius_put_vendor_string)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlls|ll", &z_radh, &vendor, &type, &str, &str_len, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rlls|ll", &z_radh, &vendor, &type, &str, &str_len, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -437,7 +437,7 @@ PHP_FUNCTION(radius_put_vendor_int)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlll|ll", &z_radh, &vendor, &type, &val, &options, &tag)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rlll|ll", &z_radh, &vendor, &type, &val, &options, &tag)
+ == FAILURE) {
+ return;
+ }
+@@ -464,7 +464,7 @@ PHP_FUNCTION(radius_put_vendor_attr)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlls|ll", &z_radh, &vendor, &type,
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rlls|ll", &z_radh, &vendor, &type,
+ &data, &len, &options, &tag) == FAILURE) {
+ return;
+ }
+@@ -492,7 +492,7 @@ PHP_FUNCTION(radius_put_vendor_addr)
+ zval *z_radh;
+ struct in_addr intern_addr;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rlls|ll", &z_radh, &vendor,
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rlls|ll", &z_radh, &vendor,
+ &type, &addr, &addrlen, &options, &tag) == FAILURE) {
+ return;
+ }
+@@ -521,7 +521,7 @@ PHP_FUNCTION(radius_send_request)
+ zval *z_radh;
+ int res;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh)
+ == FAILURE) {
+ return;
+ }
+@@ -546,7 +546,7 @@ PHP_FUNCTION(radius_get_attr)
+ size_t len;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh) == FAILURE) {
+ return;
+ }
+
+@@ -574,7 +574,7 @@ PHP_FUNCTION(radius_get_tagged_attr_data)
+ const char *attr;
+ COMPAT_ARG_SIZE_T len;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &attr, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &attr, &len) == FAILURE) {
+ return;
+ }
+
+@@ -595,7 +595,7 @@ PHP_FUNCTION(radius_get_tagged_attr_tag)
+ const char *attr;
+ COMPAT_ARG_SIZE_T len;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &attr, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &attr, &len) == FAILURE) {
+ return;
+ }
+
+@@ -617,7 +617,7 @@ PHP_FUNCTION(radius_get_vendor_attr)
+ unsigned char type;
+ size_t data_len;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &raw, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &raw, &len) == FAILURE) {
+ return;
+ }
+
+@@ -642,7 +642,7 @@ PHP_FUNCTION(radius_cvt_addr)
+ COMPAT_ARG_SIZE_T len;
+ struct in_addr addr;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &data, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &data, &len) == FAILURE) {
+ return;
+ }
+
+@@ -659,7 +659,7 @@ PHP_FUNCTION(radius_cvt_int)
+ COMPAT_ARG_SIZE_T len;
+ int val;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &data, &len)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &data, &len)
+ == FAILURE) {
+ return;
+ }
+@@ -676,7 +676,7 @@ PHP_FUNCTION(radius_cvt_string)
+ char *val;
+ COMPAT_ARG_SIZE_T len;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &data, &len)
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "s", &data, &len)
+ == FAILURE) {
+ return;
+ }
+@@ -698,7 +698,7 @@ PHP_FUNCTION(radius_salt_encrypt_attr)
+ struct rad_salted_value salted;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &z_radh, &data, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs", &z_radh, &data, &len) == FAILURE) {
+ return;
+ }
+
+@@ -724,7 +724,7 @@ PHP_FUNCTION(radius_request_authenticator)
+ char buf[LEN_AUTH];
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh) == FAILURE) {
+ return;
+ }
+
+@@ -746,7 +746,7 @@ PHP_FUNCTION(radius_server_secret)
+ struct rad_handle *radh;
+ zval *z_radh;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "r", &z_radh) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "r", &z_radh) == FAILURE) {
+ return;
+ }
+
+@@ -771,7 +771,7 @@ PHP_FUNCTION(radius_demangle)
+ COMPAT_ARG_SIZE_T len;
+ int res;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &z_radh, &mangled, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs", &z_radh, &mangled, &len) == FAILURE) {
+ return;
+ }
+
+@@ -802,7 +802,7 @@ PHP_FUNCTION(radius_demangle_mppe_key)
+ COMPAT_ARG_SIZE_T len;
+ int res;
+
+- if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "rs", &z_radh, &mangled, &len) == FAILURE) {
++ if (zend_parse_parameters(ZEND_NUM_ARGS(), "rs", &z_radh, &mangled, &len) == FAILURE) {
+ return;
+ }
+
+@@ -844,7 +844,7 @@ int _init_options(struct rad_attr_options *out, int op
+ /* }}} */
+
+ /* {{{ _radius_close() */
+-void _radius_close(zend_resource *res TSRMLS_DC)
++void _radius_close(zend_resource *res)
+ {
+ struct rad_handle *radh = (struct rad_handle *)res->ptr;
+ rad_close(radh);
+--- radlib.c.orig 2016-02-15 15:11:50 UTC
++++ radlib.c
+@@ -581,8 +581,7 @@ rad_create_request(struct rad_handle *h, int code)
+ /* Create a random authenticator */
+ for (i = 0; i < LEN_AUTH; i += 2) {
+ long r;
+- TSRMLS_FETCH();
+- r = php_rand(TSRMLS_C);
++ r = php_rand();
+ h->request[POS_AUTH+i] = (unsigned char) r;
+ h->request[POS_AUTH+i+1] = (unsigned char) (r >> 8);
+ }
+@@ -749,11 +748,10 @@ rad_auth_open(void)
+
+ h = (struct rad_handle *)malloc(sizeof(struct rad_handle));
+ if (h != NULL) {
+- TSRMLS_FETCH();
+- php_srand(time(NULL) * getpid() * (unsigned long) (php_combined_lcg(TSRMLS_C) * 10000.0) TSRMLS_CC);
++ php_srand(time(NULL) * getpid() * (unsigned long) (php_combined_lcg() * 10000.0));
+ h->fd = -1;
+ h->num_servers = 0;
+- h->ident = php_rand(TSRMLS_C);
++ h->ident = php_rand();
+ h->errmsg[0] = '\0';
+ memset(h->request, 0, sizeof h->request);
+ h->req_len = 0;
+@@ -1242,7 +1240,6 @@ int rad_salt_value(struct rad_handle *h, const char *i
+ php_uint32 random;
+ size_t salted_len;
+ const char *secret;
+- TSRMLS_FETCH();
+
+ if (len == 0) {
+ out->len = 0;
+@@ -1289,7 +1286,7 @@ int rad_salt_value(struct rad_handle *h, const char *i
+ }
+
+ /* Generate a random number to use as the salt. */
+- random = php_rand(TSRMLS_C);
++ random = php_rand();
+
+ /* The RFC requires that the high bit of the salt be 1. Otherwise,
+ * let's set up the header. */