]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
netfilter: nf_conntrack: make sequence number adjustments usuable without NAT
[mirror_ubuntu-bionic-kernel.git] / net / ipv6 / netfilter / nf_conntrack_l3proto_ipv6.c
index c9b6a6e6a1e8877dd634b51680fa2d5a5d9f2148..d6e4dd8b58dfaf67a9f64fe8bfafcf2f9f6b24ea 100644 (file)
@@ -28,6 +28,7 @@
 #include <net/netfilter/nf_conntrack_l3proto.h>
 #include <net/netfilter/nf_conntrack_core.h>
 #include <net/netfilter/nf_conntrack_zones.h>
+#include <net/netfilter/nf_conntrack_seqadj.h>
 #include <net/netfilter/ipv6/nf_conntrack_ipv6.h>
 #include <net/netfilter/nf_nat_helper.h>
 #include <net/netfilter/ipv6/nf_defrag_ipv6.h>
@@ -158,11 +159,7 @@ static unsigned int ipv6_confirm(unsigned int hooknum,
        /* adjust seqs for loopback traffic only in outgoing direction */
        if (test_bit(IPS_SEQ_ADJUST_BIT, &ct->status) &&
            !nf_is_loopback_packet(skb)) {
-               typeof(nf_nat_seq_adjust_hook) seq_adjust;
-
-               seq_adjust = rcu_dereference(nf_nat_seq_adjust_hook);
-               if (!seq_adjust ||
-                   !seq_adjust(skb, ct, ctinfo, protoff)) {
+               if (!nf_ct_seq_adjust(skb, ct, ctinfo, protoff)) {
                        NF_CT_STAT_INC_ATOMIC(nf_ct_net(ct), drop);
                        return NF_DROP;
                }