Merge branch 'jk/remove-sha1-to-hex'

Code clean-up.

* jk/remove-sha1-to-hex:
  hex: drop sha1_to_hex()
  hex: drop sha1_to_hex_r()
This commit is contained in:
Junio C Hamano 2019-12-01 09:04:36 -08:00
commit f165457618
4 changed files with 5 additions and 47 deletions

View file

@ -1451,7 +1451,8 @@ int get_oid_hex(const char *hex, struct object_id *sha1);
int hex_to_bytes(unsigned char *binary, const char *hex, size_t len);
/*
* Convert a binary hash to its hex equivalent. The `_r` variant is reentrant,
* Convert a binary hash in "unsigned char []" or an object name in
* "struct object_id *" to its hex equivalent. The `_r` variant is reentrant,
* and writes the NUL-terminated output to the buffer `out`, which must be at
* least `GIT_MAX_HEXSZ + 1` bytes, and returns a pointer to out for
* convenience.
@ -1459,13 +1460,12 @@ int hex_to_bytes(unsigned char *binary, const char *hex, size_t len);
* The non-`_r` variant returns a static buffer, but uses a ring of 4
* buffers, making it safe to make multiple calls for a single statement, like:
*
* printf("%s -> %s", sha1_to_hex(one), sha1_to_hex(two));
* printf("%s -> %s", hash_to_hex(one), hash_to_hex(two));
* printf("%s -> %s", oid_to_hex(one), oid_to_hex(two));
*/
char *hash_to_hex_algop_r(char *buffer, const unsigned char *hash, const struct git_hash_algo *);
char *sha1_to_hex_r(char *out, const unsigned char *sha1);
char *oid_to_hex_r(char *out, const struct object_id *oid);
char *hash_to_hex_algop(const unsigned char *hash, const struct git_hash_algo *); /* static buffer result! */
char *sha1_to_hex(const unsigned char *sha1); /* same static buffer */
char *hash_to_hex(const unsigned char *hash); /* same static buffer */
char *oid_to_hex(const struct object_id *oid); /* same static buffer */

View file

@ -10,38 +10,6 @@ struct object_id *OIDPTR;
- is_null_sha1(OIDPTR->hash)
+ is_null_oid(OIDPTR)
@@
struct object_id OID;
@@
- sha1_to_hex(OID.hash)
+ oid_to_hex(&OID)
@@
identifier f != oid_to_hex;
struct object_id *OIDPTR;
@@
f(...) {<...
- sha1_to_hex(OIDPTR->hash)
+ oid_to_hex(OIDPTR)
...>}
@@
expression E;
struct object_id OID;
@@
- sha1_to_hex_r(E, OID.hash)
+ oid_to_hex_r(E, &OID)
@@
identifier f != oid_to_hex_r;
expression E;
struct object_id *OIDPTR;
@@
f(...) {<...
- sha1_to_hex_r(E, OIDPTR->hash)
+ oid_to_hex_r(E, OIDPTR)
...>}
@@
struct object_id OID;
@@

10
hex.c
View file

@ -90,11 +90,6 @@ char *hash_to_hex_algop_r(char *buffer, const unsigned char *hash,
return buffer;
}
char *sha1_to_hex_r(char *buffer, const unsigned char *sha1)
{
return hash_to_hex_algop_r(buffer, sha1, &hash_algos[GIT_HASH_SHA1]);
}
char *oid_to_hex_r(char *buffer, const struct object_id *oid)
{
return hash_to_hex_algop_r(buffer, oid->hash, the_hash_algo);
@ -108,11 +103,6 @@ char *hash_to_hex_algop(const unsigned char *hash, const struct git_hash_algo *a
return hash_to_hex_algop_r(hexbuffer[bufno], hash, algop);
}
char *sha1_to_hex(const unsigned char *sha1)
{
return hash_to_hex_algop(sha1, &hash_algos[GIT_HASH_SHA1]);
}
char *hash_to_hex(const unsigned char *hash)
{
return hash_to_hex_algop(hash, the_hash_algo);

View file

@ -19,7 +19,7 @@ void git_SHA1DCFinal(unsigned char hash[20], SHA1_CTX *ctx)
if (!SHA1DCFinal(hash, ctx))
return;
die("SHA-1 appears to be part of a collision attack: %s",
sha1_to_hex(hash));
hash_to_hex_algop(hash, &hash_algos[GIT_HASH_SHA1]));
}
/*