From e6b3fe548421b0f555c6d9d94dea4c26640ba716 Mon Sep 17 00:00:00 2001 From: Pavlo Yatsukhnenko Date: Fri, 27 May 2022 15:20:19 +0300 Subject: Backoff settings in constructor --- redis.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'redis.c') diff --git a/redis.c b/redis.c index ade8d3b5..d526b99d 100644 --- a/redis.c +++ b/redis.c @@ -650,17 +650,21 @@ PHP_METHOD(Redis, __construct) } redis->sock->retry_interval = zval_get_long(val); } else if (zend_string_equals_literal_ci(zkey, "ssl")) { - if (Z_TYPE_P(val) != IS_ARRAY) { + if (redis_sock_set_stream_context(redis->sock, val) != SUCCESS) { REDIS_VALUE_EXCEPTION("Invalid SSL context options"); RETURN_THROWS(); } - redis_sock_set_stream_context(redis->sock, val); } else if (zend_string_equals_literal_ci(zkey, "auth")) { if (Z_TYPE_P(val) != IS_STRING && Z_TYPE_P(val) != IS_ARRAY) { REDIS_VALUE_EXCEPTION("Invalid auth credentials"); RETURN_THROWS(); } redis_sock_set_auth_zval(redis->sock, val); + } else if (zend_string_equals_literal_ci(zkey, "backoff")) { + if (redis_sock_set_backoff(redis->sock, val) != SUCCESS) { + REDIS_VALUE_EXCEPTION("Invalid backoff options"); + RETURN_THROWS(); + } } else { php_error_docref(NULL, E_WARNING, "Skip unknown option '%s'", ZSTR_VAL(zkey)); } -- cgit v1.2.3