Mike Hommey <mh@xxxxxxxxxxxx> writes: > + get_host_and_port(&host, &port); > + > + if (*host && !port) { > + /* The host might contain a user:password string, ignore it > + * when searching for the port again */ > + char *end_user = strrchr(host, '@'); > + port = get_port(end_user ? end_user : host); Scanning from the right because host part would never have '@', but there could be an invalid URL with an unquoted '@' in userinfo part? Then this makes sense. > diff --git a/t/t5500-fetch-pack.sh b/t/t5500-fetch-pack.sh > index 91a69fc..9acba2b 100755 > --- a/t/t5500-fetch-pack.sh > +++ b/t/t5500-fetch-pack.sh > @@ -553,7 +553,7 @@ check_prot_path () { > Diag: protocol=$2 > Diag: path=$3 > EOF > - git fetch-pack --diag-url "$1" | grep -v hostandport= >actual && > + git fetch-pack --diag-url "$1" | grep -v host= | grep -v port= >actual && A single process: ... | grep -v -e '^host=' -e '^port=' perhaps? > @@ -562,22 +562,17 @@ check_prot_host_port_path () { > case "$2" in > *ssh*) > pp=ssh > - uah=userandhost > - ehost=$(echo $3 | tr -d "[]") > - diagport="Diag: port=$4" > ;; > *) > - pp=$p > - uah=hostandport > - ehost=$(echo $3$4 | sed -e "s/22$/:22/" -e "s/NONE//") > - diagport="" > + pp=$2 > ;; > esac > + ehost=$(echo $3 | tr -d "[]") > cat >exp <<-EOF && > Diag: url=$1 > Diag: protocol=$pp > - Diag: $uah=$ehost > - $diagport > + Diag: userandhost=$ehost > + Diag: port=$4 > Diag: path=$5 > EOF This makes the diag output simpler and allows the caller to expect the same set of variables, which is good. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html