Hello,

While trying some of the new IPv6  related changes, it dawned on me that
Fossil clone/sync  using SSH has  had IPv6  support inherent in  the SSH
client  all along.  So I  tried it  and it  worked flawlessly,  with one
exception. The information  it printed out was wrong as  it told me that
the  IP address  to which  it  connected was  an IPv4  address, when  in
reality it was IPv6  (I could easily tell because my  SSH client told me
that I had connected to the host via an IPv6 address).

I think this behavior is wrong (and am disappointed that I introduced it
in the first place).

I think a better  behavior would be just to simply log  the URL name let
the user figure out what IP it connected to if they care:

http://www.fossil-scm.org/index.html/info/52f08008e2790a8140d947a680bb1c73d9bc1f5d

Another alternative  would be  to do something  similar to  the standard
socket connect and lookup the hostname  and try each returned address in
sequence (thus duplicating what SSH  already does in Fossil). This would
allow Fossil  to reliably know what  IP address it connected  to, but it
would mean calling  SSH with a different IP each  time through the loop,
for example:

ssh user@192.168.5.6 fossil http
ssh user@fe80::22f:a0ff:fea7:1afb fossil http

And so forth, however, this would not be without side-effects either. If
the user  has custom  entries in their  ~/.ssh/config for  the hostnames
that they  use with Fossil, the  attempt to be smart  about figuring out
the IP  would invalidate their  configuration (e.g. a Host  section that
overrides what the username is when connecting).

Any thoughts? Is  the commit above sufficient for  Fossil's purposes? Or
shall I go down the path of  making Fossil be more diligent in obtaining
the IP address? Or something entirely different?

Thanks,

Andy
-- 
TAI64 timestamp: 4000000054c74372


_______________________________________________
fossil-dev mailing list
fossil-dev@lists.fossil-scm.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/fossil-dev

Reply via email to