need router.exit to resolve correctly even without having descriptor in advance
The correction introduced in 0.1.1.13-alpha that fixes the semantics of REDIRECTSTREAM also breaks the ability for routername.exit to correctly determine the target address for the stream for cases in which we do not have the descriptor at the time that the stream is created. The reason is that the controller must now specify an explicit address when it uses REDIRECTSTREAM; it cannot simply provide routername.exit and hand it back to Tor, assuming that Tor will take care of binding it to a circuit that may have been constructed since the time at which the stream was created. So this means that the controller needs to be able to parse descriptors in order to find the address in the descriptor of the exit node for this circuit. This process breaks an important abstraction.
One possible solution is to allow REDIRECTSTREAM to be called with a special address argument, such as "0.0.0.0", that will designate to Tor that we want Tor to direct this stream to the IP address given in the descriptor of the exit node for the circuit to which it is attached. A concern with this approach is that it means two different circumstances under which Tor must determine the address for a SOCKS request given as routername.exit.
[Automatically added by flyspray2trac: Operating System: All]