[tor-bugs] #9349 [Flashproxy]: flashproxy facilitator: Allow clients to specify transports

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Aug 13 13:53:19 UTC 2013


#9349: flashproxy facilitator: Allow clients to specify transports
------------------------+---------------------------------------------------
 Reporter:  asn         |          Owner:  dcf  
     Type:  task        |         Status:  new  
 Priority:  normal      |      Milestone:       
Component:  Flashproxy  |        Version:       
 Keywords:              |         Parent:  #7167
   Points:              |   Actualpoints:       
------------------------+---------------------------------------------------

Comment(by asn):

 I attached another `design.txt` patch. This one also specifies the new
 flashproxy poll format.

 I understand what you say about the ''outermost transport'' thing. I
 usually think of this as the ''transport layer'' (in contrast with `obfs3`
 etc. which I think as `obfuscation layer` or `presentation layer` or
 something like this).

 BTW, do you think I should also specify the way that the facilitator
 should handle flashproxy polls that include transports? As I see it, when
 the facilitator gets a flashproxy poll that includes transport ''X'', it
 should:
 a) See the client registrations that use transports, and see if any of
 them have ''X'' as their ''outermost transport''. To do this, we will need
 to modify `get_reg_for_proxy()` and `RegSet` (and maybe more stuff).

 b) Then it needs to find a registered bridge that supports the transport
 chain that the client registration asked for. We will need a config file
 containing bridges and some utility functions to do this.

 c) Finally it needs to send the new-style response to flashproxy that
 contains the client, the relay and the transports they support. >To do
 this, we will need to modify `fac.py:get_reg()` or something like that.

 I'm not sure I understand the way `RegSet`s work. What's this tier
 business? Should I make `RegSets` transport-aware or would you prefer to
 do this in another way?

 Also, is the IPC mechanism of flashproxy documented somewhere (the `FROM`,
 `PUT` etc. commands that are passed around?)

 Finally, I'm fine with using the pipe symbol as the transport separator
 (transport names are C identifiers btw).

 (I might also need some tips on testing/debugging the facilitator.)

 Thanks!

-- 
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/9349#comment:4>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list