[tor-dev] How to introduce new RELAY_COMMAND_* types and newcell fields?

Tom van der Woerdt info at tvdw.eu
Thu Sep 10 10:52:49 UTC 2015

On 10 Sep 2015, at 12:37, tordev123 at Safe-mail.net wrote:

>>> 3. Additional RELAY_COMMAND_* types for clients to request out-of-band
>>> HMAC request cells for Proposal 253.
> Do you need to request that data? How about always sending it from middle nodes? (Less leakage about the client.)
>>> 4. Additional RELAY_COMMAND_* opcodes for clients to request padding
>>> from relays (for an upcoming padding negotiation proposal).
>>> However, for items #3 and #4, if I introduce a new RELAY_COMMAND type
>>> and send it to a relay that doesn't support it, then that relay will
>>> emit a warning log message from connection_edge_process_relay_cell() in
>>> relay.c. How should I detect support? Based on advertised relay version
>>> in the consensus? What about non-standard relay implementations that
>>> don't use Tor's versioning?
>> I don't think you can use the consensus for this: for HS connections you
>> wont have any relay info.
> Wouldn't matter for 4, right?

Indeed, I was replying to the more generic case of 'how to detect support for feature X'


>> How about introducing very basic version info into 
>> created2/extended/rendezvous cells? You'd have to be really careful to 
>> not leak too much version info, of course.
> It seems much better to avoid that, if there is a workaround.

More information about the tor-dev mailing list