From b0b2917bb5f05f2d61ecabd8203cff5eb6b87c7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=B4me=20Bernigaud?= Date: Thu, 13 Aug 2015 17:06:18 +0200 Subject: [PATCH] Adding HTTPS options to argonaut client --- argonaut-common/Argonaut/Libraries/Common.pm | 3 +++ argonaut-server/Argonaut/Server/Modules/Argonaut.pm | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/argonaut-common/Argonaut/Libraries/Common.pm b/argonaut-common/Argonaut/Libraries/Common.pm index 682b8e3..1fa5a9e 100644 --- a/argonaut-common/Argonaut/Libraries/Common.pm +++ b/argonaut-common/Argonaut/Libraries/Common.pm @@ -738,6 +738,9 @@ sub argonaut_get_client_settings { { 'port' => "argonautClientPort", 'protocol' => "argonautClientProtocol", + 'keyfile' => "argonautClientKeyPath", + 'certfile' => "argonautClientCertPath", + 'certcn' => "argonautClientCertCN", 'interface' => "argonautClientWakeOnLanInterface", 'logdir' => "argonautClientLogDir", 'taskidfile' => "argonautTaskIdFile" diff --git a/argonaut-server/Argonaut/Server/Modules/Argonaut.pm b/argonaut-server/Argonaut/Server/Modules/Argonaut.pm index 874f999..fb78c0b 100644 --- a/argonaut-server/Argonaut/Server/Modules/Argonaut.pm +++ b/argonaut-server/Argonaut/Server/Modules/Argonaut.pm @@ -68,6 +68,9 @@ sub handle_client { $main::log->debug("[Argonaut] Can't handle client : $@"); return 0; }; + my $server_settings = argonaut_get_server_settings($main::config,$main::server_ip); + $self->{cacertfile} = $server_settings->{cacertfile}; + $self->{token} = $server_settings->{token}; return 1; } @@ -126,9 +129,9 @@ sub launch { # if ip pings, send the request $client->version('1.0'); if ($self->{'protocol'} eq 'https') { if ($client->ua->can('ssl_opts')) { - $client->ua->ssl_opts(verify_hostname => 1,SSL_ca_file => "dummy_ca.crt"); + $client->ua->ssl_opts(verify_hostname => 1,SSL_ca_file => $self->{'cacertfile'}); } - $client->ua->credentials($ip.":".$self->{'port'}, "JSONRPCRealm", "foo", "secret"); + $client->ua->credentials($ip.":".$self->{'port'}, "JSONRPCRealm", "", argonaut_gen_ssha_token($self->{'token'})); } my $callobj = { -- 1.7.10.4