summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alexander@sulfrian.net>2014-11-30 02:14:57 +0100
committerAlexander Sulfrian <alexander@sulfrian.net>2014-11-30 02:14:57 +0100
commit0a9d6d4d762f0aee8d4cb78647402dccca8cc8b2 (patch)
tree683e528aed015e3361f2748907a8694a0609f2b5
parent85f24252097e162e400f2f96824c5d08bcea4fc2 (diff)
downloadbcfg2-0a9d6d4d762f0aee8d4cb78647402dccca8cc8b2.tar.gz
bcfg2-0a9d6d4d762f0aee8d4cb78647402dccca8cc8b2.tar.bz2
bcfg2-0a9d6d4d762f0aee8d4cb78647402dccca8cc8b2.zip
Server/SSLServer: allow set as return value
xmlrpclib does not handle sets as return values. So we have to convert it to a list before returning it.
-rw-r--r--src/lib/Bcfg2/Server/SSLServer.py4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/lib/Bcfg2/Server/SSLServer.py b/src/lib/Bcfg2/Server/SSLServer.py
index 6ad5b5635..7672b539f 100644
--- a/src/lib/Bcfg2/Server/SSLServer.py
+++ b/src/lib/Bcfg2/Server/SSLServer.py
@@ -43,8 +43,10 @@ class XMLRPCDispatcher(SimpleXMLRPCServer.SimpleXMLRPCDispatcher):
params = (address, ) + params
response = self.instance._dispatch(method, params, self.funcs)
# py3k compatibility
- if type(response) not in [bool, str, list, dict]:
+ if type(response) not in [bool, str, list, dict, set]:
response = (response.decode('utf-8'), )
+ elif type(response) == set:
+ response = (list(response), )
else:
response = (response, )
raw_response = xmlrpclib.dumps(response, methodresponse=True,