mirror of
https://github.com/nmap/nmap.git
synced 2025-12-06 04:31:29 +00:00
Upgrade libpcap to 1.10.4
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#endif
|
||||
|
||||
#include "pcap-int.h"
|
||||
#include "diag-control.h"
|
||||
|
||||
#ifdef NEED_STRERROR_H
|
||||
#include "strerror.h"
|
||||
@@ -135,6 +136,13 @@ netfilter_read_linux(pcap_t *handle, int max_packets, pcap_handler callback, u_c
|
||||
bp = (unsigned char *)handle->buffer;
|
||||
} else
|
||||
bp = handle->bp;
|
||||
|
||||
/*
|
||||
* Loop through each message.
|
||||
*
|
||||
* This assumes that a single buffer of message will have
|
||||
* <= INT_MAX packets, so the message count doesn't overflow.
|
||||
*/
|
||||
ep = bp + len;
|
||||
while (bp < ep) {
|
||||
const struct nlmsghdr *nlh = (const struct nlmsghdr *) bp;
|
||||
@@ -343,7 +351,9 @@ netfilter_send_config_msg(const pcap_t *handle, uint16_t msg_type, int ack, u_in
|
||||
static unsigned int seq_id;
|
||||
|
||||
if (!seq_id)
|
||||
DIAG_OFF_NARROWING
|
||||
seq_id = time(NULL);
|
||||
DIAG_ON_NARROWING
|
||||
++seq_id;
|
||||
|
||||
nlh->nlmsg_len = NLMSG_LENGTH(sizeof(struct nfgenmsg));
|
||||
@@ -516,8 +526,8 @@ netfilter_activate(pcap_t* handle)
|
||||
nftype_t type = OTHER;
|
||||
int i;
|
||||
|
||||
if (strncmp(dev, NFLOG_IFACE, strlen(NFLOG_IFACE)) == 0) {
|
||||
dev += strlen(NFLOG_IFACE);
|
||||
if (strncmp(dev, NFLOG_IFACE, strlen(NFLOG_IFACE)) == 0) {
|
||||
dev += strlen(NFLOG_IFACE);
|
||||
type = NFLOG;
|
||||
|
||||
} else if (strncmp(dev, NFQUEUE_IFACE, strlen(NFQUEUE_IFACE)) == 0) {
|
||||
|
||||
Reference in New Issue
Block a user