[tor-bugs] #21757 [Core Tor/Tor]: Using Pluggable Transports on tor master is broken

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue May 23 13:31:29 UTC 2017


#21757: Using Pluggable Transports on tor master is broken
--------------------------+------------------------------------
 Reporter:  gk            |          Owner:  ahf
     Type:  defect        |         Status:  assigned
 Priority:  Medium        |      Milestone:  Tor: 0.3.1.x-final
Component:  Core Tor/Tor  |        Version:
 Severity:  Normal        |     Resolution:
 Keywords:                |  Actual Points:
Parent ID:                |         Points:
 Reviewer:                |        Sponsor:
--------------------------+------------------------------------

Comment (by ahf):

 Yep, that is an issue. If a program decides to only write partial lines,
 we will only read up the first chunk of that line with the current code. I
 do not believe this is a problem with the current PT/firewall-helper
 programs, but it will certainly cause confusion for the programmer who
 runs into this issue the first time.

 As it is now, we make a single call to `read()`  in
 `get_string_from_pipe()` which a lot of the utility functions used for
 PT's and our firewall helper program uses. Calling
 `get_string_from_pipe()` directly instead of having the file descriptors
 attached to the main loop is where the issue lies IMO. This means they
 will stop asking for more data on the first `EAGAIN` return value and
 never make any additional calls to read more data. This is an issue in
 `log_from_pipe()` as well.

 Should we close this ticket as the issue is solved and create a new one
 where we can discuss how to attach these "rogue file descriptors" to the
 main loop?

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


More information about the tor-bugs mailing list