Files
phpredis/redis_array_impl.h
Michael Grunder a311cc4ec3 Support for Redis 6 ACLs (#1791)
Add support for Redis 6 ACLs in the `Redis`, `RedisCluster`, and `RedisArray` classes.

On a related note, it adds a mechanism for users to customize how we generate persistent connection IDs such that they can be grouped in different ways depending on the specific use case required (e.g. it would allow connections to be grouped by username, or by user-defined persistent_id, or both).
2020-06-24 17:00:01 -07:00

40 lines
1.5 KiB
C

#ifndef REDIS_ARRAY_IMPL_H
#define REDIS_ARRAY_IMPL_H
#ifdef PHP_WIN32
#include <win32/php_stdint.h>
#else
#include <stdint.h>
#endif
#include "redis_array.h"
RedisArray *ra_load_array(const char *name);
RedisArray *ra_make_array(HashTable *hosts, zval *z_fun, zval *z_dist,
HashTable *hosts_prev, zend_bool b_index,
zend_bool b_pconnect, long retry_interval,
zend_bool b_lazy_connect, double connect_timeout,
double read_timeout, zend_bool consistent,
zend_string *algorithm, zend_string *auth,
zend_string *pass);
zval *ra_find_node_by_name(RedisArray *ra, const char *host, int host_len);
zval *ra_find_node(RedisArray *ra, const char *key, int key_len, int *out_pos);
void ra_init_function_table(RedisArray *ra);
void ra_move_key(const char *key, int key_len, zval *z_from, zval *z_to);
void ra_index_multi(zval *z_redis, long multi_value);
void ra_index_key(const char *key, int key_len, zval *z_redis);
void ra_index_keys(zval *z_pairs, zval *z_redis);
void ra_index_del(zval *z_keys, zval *z_redis);
void ra_index_exec(zval *z_redis, zval *return_value, int keep_all);
void ra_index_discard(zval *z_redis, zval *return_value);
void ra_index_unwatch(zval *z_redis, zval *return_value);
zend_bool ra_is_write_cmd(RedisArray *ra, const char *cmd, int cmd_len);
void ra_rehash(RedisArray *ra, zend_fcall_info *z_cb, zend_fcall_info_cache *z_cb_cache);
#endif