Age | Commit message (Collapse) | Author |
|
* cmake: build either static or shared libs
* cmake: allow to build non-PIC static libs
* fix typo
* cmake: add ALIAS targets
* cmake: link to OpenSSL imported targets
CMake imported targets are more robust
* turn ENABLE_EXAMPLES to a CMake option
* fix typo
* install pdb files if shared
* fix hiredis_ssl-config file
* Fix more targets
* CMake knows when to enable CMAKE_POSITION_INDEPENDENT_CODE
* Restore setting of /Z7
* [ci] fix building of shared and static libs
* Apply suggestions from code review
Co-authored-by: Bjorn Svensson <bjorn.a.svensson@est.tech>
* Make it possible to change name of exported target
---------
Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.com>
Co-authored-by: Bjorn Svensson <bjorn.a.svensson@est.tech>
|
|
To allow building hiredis on toolchain without dynamic library support,
respect standard cmake BUILD_SHARED_LIBS:
https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
|
|
|
|
See #1138
|
|
Add timeout support to libhv adapter.
See: #904
|
|
|
|
- redisSSLContextError must always be initialized at defintion,
otherwise when SSL connect succeeds it may not be assigned to a valid error.
Thus the memory trash remains in the variable, which may sign a misleading error.
|
|
|
|
Add timeout to libuv adapter
Co-authored-by: sunmingqi <sunmingqi@corp.netease.com>
Co-authored-by: sunmingqi <smq222@126.com>
Co-authored-by: Michael Grunder <michael.grunder@gmail.com>
Co-authored-by: Viktor Söderqvist <viktor@zuiderkwast.se>
|
|
|
|
See: #862
|
|
We need to allow our users to use redisContext->privdata as context
for any RESP3 PUSH messages, which means we can't use it for managing
SSL connections.
Bulletpoints:
* Create a secondary redisContext member for internal use only called
privctx and rename the redisContextFuncs->free_privdata accordingly.
* Adds a `free_privdata` function pointer so the user can tie allocated
memory to the lifetime of a redisContext (like they can already do
with redisAsyncContext)
* Enables SSL tests in .travis.yml
|
|
Add an additional timeout so the user has a convenient way of controlling distinct connect and command timeouts
|
|
|
|
Proper support for RESP3 PUSH messages.
By default, PUSH messages are now intercepted and the reply memory freed.
This means existing code should work unchanged when connecting to Redis
>= 6.0.0 even if `CLIENT TRACKING` were then enabled.
Additionally, we define two callbacks users can configure if they wish to handle
these messages in a custom way:
void redisPushFn(void *privdata, void *reply);
void redisAsyncPushFn(redisAsyncContext *ac, void *reply);
See #825
|
|
* Don't try to ignore SIGPIPE in Windows (it doesn't exist).
* Add an include to our win32.h compatibility header.
* Enable building examples on Travis in Windows.
See #831
|
|
|
|
Also rename the SSL option from `HIREDIS_SSL` to `ENABLE_SSL` to conform
with CMake convnetions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
To minimize code changes, a simple `u` (or UNIX, Unix, unix, etc -- as
long as the first character is u or U) is used as a marker for the
'port' argument. In this case, the hostname is interpreted to be the
path to the unix socket.
|
|
|
|
|
|
Added MacOS X support via CoreFoundation run loop.
|
|
|
|
|
|
This adds a new adapter and an example for using hiredis with the ivykis
async I/O library.
Signed-off-by: Gergely Nagy <algernon@madhouse-project.org>
|
|
[Cleaned up Makefile and header includes. Didn't change crazy
coding style because it's the convention for GLib systems.]
Closes #83
Closes #71
|
|
This makes possible to use the example with IPv6 addresses and/or with a
different Redis instance than 127.0.0.1:6379.
|
|
Closes #121.
|
|
Added a call to redisFree()
Closes #148.
|
|
Closes #166.
|