summaryrefslogtreecommitdiffstats
path: root/ipa_server/plugins/b_ldap.py
diff options
context:
space:
mode:
authorJason Gerard DeRose <jderose@redhat.com>2008-12-20 15:00:00 -0700
committerJason Gerard DeRose <jderose@redhat.com>2008-12-20 15:00:00 -0700
commit6fdf5d1e7bb2171646e17cac835be54a4104b5ac (patch)
tree85c084784809b3592d109a116792a0621130146f /ipa_server/plugins/b_ldap.py
parent9a69adeef001ddd0c55513271cf02eedc0a9aef8 (diff)
parentc025ed6404e147f19b71b398e920fd1b3a05452a (diff)
downloadfreeipa.git-6fdf5d1e7bb2171646e17cac835be54a4104b5ac.tar.gz
freeipa.git-6fdf5d1e7bb2171646e17cac835be54a4104b5ac.tar.xz
freeipa.git-6fdf5d1e7bb2171646e17cac835be54a4104b5ac.zip
Merge branch 'master' of git://git.engineering.redhat.com/users/rcritten/freeipa2
Diffstat (limited to 'ipa_server/plugins/b_ldap.py')
-rw-r--r--ipa_server/plugins/b_ldap.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/ipa_server/plugins/b_ldap.py b/ipa_server/plugins/b_ldap.py
index 862de1d8..8042474f 100644
--- a/ipa_server/plugins/b_ldap.py
+++ b/ipa_server/plugins/b_ldap.py
@@ -267,12 +267,15 @@ class ldap(CrudBackend):
objectclass = kw.get('objectclass')
sfilter = kw.get('filter')
attributes = kw.get('attributes')
+ base = kw.get('base')
if attributes:
del kw['attributes']
else:
attributes = ['*']
if objectclass:
del kw['objectclass']
+ if base:
+ del kw['base']
if sfilter:
del kw['filter']
(exact_match_filter, partial_match_filter) = self._generate_search_filters(**kw)
@@ -283,7 +286,10 @@ class ldap(CrudBackend):
exact_match_filter = "(%s%s)" % (sfilter, exact_match_filter)
partial_match_filter = "(%s%s)" % (sfilter, partial_match_filter)
- search_base = "%s, %s" % (self.api.env.container_accounts, self.api.env.basedn)
+ if not base:
+ base = self.api.env.container_accounts
+
+ search_base = "%s, %s" % (base, self.api.env.basedn)
try:
exact_results = servercore.search(search_base,
exact_match_filter, attributes)