X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/c499612a7f1024a183d0200ef5f1ea7fba63a3e4..c6a5cc1bb49bcbc5f74c66bf780b8a1a05e8eb9d:/smbutil.c diff --git a/smbutil.c b/smbutil.c index c2249c45..4fd45568 100644 --- a/smbutil.c +++ b/smbutil.c @@ -235,11 +235,11 @@ name_len(netdissect_options *ndo, c = EXTRACT_U_1(s); if ((c & 0xC0) == 0xC0) return(2); - while (*s) { + while (EXTRACT_U_1(s)) { if (s >= maxbuf) return(-1); /* name goes past the end of the buffer */ ND_TCHECK_1(s); - s += (*s) + 1; + s += EXTRACT_U_1(s) + 1; ND_TCHECK_1(s); } return(PTR_DIFF(s, s0) + 1); @@ -254,7 +254,7 @@ print_asc(netdissect_options *ndo, { u_int i; for (i = 0; i < len; i++) - safeputchar(ndo, EXTRACT_U_1(buf + i)); + fn_print_char(ndo, EXTRACT_U_1(buf + i)); } static const char * @@ -275,7 +275,7 @@ name_type_str(int name_type) } void -smb_print_data(netdissect_options *ndo, const u_char *buf, u_int len) +smb_data_print(netdissect_options *ndo, const u_char *buf, u_int len) { u_int i = 0; @@ -318,8 +318,7 @@ smb_print_data(netdissect_options *ndo, const u_char *buf, u_int len) return; trunc: - ND_PRINT("\n"); - ND_PRINT("WARNING: Short packet. Try increasing the snap length\n"); + nd_print_trunc(ndo); } @@ -815,8 +814,7 @@ smb_fdata1(netdissect_options *ndo, return(buf); trunc: - ND_PRINT("\n"); - ND_PRINT("WARNING: Short packet. Try increasing the snap length\n"); + nd_print_trunc(ndo); return(NULL); } @@ -889,7 +887,7 @@ smb_fdata(netdissect_options *ndo, if (!depth && buf < maxbuf) { size_t len = PTR_DIFF(maxbuf, buf); ND_PRINT("Data: (%lu bytes)\n", (unsigned long)len); - smb_print_data(ndo, buf, len); + smb_data_print(ndo, buf, len); return(buf + len); } return(buf); @@ -1012,7 +1010,7 @@ static const struct { /* * return a SMB error string from a SMB buffer */ -char * +const char * smb_errstr(int class, int num) { static char ret[128];