#include "sets.h"
#include "lber_pvt.h"
+#define ACL_BUF_SIZE 1024 /* use most appropriate size */
+
/*
* speed up compares
if ( b->a_dn_expand ) {
struct berval bv;
- char buf[1024];
+ char buf[ACL_BUF_SIZE];
bv.bv_len = sizeof( buf ) - 1;
bv.bv_val = buf;
continue;
}
} else {
- char buf[1024];
+ char buf[ACL_BUF_SIZE];
struct berval cmp = conn->c_peer_domain;
struct berval pat = b->a_domain_pat;
}
if ( b->a_group_pat.bv_len ) {
- char buf[1024];
+ char buf[ACL_BUF_SIZE];
struct berval bv;
struct berval ndn = { 0, NULL };
int rc;
regmatch_t *matches
)
{
- struct berval bv;
struct berval subjdn;
struct berval grpoc;
struct berval grpat;
grp_oc = oc_bvfind( &grpoc );
if (grp_oc != NULL && grp_ad != NULL ) {
- struct berval ndn;
- bv.bv_val = (char *)ch_malloc(1024);
- bv.bv_len = 1024;
+ char buf[ACL_BUF_SIZE];
+ struct berval bv = { sizeof(buf), buf }, ndn;
string_expand(&bv, &subjdn, e->e_ndn, matches);
if ( dnNormalize2(NULL, &bv, &ndn) == LDAP_SUCCESS ) {
rc = (backend_group(be, conn, op, e, &ndn, &op->o_ndn, grp_oc, grp_ad) == 0);
free( ndn.bv_val );
}
- ch_free(bv.bv_val);
}
done: