[KEY]: Clean up proc files creation a bit.

Mainly this removes ifdef-s from inside the ipsec_pfkey_init.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Pavel Emelyanov 2008-02-09 23:19:14 -08:00 committed by David S. Miller
parent 0efeaa335c
commit 61145aa1a1
1 changed files with 27 additions and 8 deletions

View File

@ -3782,6 +3782,29 @@ static int pfkey_read_proc(char *buffer, char **start, off_t offset,
return len;
}
static int pfkey_init_proc(void)
{
if (create_proc_read_entry("pfkey", 0, init_net.proc_net,
pfkey_read_proc, NULL) == NULL)
return -ENOMEM;
else
return 0;
}
static void pfkey_exit_proc(void)
{
remove_proc_entry("net/pfkey", NULL);
}
#else
static inline int pfkey_init_proc(void)
{
return 0;
}
static inline void pfkey_exit_proc(void)
{
}
#endif
static struct xfrm_mgr pfkeyv2_mgr =
@ -3798,7 +3821,7 @@ static struct xfrm_mgr pfkeyv2_mgr =
static void __exit ipsec_pfkey_exit(void)
{
xfrm_unregister_km(&pfkeyv2_mgr);
remove_proc_entry("pfkey", init_net.proc_net);
pfkey_exit_proc();
sock_unregister(PF_KEY);
proto_unregister(&key_proto);
}
@ -3813,21 +3836,17 @@ static int __init ipsec_pfkey_init(void)
err = sock_register(&pfkey_family_ops);
if (err != 0)
goto out_unregister_key_proto;
#ifdef CONFIG_PROC_FS
err = -ENOMEM;
if (create_proc_read_entry("pfkey", 0, init_net.proc_net, pfkey_read_proc, NULL) == NULL)
err = pfkey_init_proc();
if (err != 0)
goto out_sock_unregister;
#endif
err = xfrm_register_km(&pfkeyv2_mgr);
if (err != 0)
goto out_remove_proc_entry;
out:
return err;
out_remove_proc_entry:
#ifdef CONFIG_PROC_FS
remove_proc_entry("net/pfkey", NULL);
pfkey_exit_proc();
out_sock_unregister:
#endif
sock_unregister(PF_KEY);
out_unregister_key_proto:
proto_unregister(&key_proto);