diff options
author | Nathan Kinder <nkinder@redhat.com> | 2005-08-25 23:05:20 +0000 |
---|---|---|
committer | Nathan Kinder <nkinder@redhat.com> | 2005-08-25 23:05:20 +0000 |
commit | 3ad44b386d44e7d384573a942aaf5b3059863aaa (patch) | |
tree | 395e2d06bb7736381d6d0b669be4f78d6ddf0b37 | |
parent | 7e856eff9d6985ab61e37ec9293476e4cd26a799 (diff) | |
download | ds-3ad44b386d44e7d384573a942aaf5b3059863aaa.tar.gz ds-3ad44b386d44e7d384573a942aaf5b3059863aaa.tar.xz ds-3ad44b386d44e7d384573a942aaf5b3059863aaa.zip |
164836 - Attribute uniqueness needs to check if the target DN for the incoming operation applies to a subtree before searchnig for a conflict within it.
-rw-r--r-- | ldap/servers/plugins/uiduniq/uid.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ldap/servers/plugins/uiduniq/uid.c b/ldap/servers/plugins/uiduniq/uid.c index 10beab34..b1f0d1da 100644 --- a/ldap/servers/plugins/uiduniq/uid.c +++ b/ldap/servers/plugins/uiduniq/uid.c @@ -383,8 +383,14 @@ searchAllSubtrees(int argc, char *argv[], const char *attrName, */ for(;argc > 0;argc--,argv++) { - result = search(*argv, attrName, attr, values, dn); - if (result) break; + /* + * The DN should already be normalized, so we don't have to + * worry about that here. + */ + if (slapi_dn_issuffix(dn, *argv)) { + result = search(*argv, attrName, attr, values, dn); + if (result) break; + } } return result; } |