[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: Weird-looking circuits in Vidalia



On Tuesday 25 March 2008 21:05:49 you wrote:
<snip>
>
>
> Ok, thanks for the info! How about replacing these strings with text like
> <Directory Request> in future? That would be be little more descriptive.

I was thinking the same thing recently. I even went so far as to start a 
proposal  - because there are numerous tunneled requests in Tor that aren't user 
initiated these days. I didn't get very far with it, and I'm not sure it's 
particularly straightforward in all cases. But it looks to be easy enough for 
these tunneled requests.

Here's what I was thinking:

Motivation/Overview:

  Tor now tunnels a large number of network maintenance operations through
circuits on the Tor network. Many of these operations are not initiated by
the user. Both TorK and Vidalia display active connections to the user and
these maintenance operations may cause alarm, distress, and even panic if
displayed without at least some attempt at explanation. If Tor were to provide
a STREAM_PURPOSE string as an extension for the existing STREAM_EVENT
controllers would be able to determine whether to display a stream to the
user, or more likely provide a mechanism for explaining the purpose
of the connection to the curious user.

Specify a new PURPOSE field for extended stream events as follows:

Index: doc/spec/control-spec.txt
===================================================================
--- doc/spec/control-spec.txt   (revision 14111)
+++ doc/spec/control-spec.txt   (working copy)
@@ -984,6 +984,7 @@
       "650" SP "STREAM" SP StreamID SP StreamStatus SP CircID SP Target
           [SP "REASON=" Reason [ SP "REMOTE_REASON=" Reason ]]
           [SP "SOURCE=" Source] [ SP "SOURCE_ADDR=" Address ":" Port ]
+          [SP "PURPOSE=" Reason]
           CRLF

       StreamStatus =
@@ -1033,6 +1034,13 @@
    that requested the connection, and can be (e.g.) used to look up the
    requesting program.

+      Purpose = "DIR_FETCH" / "UPLOAD_DESC" / "DNS_REQUEST" /
+                 "USER" /  "DIRPORT_TEST"
+
+   The "PURPOSE" field is provided only for NEW and NEWRESOLVE
+   events, and only if extended events are enabled (see 3.19).  Clients MUST
+   accept purposes not listed above.
+

Attachment: signature.asc
Description: This is a digitally signed message part.