netfilter: flowtable: remove nf_ct_l4proto_find() call
authorPablo Neira Ayuso <pablo@netfilter.org>
Mon, 19 Jul 2021 16:04:01 +0000 (18:04 +0200)
committerPablo Neira Ayuso <pablo@netfilter.org>
Sun, 1 Aug 2021 10:00:50 +0000 (12:00 +0200)
TCP and UDP are built-in conntrack protocol trackers and the flowtable
only supports for TCP and UDP, remove this call.

Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
net/netfilter/nf_flow_table_core.c

index 8fe024a0ae46c71692552d736361cd2ace4a9266..ec3dd1c9c8f4dd8a7f228928cf226d7cee1b6de4 100644 (file)
@@ -180,15 +180,10 @@ static void flow_offload_fixup_tcp(struct ip_ct_tcp *tcp)
 
 static void flow_offload_fixup_ct_timeout(struct nf_conn *ct)
 {
-       const struct nf_conntrack_l4proto *l4proto;
        struct net *net = nf_ct_net(ct);
        int l4num = nf_ct_protonum(ct);
        unsigned int timeout;
 
-       l4proto = nf_ct_l4proto_find(l4num);
-       if (!l4proto)
-               return;
-
        if (l4num == IPPROTO_TCP) {
                struct nf_tcp_net *tn = nf_tcp_pernet(net);
 
@@ -273,15 +268,10 @@ static const struct rhashtable_params nf_flow_offload_rhash_params = {
 
 unsigned long flow_offload_get_timeout(struct flow_offload *flow)
 {
-       const struct nf_conntrack_l4proto *l4proto;
        unsigned long timeout = NF_FLOW_TIMEOUT;
        struct net *net = nf_ct_net(flow->ct);
        int l4num = nf_ct_protonum(flow->ct);
 
-       l4proto = nf_ct_l4proto_find(l4num);
-       if (!l4proto)
-               return timeout;
-
        if (l4num == IPPROTO_TCP) {
                struct nf_tcp_net *tn = nf_tcp_pernet(net);