Skip to content
Snippets Groups Projects
Closed (moved) Tor Launcher should set ClientTransportPlugin according to the bridge list
  • View options
  • Tor Launcher should set ClientTransportPlugin according to the bridge list

    • View options
  • Closed (moved) created by anonym

    If one wants to create a Tor Launcher distribution that supports some pluggable transports, one has to configure them statically with a ClientTransportPlugin line in torrc before running Tor Launcher. However, since ClientTransportPlugin and the *Proxy options are mutually exclusive, any such distribution prevents usage of proxies even if the user doesn't want to use bridges.

    We should fix this by making Tor Launcher itself set ClientTransportPlugin, when necessary, by extracting any plugin parts from the bridge list inputted by the user.

    See the set_ClientTransportPlugin branch on git://git.tails.boum.org/tor-launcher for what we do in Tails to achieve that. Note that it is not a complete fix but more of an emergency fix that works for Tails. To make it into a proper, robust fix we'd need at least the following additions:

    • Support for IPv6 bridges. Currently a naive regex is used to detect the IPv4 address part of the bridge line (so we can determine the transport plugin part, if it exists) which is fine in Tails, since we only do IPv4. If possible a real IPv{4,6} validator should be used instead of some cheap regexes but I have thus far failed to figure out if xulrunner provides anything like that.

    • The path to the pluggable transport proxy binary should be obtained using _getTorFile(), so a default path can be set like for the other TBB files used by Tor Launcher. Therefore _getTorFile() should be moved to the tl-util module. In my branch a working path must be set in extensions.torlauncher.transportproxy_path which clearly is insufficient.

    • Tor Launcher should disable the GUI controls when a mutually exclusive option is set, e.g., if a proxy is configured, one should not be able to select "Yes" in the bridge wizard page (and vice versa). It'd be helpful if an explanation was given too. My branch does not do this.

    • Tor Launcher should show a warning if an unsupported transport plugin is inputted by the user. My branch does not do this.

    Attributes

    Assignees

    Labels

    Milestone

    None

    Dates

    Start: None

    Due: None

    Time tracking

    No estimate or time spent

    Activity

    • All activity
    • Comments only
    • History only
    • Newest first
    • Oldest first