version 1.1.2.6, 2013/06/25 17:06:02
|
version 1.1.2.9, 2013/06/26 12:27:40
|
Line 79 ShowPkt(void *buffer)
|
Line 79 ShowPkt(void *buffer)
|
assert(buffer); |
assert(buffer); |
|
|
#ifdef __FreeBSD__ |
#ifdef __FreeBSD__ |
snprintf(szLine, BUFSIZ, "#Packet length: %d\n>>> Ethernet ...\n", flg ? bzh->bzh_kernel_len : bpf->bh_datalen); | bpf = (struct bpf_hdr*) (buffer + (flg ? sizeof(struct bpf_zbuf_header) : 0)); |
| snprintf(szLine, BUFSIZ, "#Packet length: %d/%d\n>>> Ethernet ...\n", flg ? bzh->bzh_kernel_len : bpf->bh_datalen, bpf->bh_datalen); |
strlcat(szShow, szLine, USHRT_MAX); |
strlcat(szShow, szLine, USHRT_MAX); |
eth = (struct ether_header *) (buffer + (flg ? bzh->bzh_kernel_len : bpf->bh_hdrlen)); | eth = (struct ether_header *) (buffer + (flg ? sizeof(struct bpf_zbuf_header) : 0) + bpf->bh_hdrlen); |
#else |
#else |
snprintf(szLine, BUFSIZ, "#Packet length: %d\n>>> Ethernet ...\n", bpf->bh_datalen); |
snprintf(szLine, BUFSIZ, "#Packet length: %d\n>>> Ethernet ...\n", bpf->bh_datalen); |
strlcat(szShow, szLine, USHRT_MAX); |
strlcat(szShow, szLine, USHRT_MAX); |
Line 300 main(int argc, char **argv)
|
Line 301 main(int argc, char **argv)
|
strlcpy(szStr, *argv, sizeof szStr); |
strlcpy(szStr, *argv, sizeof szStr); |
|
|
#ifdef __FreeBSD__ |
#ifdef __FreeBSD__ |
dev = io_etherOpen(szStr, O_RDWR, 42, (u_int*) &siz, &bz); | dev = io_etherOpen(szStr, O_RDWR | O_NONBLOCK, 42, (u_int*) &siz, (flg) ? &bz : NULL); |
if (dev == -1) |
if (dev == -1) |
dev = io_etherOpen(szStr, O_RDWR, 42, (u_int*) &siz, NULL); | dev = io_etherOpen(szStr, O_RDWR | O_NONBLOCK, 42, (u_int*) &siz, NULL); |
#else |
#else |
dev = io_etherOpen(szStr, O_RDWR, 42, (u_int*) &siz, NULL); |
dev = io_etherOpen(szStr, O_RDWR, 42, (u_int*) &siz, NULL); |
#endif |
#endif |