]> git.sur5r.net Git - openldap/commitdiff
Some more struct berval conversions
authorHoward Chu <hyc@openldap.org>
Mon, 28 Jan 2002 10:11:36 +0000 (10:11 +0000)
committerHoward Chu <hyc@openldap.org>
Mon, 28 Jan 2002 10:11:36 +0000 (10:11 +0000)
servers/slapd/acl.c
servers/slapd/sets.c
servers/slapd/sets.h

index 6feaa84a493c2ec97ff3f9ca27de0c48fd703b61..89aade2551d00a72a9c5f932e6cbd35ec1101c4c 100644 (file)
@@ -79,7 +79,7 @@ typedef       struct AciSetCookie {
        Operation *op;
 } AciSetCookie;
 
-BerVarray aci_set_gather (void *cookie, char *name, struct berval *attr);
+SLAP_SET_GATHER aci_set_gather;
 static int aci_match_set ( struct berval *subj, Backend *be,
     Entry *e, Connection *conn, Operation *op, int setref );
 
@@ -1233,20 +1233,18 @@ aci_get_part(
 }
 
 BerVarray
-aci_set_gather (void *cookie, char *name, struct berval *attr)
+aci_set_gather (void *cookie, struct berval *name, struct berval *attr)
 {
        AciSetCookie *cp = cookie;
        BerVarray bvals = NULL;
-       struct berval bv, ndn;
+       struct berval ndn;
 
        /* this routine needs to return the bervals instead of
         * plain strings, since syntax is not known.  It should
         * also return the syntax or some "comparison cookie".
         */
 
-       bv.bv_val = name;
-       bv.bv_len = strlen( name );
-       if (dnNormalize2(NULL, &bv, &ndn) == LDAP_SUCCESS) {
+       if (dnNormalize2(NULL, name, &ndn) == LDAP_SUCCESS) {
                const char *text;
                AttributeDescription *desc = NULL;
                if (slap_bv2ad(attr, &desc, &text) == LDAP_SUCCESS) {
@@ -1329,7 +1327,7 @@ aci_match_set (
                cookie.conn = conn;
                cookie.op = op;
                rc = (slap_set_filter(aci_set_gather, &cookie, &set,
-                       op->o_ndn.bv_val, e->e_ndn, NULL) > 0);
+                       &op->o_ndn, &e->e_nname, NULL) > 0);
                ch_free(set.bv_val);
        }
        return(rc);
index c2b4c257f3234bd3eb73247d667f9cec3be0a7b0..b223ca3250243a24672df9c8bddfaa4922e6f959 100644 (file)
@@ -141,7 +141,7 @@ set_chase (SLAP_SET_GATHER gatherer,
                return(NULL);
        }
        for (i = 0; set[i].bv_val; i++) {
-               vals = (gatherer)(cookie, set[i].bv_val, &bv);
+               vals = (gatherer)(cookie, &set[i], &bv);
                if (vals != NULL)
                        nset = set_join(nset, '|', vals);
        }
@@ -149,7 +149,7 @@ set_chase (SLAP_SET_GATHER gatherer,
 
        if (closure) {
                for (i = 0; nset[i].bv_val; i++) {
-                       vals = (gatherer)(cookie, nset[i].bv_val, &bv);
+                       vals = (gatherer)(cookie, &nset[i], &bv);
                        if (vals != NULL) {
                                nset = set_join(nset, '|', vals);
                                if (nset == NULL)
@@ -194,7 +194,7 @@ set_samedn (char *dn1, char *dn2)
 int
 slap_set_filter (SLAP_SET_GATHER gatherer,
        void *cookie, struct berval *fbv,
-       char *user, char *this, BerVarray *results)
+       struct berval *user, struct berval *this, BerVarray *results)
 {
 #define IS_SET(x)      ( (long)(x) >= 256 )
 #define IS_OP(x)       ( (long)(x) < 256 )
@@ -331,7 +331,7 @@ slap_set_filter (SLAP_SET_GATHER gatherer,
                                set = ch_calloc(2, sizeof(struct berval));
                                if (set == NULL)
                                        SF_ERROR(memory);
-                               ber_str2bv( this, 0, 1, set );
+                               ber_dupbv( set, this );
                                if (set->bv_val == NULL)
                                        SF_ERROR(memory);
                        } else if (len == 4
@@ -342,7 +342,7 @@ slap_set_filter (SLAP_SET_GATHER gatherer,
                                set = ch_calloc(2, sizeof(struct berval));
                                if (set == NULL)
                                        SF_ERROR(memory);
-                               ber_str2bv( user, 0, 1, set );
+                               ber_dupbv( set, user );
                                if (set->bv_val == NULL)
                                        SF_ERROR(memory);
                        } else if (SF_TOP() != (void *)'/') {
index 2b326ae85da55dbeeac8c016bb2125cfac4b3e80..569efa90b60234d9fa740b1a0a5fbe69cb6f01ce 100644 (file)
@@ -17,7 +17,7 @@ LDAP_BEGIN_DECL
  * that is used by set_filter.
  */
 typedef BerVarray (SLAP_SET_GATHER)(
-       void *cookie, char *name, struct berval *attr);
+       void *cookie, struct berval *name, struct berval *attr);
 
 LDAP_SLAPD_F (long) slap_set_size (BerVarray set);
 LDAP_SLAPD_F (void) slap_set_dispose (BerVarray set);
@@ -25,7 +25,7 @@ LDAP_SLAPD_F (void) slap_set_dispose (BerVarray set);
 LDAP_SLAPD_F (int)
 slap_set_filter (SLAP_SET_GATHER gatherer,
        void *cookie, struct berval *filter,
-       char *user, char *this, BerVarray *results);
+       struct berval *user, struct berval *this, BerVarray *results);
 
 LDAP_END_DECL