From a7599e6308ad6c2ca7b3e19fd3364694e9fd6f9c Mon Sep 17 00:00:00 2001 From: mh Date: Sun, 15 Mar 2015 13:32:25 +0100 Subject: add a fact to collect hidden services --- lib/facter/tor_hidden_services.rb | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 lib/facter/tor_hidden_services.rb (limited to 'lib/facter/tor_hidden_services.rb') diff --git a/lib/facter/tor_hidden_services.rb b/lib/facter/tor_hidden_services.rb new file mode 100644 index 0000000..c2a6cca --- /dev/null +++ b/lib/facter/tor_hidden_services.rb @@ -0,0 +1,19 @@ +Facter.add(:tor_hidden_services) do + confine :kernel => "Linux" + setcode do + config_file = '/etc/tor/torrc' + if File.exists?(config_file) + dirs = File.read(config_file).split("\n").select{|l| + l =~ /^HiddenServiceDir/ + }.collect{|l| l.sub(/^HiddenServiceDir /,'') } + dirs.inject({}) { |res,d| + if File.exists?(h=File.join(d,'hostname')) + res[File.basename(d)] = File.read(h).chomp + end + res + } + else + {} + end + end +end -- cgit v1.2.3