X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/8863fc0e5d6cc6bf64875fa4156ddfd54c6cf9c9..4350b85ea02fcfc17b4c99db81fd48317d48b98d:/util.c diff --git a/util.c b/util.c index 4304e519..13c87225 100644 --- a/util.c +++ b/util.c @@ -19,6 +19,7 @@ * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ +#define NETDISSECT_REWORKED #ifdef HAVE_CONFIG_H #include "config.h" #endif @@ -44,7 +45,8 @@ * Return true if truncated. */ int -fn_print(register const u_char *s, register const u_char *ep) +fn_print(netdissect_options *ndo, + register const u_char *s, register const u_char *ep) { register int ret; register u_char c; @@ -58,14 +60,13 @@ fn_print(register const u_char *s, register const u_char *ep) } if (!ND_ISASCII(c)) { c = ND_TOASCII(c); - putchar('M'); - putchar('-'); + ND_PRINT((ndo, "M-")); } if (!ND_ISPRINT(c)) { c ^= 0x40; /* DEL to ?, others to alpha */ - putchar('^'); + ND_PRINT((ndo, "^")); } - putchar(c); + ND_PRINT((ndo, "%c", c)); } return(ret); } @@ -76,8 +77,8 @@ fn_print(register const u_char *s, register const u_char *ep) * Return true if truncated. */ int -fn_printn(register const u_char *s, register u_int n, - register const u_char *ep) +fn_printn(netdissect_options *ndo, + register const u_char *s, register u_int n, register const u_char *ep) { register u_char c; @@ -86,14 +87,13 @@ fn_printn(register const u_char *s, register u_int n, c = *s++; if (!ND_ISASCII(c)) { c = ND_TOASCII(c); - putchar('M'); - putchar('-'); + ND_PRINT((ndo, "M-")); } if (!ND_ISPRINT(c)) { c ^= 0x40; /* DEL to ?, others to alpha */ - putchar('^'); + ND_PRINT((ndo, "^")); } - putchar(c); + ND_PRINT((ndo, "%c", c)); } return (n == 0) ? 0 : 1; } @@ -104,8 +104,9 @@ fn_printn(register const u_char *s, register u_int n, * Return true if truncated. */ int -fn_printzp(register const u_char *s, register u_int n, - register const u_char *ep) +fn_printzp(netdissect_options *ndo, + register const u_char *s, register u_int n, + register const u_char *ep) { register int ret; register u_char c; @@ -120,14 +121,13 @@ fn_printzp(register const u_char *s, register u_int n, } if (!ND_ISASCII(c)) { c = ND_TOASCII(c); - putchar('M'); - putchar('-'); + ND_PRINT((ndo, "M-")); } if (!ND_ISPRINT(c)) { c ^= 0x40; /* DEL to ?, others to alpha */ - putchar('^'); + ND_PRINT((ndo, "^")); } - putchar(c); + ND_PRINT((ndo, "%c", c)); } return (n == 0) ? 0 : ret; } @@ -347,7 +347,7 @@ bittok2str_internal(register const struct tok *lp, register const char *fmt, } if (buflen != 0) { /* did we find anything */ - /* yep, set the the trailing zero 2 bytes before to eliminate the last comma & whitespace */ + /* yep, set the trailing zero 2 bytes before to eliminate the last comma & whitespace */ buf[buflen-2] = '\0'; return (buf); } @@ -409,9 +409,9 @@ tok2strary_internal(register const char **lp, int n, register const char *fmt, */ int -mask2plen(u_int32_t mask) +mask2plen(uint32_t mask) { - u_int32_t bitmasks[33] = { + uint32_t bitmasks[33] = { 0x00000000, 0x80000000, 0xc0000000, 0xe0000000, 0xf0000000, 0xf8000000, 0xfc000000, 0xfe000000, 0xff000000,