Commit Graph

12 Commits

Author SHA1 Message Date
Aureus
c726723545
Use explicit pointer casting for c++ compatibility (#826) 2020-06-01 15:21:27 -07:00
Michael Grunder
8e0264cfd6
Allow users to replace allocator and handle OOM everywhere. (#800)
* 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.
2020-05-22 09:27:49 -07:00
Michael Grunder
994d2fd77d
Support timeouts in libev adapater (#795)
Add support for timeouts in our libev adapter.

See #795
2020-05-04 10:35:30 -07:00
Michael Grunder
669ac9d0c8
Safe allocation wrappers (#754)
Create allocation wrappers with a configurable OOM handler (defaults to abort()).

See #752, #747
2020-01-28 12:13:05 -08:00
antirez
2d66c4814e Add missing license and copyright for adapters
This is a backport of
d01aad329c
2014-04-09 17:02:42 -04:00
R. Tyler Croy
62c8917f2f Make libev adapter functions static to fix linking
This will allow two different compilation units to include libev.h
and link together
2011-06-27 12:17:37 -07:00
R. Tyler Croy
0f2e899c41 Add implied include of stdlib.h 2011-06-27 12:17:37 -07:00
Pieter Noordhuis
18c55a8f1e Scope event library related data and hooks to a struct 2010-12-29 15:41:03 +01:00
Pieter Noordhuis
af7369a253 Use extra field for adapter-specific data
This makes sure that the "data" field on the asynchronous context can be
used for user-specific data.
2010-12-01 16:43:24 +01:00
Pieter Noordhuis
fb49cd1988 Make the libev adapter work without support for multiple event loops 2010-11-23 15:55:32 +01:00
Pieter Noordhuis
4f4d1ed7b5 Explicit casts for the libev adapter 2010-11-22 09:45:55 +01:00
Pieter Noordhuis
89e0622535 Move libev/libevent headers to adapters directory 2010-11-01 10:42:32 +01:00