• Nicolas Cavallari's avatar
    netfilter: fix looped (broad|multi)cast's MAC handling · 2c38de4c
    Nicolas Cavallari authored
    By default, when broadcast or multicast packet are sent from a local
    application, they are sent to the interface then looped by the kernel
    to other local applications, going throught netfilter hooks in the
    process.
    
    These looped packet have their MAC header removed from the skb by the
    kernel looping code. This confuse various netfilter's netlink queue,
    netlink log and the legacy ip_queue, because they try to extract a
    hardware address from these packets, but extracts a part of the IP
    header instead.
    
    This patch prevent NFQUEUE, NFLOG and ip_QUEUE to include a MAC header
    if there is none in the packet.
    Signed-off-by: default avatarNicolas Cavallari <cavallar@lri.fr>
    Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
    2c38de4c
nfnetlink_log.c 24.2 KB