[PATCH 2/2] Documentation: packfile-uri hash can be longer than 40 hex chars
- From
Ivan Frade via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Oct 8, 2021, 16:03 UTC
- Message-ID
- <497c5fd18d7206c137d8a62d229d2f295c9fe4fa.1633708986.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1052.git.1633708986.gitgitgadget@gmail.com>
From: Ivan Frade <ifrade@google.com>
Packfile-uri line specifies a hash of 40 hex character, but with SHA256 this hash size is 64. There are already tests using SHA256 (e.g. in ubuntu-latest/linux-clang).
Update protocol-v2 documentation to indicate that the hash size depends on the hash algorithm in use.
Signed-off-by: Ivan Frade <ifrade@google.com> --- Documentation/technical/protocol-v2.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/Documentation/technical/protocol-v2.txt b/Documentation/technical/protocol-v2.txt index 21e8258ccf3..a23f12d6c2b 100644 --- a/Documentation/technical/protocol-v2.txt +++ b/Documentation/technical/protocol-v2.txt @@ -393,7 +393,7 @@ header. Most sections are sent only when the packfile is sent. wanted-ref = obj-id SP refname packfile-uris = PKT-LINE("packfile-uris" LF) *packfile-uri - packfile-uri = PKT-LINE(40*(HEXDIGIT) SP *%x20-ff LF) + packfile-uri = PKT-LINE((40|64)*(HEXDIGIT) SP *%x20-ff LF) packfile = PKT-LINE("packfile" LF) *PKT-LINE(%x01-03 *%x00-ff) @@ -476,9 +476,9 @@ header. Most sections are sent only when the packfile is sent. * For each URI the server sends, it sends a hash of the pack's contents (as output by git index-pack) followed by the URI. - * The hashes are 40 hex characters long. When Git upgrades to a new - hash algorithm, this might need to be updated. (It should match - whatever index-pack outputs after "pack\t" or "keep\t". + * The hashes length is defined by the hash algorithm (40 hex + characters in SHA-1, 64 in SHA-256). It should match whatever + index-pack outputs after "pack\t" or "keep\t". packfile section * This section is only included if the client has sent 'want'
-- gitgitgadget