Move hexdump() function to utils
This commit is contained in:
parent
692780b313
commit
de0f3620e6
|
@ -69,47 +69,6 @@ void print_complex_array(const char *varname, float complex const *array, size_t
|
|||
}
|
||||
|
||||
|
||||
void hexdump(const uint8_t *data, size_t len)
|
||||
{
|
||||
static const char lut[16] = "0123456789ABCDEF";
|
||||
static const size_t BYTES_PER_LINE = 16;
|
||||
|
||||
size_t pos = 0;
|
||||
|
||||
while(pos < len) {
|
||||
size_t bytes_in_line = len - pos;
|
||||
if(bytes_in_line > BYTES_PER_LINE) {
|
||||
bytes_in_line = BYTES_PER_LINE;
|
||||
}
|
||||
|
||||
for(size_t i = 0; i < BYTES_PER_LINE; i++) {
|
||||
if(i >= bytes_in_line) {
|
||||
fputs(" ", stderr);
|
||||
} else {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
fprintf(stderr, "%c%c ", lut[byte >> 4], lut[byte & 0x0F]);
|
||||
}
|
||||
}
|
||||
|
||||
fputs(" ", stderr);
|
||||
|
||||
for(size_t i = 0; i < bytes_in_line; i++) {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
if(isprint(byte)) {
|
||||
putc(byte, stderr);
|
||||
} else {
|
||||
putc('.', stderr);
|
||||
}
|
||||
}
|
||||
|
||||
putc('\n', stderr);
|
||||
pos += bytes_in_line;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void cb_rx(rx_evt_t evt, const struct layer1_rx_s *rx, uint8_t *packet_data, size_t packet_len)
|
||||
{
|
||||
int ret;
|
||||
|
|
|
@ -97,3 +97,44 @@ void sleep_until(double hires_time)
|
|||
} while(ret == EINTR);
|
||||
}
|
||||
|
||||
void hexdump(const uint8_t *data, size_t len)
|
||||
{
|
||||
static const char lut[16] = "0123456789ABCDEF";
|
||||
static const size_t BYTES_PER_LINE = 16;
|
||||
|
||||
size_t pos = 0;
|
||||
|
||||
while(pos < len) {
|
||||
size_t bytes_in_line = len - pos;
|
||||
if(bytes_in_line > BYTES_PER_LINE) {
|
||||
bytes_in_line = BYTES_PER_LINE;
|
||||
}
|
||||
|
||||
for(size_t i = 0; i < BYTES_PER_LINE; i++) {
|
||||
if(i >= bytes_in_line) {
|
||||
fputs(" ", stderr);
|
||||
} else {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
fprintf(stderr, "%c%c ", lut[byte >> 4], lut[byte & 0x0F]);
|
||||
}
|
||||
}
|
||||
|
||||
fputs(" ", stderr);
|
||||
|
||||
for(size_t i = 0; i < bytes_in_line; i++) {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
if(isprint(byte)) {
|
||||
putc(byte, stderr);
|
||||
} else {
|
||||
putc('.', stderr);
|
||||
}
|
||||
}
|
||||
|
||||
putc('\n', stderr);
|
||||
pos += bytes_in_line;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -28,4 +28,6 @@ void sleep_until(double hires_time);
|
|||
void fsleep(double d);
|
||||
double get_hires_time(void);
|
||||
|
||||
void hexdump(const uint8_t *data, size_t len);
|
||||
|
||||
#endif // UTILS_H
|
||||
|
|
|
@ -33,47 +33,6 @@ void print_complex_array(const char *varname, float complex const *array, size_t
|
|||
}
|
||||
|
||||
|
||||
void hexdump(const uint8_t *data, size_t len)
|
||||
{
|
||||
static const char lut[16] = "0123456789ABCDEF";
|
||||
static const size_t BYTES_PER_LINE = 16;
|
||||
|
||||
size_t pos = 0;
|
||||
|
||||
while(pos < len) {
|
||||
size_t bytes_in_line = len - pos;
|
||||
if(bytes_in_line > BYTES_PER_LINE) {
|
||||
bytes_in_line = BYTES_PER_LINE;
|
||||
}
|
||||
|
||||
for(size_t i = 0; i < BYTES_PER_LINE; i++) {
|
||||
if(i >= bytes_in_line) {
|
||||
fputs(" ", stderr);
|
||||
} else {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
fprintf(stderr, "%c%c ", lut[byte >> 4], lut[byte & 0x0F]);
|
||||
}
|
||||
}
|
||||
|
||||
fputs(" ", stderr);
|
||||
|
||||
for(size_t i = 0; i < bytes_in_line; i++) {
|
||||
uint8_t byte = data[pos+i];
|
||||
|
||||
if(isprint(byte)) {
|
||||
putc(byte, stderr);
|
||||
} else {
|
||||
putc('.', stderr);
|
||||
}
|
||||
}
|
||||
|
||||
putc('\n', stderr);
|
||||
pos += bytes_in_line;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void cb_rx(rx_evt_t evt, const layer1_rx_t *rx, uint8_t *packet_data, size_t packet_len)
|
||||
{
|
||||
(void)rx;
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
#include <liquid/liquid.h>
|
||||
|
||||
#include "logger.h"
|
||||
#include "utils.h"
|
||||
#include "layer1/rx.h"
|
||||
|
||||
#include "config.h"
|
||||
|
|
Loading…
Reference in a new issue