]> git.sur5r.net Git - openldap/commitdiff
More for ITS#6351
authorQuanah Gibson-Mount <quanah@openldap.org>
Fri, 20 Nov 2009 23:13:43 +0000 (23:13 +0000)
committerQuanah Gibson-Mount <quanah@openldap.org>
Fri, 20 Nov 2009 23:13:43 +0000 (23:13 +0000)
include/ac/string.h
include/lber_pvt.h
libraries/liblutil/utils.c

index 00c79d34a11e8c7302b1756d0f42869043737fa7..d383251502b73eb125508919ac4834188b6da658 100644 (file)
@@ -94,11 +94,10 @@ int (strncasecmp)();
 #define memcmp lutil_memcmp
 #endif
 
+void *(lutil_memrchr)(const void *b, int c, size_t n);
 /* GNU extension (glibc >= 2.1.91), only declared when defined(_GNU_SOURCE) */
-#ifndef HAVE_MEMRCHR
-#undef memrchr
-#define memrchr lutil_memrchr
-void * memrchr(const void *b, int c, size_t len);
+#if defined(HAVE_MEMRCHR) && defined(_GNU_SOURCE)
+#define lutil_memrchr(b, c, n) memrchr(b, c, n)
 #endif /* ! HAVE_MEMRCHR */
 
 #define STRLENOF(s)    (sizeof(s)-1)
index 378f00b6275fbdf0ee01cfe30d53e9ac3af59c9b..365a243bcabbf89868139cae2c01aacfce16fddc 100644 (file)
@@ -173,7 +173,7 @@ ber_bvarray_dup_x LDAP_P(( BerVarray *dst, BerVarray src, void *ctx ));
        ((char *) memchr( (bv)->bv_val, (c), (bv)->bv_len ))
 
 #define ber_bvrchr(bv,c) \
-       ((char *) memrchr( (bv)->bv_val, (c), (bv)->bv_len ))
+       ((char *) lutil_memrchr( (bv)->bv_val, (c), (bv)->bv_len ))
 
 #define ber_bvchr_post(dst,bv,c) \
        do { \
@@ -190,13 +190,13 @@ ber_bvarray_dup_x LDAP_P(( BerVarray *dst, BerVarray src, void *ctx ));
 
 #define ber_bvrchr_post(dst,bv,c) \
        do { \
-               (dst)->bv_val = memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \
+               (dst)->bv_val = lutil_memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \
                (dst)->bv_len = (dst)->bv_val ? (bv)->bv_len - ((dst)->bv_val - (bv)->bv_val) : 0; \
        } while (0)
 
 #define ber_bvrchr_pre(dst,bv,c) \
        do { \
-               (dst)->bv_val = memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \
+               (dst)->bv_val = lutil_memrchr( (bv)->bv_val, (c), (bv)->bv_len ); \
                (dst)->bv_len = (dst)->bv_val ? ((dst)->bv_val - (bv)->bv_val) : (bv)->bv_len; \
                (dst)->bv_val = (bv)->bv_val; \
        } while (0)
index cccb2d1099b39610edeeaac6e1f13fd93e3f0e3a..9fc2c906c2af1ad9979618cbeeab03520976da97 100644 (file)
@@ -567,7 +567,7 @@ int closedir(DIR *dir)
  * Memory Reverse Search
  */
 void *
-lutil_memrchr(const void *b, int c, size_t n)
+(lutil_memrchr)(const void *b, int c, size_t n)
 {
        if (n != 0) {
                const unsigned char *s, *bb = b, cc = c;