From: Shawn O. Pearce Date: Wed, 03 Jun 2009 17:19:00 GMT Subject: [JGIT PATCH v2] Send non-standard port in host header of git:// Message-ID: <20090603171900.GK3355@spearce.org> In-Reply-To: <1244049330-4019-1-git-send-email-spearce@spearce.org> On a git://host:port/path style URL, if port is not the IANA registered port 9418 for git, the remote git daemon expects us to send "\0host=host:port\0" in the virtual host slot. Signed-off-by: Shawn O. Pearce --- Arrrgh. v2 deals with the case when the port isn't in the URL at all, its <= 0, in which case its the default port, so we shouldn't send it to the server. Sorry. :-) .../spearce/jgit/transport/TransportGitAnon.java | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/org.spearce.jgit/src/org/spearce/jgit/transport/TransportGitAnon.java b/org.spearce.jgit/src/org/spearce/jgit/transport/TransportGitAnon.java index add7e2a..0c80b9d 100644 --- a/org.spearce.jgit/src/org/spearce/jgit/transport/TransportGitAnon.java +++ b/org.spearce.jgit/src/org/spearce/jgit/transport/TransportGitAnon.java @@ -103,6 +103,10 @@ void service(final String name, final PacketLineOut pckOut) cmd.append('\0'); cmd.append("host="); cmd.append(uri.getHost()); + if (uri.getPort() > 0 && uri.getPort() != GIT_PORT) { + cmd.append(":"); + cmd.append(uri.getPort()); + } cmd.append('\0'); pckOut.writeString(cmd.toString()); pckOut.flush(); -- 1.6.3.1.333.g3ebba7