[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <a7ab5aff-7a3d-f8f8-5250-c8e2fdfbcbc2@cisco.com>
Date: Mon, 12 Oct 2020 14:22:03 +0000
From: "Georg Kohmann (geokohma)" <geokohma@...co.com>
To: Pablo Neira Ayuso <pablo@...filter.org>
CC: "netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"kadlec@...filter.org" <kadlec@...filter.org>,
"fw@...len.de" <fw@...len.de>,
"davem@...emloft.net" <davem@...emloft.net>,
"kuznet@....inr.ac.ru" <kuznet@....inr.ac.ru>,
"yoshfuji@...ux-ipv6.org" <yoshfuji@...ux-ipv6.org>,
"kuba@...nel.org" <kuba@...nel.org>,
"netfilter-devel@...r.kernel.org" <netfilter-devel@...r.kernel.org>
Subject: Re: [PATCH net] netfilter: Drop fragmented ndisc packets assembled in
netfilter
On 12.10.2020 14:56, Pablo Neira Ayuso wrote:
> Please, Cc: netfilter-devel@...r.kernel.org for your netfilter
> patches, so patchwork can catch it there too next time.
Thank you, I will next time.
>
> On Mon, Oct 12, 2020 at 02:53:47PM +0200, Georg Kohmann wrote:
>> Fragmented ndisc packets assembled in netfilter not dropped as specified
>> in RFC 6980, section 5. This behaviour breaks TAHI IPv6 Core Conformance
>> Tests v6LC.2.1.22/23, V6LC.2.2.26/27 and V6LC.2.3.18.
>>
>> Setting IPSKB_FRAGMENTED flag during reassembly.
>>
>> References: commit b800c3b966bc ("ipv6: drop fragmented ndisc packets by
>> default (RFC 6980)")
>> Signed-off-by: Georg Kohmann <geokohma@...co.com>
>> ---
>> net/ipv6/netfilter/nf_conntrack_reasm.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c
>> index fed9666..054d287 100644
>> --- a/net/ipv6/netfilter/nf_conntrack_reasm.c
>> +++ b/net/ipv6/netfilter/nf_conntrack_reasm.c
>> @@ -355,6 +355,7 @@ static int nf_ct_frag6_reasm(struct frag_queue *fq, struct sk_buff *skb,
>> ipv6_hdr(skb)->payload_len = htons(payload_len);
>> ipv6_change_dsfield(ipv6_hdr(skb), 0xff, ecn);
>> IP6CB(skb)->frag_max_size = sizeof(struct ipv6hdr) + fq->q.max_size;
>> + IP6CB(skb)->flags |= IP6SKB_FRAGMENTED;
>>
>> /* Yes, and fold redundant checksum back. 8) */
>> if (skb->ip_summed == CHECKSUM_COMPLETE)
>> --
>> 2.10.2
>>
Powered by blists - more mailing lists