# txtorcon

- docs:

    - v3 onion: http://fjblvrw2jrxnhtg67qpbzi45r7ofojaoo3orzykesly2j3c2m3htapid.onion/

    - clearnet: https://txtorcon.readthedocs.org

- code: https://github.com/meejah/txtorcon

- `torsocks git clone git://fjblvrw2jrxnhtg67qpbzi45r7ofojaoo3orzykesly2j3c2m3htapid.onion/txtorcon.git`

If this is your first time exploring txtorcon, please look at the Introduction first. These docs are for version 24.8.0.

Supported and tested platforms: Python 3.5+, PyPy 5.0.0+, Python 2.7+ (deprecated) using Twisted 15.5.0+, 16.3.0+, or 17.1.0+ (see GitHub Actions).

Asycnio inter-operation is now possible, see Using Asyncio Libraries with txtorcon

## Documentation

- Introduction
  - Features Overview
  - Shell-cast Overview
  - Example Code
  - Testimonials
  - Known Users
- Installing txtorcon
  - Latest Release
  - Compatibility
  - Tor Configuration
  - Source Code
  - Development Environment
  - Integration Tests
  - Dependencies / Requirements
- Programming Guide
  - API Stability
  - High Level Overview
  - A Tor Instance
    - Connecting to a Running Tor
    - Launching a New Tor
  - A Note On Style
  - Tracking and Changing Tor’s Configuration
  - Monitor and Change Tor’s State
  - Making Connections Over Tor
    - SOCKS5
  - Onion (Hidden) Services
    - Onion Services Endpoints API
    - Creating Onion Endpoints
    - Non-Authenticated Services
    - Authenticated Services
    - Onion Service Configuration
  - Custom Circuits
    - High Level
    - Low Level
  - Building Your Own Circuits
    - Building a Single Circuit
    - Building Many Circuits
- Examples
  - Web: clients
    - `web_client.py`
    - `web_client_treq.py`
    - `web_client_custom_circuit.py`
  - Starting Tor
    - `launch_tor.py`
    - `launch_tor_endpoint.py`
  - Circuits and Streams
    - `disallow_streams_by_port.py`
    - `stream_circuit_logger.py`
  - Events
    - `monitor.py`
  - Miscellaneous
    - `stem_relay_descriptor.py`
    - `txtorcon.tac`
- Using Asyncio Libraries with txtorcon
  - `web_onion_service_aiohttp.py`
- Contributions
  - Contact Information
  - Public Key
  - Pull Requests
  - Making a Release
    - Release Checklist

## Official Releases:

All official releases are tagged in Git, and signed by my key. All official releases on PyPI have a corresponding GPG signature of the build. Please be aware that `pip` does not check GPG signatures by default; please see this ticket if you care.

The most reliable way to verify you got what I intended is to clone the Git repository, `git checkout` a tag and verify its signature. The second-best would be to download a release + tag from PyPI and verify that.

- Releases
  - v24.8.0
  - v23.11.0
  - v23.5.0
  - v23.0.0
  - v22.0.0
  - v21.1.0
  - v21.0.0
  - v20.0.0
  - v19.1.0
  - v19.0.0
  - v18.3.0
  - v18.2.0
  - v18.1.0
  - v18.0.2
  - v18.0.1
  - v18.0.0
  - v0.20.0
  - v0.19.3
  - v0.19.2
  - v0.19.1
  - v0.19.0
  - v0.18.0
  - v0.17.0
  - v0.16.1
  - v0.16.0
  - v0.15.1
  - v0.15.0
  - v0.14.2
  - v0.14.1
  - v0.14.0
  - v0.13.0
  - v0.12.0
  - v0.11.0
  - v0.10.1
  - v0.10.0
  - v0.9.2
  - v0.9.1
  - v0.8.2
  - v0.8.1
  - v0.8.0
  - v0.7
  - v0.6
  - v0.5
  - v0.4
  - v0.3
  - v0.2
  - v0.1

## API Documentation

These are the lowest-level documents, directly from the doc-strings in the code with some minimal organization; if you’re just getting started with txtorcon the “Programming Guide” is a better place to start.

- API Documentation
  - High Level API
    - Tor
    - connect
    - launch
  - Tracking and Changing Live Tor State
    - TorState
    - Circuit
    - Stream
    - Router
  - Reading and Writing Live Tor Configuration
    - TorConfig
    - HiddenService
  - Endpoints and Related Classes
    - TCPHiddenServiceEndpoint
    - TCPHiddenServiceEndpointParser
    - TorOnionAddress
    - TorOnionListeningPort
    - IProgressProvider
  - Onion APIs
    - IOnionService
    - IFilesystemOnionService
    - IAuthenticatedOnionClients
    - IOnionClient
    - EphemeralOnionService
    - EphemeralAuthenticatedOnionService
    - EphemeralAuthenticatedOnionServiceClient
    - FilesystemOnionService
    - FilesystemAuthenticatedOnionService
    - FilesystemAuthenticatedOnionServiceClient
    - AuthBasic
    - AuthStealth
  - Low-Level Protocol Classes
    - build_tor_connection
    - build_local_tor_connection
    - TorControlProtocol
    - TorProtocolFactory
    - TorProcessProtocol
  - `txtorcon.socks` Module
    - SOCKS5 Errors
    - resolve
    - resolve_ptr
    - TorSocksEndpoint
  - `txtorcon.interface` Module
    - interface.IStreamAttacher
    - interface.IStreamListener
    - interface.ICircuitListener
    - interface.ICircuitContainer
    - interface.IRouterContainer
    - interface.ITorControlProtocol
  - `txtorcon.util` Module
    - util.NetLocation
    - util.process_from_address
    - util.delete_file_or_tree

# Indices and tables

- Index

- Module Index

- Search Page