diff options
Diffstat (limited to 'bsp/libwrap/misc')
| -rw-r--r-- | bsp/libwrap/misc/write_hex.c | 19 | 
1 files changed, 19 insertions, 0 deletions
| diff --git a/bsp/libwrap/misc/write_hex.c b/bsp/libwrap/misc/write_hex.c new file mode 100644 index 0000000..e678bdc --- /dev/null +++ b/bsp/libwrap/misc/write_hex.c @@ -0,0 +1,19 @@ +/* See LICENSE of license details. */ + +#include <stdint.h> +#include <unistd.h> +#include "platform.h" + +void write_hex(int fd, uint32_t hex) +{ +  uint8_t ii; +  uint8_t jj; +  char towrite; +  write(fd , "0x", 2); +  for (ii = 8 ; ii > 0; ii--) { +    jj = ii - 1; +    uint8_t digit = ((hex & (0xF << (jj*4))) >> (jj*4)); +    towrite = digit < 0xA ? ('0' + digit) : ('A' +  (digit - 0xA)); +    write(fd, &towrite, 1); +  } +} | 
