summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-05-16Make sure we've got a path separator before the actual dylib namemichael-grunder
2018-05-16Merge remote-tracking branch 'ryandesign/install_name'michael-grunder
2018-05-14Use absolute install_nameRyan Schmidt
Fixes #437.
2018-05-13Merge remote-tracking branch 'justinbrewer/hiredis-pr1' into posix-build-fixesmichael-grunder
2018-05-09Attempted fix for Cygwin to expose getaddrinfo and friendsmichael-grunder
2018-05-09Merge remote-tracking branch 'hyjin/master'michael-grunder
2018-04-30Remove redundant NULL checksJustin Brewer
free(NULL) is a valid NOP. Most of the hiredis free functions behave the same way. redisReaderFree is updated to also be NULL-safe. There is one redundant NULL check at sds.c:1036, but it's left as is since sds is imported from upstream. Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-04-30Remove redundant zero storesJustin Brewer
calloc is guaranteed to provide a zero-initialized buffer. There is no need to set fields to zero explicitly. Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-04-30Fix a segfault on *BSDJustin Brewer
freeaddrinfo is not required by POSIX to be NULL-safe. OpenBSD will SIGSEGV. NetBSD will assert. FreeBSD up to 11.1 will SIGSEGV, while in future versions, it will be a silent NOP [1]. Commit d4b715f0aa97 ("Fix potential race in 'invalid timeout' tests") added a code path to _redisContextConnectTcp which calls freeaddrinfo(NULL), triggering the segfault. Put a NULL check around the call to freeaddrinfo. [1] - https://github.com/freebsd/freebsd/commit/e9167239034a1e475c3238f8d133ebf703424ee0 Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-04-30Drop __redis_strerror_rJustin Brewer
Since _GNU_SOURCE is now guaranteed to be unset, it is no longer necessary to support the GNU-specific version of strerror_r. Drop __redis_strerror_r from the header, and call strerror_r directly. This breaks any external users of this macro, but they shouldn't have been using it in the first place. Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-04-28Strip down fmacros.hJustin Brewer
strerror_r and addrinfo require _POSIX_C_SOURCE >= 200112L, which is implied by _XOPEN_SOURCE >= 600. With the removal of AF_LOCAL usage, the only non-standard features being used are the TCP_KEEP* socket flags. _DARWIN_C_SOURCE is required to expose TCP_KEEPALIVE. Fall back to using _XOPEN_SOURCE 600 for all platforms, and additionally define _DARWIN_C_SOURCE for Darwin. Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-04-28Use AF_UNIXJustin Brewer
AF_LOCAL is the old, non-standardized name for AF_UNIX. Just use AF_UNIX, rather than wrestling with platform specifics of AF_LOCAL definitions. Signed-off-by: Justin Brewer <jzb0012@auburn.edu>
2018-01-06Merge #569not-a-robot[bot]
569: Ibm aix fix r=badboy
2018-01-06Make it compile on IBM AIX systemsJan-Erik Rediger
Closes #422
2018-01-05Merge #568not-a-robot[bot]
568: Make XOPEN_SOURCE definition explicit per architecture r=badboy Fixes #441
2018-01-05Make XOPEN_SOURCE definition explicit per architectureJan-Erik Rediger
Fixes #441
2018-01-05calloc param fixes and NULL checkcdliuqiang@gmail.com
2018-01-05Merge pull request #561 from zshipko/masterJan-Erik Rediger
Fix "make install" on OpenBSD
2018-01-05Merge pull request #564 from dmvo/masterJan-Erik Rediger
Remove $(ARCH) expansion from the Makefile
2017-12-28Strip compiler options from the CC variableDmitri Vorobiev
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: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
2017-12-27Remove $(ARCH) expansion from the MakefileDmitri Vorobiev
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: Dmitri Vorobiev <dmitri.vorobiev@movial.com>
2017-11-28Fix "make install" on OpenBSDZach Shipko
2017-11-07Merge #554not-a-robot[bot]
554: build: do not assume that INSTALL is cp r=badboy INSTALL is supposed to be `install` in most of the cases which doesn't work with directories, but works perfectly with files. Don't do this assumption. Reported-by: Jiří Vymazal <jvymazal@redhat.com> References: https://bugzilla.redhat.com/show_bug.cgi?id=1506251 Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-11-07chore: Build only branches bors needsJan-Erik Rediger
2017-10-30build: do not assume that INSTALL is cpIgor Gnatenko
INSTALL is supposed to be `install` in most of the cases which doesn't work with directories, but works perfectly with files. Don't do this assumption. Reported-by: Jiří Vymazal <jvymazal@redhat.com> References: https://bugzilla.redhat.com/show_bug.cgi?id=1506251 Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2017-09-01Merge pull request #542 from EdwardBetts/spellingJan-Erik Rediger
correct spelling mistake
2017-09-01correct spelling mistakeEdward Betts
2017-07-15Merge #533not-a-robot[bot]
533: Small fixes r=badboy
2017-07-15Merge #524 #525not-a-robot[bot]
524: Don't pass a negative value to __redisAsyncCommand if redisFormatSdsCommandArgv fails r=badboy 525: Fix compilation on FreeBSD 10.3 with default compiler r=badboy Given FreeBSD 10.3 with default compiler: > $ cc -v > FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512 > Target: x86_64-unknown-freebsd10.3 Defining _XOPEN_SOURCE to 600 on the fixed line leads to the following errors: > cc -std=c99 -pedantic -c -O3 -fPIC -Wall -W -Wstrict-prototypes -Wwrite-strings -g -ggdb net.c > net.c:435:29: error: use of undeclared identifier 'AF_LOCAL' > if (redisCreateSocket(c,AF_LOCAL) < 0) > ^ > net.c:460:21: error: use of undeclared identifier 'AF_LOCAL' > sa.sun_family = AF_LOCAL; > ^ > 2 errors generated. > AF_LOCAL is defined in sys/socket.h within ifdef __BSD_VISIBLE. __BSD_VISIBLE could be defined in sys/cdefs.h, but it is never done if _XOPEN_SOURCE is defined. So on FreeBSD _XOPEN_SOURCE shouldn't be defined.
2017-07-15Merge #523not-a-robot[bot]
523: Fix leak if setsockopt fails r=badboy
2017-06-16Merge pull request #532 from amallia/assert-side-effectsJan-Erik Rediger
Assert statement calls a function which has side effects
2017-06-15Small fixesamallia
2017-06-15Assert statement calls a function which has side effectsamallia
2017-05-17Fix compilation on FreeBSD 10.3 with default compilereldarko
2017-05-15Don't pass a negative value to __redisAsyncCommand if ↵Frederik Deweerdt
redisFormatSdsCommandArgv fails
2017-05-15Fix leak if setsockopt failsFrederik Deweerdt
2017-04-07Merge pull request #514 from zfzsoft/patch-1Jan-Erik Rediger
redisLibeventCleanup will be leak
2017-04-07Merge pull request #516 from redis/changed-cygwinJan-Erik Rediger
chore(CI): Skip installing Cygwin
2017-04-07chore(CI): Skip installing CygwinJan-Erik Rediger
2017-04-07Merge pull request #473 from trustfarm-dev/masterJan-Erik Rediger
Build error when make examples , patch with glib-2.0 positon move will solve.
2017-03-28Update libevent.hzfz
event_del can not free the "e->rev" and "e->wev",that will leak when reconnect the redis
2017-03-22Merge pull request #513 from i110/masterJan-Erik Rediger
suppress gcc complaint
2017-03-22suppress gcc complaintIchito Nagata
2017-01-30Use cached local variable instead using accessorHyungjin Kim
2017-01-30Consider sub by pattern when clear subscribed flagHyungjin Kim
2017-01-23Merge pull request #499 from jinq0123/fixbug/redisSetErrorFromErrnoJan-Erik Rediger
Fix __redisSetErrorFromErrno() can not get error string.
2016-12-30Fix __redisSetErrorFromErrno() can not get error string.Jin Qing
snprintf() may change errno.
2016-12-09Auto merge of #429 - xinchuantao:master, r=badboynot-a-robot
using new version libevent
2016-12-09Auto merge of #468 - paul-scott:master, r=badboynot-a-robot
Prevented uv adapter from calling write when context has been freed The `redisLibuvPoll` function can be called with both the `UV_READABLE` and `UV_WRITABLE` flags set at the same time. Calling `redisAsyncHandleRead` can lead to a disconnect and the context being cleaned up/freed. If this happens then `redisAsyncHandleWrite` should not be called otherwise memory read/write errors and duplicate freeing will occur. These changes prevent this from happening by having the `redisLibuvCleanup` callback indicate that the context has been cleaned. This is done indirectly by setting the context to a null pointer, maybe someone can come up with a cleaner way.
2016-12-09Avoid unchecked mallocJan-Erik Rediger
Closes #471