diff options
| author | David S. Miller <davem@davemloft.net> | 2021-03-25 15:31:22 -0700 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2021-03-25 15:31:22 -0700 |
| commit | efd13b71a3fa31413f8d15342e01d44b60b0a432 (patch) | |
| tree | 2ed1b299e25538c5a60485a1047507b49d3e0ecf /net/dccp/ipv6.c | |
| parent | hinic: avoid gcc -Wrestrict warning (diff) | |
| parent | Merge branch 'akpm' (patches from Andrew) (diff) | |
| download | linux-efd13b71a3fa31413f8d15342e01d44b60b0a432.tar.gz linux-efd13b71a3fa31413f8d15342e01d44b60b0a432.zip | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/ipv6.c')
| -rw-r--r-- | net/dccp/ipv6.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/net/dccp/ipv6.c b/net/dccp/ipv6.c index 1f73603913f5..2be5c69824f9 100644 --- a/net/dccp/ipv6.c +++ b/net/dccp/ipv6.c @@ -319,6 +319,11 @@ static int dccp_v6_conn_request(struct sock *sk, struct sk_buff *skb) if (!ipv6_unicast_destination(skb)) return 0; /* discard, don't send a reset here */ + if (ipv6_addr_v4mapped(&ipv6_hdr(skb)->saddr)) { + __IP6_INC_STATS(sock_net(sk), NULL, IPSTATS_MIB_INHDRERRORS); + return 0; + } + if (dccp_bad_service_code(sk, service)) { dcb->dccpd_reset_code = DCCP_RESET_CODE_BAD_SERVICE_CODE; goto drop; |
