summaryrefslogtreecommitdiff
path: root/src/OptionHandlerFactory.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-09-30 00:50:14 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2012-09-30 00:50:14 +0900
commit90515dfa50c676df37f440893de6e344fbfd2cdc (patch)
tree257d86e0614b6eb0ea8e9384af3269d60a53dbbc /src/OptionHandlerFactory.cc
parent4b94ede268ff2ff793b22a0730dcbda09d280618 (diff)
RPC over SSL/TLS transport
To enable RPC over SSL/TLS, specify server certificate and private key using --rpc-certificate and --rpc-private-key options and enable --rpc-secure option. After the encryption is enabled, use https and wss scheme to access RPC server.
Diffstat (limited to 'src/OptionHandlerFactory.cc')
-rw-r--r--src/OptionHandlerFactory.cc27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/OptionHandlerFactory.cc b/src/OptionHandlerFactory.cc
index 3d440741..562f947b 100644
--- a/src/OptionHandlerFactory.cc
+++ b/src/OptionHandlerFactory.cc
@@ -748,6 +748,15 @@ std::vector<OptionHandler*> OptionHandlerFactory::createOptionHandlers()
handlers.push_back(op);
}
{
+ OptionHandler* op(new LocalFilePathOptionHandler
+ (PREF_RPC_CERTIFICATE,
+ TEXT_RPC_CERTIFICATE,
+ NO_DEFAULT_VALUE,
+ false));
+ op->addTag(TAG_RPC);
+ handlers.push_back(op);
+ }
+ {
OptionHandler* op(new BooleanOptionHandler
(PREF_RPC_LISTEN_ALL,
TEXT_RPC_LISTEN_ALL,
@@ -775,6 +784,24 @@ std::vector<OptionHandler*> OptionHandlerFactory::createOptionHandlers()
handlers.push_back(op);
}
{
+ OptionHandler* op(new LocalFilePathOptionHandler
+ (PREF_RPC_PRIVATE_KEY,
+ TEXT_RPC_PRIVATE_KEY,
+ NO_DEFAULT_VALUE,
+ false));
+ op->addTag(TAG_RPC);
+ handlers.push_back(op);
+ }
+ {
+ OptionHandler* op(new BooleanOptionHandler
+ (PREF_RPC_SECURE,
+ TEXT_RPC_SECURE,
+ A2_V_FALSE,
+ OptionHandler::OPT_ARG));
+ op->addTag(TAG_RPC);
+ handlers.push_back(op);
+ }
+ {
OptionHandler* op(new DefaultOptionHandler
(PREF_RPC_USER,
TEXT_RPC_USER));