summaryrefslogtreecommitdiffstats
path: root/ipalib/plugins/group.py
diff options
context:
space:
mode:
authorMartin Kosek <mkosek@redhat.com>2013-01-24 11:51:58 +0100
committerRob Crittenden <rcritten@redhat.com>2013-02-20 13:23:58 -0500
commita41e10f0ebdd0be543d36b3bbe795d92974b0a2e (patch)
treed146c13289ca365c9ae6b69bd4e0ea0509cab309 /ipalib/plugins/group.py
parent981c9f10ee43a6ce94a99ac3d743933470f69c63 (diff)
downloadfreeipa-a41e10f0ebdd0be543d36b3bbe795d92974b0a2e.tar.gz
freeipa-a41e10f0ebdd0be543d36b3bbe795d92974b0a2e.tar.xz
freeipa-a41e10f0ebdd0be543d36b3bbe795d92974b0a2e.zip
Avoid internal error when user is not Trust admin
When user tries to perform any action requiring communication with trusted domain, IPA server tries to retrieve a trust secret on his behalf to be able to establish the connection. This happens for example during group-add-member command when external user is being resolved in the AD. When user is not member of Trust admins group, the retrieval crashes and reports internal error. Catch this exception and rather report properly formatted ACIError. Also make sure that this exception is properly processed in group-add-member post callback. https://fedorahosted.org/freeipa/ticket/3390
Diffstat (limited to 'ipalib/plugins/group.py')
-rw-r--r--ipalib/plugins/group.py2
1 files changed, 1 insertions, 1 deletions
diff --git a/ipalib/plugins/group.py b/ipalib/plugins/group.py
index 4994dacb3..06e80931a 100644
--- a/ipalib/plugins/group.py
+++ b/ipalib/plugins/group.py
@@ -387,7 +387,7 @@ class group_add_member(LDAPAddMember):
try:
actual_sid = domain_validator.get_trusted_domain_object_sid(sid)
except errors.PublicError, e:
- failed_sids.append((sid, unicode(e)))
+ failed_sids.append((sid, e.strerror))
else:
sids.append(actual_sid)
restore = []