diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-04-13 22:29:13 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-04-13 22:29:13 -0700 |
commit | 72a2d6138224298a576bcdc33d7d0004de604856 (patch) | |
tree | f2bebe6490dd58214140046945d55c8519aa44e0 /net/dccp/ipv4.c | |
parent | 67019cc9ee3f4868c8e5e493b2873c4722306019 (diff) |
[NETNS][DCCPV4]: Add dummy per-net operations.
They will be responsible for ctl socket initialization, but
currently they are void.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Acked-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/dccp/ipv4.c')
-rw-r--r-- | net/dccp/ipv4.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/net/dccp/ipv4.c b/net/dccp/ipv4.c index b12803bcba5..10bba039c4b 100644 --- a/net/dccp/ipv4.c +++ b/net/dccp/ipv4.c @@ -989,6 +989,20 @@ static struct inet_protosw dccp_v4_protosw = { .flags = INET_PROTOSW_ICSK, }; +static int dccp_v4_init_net(struct net *net) +{ + return 0; +} + +static void dccp_v4_exit_net(struct net *net) +{ +} + +static struct pernet_operations dccp_v4_ops = { + .init = dccp_v4_init_net, + .exit = dccp_v4_exit_net, +}; + static int __init dccp_v4_init(void) { int err = proto_register(&dccp_v4_prot, 1); @@ -1006,8 +1020,14 @@ static int __init dccp_v4_init(void) SOCK_DCCP, IPPROTO_DCCP, &init_net); if (err) goto out_unregister_protosw; + + err = register_pernet_subsys(&dccp_v4_ops); + if (err) + goto out_destroy_ctl_sock; out: return err; +out_destroy_ctl_sock: + inet_ctl_sock_destroy(dccp_v4_ctl_sk); out_unregister_protosw: inet_unregister_protosw(&dccp_v4_protosw); inet_del_protocol(&dccp_v4_protocol, IPPROTO_DCCP); @@ -1018,6 +1038,7 @@ out_proto_unregister: static void __exit dccp_v4_exit(void) { + unregister_pernet_subsys(&dccp_v4_ops); inet_ctl_sock_destroy(dccp_v4_ctl_sk); inet_unregister_protosw(&dccp_v4_protosw); inet_del_protocol(&dccp_v4_protocol, IPPROTO_DCCP); |