Merge branch 'jk/http-walker-buffer-underflow-fix'
"Dumb http" transport used to misparse a nonsense http-alternates response, which has been fixed. * jk/http-walker-buffer-underflow-fix: http-walker: fix buffer underflow processing remote alternatesmaint
commit
2af882be01
|
@ -301,13 +301,16 @@ static void process_alternates_response(void *callback_data)
|
|||
okay = 1;
|
||||
}
|
||||
}
|
||||
/* skip "objects\n" at end */
|
||||
if (okay) {
|
||||
struct strbuf target = STRBUF_INIT;
|
||||
strbuf_add(&target, base, serverlen);
|
||||
strbuf_add(&target, data + i, posn - i - 7);
|
||||
|
||||
if (is_alternate_allowed(target.buf)) {
|
||||
strbuf_add(&target, data + i, posn - i);
|
||||
if (!strbuf_strip_suffix(&target, "objects")) {
|
||||
warning("ignoring alternate that does"
|
||||
" not end in 'objects': %s",
|
||||
target.buf);
|
||||
strbuf_release(&target);
|
||||
} else if (is_alternate_allowed(target.buf)) {
|
||||
warning("adding alternate object store: %s",
|
||||
target.buf);
|
||||
newalt = xmalloc(sizeof(*newalt));
|
||||
|
|
Loading…
Reference in New Issue