@matheusbsbs / matheus-bagliano / commits / 3013118eb8
Fork 0

builtin/receive-pack: avoid generic function name hmac()

fabec2c5c3 (builtin/receive-pack: switch to use the_hash_algo, 2019-08-18) renames hmac_sha1 to hmac, as it was updated to use the hash function used by git (which won't be sha1 in the future). hmac() is provided by NetBSD >= 8 libc and therefore conflicts as shown by : builtin/receive-pack.c:421:13: error: conflicting types for 'hmac' static void hmac(unsigned char *out, ^~~~ In file included from ./git-compat-util.h:172:0, from ./builtin.h:4, from builtin/receive-pack.c:1: /usr/include/stdlib.h:305:10: note: previous declaration of 'hmac' was here ssize_t hmac(const char *, const void *, size_t, const void *, size_t, void *, ^~~~ Rename it again to hmac_hash to reflect it will use the git's defined hash function and avoid the conflict, while at it update a comment to better describe the HMAC function that was used. Signed-off-by: Carlo Marcelo Arenas Belón <carenas@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Carlo Marcelo Arenas Belón committed May 5, 2020 at 02:53 UTC 3013118eb86f1c9e3d9b669bc23e770ee6e04174
1 file changed +3 -3
builtin/receive-pack.c
+3 -3
@@ -417,7 +417,7 @@ static int copy_to_sideband(int in, int out, void *arg)
417 return 0;
418 }
419
420 -static void hmac(unsigned char *out,
420 +static void hmac_hash(unsigned char *out,
421 const char *key_in, size_t key_len,
422 const char *text, size_t text_len)
423 {
@@ -462,10 +462,10 @@ static char *prepare_push_cert_nonce(const char *path, timestamp_t stamp)
462 unsigned char hash[GIT_MAX_RAWSZ];
463
464 strbuf_addf(&buf, "%s:%"PRItime, path, stamp);
465 - hmac(hash, buf.buf, buf.len, cert_nonce_seed, strlen(cert_nonce_seed));
465 + hmac_hash(hash, buf.buf, buf.len, cert_nonce_seed, strlen(cert_nonce_seed));
466 strbuf_release(&buf);
467
468 - /* RFC 2104 5. HMAC-SHA1-80 */
468 + /* RFC 2104 5. HMAC-SHA1 or HMAC-SHA256 */
469 strbuf_addf(&buf, "%"PRItime"-%.*s", stamp, (int)the_hash_algo->hexsz, hash_to_hex(hash));
470 return strbuf_detach(&buf, NULL);
471 }