From 98e98bf9cc6ee76d7861db966708b1e51cc6e014 Mon Sep 17 00:00:00 2001
From: rpm-build <rpm-build>
Date: Tue, 15 Sep 2015 13:30:37 +0200
Subject: [PATCH] bpf: make sure sll header size if accounted for
This got reverted when backporting bpf_filter_with_auxdata.
Related: #1176612
---
pcap-linux.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/pcap-linux.c b/pcap-linux.c
index a5b8953..f7f2aae 100644
--- a/pcap-linux.c
+++ b/pcap-linux.c
@@ -4306,7 +4306,7 @@ static int pcap_handle_packet_mmap(
aux_data.vlan_tag = tp_vlan_tci & 0x0fff;
aux_data.vlan_tag_present = tp_vlan_tci_valid;
- if (bpf_filter_with_aux_data(handle->fcode.bf_insns, bp, tp_len, tp_snaplen, &aux_data) == 0)
+ if (bpf_filter_with_aux_data(handle->fcode.bf_insns, bp, tp_len, snaplen, &aux_data) == 0)
return 0;
}
@@ -4316,7 +4316,7 @@ static int pcap_handle_packet_mmap(
/* get required packet info from ring header */
pcaphdr.ts.tv_sec = tp_sec;
pcaphdr.ts.tv_usec = tp_usec;
- pcaphdr.caplen = tp_snaplen;
+ pcaphdr.caplen = snaplen;
pcaphdr.len = tp_len;
/* if required build in place the sll header*/
@@ -4329,7 +4329,7 @@ static int pcap_handle_packet_mmap(
#if defined(HAVE_TPACKET2) || defined(HAVE_TPACKET3)
if (tp_vlan_tci_valid &&
handlep->vlan_offset != -1 &&
- tp_snaplen >= (unsigned int) handlep->vlan_offset)
+ snaplen >= (unsigned int) handlep->vlan_offset)
{
struct vlan_tag *tag;
--
2.4.3