/* \summary: SMB/CIFS printer */
#ifdef HAVE_CONFIG_H
-#include "config.h"
+#include <config.h>
#endif
-#include <netdissect-stdinc.h>
+#include "netdissect-stdinc.h"
#include <string.h>
#include "extract.h"
#include "smb.h"
-static const char tstr[] = "[|SMB]";
static int request = 0;
static int unicodestr = 0;
smb_fdata(ndo, param, fmt, param + pcnt, unicodestr);
if (dcnt) {
ND_PRINT("data:\n");
- smb_print_data(ndo, data, dcnt);
+ smb_data_print(ndo, data, dcnt);
}
}
}
if (dcnt) {
ND_PRINT("data:\n");
- smb_print_data(ndo, data, dcnt);
+ smb_data_print(ndo, data, dcnt);
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
static const struct smbfnsint trans2_fns[] = {
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
static void
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
smb_fdata(ndo, words + 1, f1, min(words + 1 + wct * 2, maxbuf),
unicodestr);
else
- smb_print_data(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
+ smb_data_print(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
smb_fdata(ndo, data + 2, f2, min(data + 2 + EXTRACT_LE_U_2(data),
maxbuf), unicodestr);
else
- smb_print_data(ndo, data + 2,
+ smb_data_print(ndo, data + 2,
min(EXTRACT_LE_U_2(data), PTR_DIFF(maxbuf, data + 2)));
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
static void
smb_fdata(ndo, words + 1, f1, min(words + 1 + wct * 2, maxbuf),
unicodestr);
else
- smb_print_data(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
+ smb_data_print(ndo, words + 1, min(wct * 2, PTR_DIFF(maxbuf, words + 1)));
ND_TCHECK_2(data);
bcc = EXTRACT_LE_U_2(data);
smb_fdata(ndo, data + 2, f2, min(data + 2 + EXTRACT_LE_U_2(data),
maxbuf), unicodestr);
else
- smb_print_data(ndo, data + 2,
+ smb_data_print(ndo, data + 2,
min(EXTRACT_LE_U_2(data), PTR_DIFF(maxbuf, data + 2)));
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
static void
smb_fdata(ndo, data + 2, f2, min(data + 2 + EXTRACT_LE_U_2(data),
maxbuf), unicodestr);
else
- smb_print_data(ndo, data + 2,
+ smb_data_print(ndo, data + 2,
min(EXTRACT_LE_U_2(data), PTR_DIFF(maxbuf, data + 2)));
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
smb_fdata(ndo, buf, fmt_smbheader, buf + 33, unicodestr);
if (nterrcodes) {
- nterror = EXTRACT_LE_U_4(buf + 5);
+ nterror = EXTRACT_LE_U_4(buf + 5);
if (nterror)
ND_PRINT("NTError = %s\n", nt_errstr(nterror));
} else {
} else {
if (bcc > 0) {
ND_PRINT("smb_buf[]=\n");
- smb_print_data(ndo, data + 2, min(bcc, PTR_DIFF(maxbuf, data + 2)));
+ smb_data_print(ndo, data + 2, min(bcc, PTR_DIFF(maxbuf, data + 2)));
}
}
}
ND_PRINT("\n");
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
u_int nbt_len;
const u_char *maxbuf;
+ ndo->ndo_protocol = "nbt_tcp";
if (length < 4)
goto trunc;
if (ndo->ndo_snapend < data)
}
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
static const struct tok opcode_str[] = {
const u_char *p;
u_int total, i;
+ ndo->ndo_protocol = "nbt_udp137";
ND_TCHECK_2(data + 10);
name_trn_id = EXTRACT_BE_U_2(data);
response = (EXTRACT_U_1(data + 2) >> 7);
} else {
if (p >= maxbuf)
goto out;
- smb_print_data(ndo, p, min(rdlen, length - (p - data)));
+ smb_data_print(ndo, p, min(rdlen, length - (p - data)));
p += rdlen;
}
}
ND_PRINT("\n");
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
/*
u_int smb_len;
const u_char *maxbuf;
+ ndo->ndo_protocol = "smb_tcp";
if (length < 4)
goto trunc;
if (ndo->ndo_snapend < data)
ND_PRINT(" SMB-over-TCP packet:(raw data or continuation?)\n");
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
/*
{
const u_char *maxbuf = data + length;
+ ndo->ndo_protocol = "nbt_udp138";
if (maxbuf > ndo->ndo_snapend)
maxbuf = ndo->ndo_snapend;
if (maxbuf <= data)
const u_char *data2;
int is_truncated = 0;
+ ndo->ndo_protocol = "netbeui";
if (maxbuf > ndo->ndo_snapend)
maxbuf = ndo->ndo_snapend;
ND_TCHECK_1(data + 4);
ND_PRINT("\n");
return;
trunc:
- ND_PRINT("%s", tstr);
+ nd_print_trunc(ndo);
}
u_int i;
const u_char *maxbuf;
+ ndo->ndo_protocol = "ipx_netbios";
maxbuf = data + length;
/* Don't go past the end of the captured data in the packet. */
if (maxbuf > ndo->ndo_snapend)