Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

tor

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

tor

  • 0.1.7
  • Rubygems
  • Socket score

Version published
Maintainers
1
Created
Source

Tor.rb: Onion Routing for Ruby

This is a Ruby library for interacting with the Tor anonymity network.

Features

  • Supports checking whether Tor is installed in the user's current PATH, and if it is, returning the version number.
  • Supports parsing Tor configuration files and looking up the values of particular options.
  • Supports querying and controlling a locally-running Tor process using the Tor Control Protocol (TC) over a socket connection.
  • Supports querying the Tor DNS Exit List (DNSEL) to determine whether a particular host is a Tor exit node or not.
  • Compatible with Ruby 1.8.7+, Ruby 1.9.x, and JRuby 1.4/1.5.

Examples

require 'rubygems'
require 'tor'

Checking whether Tor is installed and which version it is

Tor.available?                                     #=> true
Tor.version                                        #=> "0.2.1.25"

Parsing the Tor configuration file (1)

torrc = Tor::Config.load("/etc/tor/torrc")

Parsing the Tor configuration file (2)

Tor::Config.open("/etc/tor/torrc") do |torrc|
  puts "Tor SOCKS port: #{torrc['SOCKSPort']}"
  puts "Tor control port: #{torrc['ControlPort']}"
  puts "Tor exit policy:"
  torrc.each('ExitPolicy') do |key, value|
    puts "  #{value}"
  end
end

Communicating with a running Tor process

Tor::Controller.connect(:port => 9051) do |tor|
  puts "Tor version: #{tor.version}"
  puts "Tor config file: #{tor.config_file}"
end

Checking whether a particular host is a Tor exit node

Tor::DNSEL.include?("185.220.101.21")               #=> true
Tor::DNSEL.include?("1.2.3.4")                     #=> false

Dependencies

Installation

The recommended installation method is via RubyGems. To install the latest official release of Tor.rb, do:

% [sudo] gem install tor                 # Ruby 1.8.7+ or 1.9.x
% [sudo] gem install backports tor       # Ruby 1.8.1+

Download

To get a local working copy of the development repository, do:

% git clone git://github.com/bendiken/tor-ruby.git

Alternatively, you can download the latest development version as a tarball as follows:

% wget http://github.com/bendiken/tor-ruby/tarball/master

Author

License

Tor.rb is free and unencumbered public domain software. For more information, see http://unlicense.org/ or the accompanying UNLICENSE file.

FAQs

Package last updated on 26 Feb 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc