diff options
| author | Egor Tensin <egor@tensin.name> | 2026-07-23 11:04:28 +0200 |
|---|---|---|
| committer | Egor Tensin <egor@tensin.name> | 2026-07-23 11:05:30 +0200 |
| commit | 127077c93bfee72470ba80b8b48e0a516129e9d4 (patch) | |
| tree | c81474ef57da4954b4843f817d488ecc3c533405 /aes/src/hex.c | |
| parent | aes: always require full inputs (diff) | |
| download | aes-tools-127077c93bfee72470ba80b8b48e0a516129e9d4.tar.gz aes-tools-127077c93bfee72470ba80b8b48e0a516129e9d4.zip | |
aes: factor out block formatting code
Diffstat (limited to 'aes/src/hex.c')
| -rw-r--r-- | aes/src/hex.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/aes/src/hex.c b/aes/src/hex.c index 62b6e5a..7a695b4 100644 --- a/aes/src/hex.c +++ b/aes/src/hex.c @@ -40,3 +40,19 @@ AES_StatusCode aes_parse_hex_string( return AES_SUCCESS; } + +char* aes_format_block_hex_partial(char* dest, AES_Block block, size_t numof_bytes) { + char* cursor = dest; + + AES_ALIGN(unsigned char, 16) bytes[16]; + aes_store_block_aligned(bytes, block); + + for (size_t i = 0; i < numof_bytes; ++i, cursor += 2) + sprintf(cursor, "%02x", bytes[i]); + + return cursor; +} + +char* aes_format_block_hex(char* dest, AES_Block block) { + return aes_format_block_hex_partial(dest, block, 16); +} |
