mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
gtp: pass up link local traffic to userspace socket
According to TS 29.061, it is possible to see IPv6 link-local traffic in the GTP tunnel, see 11.2.1.3.2 IPv6 Stateless Address Autoconfiguration (IPv6 SLAAC). Pass up these packets to the userspace daemon to handle them as control GTP traffic. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
c6461ec97b
commit
e4f88f7381
|
|
@ -251,6 +251,10 @@ static bool gtp_check_ms_ipv6(struct sk_buff *skb, struct pdp_ctx *pctx,
|
|||
|
||||
ip6h = (struct ipv6hdr *)(skb->data + hdrlen);
|
||||
|
||||
if ((ipv6_addr_type(&ip6h->saddr) & IPV6_ADDR_LINKLOCAL) ||
|
||||
(ipv6_addr_type(&ip6h->daddr) & IPV6_ADDR_LINKLOCAL))
|
||||
return false;
|
||||
|
||||
if (role == GTP_ROLE_SGSN) {
|
||||
ret = ipv6_pdp_addr_equal(&ip6h->daddr, &pctx->ms.addr6);
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user