X25: Check for errors in x25_init

Adds error checking to x25_init.

Signed-off-by: Andrew Hendry <andrew.hendry@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
andrew hendry 2009-11-24 15:15:42 +00:00 committed by David S. Miller
parent 2f5517aefc
commit 1fd975a052
1 changed files with 16 additions and 3 deletions

View File

@ -1721,18 +1721,31 @@ static int __init x25_init(void)
if (rc != 0) if (rc != 0)
goto out; goto out;
sock_register(&x25_family_ops); rc = sock_register(&x25_family_ops);
if (rc != 0)
goto out_proto;
dev_add_pack(&x25_packet_type); dev_add_pack(&x25_packet_type);
register_netdevice_notifier(&x25_dev_notifier); rc = register_netdevice_notifier(&x25_dev_notifier);
if (rc != 0)
goto out_sock;
printk(KERN_INFO "X.25 for Linux Version 0.2\n"); printk(KERN_INFO "X.25 for Linux Version 0.2\n");
x25_register_sysctl(); x25_register_sysctl();
x25_proc_init(); rc = x25_proc_init();
if (rc != 0)
goto out_dev;
out: out:
return rc; return rc;
out_dev:
unregister_netdevice_notifier(&x25_dev_notifier);
out_sock:
sock_unregister(AF_X25);
out_proto:
proto_unregister(&x25_proto);
goto out;
} }
module_init(x25_init); module_init(x25_init);