Commit c41e20b3 authored by Andy Whitcroft's avatar Andy Whitcroft Committed by Junio C Hamano

send-pack: remove remote reference limit

When build a pack for a push we query the remote copy for existant
heads.  These are used to prune unnecessary objects from the pack.
As we receive the remote references in get_remote_heads() we validate
the reference names via check_ref() which includes a length check;
rejecting those >45 characters in size.

This is a miss converted change, it was originally designed to reject
messages which were less than 45 characters in length (a 40 character
sha1 and refs/) to prevent comparing unitialised memory.  check_ref()
now gets the raw length so check for at least 5 characters.
Signed-off-by: default avatarAndy Whitcroft <[email protected]>
Signed-off-by: default avatarJunio C Hamano <[email protected]>
parent 825b045f
......@@ -17,7 +17,7 @@ static int check_ref(const char *name, int len, unsigned int flags)
if (!flags)
return 1;
if (len > 45 || memcmp(name, "refs/", 5))
if (len < 5 || memcmp(name, "refs/", 5))
return 0;
/* Skip the "refs/" part */
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment