Advertise and support side-band-64k when calling receive-pack #1410
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We had a customer try pushing with libgit2 to Gitblit, a JGit-based Git server. Even though we send up
report-status
in the capabilities line, it does not send back a push report. (The push does succeed and the refs are updated on the remote side.) This leads togit_push_finish
failing with the error messageEarly EOF
.It looks like this particular Git server will not send back a push report unless we also advertise support for
side-band-64k
. If we do advertise support forside-band-64k
, then we get back a push report that is not sidebanded at all. This is also weird. If you advertise support forside-band-64k
to a real Git server on receive-pack, then you get the push report in sideband channel 1 (data).This pull request adds support for
side-band-64k
to the parser for the receive-pack response (the push report), and we start advertising it. So now we support (as does core git) the server sending us the push report sidebanded (or not). That means you can push to a real Git server, or to this Gitblit server, without any trouble.