mirror of
https://git.openldap.org/openldap/openldap.git
synced 2024-12-21 03:10:25 +08:00
Every quick mod to use a struct berval for e_dn/e_ndn. No bv_len yet.
This commit is contained in:
parent
70194f9ad6
commit
f6085d3f82
@ -26,7 +26,7 @@ bdb_attribute(
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
Entry *target,
|
||||
const char *e_ndn,
|
||||
const char *entry_ndn,
|
||||
AttributeDescription *entry_at,
|
||||
struct berval ***vals )
|
||||
{
|
||||
@ -39,7 +39,7 @@ bdb_attribute(
|
||||
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
"bdb_attribute: gr dn: \"%s\"\n", e_ndn ));
|
||||
"bdb_attribute: gr dn: \"%s\"\n", entry_ndn ));
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
"bdb_attribute: at: \"%s\"\n", entry_at_name));
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
@ -48,7 +48,7 @@ bdb_attribute(
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> bdb_attribute: gr dn: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> bdb_attribute: at: \"%s\"\n",
|
||||
entry_at_name, 0, 0 );
|
||||
@ -58,23 +58,23 @@ bdb_attribute(
|
||||
target ? target->e_ndn : "", 0, 0 );
|
||||
#endif
|
||||
|
||||
if (target != NULL && strcmp(target->e_ndn, e_ndn) == 0) {
|
||||
if (target != NULL && strcmp(target->e_ndn, entry_ndn) == 0) {
|
||||
/* we already have a LOCKED copy of the entry */
|
||||
e = target;
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_DETAIL1,
|
||||
"bdb_attribute: target is LOCKED (%s)\n",
|
||||
e_ndn ));
|
||||
entry_ndn ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> bdb_attribute: target is entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
|
||||
|
||||
} else {
|
||||
/* can we find entry */
|
||||
rc = bdb_dn2entry( be, NULL, e_ndn, &e, NULL, 0 );
|
||||
rc = bdb_dn2entry( be, NULL, entry_ndn, &e, NULL, 0 );
|
||||
switch( rc ) {
|
||||
case DB_NOTFOUND:
|
||||
case 0:
|
||||
@ -86,11 +86,11 @@ bdb_attribute(
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_INFO,
|
||||
"bdb_attribute: cannot find entry (%s)\n",
|
||||
e_ndn ));
|
||||
entry_ndn ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ACL,
|
||||
"=> bdb_attribute: cannot find entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
return LDAP_NO_SUCH_OBJECT;
|
||||
}
|
||||
@ -101,7 +101,7 @@ bdb_attribute(
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ACL,
|
||||
"=> bdb_attribute: found entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -45,7 +45,7 @@ void bdb_attr_index_destroy LDAP_P(( Avlnode *tree ));
|
||||
|
||||
int
|
||||
bdb_attribute LDAP_P(( Backend *be, Connection *conn, Operation *op,
|
||||
Entry *target, const char *e_ndn, AttributeDescription *entry_at,
|
||||
Entry *target, const char *entry_ndn, AttributeDescription *entry_at,
|
||||
struct berval ***vals ));
|
||||
|
||||
/*
|
||||
|
@ -26,7 +26,7 @@ ldbm_back_attribute(
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
Entry *target,
|
||||
const char *e_ndn,
|
||||
const char *entry_ndn,
|
||||
AttributeDescription *entry_at,
|
||||
struct berval ***vals )
|
||||
{
|
||||
@ -39,16 +39,16 @@ ldbm_back_attribute(
|
||||
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
"ldbm_back_attribute: gr dn: \"%s\"\n", e_ndn ));
|
||||
"ldbm_back_attribute: gr dn: \"%s\"\n", entry_ndn ));
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
"ldbm_back_attribute: at: \"%s\"\n", entry_at_name));
|
||||
"ldbm_back_attribute: at: \"%s\"\n", entry_at_name));
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_ARGS,
|
||||
"ldbm_back_attribute: tr dn: \"%s\"\n",
|
||||
target ? target->e_ndn : "" ));
|
||||
"ldbm_back_attribute: tr dn: \"%s\"\n",
|
||||
target ? target->e_ndn : "" ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> ldbm_back_attribute: gr dn: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> ldbm_back_attribute: at: \"%s\"\n",
|
||||
entry_at_name, 0, 0 );
|
||||
@ -58,31 +58,31 @@ ldbm_back_attribute(
|
||||
target ? target->e_ndn : "", 0, 0 );
|
||||
#endif
|
||||
|
||||
if (target != NULL && strcmp(target->e_ndn, e_ndn) == 0) {
|
||||
if (target != NULL && strcmp(target->e_ndn, entry_ndn) == 0) {
|
||||
/* we already have a LOCKED copy of the entry */
|
||||
e = target;
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_DETAIL1,
|
||||
"ldbm_back_attribute: target is LOCKED (%s)\n",
|
||||
e_ndn ));
|
||||
"ldbm_back_attribute: target is LOCKED (%s)\n",
|
||||
entry_ndn ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ARGS,
|
||||
"=> ldbm_back_attribute: target is entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
|
||||
|
||||
} else {
|
||||
/* can we find entry with reader lock */
|
||||
if ((e = dn2entry_r(be, e_ndn, NULL )) == NULL) {
|
||||
if ((e = dn2entry_r(be, entry_ndn, NULL )) == NULL) {
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_INFO,
|
||||
"ldbm_back_attribute: cannot find entry (%s)\n",
|
||||
e_ndn ));
|
||||
"ldbm_back_attribute: cannot find entry (%s)\n",
|
||||
entry_ndn ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ACL,
|
||||
"=> ldbm_back_attribute: cannot find entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
|
||||
return LDAP_NO_SUCH_OBJECT;
|
||||
@ -90,11 +90,11 @@ ldbm_back_attribute(
|
||||
|
||||
#ifdef NEW_LOGGING
|
||||
LDAP_LOG(( "backend", LDAP_LEVEL_DETAIL1,
|
||||
"ldbm_back_attribute: found entry (%s)\n", e_ndn ));
|
||||
"ldbm_back_attribute: found entry (%s)\n", entry_ndn ));
|
||||
#else
|
||||
Debug( LDAP_DEBUG_ACL,
|
||||
"=> ldbm_back_attribute: found entry: \"%s\"\n",
|
||||
e_ndn, 0, 0 );
|
||||
entry_ndn, 0, 0 );
|
||||
#endif
|
||||
|
||||
}
|
||||
|
@ -84,7 +84,7 @@ extern int ldbm_back_group LDAP_P(( BackendDB *bd,
|
||||
extern int ldbm_back_attribute LDAP_P(( BackendDB *bd,
|
||||
Connection *conn, Operation *op,
|
||||
Entry *target,
|
||||
const char* e_ndn,
|
||||
const char* entry_ndn,
|
||||
AttributeDescription* entry_at,
|
||||
struct berval ***vals));
|
||||
|
||||
|
@ -1057,15 +1057,17 @@ backend_attribute(
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
Entry *target,
|
||||
const char *e_ndn,
|
||||
const char *entry_ndn,
|
||||
AttributeDescription *entry_at,
|
||||
struct berval ***vals
|
||||
)
|
||||
{
|
||||
if( target == NULL || strcmp( target->e_ndn, e_ndn ) != 0 ) {
|
||||
if( target == NULL ||
|
||||
strcmp( target->e_ndn, entry_ndn ) != 0 )
|
||||
{
|
||||
/* we won't attempt to send it to a different backend */
|
||||
|
||||
be = select_backend(e_ndn, 0,
|
||||
be = select_backend(entry_ndn, 0,
|
||||
(be->be_glueflags & SLAP_GLUE_INSTANCE));
|
||||
|
||||
if (be == NULL) {
|
||||
@ -1074,7 +1076,7 @@ backend_attribute(
|
||||
}
|
||||
|
||||
if( be->be_attribute ) {
|
||||
return be->be_attribute( be, conn, op, target, e_ndn,
|
||||
return be->be_attribute( be, conn, op, target, entry_ndn,
|
||||
entry_at, vals );
|
||||
}
|
||||
|
||||
|
@ -1078,21 +1078,22 @@ rdn_validate( const char * rdn )
|
||||
|
||||
void
|
||||
build_new_dn( char ** new_dn,
|
||||
const char *e_dn,
|
||||
const char * p_dn,
|
||||
const char * entry_dn,
|
||||
const char * parent_dn,
|
||||
const char * newrdn )
|
||||
{
|
||||
|
||||
if ( p_dn == NULL ) {
|
||||
if ( parent_dn == NULL ) {
|
||||
*new_dn = ch_strdup( newrdn );
|
||||
return;
|
||||
}
|
||||
|
||||
*new_dn = (char *) ch_malloc( strlen( p_dn ) + strlen( newrdn ) + 3 );
|
||||
*new_dn = (char *) ch_malloc(
|
||||
strlen( parent_dn ) + strlen( newrdn ) + 3 );
|
||||
|
||||
strcpy( *new_dn, newrdn );
|
||||
strcat( *new_dn, "," );
|
||||
strcat( *new_dn, p_dn );
|
||||
strcat( *new_dn, parent_dn );
|
||||
}
|
||||
|
||||
#endif /* SLAP_DN_MIGRATION */
|
||||
|
@ -201,7 +201,7 @@ LDAP_SLAPD_F (int) backend_attribute LDAP_P((BackendDB *be,
|
||||
Connection *conn,
|
||||
Operation *op,
|
||||
Entry *target,
|
||||
const char *e_ndn,
|
||||
const char *entry_ndn,
|
||||
AttributeDescription *entry_at,
|
||||
struct berval ***vals
|
||||
));
|
||||
@ -365,8 +365,8 @@ LDAP_SLAPD_F (char *) rdn_attr_type LDAP_P(( const char * rdn ));
|
||||
LDAP_SLAPD_F (int) rdn_attrs LDAP_P(( const char * rdn, char ***ptypes, char ***pvals ));
|
||||
|
||||
LDAP_SLAPD_F (void) build_new_dn LDAP_P(( char ** new_dn,
|
||||
const char *e_dn,
|
||||
const char * p_dn,
|
||||
const char * entry_dn,
|
||||
const char * parent_dn,
|
||||
const char * newrdn ));
|
||||
#endif
|
||||
|
||||
|
@ -637,8 +637,13 @@ typedef struct slap_entry {
|
||||
*/
|
||||
ID e_id;
|
||||
|
||||
char *e_dn; /* DN of this entry */
|
||||
char *e_ndn; /* normalized DN of this entry */
|
||||
struct berval e_name; /* name (DN) of this entry */
|
||||
struct berval e_nname; /* normalized name (DN) of this entry */
|
||||
|
||||
/* for migration purposes */
|
||||
#define e_dn e_name.bv_val
|
||||
#define e_ndn e_name.bv_val
|
||||
|
||||
Attribute *e_attrs; /* list of attributes + values */
|
||||
|
||||
/* for use by the backend for any purpose */
|
||||
|
Loading…
Reference in New Issue
Block a user