--- zzzz-none-000/linux-4.9.218/net/ipv4/udp.c 2020-04-02 15:20:41.000000000 +0000 +++ seale-7590ac-750/linux-4.9.218/net/ipv4/udp.c 2022-11-30 09:46:20.000000000 +0000 @@ -116,6 +116,8 @@ #include #include +#include + struct udp_table udp_table __read_mostly; EXPORT_SYMBOL(udp_table); @@ -1022,7 +1024,8 @@ flowi4_init_output(fl4, ipc.oif, sk->sk_mark, tos, RT_SCOPE_UNIVERSE, sk->sk_protocol, flow_flags, - faddr, saddr, dport, inet->inet_sport); + faddr, saddr, dport, inet->inet_sport, + sk->sk_uid); security_sk_classify_flow(sk, flowi4_to_flowi(fl4)); rt = ip_route_output_flow(net, fl4, sk); @@ -1506,6 +1509,7 @@ int udp_queue_rcv_skb(struct sock *sk, struct sk_buff *skb) { struct udp_sock *up = udp_sk(sk); + struct net *net = dev_net(skb->dev); int rc; int is_udplite = IS_UDPLITE(sk); @@ -1514,6 +1518,9 @@ */ if (!xfrm4_policy_check(sk, XFRM_POLICY_IN, skb)) goto drop; + + avm_pa_add_local_session(AVM_PA_NET_IP_DEVINFO(net), skb, sk); + nf_reset(skb); if (static_key_false(&udp_encap_needed) && up->encap_type) {