diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-12-20 15:00:00 -0700 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-12-20 15:00:00 -0700 |
commit | 6fdf5d1e7bb2171646e17cac835be54a4104b5ac (patch) | |
tree | 85c084784809b3592d109a116792a0621130146f /ipa_server/ipaldap.py | |
parent | 9a69adeef001ddd0c55513271cf02eedc0a9aef8 (diff) | |
parent | c025ed6404e147f19b71b398e920fd1b3a05452a (diff) | |
download | freeipa.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/ipaldap.py')
-rw-r--r-- | ipa_server/ipaldap.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/ipa_server/ipaldap.py b/ipa_server/ipaldap.py index 7cfd6c41..f520475e 100644 --- a/ipa_server/ipaldap.py +++ b/ipa_server/ipaldap.py @@ -375,7 +375,7 @@ class IPAdmin(SimpleLDAPObject): except ldap.ALREADY_EXISTS, e: raise errors.DuplicateEntry, "Entry already exists" except ldap.LDAPError, e: - raise e + raise DatabaseError, e return True def updateRDN(self, dn, newrdn): @@ -392,7 +392,7 @@ class IPAdmin(SimpleLDAPObject): self.set_option(ldap.OPT_SERVER_CONTROLS, sctrl) self.modrdn_s(dn, newrdn, delold=1) except ldap.LDAPError, e: - raise e + raise DatabaseError, e return True def updateEntry(self,dn,oldentry,newentry): @@ -474,7 +474,7 @@ class IPAdmin(SimpleLDAPObject): self.set_option(ldap.OPT_SERVER_CONTROLS, sctrl) self.modify_s(dn, modlist) except ldap.LDAPError, e: - raise e + raise DatabaseError, e return True def deleteEntry(self,*args): @@ -486,8 +486,10 @@ class IPAdmin(SimpleLDAPObject): if sctrl is not None: self.set_option(ldap.OPT_SERVER_CONTROLS, sctrl) self.delete_s(*args) + except ldap.INSUFFICIENT_ACCESS, e: + raise errors.InsufficientAccess, e except ldap.LDAPError, e: - raise e + raise errors.DatabaseError, e return True def modifyPassword(self,dn,oldpass,newpass): @@ -533,7 +535,10 @@ def notfound(args): if len(args) > 2: searchfilter = args[2] try: + # Python re doesn't do paren counting so the string could + # have a trailing paren "foo)" target = re.match(r'\(.*=(.*)\)', searchfilter).group(1) + target = target.replace(")","") except: target = searchfilter return "%s not found" % str(target) |