]> git.sur5r.net Git - openldap/blobdiff - servers/slapd/entry.c
Add a safety check to bvcasechr
[openldap] / servers / slapd / entry.c
index 6ae8ba512b075eb7f1f2da3c81e9cb28ab8a6d32..1ce0a4fbc099dfd39421bab886890ccc4ff5d740 100644 (file)
@@ -1,7 +1,7 @@
 /* entry.c - routines for dealing with entries */
 /* $OpenLDAP$ */
 /*
- * Copyright 1998-2000 The OpenLDAP Foundation, All Rights Reserved.
+ * Copyright 1998-2002 The OpenLDAP Foundation, All Rights Reserved.
  * COPYING RESTRICTIONS APPLY, see COPYRIGHT file
  */
 
@@ -561,7 +561,7 @@ int entry_decode(struct berval *bv, Entry **e)
        const char *text;
        AttributeDescription *ad;
        unsigned char *ptr = (unsigned char *)bv->bv_val;
-       BVarray bptr;
+       BerVarray bptr;
 
        i = entry_getlen(&ptr);
        x = ch_malloc(i);
@@ -587,7 +587,7 @@ int entry_decode(struct berval *bv, Entry **e)
         * pointer can never be NULL
         */
        x->e_attrs = (Attribute *)(x+1);
-       bptr = (BVarray)x->e_attrs;
+       bptr = (BerVarray)x->e_attrs;
        a = NULL;
 
        while (i = entry_getlen(&ptr)) {
@@ -623,8 +623,9 @@ int entry_decode(struct berval *bv, Entry **e)
                }
                ptr += i + 1;
                a->a_desc = ad;
-               bptr = (BVarray)(a+1);
+               bptr = (BerVarray)(a+1);
                a->a_vals = bptr;
+               a->a_flags = 0;
                j = entry_getlen(&ptr);
 
                while (j) {