[PATCH 0/3] make smart-http more robust against bogus server input
- From
Jeff King <peff@peff.net>
- Date
- Feb 16, 2013, 06:44 UTC
- Message-ID
- <20130216064455.GA27063@sigill.intra.peff.net>
For the most part, smart-http just passes data to fetch-pack and send-pack, which take care of the heavy lifting. However, I did find a few corner cases around truncated data from the server, one of which can actually cause a deadlock.
I found these because I was trying to figure out what was going on with some hung git processes which were in a deadlock like the one described in patch 3. But having experimented and read the code, I don't think that it is triggerable from a normal clone, but rather only when you poke git-remote-curl in the right way. So it may or may not be my culprit, but these patches do make remote-curl more robust, which is a good thing.
[1/3]: pkt-line: teach packet_get_line a no-op mode [2/3]: remote-curl: verify smart-http metadata lines [3/3]: remote-curl: sanity check ref advertisement from server
-Peff