diff options
Diffstat (limited to 'varnish-php8.patch')
-rw-r--r-- | varnish-php8.patch | 274 |
1 files changed, 274 insertions, 0 deletions
diff --git a/varnish-php8.patch b/varnish-php8.patch new file mode 100644 index 0000000..e5a8152 --- /dev/null +++ b/varnish-php8.patch @@ -0,0 +1,274 @@ +Index: php_varnish.h +=================================================================== +--- pecl/varnish/trunk/php_varnish.h 2018/07/01 11:30:53 345257 ++++ pecl/varnish/trunk/php_varnish.h 2020/08/24 14:11:30 350373 +@@ -131,6 +131,14 @@ + int authok; + }; + ++#if PHP_MAJOR_VERSION >= 8 ++#define TSRMLS_D void ++#define TSRMLS_DC ++#define TSRMLS_C ++#define TSRMLS_CC ++#define TSRMLS_FETCH() ++#endif ++ + #if PHP_MAJOR_VERSION >= 7 + struct ze_varnish_adm_obj { + struct ze_varnish_conn zvc; +Index: varnish.c +=================================================================== +--- pecl/varnish/trunk/varnish.c (révision 350372) ++++ pecl/varnish/trunk/varnish.c (copie de travail) +@@ -40,6 +40,24 @@ + + #include "varnish_lib.h" + ++/* Compatibility with PHP < 8 */ ++#if PHP_VERSION_ID < 70200 ++#undef ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX ++#endif ++ ++#ifndef ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX ++#define ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, allow_null) \ ++ ZEND_BEGIN_ARG_INFO_EX(name, _unused, return_reference, required_num_args) ++#endif ++ ++#ifndef ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE ++#define ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(pass_by_ref, name, type_hint, allow_null, default_value) \ ++ ZEND_ARG_TYPE_INFO(pass_by_ref, name, type_hint, allow_null) ++#endif ++ ++/* Arginfo generated with PHP 8 */ ++#include "varnish_arginfo.h" ++ + /*ZEND_DECLARE_MODULE_GLOBALS(varnish)*/ + + /* True global resources - no need for thread safety here +@@ -70,27 +88,27 @@ + /* {{{ VarnishAdmin_methods[] + */ + const zend_function_entry VarnishAdmin_methods[] = { +- PHP_ME(VarnishAdmin, __construct, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, connect, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, auth, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, getParams, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setParam, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, stop, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, start, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, banUrl, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, ban, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, isRunning, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, getPanic, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, clearPanic, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setHost, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setIdent, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setTimeout, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setPort, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setSecret, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, setCompat, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, getVclList, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, vclUse, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishAdmin, disconnect, NULL, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, __construct, arginfo_class_VarnishAdmin___construct, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, connect, arginfo_class_VarnishAdmin_connect, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, auth, arginfo_class_VarnishAdmin_auth, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, getParams, arginfo_class_VarnishAdmin_getParams, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setParam, arginfo_class_VarnishAdmin_setParam, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, stop, arginfo_class_VarnishAdmin_stop, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, start, arginfo_class_VarnishAdmin_start, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, banUrl, arginfo_class_VarnishAdmin_banUrl, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, ban, arginfo_class_VarnishAdmin_ban, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, isRunning, arginfo_class_VarnishAdmin_isRunning, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, getPanic, arginfo_class_VarnishAdmin_getPanic, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, clearPanic, arginfo_class_VarnishAdmin_clearPanic, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setHost, arginfo_class_VarnishAdmin_setHost, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setIdent, arginfo_class_VarnishAdmin_setIdent, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setTimeout, arginfo_class_VarnishAdmin_setTimeout, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setPort, arginfo_class_VarnishAdmin_setPort, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setSecret, arginfo_class_VarnishAdmin_setSecret, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, setCompat, arginfo_class_VarnishAdmin_setCompat, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, getVclList, arginfo_class_VarnishAdmin_getVclList, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, vclUse, arginfo_class_VarnishAdmin_vclUse, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishAdmin, disconnect, arginfo_class_VarnishAdmin_disconnect, ZEND_ACC_PUBLIC) + {NULL, NULL, NULL} + }; + /* }}} */ +@@ -97,9 +115,9 @@ + + /* {{{ VarnishStat_methods{} */ + const zend_function_entry VarnishStat_methods[] = { +- PHP_ME(VarnishStat, __construct, NULL, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishStat, __construct, arginfo_class_VarnishStat___construct, ZEND_ACC_PUBLIC) + #if defined(HAVE_VARNISHAPILIB) && HAVE_VARNISHAPILIB < 40 +- PHP_ME(VarnishStat, getSnapshot, NULL, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishStat, getSnapshot, arginfo_class_VarnishStat_getSnapshot, ZEND_ACC_PUBLIC) + #endif + {NULL, NULL, NULL} + }; +@@ -107,10 +125,10 @@ + + /* {{{ VarnishLog_methods{} */ + const zend_function_entry VarnishLog_methods[] = { +- PHP_ME(VarnishLog, __construct, NULL, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishLog, __construct, arginfo_class_VarnishLog___construct, ZEND_ACC_PUBLIC) + #if defined(HAVE_VARNISHAPILIB) && HAVE_VARNISHAPILIB < 40 +- PHP_ME(VarnishLog, getLine, NULL, ZEND_ACC_PUBLIC) +- PHP_ME(VarnishLog, getTagName, NULL, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC) ++ PHP_ME(VarnishLog, getLine, arginfo_class_VarnishLog_getLine, ZEND_ACC_PUBLIC) ++ PHP_ME(VarnishLog, getTagName, arginfo_class_VarnishLog_getTagName, ZEND_ACC_PUBLIC | ZEND_ACC_STATIC) + #endif + {NULL, NULL, NULL} + }; +Index: varnish.stub.php +=================================================================== +--- /dev/null ++++ pecl/varnish/trunk/varnish.stub.php (copie de travail) +@@ -0,0 +1,59 @@ ++<?php ++ ++class VarnishAdmin { ++ public function __construct(array $opt = []); ++ ++ public function connect(): bool; ++ ++ public function auth(): bool; ++ ++ public function getParams(): array; ++ ++ public function setParam(string $name, string $value): int; ++ ++ public function stop(): int; ++ ++ public function start(): int; ++ ++ public function banUrl(string $regex): int; ++ ++ public function ban(string $regex): int; ++ ++ public function isRunning(): bool; ++ ++ public function getPanic(): string; ++ ++ public function clearPanic(): int; ++ ++ public function setHost(string $host): void; ++ ++ public function setIdent(string $ident): void; ++ ++ public function setSecret(string $secret): void; ++ ++ public function setTimeout(int $timeout): void; ++ ++ public function setPort(int $port): void; ++ ++ public function setCompat(int $compat): void; ++ ++ public function getVclList(): array; ++ ++ public function vclUse(string $name): bool; ++ ++ public function disconnect(): bool; ++} ++ ++class VarnishStat { ++ public function __construct(array $opt = []); ++ ++ public function getSnapshot(): array; ++} ++ ++class VarnishLog { ++ public function __construct(array $opt = []); ++ ++ public function getLine(): array; ++ ++ public function getTagName(int $ind): string; ++} + +Index: varnish_arginfo.h +=================================================================== +--- /dev/null ++++ pecl/varnish/trunk/varnish_arginfo.h (copie de travail) +@@ -0,0 +1,81 @@ ++/* This is a generated file, edit the .stub.php file instead. ++ * Stub hash: 8f85af0f0ca3c73efcc24ed046662a4df80bf74f */ ++ ++ZEND_BEGIN_ARG_INFO_EX(arginfo_class_VarnishAdmin___construct, 0, 0, 0) ++ ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, opt, IS_ARRAY, 0, "[]") ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_connect, 0, 0, _IS_BOOL, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_auth arginfo_class_VarnishAdmin_connect ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_getParams, 0, 0, IS_ARRAY, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setParam, 0, 2, IS_LONG, 0) ++ ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) ++ ZEND_ARG_TYPE_INFO(0, value, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_stop, 0, 0, IS_LONG, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_start arginfo_class_VarnishAdmin_stop ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_banUrl, 0, 1, IS_LONG, 0) ++ ZEND_ARG_TYPE_INFO(0, regex, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_ban arginfo_class_VarnishAdmin_banUrl ++ ++#define arginfo_class_VarnishAdmin_isRunning arginfo_class_VarnishAdmin_connect ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_getPanic, 0, 0, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_clearPanic arginfo_class_VarnishAdmin_stop ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setHost, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, host, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setIdent, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, ident, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setSecret, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, secret, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setTimeout, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, timeout, IS_LONG, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setPort, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, port, IS_LONG, 0) ++ZEND_END_ARG_INFO() ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_setCompat, 0, 1, IS_VOID, 0) ++ ZEND_ARG_TYPE_INFO(0, compat, IS_LONG, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_getVclList arginfo_class_VarnishAdmin_getParams ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishAdmin_vclUse, 0, 1, _IS_BOOL, 0) ++ ZEND_ARG_TYPE_INFO(0, name, IS_STRING, 0) ++ZEND_END_ARG_INFO() ++ ++#define arginfo_class_VarnishAdmin_disconnect arginfo_class_VarnishAdmin_connect ++ ++#define arginfo_class_VarnishStat___construct arginfo_class_VarnishAdmin___construct ++ ++#define arginfo_class_VarnishStat_getSnapshot arginfo_class_VarnishAdmin_getParams ++ ++#define arginfo_class_VarnishLog___construct arginfo_class_VarnishAdmin___construct ++ ++#define arginfo_class_VarnishLog_getLine arginfo_class_VarnishAdmin_getParams ++ ++ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_VarnishLog_getTagName, 0, 1, IS_STRING, 0) ++ ZEND_ARG_TYPE_INFO(0, ind, IS_LONG, 0) ++ZEND_END_ARG_INFO() |