John Zwinck
347528cf48
Fix minor inconsistencies in comment.
2011-11-28 16:37:35 -05:00
Pieter Noordhuis
2da784ce8f
Abort on invalid format
...
There is no way we can guess the width of the argument when we cannot
infer its type from the format specifier.
2011-07-09 15:08:45 +02:00
Pieter Noordhuis
27c96dde77
Use correct type when calling va_arg in formatter
2011-07-09 15:08:45 +02:00
Pieter Noordhuis
375ba48eea
Revert "Add function to retrieve formatted reply"
...
This reverts commit 77540aa316
. The change
in buffer strategy is too large to put in a minor release. It is put in
a separate branch in the meantime, so it can be refined and released
together with a minor version bump.
2011-06-19 13:41:25 +02:00
Pieter Noordhuis
5f5b3d9787
Fix for issue #45
2011-06-09 09:25:09 +02:00
Pieter Noordhuis
77540aa316
Add function to retrieve formatted reply
...
This is done by only truncating the read buffer once a full reply has
been read. The buffer is no longer truncated halfway through reading a
reply. In addition: pass offset/length of protocol and content via the
read tasks.
2011-05-05 17:01:34 +02: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
c9dc93e1de
Move chrtos to hiredis.c (not used elsewhere)
2011-04-21 22:39:19 +02:00
Pieter Noordhuis
8419b060f2
Handle OOM when doing blocking requests
2011-04-21 21:34:43 +02:00
Pieter Noordhuis
e932709a66
More safety
2011-04-21 21:18:08 +02:00
Pieter Noordhuis
dd5fc26457
Make command formatters gracefully abort when out of memory
2011-04-21 20:59:41 +02:00
Pieter Noordhuis
d4ebb60d65
More OOM checks in the protocol reader
2011-04-21 18:50:10 +02:00
Pieter Noordhuis
df1d693b03
Include fmacros.h to make sure strerror_p is defined on Linux
2011-04-21 16:24:03 +02:00
Pieter Noordhuis
965d42640f
Rename *ReplyReader* to *Reader*
2011-04-21 16:03:32 +02:00
Pieter Noordhuis
0ee7c66818
Use static buffer for error string on context
2011-04-21 15:56:22 +02:00
Pieter Noordhuis
6d207ea98e
Create protocol reader when creating context
2011-04-21 15:04:42 +02:00
Pieter Noordhuis
a926232293
Reply object functions can be set by the user after creating the reader
2011-04-21 14:37:29 +02:00
Pieter Noordhuis
5ba49014da
Privdata can be set directly on the struct
2011-04-21 14:34:03 +02:00
Pieter Noordhuis
2002218981
Remove useless casts
2011-04-21 14:31:02 +02:00
Pieter Noordhuis
e1abacb7b4
Return when memory cannot be allocated
2011-04-21 14:28:39 +02:00
Pieter Noordhuis
026636b0cd
Remove accessor functions now the redisReader struct is public
2011-04-21 14:27:03 +02:00
Pieter Noordhuis
727e1babec
Make redisReader struct public
2011-04-21 14:21:58 +02:00
Pieter Noordhuis
26588f5007
Test if there is a freeObject function
2011-04-21 10:54:15 +02:00
Pieter Noordhuis
eaf58bd32a
Use pre-allocated buffer for error strings in reader
2011-04-20 17:06:19 +02:00
Pieter Noordhuis
5d78214557
First pass at making the protocol reader properly handle OOM
2011-04-20 13:15:58 +02:00
Pieter Noordhuis
421eec9a4d
Lazily destroy protocol reader buffer
2011-04-03 18:04:15 +02:00
Pieter Noordhuis
921150fc8a
Individual reply object functions may be NULL
2011-04-03 17:46:59 +02:00
Pieter Noordhuis
8e2c39200d
Fix formatCommand to work with all empty interpolations
2011-03-06 11:38:07 +01:00
Pieter Noordhuis
2fc0d8756e
Use select(2) for enforce a timeout on blocking connect(2)
2011-02-04 15:26:28 +01:00
Pieter Noordhuis
663d6d1258
Properly reset state after protocol error in reply reader
2011-01-27 14:39:34 +01:00
Pieter Noordhuis
864bce944b
redisReplyReaderFeed should take a const char*
2011-01-27 14:07:06 +01:00
Pieter Noordhuis
fbe756d838
Avoid warnings with -Wstrict-prototypes
2011-01-27 12:50:55 +01:00
Pieter Noordhuis
3e8cbd53cf
Let sds.c figure out where the range stops
2011-01-19 18:10:27 +01:00
Pieter Noordhuis
f6a501001c
Discard consumed part of buffer less often
2011-01-19 18:01:01 +01:00
Pieter Noordhuis
43ab0f8018
Return error on socket timeout for a blocking context
2011-01-07 13:04:42 +01:00
Pieter Noordhuis
e3776bfaa6
Add function to explicitly free an async context
2010-12-28 19:19:25 +01:00
Pieter Noordhuis
a1e2c6dfed
Add myself to license in some files
2010-12-16 22:08:46 +01:00
Pieter Noordhuis
7684d556bd
Add (nearly) full printf support by delegating to vsprintf
2010-12-02 16:20:55 +01:00
Pieter Noordhuis
2635feb0ac
Wait with setting CONNECTED until there is an fd
2010-12-01 12:54:47 +01:00
Pieter Noordhuis
e73289a5c6
Use r->len in another spot
2010-11-26 15:25:19 +01:00
Pieter Noordhuis
4eab917a24
Use custom stroll
2010-11-26 14:48:04 +01:00
Pieter Noordhuis
f14108361b
Reply objects don't need to be calloc'ed
2010-11-26 14:47:01 +01:00
Pieter Noordhuis
5cf292cdd0
Use explicit buffer length field in the reply reader
2010-11-26 13:49:15 +01:00
Pieter Noordhuis
adb0895e99
Rename 'parent' field in read tasks to 'obj'
2010-11-26 13:04:42 +01:00
Pieter Noordhuis
b4dd17b57f
Remove leftover line from earlier commit
2010-11-24 15:46:50 +01:00
Pieter Noordhuis
257a9d40a9
Set error on unexpected nesting of multi bulks
2010-11-24 15:46:05 +01:00
Pieter Noordhuis
d4058be7b0
Add pointer to parent task in read tasks
2010-11-24 15:21:34 +01:00
Pieter Noordhuis
3d702d0bf1
Don't care if object returned by object function is NULL
2010-11-24 15:05:25 +01:00
Pieter Noordhuis
1927c643da
Add privdata field to reply reader
...
This field is set in the read tasks that are passed to the reply object
functions. This allows to curry arbitrary data to these functions.
2010-11-24 12:27:46 +01:00