summaryrefslogtreecommitdiffstats
path: root/ipa-python/rpcclient.py
diff options
context:
space:
mode:
Diffstat (limited to 'ipa-python/rpcclient.py')
-rw-r--r--ipa-python/rpcclient.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/ipa-python/rpcclient.py b/ipa-python/rpcclient.py
index ae26d707..eae68ee3 100644
--- a/ipa-python/rpcclient.py
+++ b/ipa-python/rpcclient.py
@@ -118,6 +118,20 @@ class RPCClient:
return ipautil.unwrap_binary_data(result)
+ def update_entry(self,oldentry,newentry):
+ """Update an existing entry. oldentry and newentry are dicts of attributes"""
+ server = self.setup_server()
+
+ try:
+ result = server.update_entry(ipautil.wrap_binary_data(oldentry),
+ ipautil.wrap_binary_data(newentry))
+ except xmlrpclib.Fault, fault:
+ raise ipaerror.gen_exception(fault.faultCode, fault.faultString)
+ except socket.error, (value, msg):
+ raise xmlrpclib.Fault(value, msg)
+
+ return ipautil.unwrap_binary_data(result)
+
# User support