notes: move hex_to_bytes() to hex.c and export it

Make the function for converting pairs of hexadecimal digits to binary
available to other call sites.

Signed-off-by: Rene Scharfe <l.s.r@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
René Scharfe
2017-10-31 14:46:49 +01:00
committed by Junio C Hamano
parent cb5918aa0d
commit 0ec218656a
3 changed files with 19 additions and 17 deletions

12
hex.c
View File

@ -35,6 +35,18 @@ const signed char hexval_table[256] = {
-1, -1, -1, -1, -1, -1, -1, -1, /* f8-ff */
};
int hex_to_bytes(unsigned char *binary, const char *hex, size_t len)
{
for (; len; len--, hex += 2) {
unsigned int val = (hexval(hex[0]) << 4) | hexval(hex[1]);
if (val & ~0xff)
return -1;
*binary++ = val;
}
return 0;
}
int get_sha1_hex(const char *hex, unsigned char *sha1)
{
int i;