diff options
author | rcritten@redhat.com <rcritten@redhat.com> | 2007-09-11 02:48:53 -0400 |
---|---|---|
committer | rcritten@redhat.com <rcritten@redhat.com> | 2007-09-11 02:48:53 -0400 |
commit | ed6ab17c9c703edb43c92a3205c5536771ce4d4f (patch) | |
tree | af34ee5fdda2896a180ac332b0db4d9e57d2533d /ipa-python | |
parent | 2ca655980b623a4a65a635a1467c0db90f421f25 (diff) | |
download | freeipa-ed6ab17c9c703edb43c92a3205c5536771ce4d4f.tar.gz freeipa-ed6ab17c9c703edb43c92a3205c5536771ce4d4f.tar.xz freeipa-ed6ab17c9c703edb43c92a3205c5536771ce4d4f.zip |
Add function to allow user's to set/reset their kerberos password
Remove some unused calls to retrieve the current realm
Diffstat (limited to 'ipa-python')
-rw-r--r-- | ipa-python/ipaclient.py | 17 | ||||
-rw-r--r-- | ipa-python/rpcclient.py | 16 |
2 files changed, 23 insertions, 10 deletions
diff --git a/ipa-python/ipaclient.py b/ipa-python/ipaclient.py index fcfb29f1..86f4471b 100644 --- a/ipa-python/ipaclient.py +++ b/ipa-python/ipaclient.py @@ -65,8 +65,6 @@ class IPAClient: def add_user(self,user,user_container=None): """Add a user. user is a ipa.user.User object""" - realm = config.config.get_realm() - user_dict = user.toDict() # dn is set on the server-side @@ -110,24 +108,25 @@ class IPAClient: def update_user(self,user): """Update a user entry.""" - realm = config.config.get_realm() - result = self.transport.update_user(user.origDataDict(), user.toDict()) return result def delete_user(self,uid): """Delete a user entry.""" - realm = config.config.get_realm() - result = self.transport.delete_user(uid) return result + def modifyPassword(self,uid,oldpass,newpass): + """Modify a user's password""" + + result = self.transport.modifyPassword(uid,oldpass,newpass) + + return result + def mark_user_deleted(self,uid): """Set a user as inactive by uid.""" - realm = config.config.get_realm() - result = self.transport.mark_user_deleted(uid) return result @@ -150,8 +149,6 @@ class IPAClient: def add_group(self,group,group_container=None): """Add a group. group is a ipa.group.Group object""" - realm = config.config.get_realm() - group_dict = group.toDict() # dn is set on the server-side diff --git a/ipa-python/rpcclient.py b/ipa-python/rpcclient.py index e0d6e2ee..bbf2745e 100644 --- a/ipa-python/rpcclient.py +++ b/ipa-python/rpcclient.py @@ -195,6 +195,22 @@ class RPCClient: return result + def modifyPassword(self,uid,oldpass,newpass): + """Modify a user's password""" + server = self.setup_server() + + if oldpass is None: + oldpass = "__NONE__" + + try: + result = server.modifyPassword(uid,oldpass,newpass) + except xmlrpclib.Fault, fault: + raise ipaerror.gen_exception(fault.faultCode, fault.faultString) + except socket.error, (value, msg): + raise xmlrpclib.Fault(value, msg) + + return result + def mark_user_deleted(self,uid): """Mark a user as deleted/inactive""" server = self.setup_server() |