commit 099a4f3f5518acdc486019b0a465218d802eec3b Author: Damian Johnson atagar@torproject.org Date: Sat Mar 22 12:01:17 2014 -0700
Capitalizing proper nouns
I'm horribly inconsistent about this. Capitalizing 'Stem', 'Tor', and 'Python'. Probably missed a few. --- docs/api.rst | 2 +- docs/change_log.rst | 16 ++++----- docs/download.rst | 8 ++--- docs/faq.rst | 36 ++++++++++----------- docs/index.rst | 2 +- docs/tutorials.rst | 2 +- docs/tutorials/double_double_toil_and_trouble.rst | 8 ++--- docs/tutorials/east_of_the_sun.rst | 3 +- docs/tutorials/mirror_mirror_on_the_wall.rst | 34 +++++++++---------- docs/tutorials/to_russia_with_love.rst | 12 +++---- 10 files changed, 61 insertions(+), 62 deletions(-)
diff --git a/docs/api.rst b/docs/api.rst index d843bd1..56b9d54 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -24,7 +24,7 @@ To read descriptors from disk use :func:`~stem.descriptor.__init__.parse_file` f individual files and `stem.descriptor.reader <api/descriptor/reader.html>`_ for batches. You can also use `stem.descriptor.remote <api/descriptor/remote.html>`_ to download descriptors -remotely like tor does. +remotely like Tor does.
* **Classes**
diff --git a/docs/change_log.rst b/docs/change_log.rst index 5e82005..6b90ca9 100644 --- a/docs/change_log.rst +++ b/docs/change_log.rst @@ -1,7 +1,7 @@ Change Log ==========
-The following is a log of all user-facing changes to stem, both released and +The following is a log of all user-facing changes to Stem, both released and unreleased. For a monthly report on work being done see my `development log https://www.atagar.com/log.php`_.
@@ -26,7 +26,7 @@ convey the kind of backward compatibility a release has... * The second value is the **minor version**. This is the most common kind of release, and denotes that the improvements are backward compatible.
- * The third value is the **patch version**. When a stem release has a major + * The third value is the **patch version**. When a Stem release has a major issue another release is made which fixes just that problem. These do not contain substantial improvements or new features. This value is sometimes left off to indicate all releases with a given major/minor version. @@ -36,7 +36,7 @@ convey the kind of backward compatibility a release has... Unreleased ----------
-The following are only available within stem's `git repository +The following are only available within Stem's `git repository <download.html>`_.
* **Controller** @@ -75,7 +75,7 @@ and a myriad of smaller improvements and fixes. * :func:`~stem.control.Controller.get_network_status` and :func:`~stem.control.Controller.get_network_statuses` now provide v3 rather than v2 directory information (:trac:`7953`, :spec:`d2b7ebb`) * :class:`~stem.response.events.AddrMapEvent` support for the new CACHED argument (:trac:`8596`, :spec:`25b0d43`) * :func:`~stem.control.Controller.attach_stream` could encounter an undocumented 555 response (:trac:`8701`, :spec:`7286576`) - * :class:`~stem.descriptor.server_descriptor.RelayDescriptor` digest validation was broken when dealing with non-unicode content with python 3 (:trac:`8755`) + * :class:`~stem.descriptor.server_descriptor.RelayDescriptor` digest validation was broken when dealing with non-unicode content with Python 3 (:trac:`8755`) * The :class:`~stem.control.Controller` use of cached content wasn't thread safe (:trac:`8607`) * Added :func:`~stem.control.Controller.get_user` method to the :class:`~stem.control.Controller` * Added :func:`~stem.control.Controller.get_pid` method to the :class:`~stem.control.Controller` @@ -103,7 +103,7 @@ and a myriad of smaller improvements and fixes.
* **Website**
- * Overhaul of stem's `download page <download.html>`_. This included several + * Overhaul of Stem's `download page <download.html>`_. This included several improvements, most notably the addition of PyPI, Ubuntu, Fedora, Slackware, and FreeBSD. * Replaced default sphinx header with a navbar menu. @@ -111,7 +111,7 @@ and a myriad of smaller improvements and fixes. * Added the `FAQ page <faq.html>`_. * Settled on a `logo http://www.wpclipart.com/plants/assorted/P/plant_stem.png.html`_ for - stem. + Stem. * Expanded the `client usage tutorial <tutorials/to_russia_with_love.html>`_ to cover SocksiPy and include an example for polling Twitter. * Subtler buttons for the frontpage (`before @@ -123,10 +123,10 @@ and a myriad of smaller improvements and fixes. Version 1.0 -----------
-This was the `initial release of stem +This was the `initial release of Stem https://blog.torproject.org/blog/stem-release-10`_, made on **March 26th, 2013**.
* **Version 1.0.1** (March 27th, 2013) - fixed an issue where installing with - python 3.x (python3 setup.py install) resulted in a stacktrace + Python 3.x (python3 setup.py install) resulted in a stacktrace
diff --git a/docs/download.rst b/docs/download.rst index 2597e12..f049da1 100644 --- a/docs/download.rst +++ b/docs/download.rst @@ -61,7 +61,7 @@ Download - .. image:: /_static/label/python_package_index.png :target: https://pypi.python.org/pypi/stem/
- Signed releases and instructions for both python 2.x and 3.x. You can + Signed releases and instructions for both Python 2.x and 3.x. You can install from its `tarball https://pypi.python.org/packages/source/s/stem/stem-1.1.1.tar.bz2`_ (`sig @@ -104,7 +104,7 @@ Download :target: https://apps.fedoraproject.org/packages/python-stem
Packages maintained by Juan for Fedora. These include **python-stem** - (stem for python 2.x), **python3-stem** (stem for python 3.x), and + (Stem for Python 2.x), **python3-stem** (Stem for Python 3.x), and **python-stem-doc** (this website).
:: @@ -144,8 +144,8 @@ Download - .. image:: /_static/label/source_repository.png :target: https://gitweb.torproject.org/stem.git
- For those wanting to live on the bleeding edge or contribute to stem, - stem's git repository can be fetched with... + For those wanting to live on the bleeding edge or contribute to Stem, + Stem's git repository can be fetched with...
::
diff --git a/docs/faq.rst b/docs/faq.rst index db77dcc..72c7db1 100644 --- a/docs/faq.rst +++ b/docs/faq.rst @@ -31,32 +31,32 @@ General Information
.. _what_is_stem:
-What is stem? +What is Stem? -------------
-Stem is a python controller library that you can use to interact with `tor https://www.torproject.org/`_. With it you can write scripts and applications with capabilities similar to `Vidalia https://www.torproject.org/getinvolved/volunteer.html.en#project-vidalia`_ and `arm https://www.atagar.com/arm/`_. +Stem is a Python controller library that you can use to interact with `Tor https://www.torproject.org/`_. With it you can write scripts and applications with capabilities similar to `Vidalia https://www.torproject.org/getinvolved/volunteer.html.en#project-vidalia`_ and `arm https://www.atagar.com/arm/`_.
-From a technical standpoint, stem is a python implementation of Tor's `directory https://gitweb.torproject.org/torspec.git/blob/HEAD:/dir-spec.txt`_ and `control specifications https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt`_. `To get started see our tutorials! <tutorials.html>`_ +From a technical standpoint, Stem is a Python implementation of Tor's `directory https://gitweb.torproject.org/torspec.git/blob/HEAD:/dir-spec.txt`_ and `control specifications https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt`_. `To get started see our tutorials! <tutorials.html>`_
.. _does_stem_have_any_dependencies:
-Does stem have any dependencies? +Does Stem have any dependencies? --------------------------------
-**No.** All you need in order to use stem is python. +**No.** All you need in order to use Stem is Python.
-When it is available stem will use `pycrypto https://www.dlitz.net/software/pycrypto/`_ to validate descriptor signatures. However, there is no need to install pycrypto unless you need this functionality. +When it is available Stem will use `pycrypto https://www.dlitz.net/software/pycrypto/`_ to validate descriptor signatures. However, there is no need to install pycrypto unless you need this functionality.
.. _what_python_versions_is_stem_compatible_with:
-What python versions is stem compatible with? +What Python versions is Stem compatible with? ---------------------------------------------
-Stem works with **python 2.6 and greater**. This includes the python 3.x series by installing stem via python3 (see our `installation instructions https://pypi.python.org/pypi/stem/`_ for more information). +Stem works with **Python 2.6 and greater**. This includes the Python 3.x series by installing Stem via python3 (see our `installation instructions https://pypi.python.org/pypi/stem/`_ for more information).
.. _what_license_is_stem_under:
-What license is stem under? +What license is Stem under? ---------------------------
Stem is under the `LGPLv3 https://www.gnu.org/licenses/lgpl`_. @@ -66,7 +66,7 @@ Stem is under the `LGPLv3 https://www.gnu.org/licenses/lgpl`_. Are there any other controller libraries? -----------------------------------------
-Yup. The most mature controller libraries are written in python, but there's a few options in other languages as well. By far the most mature alternative to Stem are `Txtorcon https://txtorcon.readthedocs.org/`_ and `TorCtl https://gitweb.torproject.org/pytorctl.git`_. +Yup. The most mature controller libraries are written in Python, but there's a few options in other languages as well. By far the most mature alternative to Stem are `Txtorcon https://txtorcon.readthedocs.org/`_ and `TorCtl https://gitweb.torproject.org/pytorctl.git`_.
`Txtorcon https://txtorcon.readthedocs.org/`_ is an actively maintained controller library written by Meejah for `Twisted https://twistedmatrix.com/trac/`_. In the future we plan to `integrate Stem and Txtorcon https://www.torproject.org/getinvolved/volunteer.html.en#txtorcon-stemIntegration`_ to some degree, but that is still a ways off.
@@ -213,7 +213,7 @@ Authenticating with this simply involves giving Tor the credential... Where can I get help? ---------------------
-Do you have a tor related question or project that you would like to discuss? If so then find us on the `tor-dev@ email list https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev`_ and `IRC https://www.torproject.org/about/contact.html.en#irc`_. +Do you have a Tor related question or project that you would like to discuss? If so then find us on the `tor-dev@ email list https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-dev`_ and `IRC https://www.torproject.org/about/contact.html.en#irc`_.
Usage ===== @@ -379,7 +379,7 @@ To do this with telnet... SIGNAL NEWNYM 250 OK
-And with stem... +And with Stem...
::
@@ -537,13 +537,13 @@ The best way of getting involved with any project is to jump right in! Our `bug
If you have any questions then I'm always more than happy to help (I'm **atagar** on `oftc http://www.oftc.net/oftc/`_ and also available `via email https://www.atagar.com/contact/`_).
-To start hacking on stem please do the following and don't hesitate to let me know if you get stuck or would like to discuss anything! +To start hacking on Stem please do the following and don't hesitate to let me know if you get stuck or would like to discuss anything!
1. Clone our `git http://git-scm.com/`_ repository: **git clone https://git.torproject.org/stem.git** 2. Find a `bug or feature https://trac.torproject.org/projects/tor/wiki/doc/stem/bugs`_ that sounds interesting. 3. When you have something that you would like to contribute back do the following...
- * If you don't already have a publicly accessible stem repository then set one up. `GitHub https://github.com/`_ in particular is great for this. + * If you don't already have a publicly accessible Stem repository then set one up. `GitHub https://github.com/`_ in particular is great for this. * File a `trac ticket https://trac.torproject.org/projects/tor/newticket`_, the only fields you'll need are...
* Summary: short description of your change @@ -568,7 +568,7 @@ Stem has three kinds of tests: **unit**, **integration**, and **static**. ~$ cd stem/ ~/stem$ ./run_tests.py --unit
-**Integration** tests start a live tor instance and test against that. This not only provides additional test coverage, but lets us check our continued interoperability with new releases of tor. Running these require that you have `tor installed https://www.torproject.org/download/download.html.en`_. You can exercise alternate tor configurations with the ``--target`` argument (see ``run_tests.py --help`` for a list of its options). +**Integration** tests start a live Tor instance and test against that. This not only provides additional test coverage, but lets us check our continued interoperability with new releases of Tor. Running these require that you have `Tor installed https://www.torproject.org/download/download.html.en`_. You can exercise alternate Tor configurations with the ``--target`` argument (see ``run_tests.py --help`` for a list of its options).
::
@@ -578,7 +578,7 @@ Stem has three kinds of tests: **unit**, **integration**, and **static**.
**Static** tests use `pyflakes https://launchpad.net/pyflakes`_ to do static error checking and `pep8 http://pep8.readthedocs.org/en/latest/`_ for style checking. If you have them installed then they automatically take place as part of all test runs.
-If you have **python 3** installed then you can test our python 3 compatibility with the following. *Note that need to still initially execute run_tests.py with a 2.x version of python.* +If you have **Python 3** installed then you can test our Python 3 compatibility with the following. *Note that need to still initially execute run_tests.py with a 2.x version of Python.*
::
@@ -609,7 +609,7 @@ When it's finished you can direct your browser to the *_build* directory with a What is the copyright for patches? ----------------------------------
-Stem is under the LGPLv3 which is a fine license, but poses a bit of a problem for sharing code with our other projects (which are mostly BSD). To share code without needing to hunt down prior contributors we need Tor to have the copyright for the whole stem codebase. Presently the copyright of stem is jointly held by its main author (`Damian https://www.atagar.com/`_) and the `Tor Project https://www.torproject.org/`_. +Stem is under the LGPLv3 which is a fine license, but poses a bit of a problem for sharing code with our other projects (which are mostly BSD). To share code without needing to hunt down prior contributors we need Tor to have the copyright for the whole Stem codebase. Presently the copyright of Stem is jointly held by its main author (`Damian https://www.atagar.com/`_) and the `Tor Project https://www.torproject.org/`_.
-If you submit a substantial patch I'll ask if you're fine with it being in the public domain. This would mean that there are no legal restrictions for using your contribution, and hence won't pose a problem if we reuse stem code in other projects. +If you submit a substantial patch I'll ask if you're fine with it being in the public domain. This would mean that there are no legal restrictions for using your contribution, and hence won't pose a problem if we reuse Stem code in other projects.
diff --git a/docs/index.rst b/docs/index.rst index df2b02e..40e2ebd 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,7 +1,7 @@ Welcome to Stem! ================
-Stem is a python controller library for `Tor https://www.torproject.org/`_. Like its predecessor, `TorCtl https://gitweb.torproject.org/pytorctl.git`_, it uses Tor's `control protocol https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt`_ to help developers program against the Tor process, enabling them to build things similar to `Vidalia https://www.torproject.org/getinvolved/volunteer.html.en#project-vidalia`_ and `arm https://www.atagar.com/arm/`_. Stem's latest version is **1.1.1** (released November 9th, 2013). +Stem is a Python controller library for `Tor https://www.torproject.org/`_. Like its predecessor, `TorCtl https://gitweb.torproject.org/pytorctl.git`_, it uses Tor's `control protocol https://gitweb.torproject.org/torspec.git/blob/HEAD:/control-spec.txt`_ to help developers program against the Tor process, enabling them to build things similar to `Vidalia https://www.torproject.org/getinvolved/volunteer.html.en#project-vidalia`_ and `arm https://www.atagar.com/arm/`_. Stem's latest version is **1.1.1** (released November 9th, 2013).
.. Main Stem Logo Source: http://www.wpclipart.com/plants/assorted/P/plant_stem.png.html diff --git a/docs/tutorials.rst b/docs/tutorials.rst index 267a6c4..2b13b79 100644 --- a/docs/tutorials.rst +++ b/docs/tutorials.rst @@ -99,5 +99,5 @@ feet wet by jumping straight in with some tutorials... :target: tutorials/double_double_toil_and_trouble.html
Sometimes it's easiest to learn a library by seeing how it's used in the - wild. This is a directory of scripts and applications that use stem. + wild. This is a directory of scripts and applications that use Stem.
diff --git a/docs/tutorials/double_double_toil_and_trouble.rst b/docs/tutorials/double_double_toil_and_trouble.rst index f2de969..0da647a 100644 --- a/docs/tutorials/double_double_toil_and_trouble.rst +++ b/docs/tutorials/double_double_toil_and_trouble.rst @@ -1,7 +1,7 @@ Double Double Toil and Trouble ==============================
-Below is a listing of scripts and applications that use stem. If you have +Below is a listing of scripts and applications that use Stem. If you have something you would like to have included on this page then `let me know https://www.atagar.com/contact/`_!
@@ -38,12 +38,12 @@ something you would like to have included on this page then `let me know descriptors, directory authority issues, sybil attacks, and much more.
=========================================================================================================== ========== -`RTT Prober https://bitbucket.org/ra_/tor-rtt/`_ Measures round-trip times for tor circuits. +`RTT Prober https://bitbucket.org/ra_/tor-rtt/`_ Measures round-trip times for Tor circuits. `TorPS https://www.torproject.org/getinvolved/volunteer.html.en#project-torps`_ Tor path simulator. -`Metrics Tasks https://gitweb.torproject.org/metrics-tasks.git/tree`_ One-off tasks related to Tor metrics. These mostly involve using descriptor information to answer a particular question. Tasks that involve stem are: `1854 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-1854/pylinf.py`_, `6232 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-6232/pyentropy.py`_, and `7241 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-7241/first_pass.py`_. +`Metrics Tasks https://gitweb.torproject.org/metrics-tasks.git/tree`_ One-off tasks related to Tor metrics. These mostly involve using descriptor information to answer a particular question. Tasks that involve Stem are: `1854 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-1854/pylinf.py`_, `6232 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-6232/pyentropy.py`_, and `7241 https://gitweb.torproject.org/metrics-tasks.git/blob/HEAD:/task-7241/first_pass.py`_. `check_tor http://anonscm.debian.org/gitweb/?p=users/lunar/check_tor.git;a=blob;f=check_tor.py;hb=HEAD`_ Nagios check to verify that a relay is participating in the Tor network. `tbbscraper https://github.com/zackw/tbbscraper/blob/master/controller/controller.py`_ Automated website scraper over Tor. `torirc https://github.com/alfred-gw/torirc`_ IRC-like chat client using Tor hidden services. -`ExitMap https://github.com/NullHypothesis/exitmap`_ Scanner for malicious or misconfigured tor exits. +`ExitMap https://github.com/NullHypothesis/exitmap`_ Scanner for malicious or misconfigured Tor exits. =========================================================================================================== ==========
diff --git a/docs/tutorials/east_of_the_sun.rst b/docs/tutorials/east_of_the_sun.rst index 5a94df9..374275e 100644 --- a/docs/tutorials/east_of_the_sun.rst +++ b/docs/tutorials/east_of_the_sun.rst @@ -1,7 +1,7 @@ East of the Sun & West of the Moon ==================================
-The following is an overview of some of the utilities stem provides. +The following is an overview of some of the utilities Stem provides.
* :ref:`connection-resolution`
@@ -75,4 +75,3 @@ simple script that dumps Tor's present connections. 192.168.0.1:59014 => 38.229.79.2:443 192.168.0.1:58822 => 68.169.35.102:443
- diff --git a/docs/tutorials/mirror_mirror_on_the_wall.rst b/docs/tutorials/mirror_mirror_on_the_wall.rst index 2a5a28c..a14e050 100644 --- a/docs/tutorials/mirror_mirror_on_the_wall.rst +++ b/docs/tutorials/mirror_mirror_on_the_wall.rst @@ -25,9 +25,9 @@ There are several different kinds of descriptors, the most common ones being... Descriptor Type Description ====================================================================== =========== `Server Descriptor <../api/descriptor/server_descriptor.html>`_ Information that relays publish about themselves. Tor clients once downloaded this information, but now they use microdescriptors instead. -`ExtraInfo Descriptor <../api/descriptor/extrainfo_descriptor.html>`_ Relay information that tor clients do not need in order to function. This is self-published, like server descriptors, but not downloaded by default. -`Microdescriptor <../api/descriptor/microdescriptor.html>`_ Minimalistic document that just includes the information necessary for tor clients to work. -`Network Status Document <../api/descriptor/networkstatus.html>`_ Though tor relays are decentralized, the directories that track the overall network are not. These central points are called **directory authorities**, and every hour they publish a document called a **consensus** (aka, network status document). The consensus in turn is made up of **router status entries**. +`ExtraInfo Descriptor <../api/descriptor/extrainfo_descriptor.html>`_ Relay information that Tor clients do not need in order to function. This is self-published, like server descriptors, but not downloaded by default. +`Microdescriptor <../api/descriptor/microdescriptor.html>`_ Minimalistic document that just includes the information necessary for Tor clients to work. +`Network Status Document <../api/descriptor/networkstatus.html>`_ Though Tor relays are decentralized, the directories that track the overall network are not. These central points are called **directory authorities**, and every hour they publish a document called a **consensus** (aka, network status document). The consensus in turn is made up of **router status entries**. `Router Status Entry <../api/descriptor/router_status_entry.html>`_ Relay information provided by the directory authorities including flags, heuristics used for relay selection, etc. ====================================================================== ===========
@@ -36,16 +36,16 @@ Descriptor Type Descripti Where can I get the current descriptors? ----------------------------------------
-To work tor needs to have up-to-date information about relays within the +To work Tor needs to have up-to-date information about relays within the network. As such getting current descriptors is easy: *just download it like tor does*.
The `stem.descriptor.remote <../api/descriptor/remote.html>`_ module downloads descriptors from the tor directory authorities and mirrors. **Please show some restraint when doing this**! This adds load to the network, and hence an -irresponsible script can make tor worse for everyone. +irresponsible script can make Tor worse for everyone.
-Listing the current relays in the tor network is as easy as... +Listing the current relays in the Tor network is as easy as...
::
@@ -64,46 +64,46 @@ Listing the current relays in the tor network is as easy as... Can I get descriptors from Tor? -------------------------------
-If you already have tor running on your system then it is already getting +If you already have Tor running on your system then it is already getting descriptors on your behalf. Reusing these is a great way to keep from burdening -the rest of the tor network. +the rest of the Tor network.
Tor only gets the descriptors that it needs by default, so if you're scripting -against tor you may want to set some of the following in your `torrc +against Tor you may want to set some of the following in your `torrc https://www.torproject.org/docs/faq.html.en#torrc`_. Keep in mind that these add a small burden to the network, so don't set them in a widely distributed -application. And, of course, please consider `running tor as a relay +application. And, of course, please consider `running Tor as a relay https://www.torproject.org/docs/tor-doc-relay.html.en`_ so you give back to the network!
::
# Descriptors have a range of time during which they're valid. To get the - # most recent descriptor information, regardless of if tor needs it or not, + # most recent descriptor information, regardless of if Tor needs it or not, # set the following.
FetchDirInfoEarly 1 FetchDirInfoExtraEarly 1
- # If you aren't actively using tor as a client then tor will eventually stop + # If you aren't actively using Tor as a client then Tor will eventually stop # downloading descriptor information that it doesn't need. To prevent this # from happening set...
FetchUselessDescriptors 1
# Tor no longer downloads server descriptors by default, opting for - # microdescriptors instead. If you want tor to download server descriptors + # microdescriptors instead. If you want Tor to download server descriptors # then set...
UseMicrodescriptors 0
- # Tor doesn't need extrainfo descriptors to work. If you want tor to download + # Tor doesn't need extrainfo descriptors to work. If you want Tor to download # them anyway then set...
DownloadExtraInfo 1
-Now that tor is happy chugging along up-to-date descriptors are available -through tor's control socket... +Now that Tor is happy chugging along up-to-date descriptors are available +through Tor's control socket...
::
@@ -115,7 +115,7 @@ through tor's control socket... for desc in controller.get_network_statuses(): print "found relay %s (%s)" % (desc.nickname, desc.fingerprint)
-... or by reading directly from tor's data directory... +... or by reading directly from Tor's data directory...
::
diff --git a/docs/tutorials/to_russia_with_love.rst b/docs/tutorials/to_russia_with_love.rst index 8e75e80..c928c00 100644 --- a/docs/tutorials/to_russia_with_love.rst +++ b/docs/tutorials/to_russia_with_love.rst @@ -17,9 +17,9 @@ The Internet isn't uniform. Localization, censorship, and selective service base
Tor relays are scattered all over the world and, as such, you can pretend to be from any place running an exit. This can be especially useful to evade pesky geolocational restrictions, such as news sites that refuse to work while you're traveling abroad.
-Tor makes `configuring your exit locale https://www.torproject.org/docs/faq.html.en#ChooseEntryExit`_ easy through the **ExitNodes** torrc option. Note that you don't need a control port (or even stem) to do this, though they can be useful if you later want to do something more elaborate. +Tor makes `configuring your exit locale https://www.torproject.org/docs/faq.html.en#ChooseEntryExit`_ easy through the **ExitNodes** torrc option. Note that you don't need a control port (or even Stem) to do this, though they can be useful if you later want to do something more elaborate.
-In the following example we're using stem to `start Tor <../api/process.html>`_, then reading a site through it with `SocksiPy http://socksipy.sourceforge.net/`_. This is not always reliable (some relays are lemons) so you may need to run this more than once. +In the following example we're using Stem to `start Tor <../api/process.html>`_, then reading a site through it with `SocksiPy http://socksipy.sourceforge.net/`_. This is not always reliable (some relays are lemons) so you may need to run this more than once.
**Do not rely on the following not to leak.** Though it seems to work there may be edge cases that expose your real IP. If you have a suggestion for how to improve this example then please `let me know https://www.atagar.com/contact/`_!
@@ -60,9 +60,9 @@ In the following example we're using stem to `start Tor <../api/process.html>`_, return "Unable to reach %s" % url
- # Start an instance of tor configured to only exit through Russia. This prints - # tor's bootstrap information as it starts. Note that this likely will not - # work if you have another tor instance running. + # Start an instance of Tor configured to only exit through Russia. This prints + # Tor's bootstrap information as it starts. Note that this likely will not + # work if you have another Tor instance running.
def print_bootstrap_lines(line): if "Bootstrapped " in line: @@ -220,7 +220,7 @@ Here's a simple script that prints information about the exits used to service t if __name__ == '__main__': main()
-Now if you make a request over tor... +Now if you make a request over Tor...
::
tor-commits@lists.torproject.org