diff options
author | Jim Jagielski <jim@apache.org> | 2013-11-17 14:22:58 +0000 |
---|---|---|
committer | Jim Jagielski <jim@apache.org> | 2013-11-17 14:22:58 +0000 |
commit | ec1e7e9ca0bbfa03e61929f9e047cdee52019e8d (patch) | |
tree | 5a2bdec40fda4f4419e31d23a78ed65dd1c7eff8 /modules/slotmem | |
parent | 5c02313fb3a47510b0e099ef87b02430c174fb4f (diff) | |
download | httpd-ec1e7e9ca0bbfa03e61929f9e047cdee52019e8d.tar.gz |
Handle the gugz fix in APR 1.5.1 regarding duplicate
keys.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1542732 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'modules/slotmem')
-rw-r--r-- | modules/slotmem/mod_slotmem_shm.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/modules/slotmem/mod_slotmem_shm.c b/modules/slotmem/mod_slotmem_shm.c index 1f7e557cd9..1af401503c 100644 --- a/modules/slotmem/mod_slotmem_shm.c +++ b/modules/slotmem/mod_slotmem_shm.c @@ -28,6 +28,8 @@ #ifdef AP_NEED_SET_MUTEX_PERMS #include "unixd.h" #endif +#include "apr_version.h" +#include "apr_hash.h" #if APR_HAVE_UNISTD_H #include <unistd.h> /* for getpid() */ @@ -95,7 +97,13 @@ static apr_status_t unixd_set_shm_perms(const char *fname) key_t shmkey; int shmid; +#if APR_VERSION_AT_LEAST(1,5,1) + apr_ssize_t slen = strlen(fname); + shmkey = ftok(fname, + (int)apr_hashfunc_default(fname, &slen)); +#else shmkey = ftok(fname, 1); +#endif if (shmkey == (key_t)-1) { return errno; } |