summaryrefslogtreecommitdiffstats
path: root/ipalib/errors.py
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2010-12-13 09:53:29 -0500
committerRob Crittenden <rcritten@redhat.com>2010-12-13 09:53:29 -0500
commitba8d21f5ae3d4133032c635dad77127cb72ab1bf (patch)
treef12e55142e1a796c895a4f6f23249c07f4e47af3 /ipalib/errors.py
parente8157f262835ce7232907a43a8d1dc4d4e6ea10d (diff)
downloadfreeipa-ba8d21f5ae3d4133032c635dad77127cb72ab1bf.tar.gz
freeipa-ba8d21f5ae3d4133032c635dad77127cb72ab1bf.tar.xz
freeipa-ba8d21f5ae3d4133032c635dad77127cb72ab1bf.zip
Check for existence of the group when adding a user.
The Managed Entries plugin will allow a user to be added even if a group of the same name exists. This would leave the user without a private group. We need to check for both the user and the group so we can do 1 of 3 things: - throw an error that the group exists (but not the user) - throw an error that the user exists (and the group) - allow the uesr to be added ticket 567
Diffstat (limited to 'ipalib/errors.py')
-rw-r--r--ipalib/errors.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/ipalib/errors.py b/ipalib/errors.py
index 49d6343a..8e119837 100644
--- a/ipalib/errors.py
+++ b/ipalib/errors.py
@@ -1110,6 +1110,21 @@ class ManagedPolicyError(ExecutionError):
errno = 4021
format = _('A managed group cannot have a password policy.')
+class ManagedGroupExistsError(ExecutionError):
+ """
+ **4024** Raised when adding a user and its managed group exists
+
+ For example:
+
+ >>> raise ManagedGroupExistsError(group=u'engineering')
+ Traceback (most recent call last):
+ ...
+ ManagedGroupExistsError: Unable to create private group. A group 'engineering' already exists.'
+ """
+
+ errno = 4024
+ format = _('Unable to create private group. Group \'%(group)s\' already exists.')
+
class BuiltinError(ExecutionError):
"""
**4100** Base class for builtin execution errors (*4100 - 4199*).