| 49 | } |
| 50 | |
| 51 | bool hex_encode(const void *buf, size_t bufsize, char *dest, size_t destsize) |
| 52 | { |
| 53 | size_t i; |
| 54 | |
| 55 | if (destsize < hex_str_size(bufsize)) |
| 56 | return false; |
| 57 | |
| 58 | for (i = 0; i < bufsize; i++) { |
| 59 | unsigned int c = ((const unsigned char *)buf)[i]; |
| 60 | *(dest++) = hexchar(c >> 4); |
| 61 | *(dest++) = hexchar(c & 0xF); |
| 62 | } |
| 63 | *dest = '\0'; |
| 64 | |
| 65 | return true; |
| 66 | } |