X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-meta%2Fsuffixmassage.c;h=2910493178d8d22b24603766e7498fb74b3359a7;hb=ce3c25aea700b4e206d952e0145d3641717421d9;hp=94409125227f55c93335f4297a1a94d88a1df49f;hpb=642b788fb26694a3eef2bc7cc212186bd1cf3651;p=openldap diff --git a/servers/slapd/back-meta/suffixmassage.c b/servers/slapd/back-meta/suffixmassage.c index 9440912522..2910493178 100644 --- a/servers/slapd/back-meta/suffixmassage.c +++ b/servers/slapd/back-meta/suffixmassage.c @@ -2,7 +2,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 2003-2005 The OpenLDAP Foundation. + * Copyright 2003-2007 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -68,7 +68,7 @@ ldap_back_dn_massage( int rc = 0; static char *dmy = ""; - switch ( rewrite_session( dc->rwmap->rwm_rw, dc->ctx, + switch ( rewrite_session( dc->target->mt_rwmap.rwm_rw, dc->ctx, ( dn->bv_val ? dn->bv_val : dmy ), dc->conn, &res->bv_val ) ) { @@ -126,14 +126,14 @@ ldap_back_dn_massage( int i, src, dst; struct berval pretty = {0,NULL}, *dn = odn; - assert( res ); + assert( res != NULL ); if ( dn == NULL ) { res->bv_val = NULL; res->bv_len = 0; return 0; } - if ( dc->rwmap == NULL || dc->rwmap->rwm_suffix_massage == NULL ) { + if ( dc->target->mt_rwmap.rwm_suffix_massage == NULL ) { *res = *dn; return 0; } @@ -152,9 +152,9 @@ ldap_back_dn_massage( } for ( i = 0; - dc->rwmap->rwm_suffix_massage[i].bv_val != NULL; + dc->target->mt_rwmap.rwm_suffix_massage[i].bv_val != NULL; i += 4 ) { - int aliasLength = dc->rwmap->rwm_suffix_massage[i+src].bv_len; + int aliasLength = dc->target->mt_rwmap.rwm_suffix_massage[i+src].bv_len; int diff = dn->bv_len - aliasLength; if ( diff < 0 ) { @@ -166,11 +166,11 @@ ldap_back_dn_massage( /* At a DN Separator */ } - if ( !strcmp( dc->rwmap->rwm_suffix_massage[i+src].bv_val, &dn->bv_val[diff] ) ) { - res->bv_len = diff + dc->rwmap->rwm_suffix_massage[i+dst].bv_len; + if ( !strcmp( dc->target->mt_rwmap.rwm_suffix_massage[i+src].bv_val, &dn->bv_val[diff] ) ) { + res->bv_len = diff + dc->target->mt_rwmap.rwm_suffix_massage[i+dst].bv_len; res->bv_val = ch_malloc( res->bv_len + 1 ); strncpy( res->bv_val, dn->bv_val, diff ); - strcpy( &res->bv_val[diff], dc->rwmap->rwm_suffix_massage[i+dst].bv_val ); + strcpy( &res->bv_val[diff], dc->target->mt_rwmap.rwm_suffix_massage[i+dst].bv_val ); Debug( LDAP_DEBUG_ARGS, "ldap_back_dn_massage:" " converted \"%s\" to \"%s\"\n",