summaryrefslogtreecommitdiffstats
path: root/ipa-python
diff options
context:
space:
mode:
authorrcritten@redhat.com <rcritten@redhat.com>2007-09-11 02:48:53 -0400
committerrcritten@redhat.com <rcritten@redhat.com>2007-09-11 02:48:53 -0400
commited6ab17c9c703edb43c92a3205c5536771ce4d4f (patch)
treeaf34ee5fdda2896a180ac332b0db4d9e57d2533d /ipa-python
parent2ca655980b623a4a65a635a1467c0db90f421f25 (diff)
downloadfreeipa-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.py17
-rw-r--r--ipa-python/rpcclient.py16
2 files changed, 23 insertions, 10 deletions
diff --git a/ipa-python/ipaclient.py b/ipa-python/ipaclient.py
index fcfb29f1d..86f4471b5 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 e0d6e2ee7..bbf2745ed 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()