add ipa-findradiusclient search

This commit is contained in:
John Dennis
2007-11-14 15:32:08 -05:00
parent c24da12fe1
commit c4dbe6433d
6 changed files with 157 additions and 0 deletions

View File

@@ -355,3 +355,14 @@ class IPAClient:
def delete_radius_client(self,ip_addr):
return self.transport.delete_radius_client(ip_addr)
def find_radius_clients(self, criteria, sattrs=None, searchlimit=0, timelimit=-1):
result = self.transport.find_radius_clients(criteria, sattrs, searchlimit, timelimit)
counter = result[0]
users = [counter]
for attrs in result[1:]:
if attrs is not None:
users.append(user.User(attrs))
return users

View File

@@ -645,3 +645,17 @@ class RPCClient:
return ipautil.unwrap_binary_data(result)
def find_radius_clients(self, criteria, sattrs=None, searchlimit=0, timelimit=-1):
server = self.setup_server()
try:
# None values are not allowed in XML-RPC
if sattrs is None:
sattrs = "__NONE__"
result = server.find_radius_clients(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)