Subject: bug#71972: 31.0.50; Tramp does not parse ipv6 address with port correctly

From: Yikai Zhao <[email-masked]>
Date: Sun, 7 Jul 2024 23:56:56 +0800

Thanks! I can confirm this patch fixes the issue for me.

BTW, is there any chance that this patch would make it into emacs 30 release?

Regards, Yikai

On Sun, Jul 7, 2024 at 6:28 PM Michael Albinus <[email-masked]> wrote:
>
> Yikai Zhao <[email-masked]> writes:
>
> > Hi,
>
> Hi,
>
> > Thanks for the patch. However, with this patch applied to master, the result is:
> >
> > (tramp-dissect-file-name "/ssh:[2001::abcd]#2202:/tmp/xxx")
> > => (tramp-file-name "ssh" nil nil #("Oldtown" 0 7 (tramp-default t))
> > "2202" "/tmp/xxx" nil) [2 times]
> >
> > ("oldtown" is my local hostname). Although the port is correctly
> > parsed, the host is now incorrect.
>
> Indeed, we have a race condition. tramp-host-with-port-regexp is defined
> before tramp-set-syntax has run.
>
> Could you, please, try the appended patch indeed?
>
> > Also note that in master, the correct file path for tramp.el is
> > lisp/net/tramp.el, so I had to manually edit your patch before
> > applying it. What version is your patch based on? Maybe the result is
> > different in different versions?
>
> I develop in the Tramp git repo. The files are identical with the ones
> in the Emacs git repo. However, there is a different directory structure.
>
> Best regards, Michael.
>