1. 05 Jul, 2022 1 commit
  2. 18 Jan, 2022 1 commit
  3. 24 Dec, 2021 1 commit
  4. 23 Dec, 2021 1 commit
    • zhenwei pi's avatar
      Makefile: move SSL options into a block and refine rules · f74b0818
      zhenwei pi authored
      
      
      Move SSL options into two blocks to make it easy to read:
        1, first part: SSL variables part
        1, second part: SSL building rules part
      and change global rules to make it easy to maintain. For the further
      step, it gets extensible to add another type.
      
      New version of the library building rule:
      	static: $(STLIBNAME) $(SSL_STLIB)
      	dynamic: $(DYLIBNAME) $(SSL_DYLIB)
      
      Compare with the orignal version:
      	dynamic: $(DYLIBNAME)
      	static: $(STLIBNAME)
      	ifeq ($(USE_SSL),1)
      	dynamic: $(SSL_DYLIBNAME)
      	static: $(SSL_STLIBNAME)
      	endif
      
      If we want to add a new type(Ex, RDMA), for the new version, we can
      do like this:
      	########### RDMA variables start ###############
      	.....
      	########### RDMA variables end   ###############
      
      	static: $(STLIBNAME) $(SSL_STLIB) $(RDMA_STLIB)
      	dynamic: $(DYLIBNAME) $(SSL_DYLIB) $(RDMA_DYLIB)
      
      	########### RDMA building rules start ###############
      	.....
      	########### RDMA building rules end   ###############
      Signed-off-by: default avatarzhenwei pi <pizhenwei@bytedance.com>
      f74b0818
  5. 16 Dec, 2021 1 commit
  6. 26 Oct, 2021 1 commit
    • Björn Svensson's avatar
      Add build options for enabling async tests · 648763c3
      Björn Svensson authored
      Asynchronous testcases that requires the event library `libevent`
      can be built and enabled by using the added build flags:
      - ENABLE_ASYNC_TESTS when using CMake
      - TEST_ASYNC when using Make
      
      The async tests are disabled by default to avoid adding new requirements,
      but the testcases are built and run in CI.
      648763c3
  7. 21 Oct, 2021 1 commit
    • Bjorn Svensson's avatar
      Correcting the build target `coverage` for enabled SSL (#1009) · c98c6994
      Bjorn Svensson authored
      * Exclude includes from /usr in coverage reporting
      
      * Correct build target `coverage` for enabled ssl
      
      `USE_SSL=1 make coverage` will now build the test binary with the
      forwarded define HIREDIS_TEST_SSL. This avoids inconsistency between
      built test binary and the testrunner `test.sh`.
      This enables test coverage measurements for SSL too.
      c98c6994
  8. 03 Oct, 2021 1 commit
  9. 20 Jul, 2020 1 commit
    • Michael Grunder's avatar
      Resp3 oob push support (#841) · 2e7d7cba
      Michael Grunder authored
      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
      2e7d7cba
  10. 22 May, 2020 1 commit
    • Michael Grunder's avatar
      Allow users to replace allocator and handle OOM everywhere. (#800) · 8e0264cf
      Michael Grunder authored
      * Adds an indirection to every allocation/deallocation to allow users to 
        plug in ones of their choosing (use custom functions, jemalloc, etc).
      
      * Gracefully handle OOM everywhere in hiredis.  This should make it possible
        for users of the library to have more flexibility in how they handle such situations.
      
      * Changes `redisReaderTask->elements` from an `int` to a `long long` to prevent
        a possible overflow when transferring the task elements into a `redisReply`.
      
      * Adds a configurable `max elements` member to `redisReader` that defaults to
        2^32 - 1.  This can be set to "unlimited" by setting the value to zero.
      8e0264cf
  11. 19 May, 2020 1 commit
  12. 23 Apr, 2020 1 commit
  13. 13 Apr, 2020 1 commit
  14. 29 Jan, 2020 1 commit
    • akichan's avatar
      install alloc.h · 3ae47397
      akichan authored
      alloc.h added in # 754
      But not added to INSTALL_INCLUDE_PATH
      3ae47397
  15. 28 Jan, 2020 1 commit
  16. 16 Sep, 2019 1 commit
    • Yossi Gottlieb's avatar
      Add SSL mode tests. · d952ed87
      Yossi Gottlieb authored
      This repeats all existing tests in SSL mode, but does not yet provide
      SSL-specific tests.
      d952ed87
  17. 01 Sep, 2019 1 commit
  18. 29 Aug, 2019 2 commits
  19. 01 Apr, 2019 1 commit
  20. 21 Feb, 2019 1 commit
  21. 20 Feb, 2019 9 commits
  22. 04 Dec, 2018 1 commit
  23. 26 Sep, 2018 1 commit
  24. 31 May, 2018 1 commit
    • Ryan Schmidt's avatar
      Use -dynamiclib instead of -shared on macOS · a65537a6
      Ryan Schmidt authored
      -dynamiclib is the correct documented flag to use to create dynamic
      libraries on macOS. Newer toolchains recognize -shared as a synonym
      of -dynamiclib but older toolchains don't.
      a65537a6
  25. 16 May, 2018 1 commit
  26. 14 May, 2018 2 commits
  27. 28 Dec, 2017 1 commit
    • Dmitri Vorobiev's avatar
      Strip compiler options from the CC variable · 12a9d1a3
      Dmitri Vorobiev authored
      
      
      The Makefile checks validity of the compiler command in the CC
      variable by feeding the contents of that variable to the `type'
      utility. Some environments include compiler options in the CC
      variable such as architecture specific tuning flags. For such
      cases it is necessary to first strip everything except the
      command itself from the contents of the CC variable prior to
      checking the command with the type utility, which is what this
      patch is introducing. We use shell parameter expansion mechanism
      for this purpose.
      Signed-off-by: default avatarDmitri Vorobiev <dmitri.vorobiev@movial.com>
      12a9d1a3
  28. 27 Dec, 2017 1 commit
    • Dmitri Vorobiev's avatar
      Remove $(ARCH) expansion from the Makefile · 3238cf4f
      Dmitri Vorobiev authored
      
      
      Some compilation environments (such as Yocto) define the ARCH
      environment variable to indicate the target architecture. For
      such enviroments, hiredis build fails, because the expanded
      $(ARCH) variable in the Makefile gets erroneously interpreted
      as an argument to the `-ggdb' command line option during the
      compilation stage or as an input file name during the linking
      stage.
      
      This patch removes $(ARCH) expansions from the Makefile. This
      doesn't harm cross-compilation, the latter goes fine with the
      properly assigned CC environment variable. For native builds,
      this patch does not imply any changes.
      Signed-off-by: default avatarDmitri Vorobiev <dmitri.vorobiev@movial.com>
      3238cf4f
  29. 29 Nov, 2017 1 commit
  30. 30 Oct, 2017 1 commit