[Twisted-Python] Does anyone need / make use of SSHTransportAddress introduced in 12.1 ?
Glyph
glyph at twistedmatrix.com
Wed Mar 18 02:24:19 MDT 2015
> On Mar 17, 2015, at 11:51 PM, Adi Roiban <adi at roiban.ro> wrote:
>
> On 18 March 2015 at 05:30, Glyph <glyph at twistedmatrix.com <mailto:glyph at twistedmatrix.com>> wrote:
>>
>> On Mar 17, 2015, at 6:44 AM, Adi Roiban <adi at roiban.ro> wrote:
>>
>> Hi,
>>
>> While trying to fix https://twistedmatrix.com/trac/ticket/5999 I found
>> out about the SSHTransportAddress introduced in 12.1.
>>
>> SSHTransportAddress is just an IAddress wrapping in a non-tranparent
>> way another IAddress.
>>
>> It was introduces in #2997 which was accepted without any reason why
>> we need SSHTransportAddress and why SSHTransportAddress is better than
>> an IAddress.
>> I could not find any documentation describing why we need this new class.
>>
>>
>> The reason that we need this new type of address is to ensure that any code
>> inspecting this address and attempting to construct a similar connection
>> based upon it is not mislead into creating a transport which is not similar
>> to the one it is indicating.
>>
>> Arguably, SSHTransportAddress is missing lots of important information: is
>> the address indicative of a client, or a server? If a client, what hostname
>> was specified? If a server, what user is connected? Two SSH connections to
>> the same IP address / port number are not necessarily equivalent, but the
>> current implementation of SSHTransportAddress would compare that way, which
>> is unfortunate.
>
> [snip]
>
>> SSHTransportAddress is useful, but its only utility is in explicitly
>> breaking use-cases that in fact should not work, so it's a bit user-hostile,
>> so I can see why you'd feel it is useless. If it were retrofitted to keep
>> enough information to be useful in its own right, then that would be a lot
>> better.
>
> Thanks!
No problem, always happy to explain :).
> Are these design notes for SSHTransportAddress documented somewhere?
Doubtful. They seem like an obvious consequence of how the various pieces fit together, for me; I feel like every IAddress implementer would have to contain a similar comment, if it were documented anywhere. However, this really should be written somewhere that people, especially twisted maintainers, will see it. Any suggestions?
> I will update my changes to start making use of SSHTransportAddress.
Great.
> I have created a ticket to add client/server information into the
> SSHTransportAddress. I am using this as a pretext to try to improve
> the documentation for SSHTransportAddress.
> https://twistedmatrix.com/trac/ticket/7825#ticket <https://twistedmatrix.com/trac/ticket/7825#ticket>
Thanks!
-g
-------------- next part --------------
An HTML attachment was scrubbed...
URL: </pipermail/twisted-python/attachments/20150318/5bab42c5/attachment-0002.html>
More information about the Twisted-Python
mailing list