1/* 2 * printByteBuffer.h 3 * byteutils 4 * 5 */ 6 7#include <stdint.h> 8#include <stdlib.h> 9#include <stdio.h> 10#include <string.h> 11 12#ifndef _BYTEBUFFER_H_ 13#define _BYTEBUFFER_H_ 14 15typedef struct byte_buf { 16 size_t len; 17 uint8_t *bytes; 18} byteBufferStruct, *byteBuffer; 19 20void printByteBuffer(byteBuffer bb, char *name); 21 22void printBytes(uint8_t *buff, size_t len, char *name); 23 24byteBuffer 25mallocByteBuffer(size_t len); 26 27byteBuffer 28hexStringToBytes(const char *inhex); 29 30byteBuffer 31hexStringToBytesWithSpaces(char *inhex, int breaks); 32 33static inline byteBuffer 34hexStringToBytesIfNotNULL(char *inhex) { 35 if(inhex) return hexStringToBytes(inhex); 36 return NULL; 37} 38 39char 40*bytesToHexStringWithSpaces(byteBuffer bb, int breaks); 41 42byteBuffer 43bytesToBytes(void *bytes, size_t len); 44 45int 46bytesAreEqual(byteBuffer b1, byteBuffer b2); 47 48char 49*bytesToHexString(byteBuffer bytes); 50 51byteBuffer 52genRandomByteBuffer(size_t minSize, size_t maxSize); 53 54size_t 55genRandomSize(size_t minSize, size_t maxSize); 56 57#endif /* _BYTEBUFFER_H_ */ 58