diff options
-rw-r--r-- | net/netfilter/nf_conntrack_netlink.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/net/netfilter/nf_conntrack_netlink.c b/net/netfilter/nf_conntrack_netlink.c index 462ec2dbe561..6f4b00a8fc73 100644 --- a/net/netfilter/nf_conntrack_netlink.c +++ b/net/netfilter/nf_conntrack_netlink.c | |||
@@ -2080,7 +2080,15 @@ static int | |||
2080 | ctnetlink_change_expect(struct nf_conntrack_expect *x, | 2080 | ctnetlink_change_expect(struct nf_conntrack_expect *x, |
2081 | const struct nlattr * const cda[]) | 2081 | const struct nlattr * const cda[]) |
2082 | { | 2082 | { |
2083 | return -EOPNOTSUPP; | 2083 | if (cda[CTA_EXPECT_TIMEOUT]) { |
2084 | if (!del_timer(&x->timeout)) | ||
2085 | return -ETIME; | ||
2086 | |||
2087 | x->timeout.expires = jiffies + | ||
2088 | ntohl(nla_get_be32(cda[CTA_EXPECT_TIMEOUT])) * HZ; | ||
2089 | add_timer(&x->timeout); | ||
2090 | } | ||
2091 | return 0; | ||
2084 | } | 2092 | } |
2085 | 2093 | ||
2086 | static const struct nla_policy exp_nat_nla_policy[CTA_EXPECT_NAT_MAX+1] = { | 2094 | static const struct nla_policy exp_nat_nla_policy[CTA_EXPECT_NAT_MAX+1] = { |