diff options
author | Harald Welte <laforge@netfilter.org> | 2005-08-09 22:40:55 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2005-08-29 18:35:08 -0400 |
commit | 4fdb3bb723db469717c6d38fda667d8b0fa86ebd (patch) | |
tree | 43d82e717922e6319cf8a8f9dc5ee902c651b491 /net/decnet | |
parent | 020b4c12dbe3868d792a01d7c1470cd837abe10f (diff) |
[NETLINK]: Add properly module refcounting for kernel netlink sockets.
- Remove bogus code for compiling netlink as module
- Add module refcounting support for modules implementing a netlink
protocol
- Add support for autoloading modules that implement a netlink protocol
as soon as someone opens a socket for that protocol
Signed-off-by: Harald Welte <laforge@netfilter.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/decnet')
-rw-r--r-- | net/decnet/netfilter/dn_rtmsg.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/decnet/netfilter/dn_rtmsg.c b/net/decnet/netfilter/dn_rtmsg.c index 284a9998e53d..3068fddb2da3 100644 --- a/net/decnet/netfilter/dn_rtmsg.c +++ b/net/decnet/netfilter/dn_rtmsg.c | |||
@@ -138,7 +138,8 @@ static int __init init(void) | |||
138 | { | 138 | { |
139 | int rv = 0; | 139 | int rv = 0; |
140 | 140 | ||
141 | dnrmg = netlink_kernel_create(NETLINK_DNRTMSG, dnrmg_receive_user_sk); | 141 | dnrmg = netlink_kernel_create(NETLINK_DNRTMSG, dnrmg_receive_user_sk, |
142 | THIS_MODULE); | ||
142 | if (dnrmg == NULL) { | 143 | if (dnrmg == NULL) { |
143 | printk(KERN_ERR "dn_rtmsg: Cannot create netlink socket"); | 144 | printk(KERN_ERR "dn_rtmsg: Cannot create netlink socket"); |
144 | return -ENOMEM; | 145 | return -ENOMEM; |
@@ -162,6 +163,7 @@ static void __exit fini(void) | |||
162 | MODULE_DESCRIPTION("DECnet Routing Message Grabulator"); | 163 | MODULE_DESCRIPTION("DECnet Routing Message Grabulator"); |
163 | MODULE_AUTHOR("Steven Whitehouse <steve@chygwyn.com>"); | 164 | MODULE_AUTHOR("Steven Whitehouse <steve@chygwyn.com>"); |
164 | MODULE_LICENSE("GPL"); | 165 | MODULE_LICENSE("GPL"); |
166 | MODULE_ALIAS_NET_PF_PROTO(PF_NETLINK, NETLINK_DNRTMSG); | ||
165 | 167 | ||
166 | module_init(init); | 168 | module_init(init); |
167 | module_exit(fini); | 169 | module_exit(fini); |