X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fad.c;h=c65934f1541835460556a0eb25cebf432d35b8a3;hb=6e602b549420181bfe6ad55d863963a5b11544d1;hp=7d83de93303529d6380d7bb2070e3d15297f05a9;hpb=e374c580f2db2988ef777fb4c0b01cd66518a770;p=openldap diff --git a/servers/slapd/ad.c b/servers/slapd/ad.c index 7d83de9330..c65934f154 100644 --- a/servers/slapd/ad.c +++ b/servers/slapd/ad.c @@ -222,10 +222,10 @@ int slap_bv2ad( } else if ( rc > 0 || ( rc == 0 && (unsigned)optlen > tags[i].bv_len )) { - AC_MEMCPY( &tags[i+1], &tags[i], - (ntags-i)*sizeof(struct berval) ); - tags[i].bv_val = opt; - tags[i].bv_len = optlen; + AC_MEMCPY( &tags[i+2], &tags[i+1], + (ntags-i-1)*sizeof(struct berval) ); + tags[i+1].bv_val = opt; + tags[i+1].bv_len = optlen; goto done; } } @@ -518,6 +518,7 @@ int ad_inlist( &attrs->an_desc->ad_tags ) ) { return 1; } + continue; } /*