]> source.dussan.org Git - jgit.git/commit
Work around smart HTTP bugs in C Git 31/6531/4
authorShawn O. Pearce <spearce@spearce.org>
Wed, 27 Jun 2012 18:06:37 +0000 (11:06 -0700)
committerShawn O. Pearce <spearce@spearce.org>
Wed, 27 Jun 2012 21:11:42 +0000 (14:11 -0700)
commit1c6c73c5a9b8dd700be45d658f165a464265dba7
tree9dddd8e9bbf31cf23ad946f91468fed0ac19ef3f
parentdc23a7cc421f09da42192c54ea8d54fb2ca30dfb
Work around smart HTTP bugs in C Git

I have unfortunately introduced a few bugs in the native Git client
over the years. 1.7.5 is unable to send chunked requests correctly,
resulting in corrupt data at the server. Ban this client whenever
it uses chunked encoding with an error message.

Prior to some more recent versions, git push over HTTP failed to
report status information and error messages due to a race within
the client and its helper process. Check for these bad versions and
send errors as messages before the status report, enabling users
to see the failures on their terminal.

Change-Id: Ic62d6591cbd851d21dbb3e9b023d655eaecb0624
org.eclipse.jgit.http.server/resources/org/eclipse/jgit/http/server/HttpServerText.properties
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/ClientVersionUtil.java [new file with mode: 0644]
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/HttpServerText.java
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/ReceivePackServlet.java
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/ServletUtils.java
org.eclipse.jgit.http.server/src/org/eclipse/jgit/http/server/UploadPackServlet.java
org.eclipse.jgit.http.test/tst/org/eclipse/jgit/http/server/ClientVersionUtilTest.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/transport/BaseReceivePack.java
org.eclipse.jgit/src/org/eclipse/jgit/transport/ReceivePack.java