summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorelijah <elijah@riseup.net>2016-10-04 11:06:13 -0700
committerelijah <elijah@riseup.net>2016-10-04 11:06:13 -0700
commitad9415a5e2885e940e99a07a9d6cdb2b1600e1bd (patch)
tree50ade4c4a607c7f7bea55db3ada3618f2e401473
parentb13cbe4730a986a3b60c4c70ce2b5f16da8a4feb (diff)
[bug] fix Tor hidden service key generation
-rw-r--r--lib/leap_cli/macros/keys.rb8
-rw-r--r--provider_base/services/tor.json2
2 files changed, 5 insertions, 5 deletions
diff --git a/lib/leap_cli/macros/keys.rb b/lib/leap_cli/macros/keys.rb
index 9dd9b34f..9cc01fe7 100644
--- a/lib/leap_cli/macros/keys.rb
+++ b/lib/leap_cli/macros/keys.rb
@@ -29,7 +29,7 @@ module LeapCli
# generating key if it is missing
#
def tor_public_key_path(path_name, key_type)
- file_path(path_name) { generate_tor_key(key_type) }
+ remote_file_path(path_name) { generate_tor_key(key_type) }
end
#
@@ -37,7 +37,7 @@ module LeapCli
# generating key if it is missing
#
def tor_private_key_path(path_name, key_type)
- file_path(path_name) { generate_tor_key(key_type) }
+ remote_file_path(path_name) { generate_tor_key(key_type) }
end
#
@@ -55,7 +55,7 @@ module LeapCli
require 'base32'
require 'base64'
require 'openssl'
- path = Path.find_file([path_name, self.name])
+ path = Path.named_path([path_name, self.name])
if path && File.exist?(path)
public_key_str = File.readlines(path).grep(/^[^-]/).join
public_key = Base64.decode64(public_key_str)
@@ -63,7 +63,7 @@ module LeapCli
sha1sum = Digest::SHA1.new.digest(public_key)
Base32.encode(sha1sum.slice(0,10)).downcase
else
- LeapCli.log :warning, 'Tor public key file "%s" does not exist' % tor_public_key_path
+ LeapCli.log :warning, 'Tor public key file "%s" does not exist' % path
end
end
diff --git a/provider_base/services/tor.json b/provider_base/services/tor.json
index 55d3d2ee..e80310fe 100644
--- a/provider_base/services/tor.json
+++ b/provider_base/services/tor.json
@@ -9,7 +9,7 @@
"key_type": "RSA",
"public_key": "= tor_public_key_path(:node_tor_pub_key, tor.hidden_service.key_type) if tor.hidden_service.active",
"private_key": "= tor_private_key_path(:node_tor_priv_key, tor.hidden_service.key_type) if tor.hidden_service.active",
- "address": "= onion_address(:node_tor_pub_key) if tor.hidden_service.active"
+ "address": "=> tor.hidden_service.active && onion_address(:node_tor_pub_key)"
}
}
}