Blame SOURCES/dhcp-vlanfilter.patch

0c2dab
diff -up dhcp-4.2.5/common/lpf.c.vlan dhcp-4.2.5/common/lpf.c
0c2dab
--- dhcp-4.2.5/common/lpf.c.vlan	2015-10-13 18:48:35.180447618 +0200
0c2dab
+++ dhcp-4.2.5/common/lpf.c	2015-10-13 18:51:29.797079032 +0200
0c2dab
@@ -521,6 +521,10 @@ ssize_t receive_packet (interface, buf,
0c2dab
 		if (cmsg->cmsg_level == SOL_PACKET &&
0c2dab
 		    cmsg->cmsg_type == PACKET_AUXDATA) {
0c2dab
 			struct tpacket_auxdata *aux = (void *)CMSG_DATA(cmsg);
0c2dab
+			/* Discard packets with stripped vlan id */
0c2dab
+			/* VLAN ID is only bottom 12-bits of TCI */
0c2dab
+			if (aux->tp_vlan_tci & 0x0fff)
0c2dab
+				return 0;
0c2dab
 			nocsum = aux->tp_status & TP_STATUS_CSUMNOTREADY;
0c2dab
 		}
0c2dab
 	}