diff --git a/clatd.h b/clatd.h index e810a3b254..4be071cbcb 100644 --- a/clatd.h +++ b/clatd.h @@ -43,6 +43,10 @@ struct tun_data; // ie. if we ever read >= MAXMTU bytes we should discard. #define MAXMTU (0xFFFF + 28 + 1) #define PACKETLEN (sizeof(struct tun_pi) + MAXMTU) + +// logcat_hexdump() maximum binary data length +#define MAXDUMPLEN PACKETLEN + #define CLATD_VERSION "1.5" #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) diff --git a/dump.c b/dump.c index 289f161742..dff3d5ec8d 100644 --- a/dump.c +++ b/dump.c @@ -226,11 +226,11 @@ void dump_tcp6(const struct tcphdr *tcp, const struct ip6_hdr *ip6, const uint8_ /* generic hex dump */ void logcat_hexdump(const char *info, const uint8_t *data, size_t len) { - char output[PACKETLEN * 3 + 2]; + char output[MAXDUMPLEN * 3 + 2]; size_t i; output[0] = '\0'; - for (i = 0; i < len && i < PACKETLEN; i++) { + for (i = 0; i < len && i < MAXDUMPLEN; i++) { snprintf(output + i * 3, 4, " %02x", data[i]); } output[len * 3 + 3] = '\0';