diff options
author | Karl MacMillan <kmacmill@redhat.com> | 2007-12-06 17:21:48 -0500 |
---|---|---|
committer | Karl MacMillan <kmacmill@redhat.com> | 2007-12-06 17:21:48 -0500 |
commit | ca118de76cb036acb31eae41970b962497d18838 (patch) | |
tree | 90f82e999620ce23e944564d4a7e3e4f94cd9e72 /ipa-python/rpcclient.py | |
parent | cd93c81a13aefa75c778ea641c67c505a79ac8c1 (diff) | |
parent | 86d80f12ca6c0add3d19e8351633dbcfe3a62e9e (diff) | |
download | freeipa.git-ca118de76cb036acb31eae41970b962497d18838.tar.gz freeipa.git-ca118de76cb036acb31eae41970b962497d18838.tar.xz freeipa.git-ca118de76cb036acb31eae41970b962497d18838.zip |
Merge.
Diffstat (limited to 'ipa-python/rpcclient.py')
-rw-r--r-- | ipa-python/rpcclient.py | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/ipa-python/rpcclient.py b/ipa-python/rpcclient.py index d7ff9740..de32e9be 100644 --- a/ipa-python/rpcclient.py +++ b/ipa-python/rpcclient.py @@ -703,6 +703,24 @@ class RPCClient: return ipautil.unwrap_binary_data(result) + def find_service_principal (self, criteria, sattrs=None, searchlimit=0, timelimit=-1): + """Return a list: counter followed by a Entity object for each host that + matches the criteria. If the results are truncated, counter will + be set to -1""" + + server = self.setup_server() + try: + # None values are not allowed in XML-RPC + if sattrs is None: + sattrs = "__NONE__" + result = server.find_service_principal(criteria, sattrs, searchlimit, timelimit) + 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) + def get_keytab(self, princ_name): server = self.setup_server() |