{"id":16917882,"url":"https://github.com/sml2h3/pytorctl","last_synced_at":"2025-03-20T22:23:50.087Z","repository":{"id":107198665,"uuid":"77637387","full_name":"sml2h3/pytorctl","owner":"sml2h3","description":"My TorCtl repository","archived":false,"fork":false,"pushed_at":"2012-03-03T21:40:29.000Z","size":308,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-25T19:11:18.808Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://inspirated.com/","language":"Python","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sml2h3.png","metadata":{"files":{"readme":"README","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-12-29T20:13:47.000Z","updated_at":"2020-12-29T23:42:30.000Z","dependencies_parsed_at":"2023-03-04T15:41:58.422Z","dependency_job_id":null,"html_url":"https://github.com/sml2h3/pytorctl","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sml2h3%2Fpytorctl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sml2h3%2Fpytorctl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sml2h3%2Fpytorctl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sml2h3%2Fpytorctl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sml2h3","download_url":"https://codeload.github.com/sml2h3/pytorctl/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244701155,"owners_count":20495673,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-13T19:38:06.498Z","updated_at":"2025-03-20T22:23:50.067Z","avatar_url":"https://github.com/sml2h3.png","language":"Python","readme":"                         TorCtl Python Bindings\n\n\nTorCtl is a python Tor controller with extensions to support path\nbuilding and various constraints on node and path selection, as well as\nstatistics gathering.\n\nApps can hook into the TorCtl package at whatever level they wish.\n\nThe lowest level of interaction is to use the TorCtl module\n(TorCtl/TorCtl.py). Typically this is done by importing TorCtl.TorCtl\nand creating a TorCtl.Connection and extending from TorCtl.EventHandler.\nThis class receives Tor controller events packaged into python classes\nfrom a TorCtl.Connection.\n\nThe next level up is to use the TorCtl.PathSupport module. This is done\nby importing TorCtl.PathSupport and instantiating or extending from\nPathSupport.PathBuilder, which itself extends from TorCtl.EventHandler.\nThis class handles circuit construction and stream attachment subject to\npolicies defined by PathSupport.NodeRestrictor and\nPathSupport.PathRestrictor implementations.\n\nIf you are interested in gathering statistics, you can instead\ninstantiate or extend from StatsSupport.StatsHandler, which is\nagain an event handler with hooks to record statistics on circuit\ncreation, stream bandwidth, and circuit failure information.\n\nAll of these modules are pydoced. For more detailed information than\nthe above overview, you can do:\n\n# pydoc TorCtl\n# pydoc PathSupport\n# pydoc StatsSupport\n\nThere is a minimalistic example of usage of the basic TorCtl.Connection\nand TorCtl.EventHandler in run_example() in TorCtl.py in this directory.\nOther components also have unit tests at the end of their source files.\n\nFor more extensive examples of the PathSupport and StatsSupport\ninterfaces, see the TorFlow project at git url:\n\ngit clone git://git.torproject.org/git/torflow.git\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsml2h3%2Fpytorctl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsml2h3%2Fpytorctl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsml2h3%2Fpytorctl/lists"}