diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-01-22 09:09:37 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 18:10:37 -0500 |
commit | b2fd5321dd160ef309dfb6cfc78ed8de4a830659 (patch) | |
tree | 48d56923c239a2f5174e82528ee2632e159d33a7 /net/ipv6 | |
parent | e4a2d5c2bccd5bd29de5ae4f14ff4448fac9cfc8 (diff) |
[NETNS][FRAGS]: Make the net.ipv4.ipfrag_timeout work in namespaces.
Move it to the netns_frags, adjust the usage and
make the appropriate ctl table writable.
Now fragment, that live in different namespaces can
live for different times.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
-rw-r--r-- | net/ipv6/netfilter/nf_conntrack_reasm.c | 4 | ||||
-rw-r--r-- | net/ipv6/reassembly.c | 6 |
2 files changed, 5 insertions, 5 deletions
diff --git a/net/ipv6/netfilter/nf_conntrack_reasm.c b/net/ipv6/netfilter/nf_conntrack_reasm.c index cb826bea4b1b..92a311ff79c7 100644 --- a/net/ipv6/netfilter/nf_conntrack_reasm.c +++ b/net/ipv6/netfilter/nf_conntrack_reasm.c | |||
@@ -73,7 +73,6 @@ struct nf_ct_frag6_queue | |||
73 | static struct inet_frags_ctl nf_frags_ctl __read_mostly = { | 73 | static struct inet_frags_ctl nf_frags_ctl __read_mostly = { |
74 | .high_thresh = 256 * 1024, | 74 | .high_thresh = 256 * 1024, |
75 | .low_thresh = 192 * 1024, | 75 | .low_thresh = 192 * 1024, |
76 | .timeout = IPV6_FRAG_TIMEOUT, | ||
77 | .secret_interval = 10 * 60 * HZ, | 76 | .secret_interval = 10 * 60 * HZ, |
78 | }; | 77 | }; |
79 | 78 | ||
@@ -84,7 +83,7 @@ static struct netns_frags nf_init_frags; | |||
84 | struct ctl_table nf_ct_ipv6_sysctl_table[] = { | 83 | struct ctl_table nf_ct_ipv6_sysctl_table[] = { |
85 | { | 84 | { |
86 | .procname = "nf_conntrack_frag6_timeout", | 85 | .procname = "nf_conntrack_frag6_timeout", |
87 | .data = &nf_frags_ctl.timeout, | 86 | .data = &nf_init_frags.timeout, |
88 | .maxlen = sizeof(unsigned int), | 87 | .maxlen = sizeof(unsigned int), |
89 | .mode = 0644, | 88 | .mode = 0644, |
90 | .proc_handler = &proc_dointvec_jiffies, | 89 | .proc_handler = &proc_dointvec_jiffies, |
@@ -712,6 +711,7 @@ int nf_ct_frag6_init(void) | |||
712 | nf_frags.qsize = sizeof(struct nf_ct_frag6_queue); | 711 | nf_frags.qsize = sizeof(struct nf_ct_frag6_queue); |
713 | nf_frags.match = ip6_frag_match; | 712 | nf_frags.match = ip6_frag_match; |
714 | nf_frags.frag_expire = nf_ct_frag6_expire; | 713 | nf_frags.frag_expire = nf_ct_frag6_expire; |
714 | nf_init_frags.timeout = IPV6_FRAG_TIMEOUT; | ||
715 | inet_frags_init_net(&nf_init_frags); | 715 | inet_frags_init_net(&nf_init_frags); |
716 | inet_frags_init(&nf_frags); | 716 | inet_frags_init(&nf_frags); |
717 | 717 | ||
diff --git a/net/ipv6/reassembly.c b/net/ipv6/reassembly.c index 0300dcbf1a75..91761365b181 100644 --- a/net/ipv6/reassembly.c +++ b/net/ipv6/reassembly.c | |||
@@ -650,7 +650,7 @@ static struct ctl_table ip6_frags_ctl_table[] = { | |||
650 | { | 650 | { |
651 | .ctl_name = NET_IPV6_IP6FRAG_TIME, | 651 | .ctl_name = NET_IPV6_IP6FRAG_TIME, |
652 | .procname = "ip6frag_time", | 652 | .procname = "ip6frag_time", |
653 | .data = &init_net.ipv6.sysctl.frags.timeout, | 653 | .data = &init_net.ipv6.frags.timeout, |
654 | .maxlen = sizeof(int), | 654 | .maxlen = sizeof(int), |
655 | .mode = 0644, | 655 | .mode = 0644, |
656 | .proc_handler = &proc_dointvec_jiffies, | 656 | .proc_handler = &proc_dointvec_jiffies, |
@@ -681,7 +681,7 @@ static int ip6_frags_sysctl_register(struct net *net) | |||
681 | 681 | ||
682 | table[0].mode &= ~0222; | 682 | table[0].mode &= ~0222; |
683 | table[1].mode &= ~0222; | 683 | table[1].mode &= ~0222; |
684 | table[2].mode &= ~0222; | 684 | table[2].data = &net->ipv6.frags.timeout; |
685 | table[3].mode &= ~0222; | 685 | table[3].mode &= ~0222; |
686 | } | 686 | } |
687 | 687 | ||
@@ -724,7 +724,7 @@ static int ipv6_frags_init_net(struct net *net) | |||
724 | 724 | ||
725 | net->ipv6.sysctl.frags.high_thresh = 256 * 1024; | 725 | net->ipv6.sysctl.frags.high_thresh = 256 * 1024; |
726 | net->ipv6.sysctl.frags.low_thresh = 192 * 1024; | 726 | net->ipv6.sysctl.frags.low_thresh = 192 * 1024; |
727 | net->ipv6.sysctl.frags.timeout = IPV6_FRAG_TIMEOUT; | 727 | net->ipv6.frags.timeout = IPV6_FRAG_TIMEOUT; |
728 | net->ipv6.sysctl.frags.secret_interval = 10 * 60 * HZ; | 728 | net->ipv6.sysctl.frags.secret_interval = 10 * 60 * HZ; |
729 | 729 | ||
730 | inet_frags_init_net(&net->ipv6.frags); | 730 | inet_frags_init_net(&net->ipv6.frags); |