Pieter Noordhuis
c532edc27f
Fix const-related compiler errors
2013-07-10 23:31:30 -07:00
Pieter Noordhuis
049346aa33
Merge pull request #132 from nwmcsween/constify
...
constify: constify some variables / functions
2013-07-10 23:13:36 -07:00
Henri Doreau
d7e3268f48
Prevent AsyncConnect from crashing on memory allocation failures.
2013-01-22 15:53:17 +01:00
Henri Doreau
814be4f5bd
Made connect functions return NULL on alloc failures.
...
Updated documentation and examples accordingly.
2013-01-22 10:19:46 +01:00
Nathan McSween
ba6c3c152c
constify: constify some variables / functions
2012-11-12 19:48:21 +00:00
Pieter Noordhuis
7ec4df9403
Spontaneous error reply can always happen
2012-07-31 17:40:46 -07:00
Alex Leverington
01cce89d9d
async: support for determining monitor mode, if so, repush replies callback in expectation of another reply.
2012-07-11 02:53:58 -05:00
R. Tyler Croy
e6cf455be5
Include stdlib.h in async.c for free(3), realloc(3) and strtol(3) support
2011-07-10 21:04:03 -07:00
Pieter Noordhuis
3313bcd191
Change prototype of connect callback
...
This commit adds a status argument to the connect callback. It will be
called in the event of an unsuccessful connection as well, where the
status argument is set to REDIS_ERR. It is set to REDIS_OK otherwise.
2011-06-27 23:52:29 +02:00
Pieter Noordhuis
026d5ae750
Use macro's for event loop hooks
2011-06-27 22:49:25 +02:00
Pieter Noordhuis
367ac44ac1
Remove private feature macros for Solaris from compiler flags
2011-06-18 16:28:57 +02:00
Pieter Noordhuis
1c29aafd47
Clarify rationale behind issue #43
2011-05-29 09:52:18 -07:00
Blake Matheny
63dcf9b741
Make sure subscribe is still respected
2011-05-24 12:59:02 -04:00
Blake Matheny
7268857254
Fix the case where an error reply is received before any callbacks are registered
2011-05-24 11:46:19 -04:00
Pieter Noordhuis
0cb7c27d9c
Update license
2011-04-21 22:46:23 +02:00
Pieter Noordhuis
f3f02b6419
Let the async API segfault on OOM for now
2011-04-21 22:40:36 +02:00
Pieter Noordhuis
6d207ea98e
Create protocol reader when creating context
2011-04-21 15:04:42 +02:00
Pieter Noordhuis
c6b8bd77c0
Make dictionary functions static and include the .c file
2011-01-14 12:07:29 +01:00
Pierre Riteau
4def8569b8
strcasecmp and strncasecmp are defined in strings.h
2011-01-10 22:44:37 +01:00
Pieter Noordhuis
ec922cd007
Unsubscribe messages always have 3 elements
2010-12-31 15:49:26 +01:00
Pieter Noordhuis
ed97945c27
Clean up dictionaries on free
2010-12-31 15:49:26 +01:00
Pieter Noordhuis
a0ebc5417f
Delegate pub/sub replies to the right callback
2010-12-31 15:49:26 +01:00
Pieter Noordhuis
3ac8ef927d
Add callbacks to channel/pattern dictionaries
2010-12-31 15:49:26 +01:00
Pieter Noordhuis
e6621d05b4
Add fields for subscribed channel/pattern names
2010-12-31 15:49:26 +01:00
Pieter Noordhuis
3ce8d5b08b
Change reply processing code to prepare for pub/sub
2010-12-31 15:49:21 +01:00
Pieter Noordhuis
2d53a6a711
Copy entire callback in one call
2010-12-31 11:22:13 +01:00
Pieter Noordhuis
18c55a8f1e
Scope event library related data and hooks to a struct
2010-12-29 15:41:03 +01:00
Pieter Noordhuis
8cb4d52cd2
Run pending callbacks with a NULL reply on redisAsyncFree()
2010-12-28 20:49:18 +01:00
Pieter Noordhuis
29ea901b24
Fix the async free() and disconnect() functions
...
To make sure that these functions can also be called from functions
other than command callbacks, the flag IN_CALLBACK is introduced that
holds whether the context is currently executing a callback. If so,
redisAsyncFree() and redisAsyncDisconnect() should delegate their task
to the reply processor to avoid segfaults.
2010-12-28 20:29:29 +01:00
Pieter Noordhuis
c882a3621a
Only check REDIS_FREEING when a callback was executed
2010-12-28 19:35:26 +01:00
Pieter Noordhuis
e3776bfaa6
Add function to explicitly free an async context
2010-12-28 19:19:25 +01:00
Pieter Noordhuis
3d76f3fe02
Add write event after setting connect callback
2010-12-28 17:59:26 +01:00
Pieter Noordhuis
a1e2c6dfed
Add myself to license in some files
2010-12-16 22:08:46 +01:00
Pieter Noordhuis
12725f88ed
Fire onConnect callback on the first write event
2010-12-07 10:22:30 +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
09a0fe626f
Explicitly initialize struct fields to NULL
2010-11-15 21:53:22 +01:00
Pieter Noordhuis
f25a5267cc
Allow to connect using a unix socket from hiredis
2010-11-03 11:38:26 +01:00
Pieter Noordhuis
ffa8666a64
Change error reporting to have an explicit type
...
When there is an I/O error, errno should be used to find out what is
wrong. In other cases, errno cannot be used. So, use an explicit type in
Hiredis to define the different error scenarios that can occur.
2010-11-02 16:36:38 +01:00
Pieter Noordhuis
30a9f8f271
Use existing function to append to the output buffer
2010-11-01 14:16:01 +01:00
Pieter Noordhuis
ac13c9f095
Only copy relevant fields from callback ptr to avoid copying garbage
2010-11-01 10:13:05 +01:00
Pieter Noordhuis
a66ec18e80
Make push/shift functions for callbacks responsible for malloc/free
2010-11-01 10:10:03 +01:00
Pieter Noordhuis
e25db30f38
Run pending callbacks with NULL reply on error
2010-11-01 10:01:34 +01:00
Pieter Noordhuis
8b0fddcb02
Clarify redisAsyncDisconnect behavior in comments
2010-11-01 09:53:54 +01:00
Pieter Noordhuis
ad2456047e
Process callbacks after reading
2010-11-01 09:53:34 +01:00
Pieter Noordhuis
c43256633c
Cleanup function should remove read/write events
2010-11-01 09:53:18 +01:00
Pieter Noordhuis
437eea80fc
Make error ptr accessible from async context
2010-11-01 09:52:17 +01:00
Pieter Noordhuis
4e3bd7893d
Add support to lazily disconnect an asynchronous connection
2010-11-01 09:27:43 +01:00
Pieter Noordhuis
0152f12807
Extracted code to support callbacks in an asynchronous context
2010-10-31 21:20:47 +01:00