Repository: thrift Updated Branches: refs/heads/master bf2617ed1 -> 7878f1102
Add [-s[sl]] option for the python service remote to enable communication over an SSL socket connection Project: http://git-wip-us.apache.org/repos/asf/thrift/repo Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/7878f110 Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/7878f110 Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/7878f110 Branch: refs/heads/master Commit: 7878f11024a0d74ee3c0abfbe8fed1a95440f046 Parents: bf2617e Author: David Robakowski <[email protected]> Authored: Sat Jun 28 08:37:21 2014 +0200 Committer: David Robakowski <[email protected]> Committed: Sat Jun 28 08:37:21 2014 +0200 ---------------------------------------------------------------------- compiler/cpp/src/generate/t_py_generator.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/thrift/blob/7878f110/compiler/cpp/src/generate/t_py_generator.cc ---------------------------------------------------------------------- diff --git a/compiler/cpp/src/generate/t_py_generator.cc b/compiler/cpp/src/generate/t_py_generator.cc index 96c15b4..5d23366 100644 --- a/compiler/cpp/src/generate/t_py_generator.cc +++ b/compiler/cpp/src/generate/t_py_generator.cc @@ -1556,6 +1556,7 @@ void t_py_generator::generate_service_remote(t_service* tservice) { "from urlparse import urlparse" << endl << "from thrift.transport import TTransport" << endl << "from thrift.transport import TSocket" << endl << + "from thrift.transport import TSSLSocket" << endl << "from thrift.transport import THttpClient" << endl << "from thrift.protocol import TBinaryProtocol" << endl << endl; @@ -1568,7 +1569,7 @@ void t_py_generator::generate_service_remote(t_service* tservice) { f_remote << "if len(sys.argv) <= 1 or sys.argv[1] == '--help':" << endl << " print('')" << endl << - " print('Usage: ' + sys.argv[0] + ' [-h host[:port]] [-u url] [-f[ramed]] function [arg1 [arg2...]]')" << endl << + " print('Usage: ' + sys.argv[0] + ' [-h host[:port]] [-u url] [-f[ramed]] [-s[sl]] function [arg1 [arg2...]]')" << endl << " print('')" << endl << " print('Functions:')" << endl; for (f_iter = functions.begin(); f_iter != functions.end(); ++f_iter) { @@ -1601,6 +1602,7 @@ void t_py_generator::generate_service_remote(t_service* tservice) { "port = 9090" << endl << "uri = ''" << endl << "framed = False" << endl << + "ssl = False" << endl << "http = False" << endl << "argi = 1" << endl << endl << @@ -1629,13 +1631,17 @@ void t_py_generator::generate_service_remote(t_service* tservice) { " framed = True" << endl << " argi += 1" << endl << endl << + "if sys.argv[argi] == '-s' or sys.argv[argi] == '-ssl':" << endl << + " ssl = True" << endl << + " argi += 1" << endl << + endl << "cmd = sys.argv[argi]" << endl << "args = sys.argv[argi+1:]" << endl << endl << "if http:" << endl << " transport = THttpClient.THttpClient(host, port, uri)" << endl << "else:" << endl << - " socket = TSocket.TSocket(host, port)" << endl << + " socket = TSSLSocket.TSSLSocket(host, port, validate=False) if ssl else TSocket.TSocket(host, port)" << endl << " if framed:" << endl << " transport = TTransport.TFramedTransport(socket)" << endl << " else:" << endl <<
