summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2008-03-31 15:17:39 -0400
committerRob Crittenden <rcritten@redhat.com>2008-03-31 15:17:39 -0400
commit4b4a13c20140b08b075611b93c5edf281a2f30ea (patch)
treeda93add5edcc73e5d6323783a458e3717e85f17d
parent58cfc7ab6861f47a85c8d275579a773a0fd79ea0 (diff)
downloadfreeipa-4b4a13c20140b08b075611b93c5edf281a2f30ea.tar.gz
freeipa-4b4a13c20140b08b075611b93c5edf281a2f30ea.tar.xz
freeipa-4b4a13c20140b08b075611b93c5edf281a2f30ea.zip
Don't try to add the default group to a user when creating the group.
This is done automatically and trying to do so will return an error. 432106
-rw-r--r--ipa-server/ipa-gui/ipagui/subcontrollers/user.py23
1 files changed, 19 insertions, 4 deletions
diff --git a/ipa-server/ipa-gui/ipagui/subcontrollers/user.py b/ipa-server/ipa-gui/ipagui/subcontrollers/user.py
index 1ddc6f074..5baaf3fb9 100644
--- a/ipa-server/ipa-gui/ipagui/subcontrollers/user.py
+++ b/ipa-server/ipa-gui/ipagui/subcontrollers/user.py
@@ -282,11 +282,26 @@ class UserController(IPAController):
try:
dnadds = kw.get('dnadd')
cherrypy.session['uid'] = user_dict.get('uid')
+
+ # remove the default group from failed add
if dnadds != None:
- if not(isinstance(dnadds,list) or isinstance(dnadds,tuple)):
- dnadds = [dnadds]
- failed_adds = client.add_groups_to_user(
- utf8_encode_values(dnadds), user.dn)
+ try:
+ conf=client.get_ipa_config()
+ default_cn="cn=%s" % conf.getValue('ipadefaultprimarygroup')
+
+ if not(isinstance(dnadds,list) or isinstance(dnadds,tuple)):
+ dnadds = [dnadds]
+
+ for d in dnadds:
+ e = d.find(default_cn)
+ if e >= 0:
+ dnadds.remove(d)
+ except:
+ pass
+
+ if len(dnadds) > 0:
+ failed_adds = client.add_groups_to_user(
+ utf8_encode_values(dnadds), user.dn)
kw['dnadd'] = failed_adds
except ipaerror.IPAError, e:
failed_adds = dnadds