]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - net/netfilter/nf_conntrack_proto_gre.c
netfilter: nf_ct_gre: add unsigned int array to define timeouts
[karo-tx-linux.git] / net / netfilter / nf_conntrack_proto_gre.c
index f0338791b822d238d926486e78084afe5089b1a5..8144f22d159ae6c535f8ca1c901580537354e14b 100644 (file)
 #include <linux/netfilter/nf_conntrack_proto_gre.h>
 #include <linux/netfilter/nf_conntrack_pptp.h>
 
-#define GRE_TIMEOUT            (30 * HZ)
-#define GRE_STREAM_TIMEOUT     (180 * HZ)
+enum grep_conntrack {
+       GRE_CT_UNREPLIED,
+       GRE_CT_REPLIED,
+       GRE_CT_MAX
+};
+
+static unsigned int gre_timeouts[GRE_CT_MAX] = {
+       [GRE_CT_UNREPLIED]      = 30*HZ,
+       [GRE_CT_REPLIED]        = 180*HZ,
+};
 
 static int proto_gre_net_id __read_mostly;
 struct netns_proto_gre {
@@ -259,8 +267,8 @@ static bool gre_new(struct nf_conn *ct, const struct sk_buff *skb,
 
        /* initialize to sane value.  Ideally a conntrack helper
         * (e.g. in case of pptp) is increasing them */
-       ct->proto.gre.stream_timeout = GRE_STREAM_TIMEOUT;
-       ct->proto.gre.timeout = GRE_TIMEOUT;
+       ct->proto.gre.stream_timeout = gre_timeouts[GRE_CT_REPLIED];
+       ct->proto.gre.timeout = gre_timeouts[GRE_CT_UNREPLIED];
 
        return true;
 }