]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/ipv4/udplite.c
[UDP-Lite]: Clean up proc creation a bit.
[linux-2.6-omap-h63xx.git] / net / ipv4 / udplite.c
index 001b881ca36fa5e543bcac52fed1b43f36013068..653a6fc190230ffb6a2b198ed8007b284a0a816e 100644 (file)
@@ -17,17 +17,6 @@ DEFINE_SNMP_STAT(struct udp_mib, udplite_statistics) __read_mostly;
 
 struct hlist_head      udplite_hash[UDP_HTABLE_SIZE];
 
-int udplite_get_port(struct sock *sk, unsigned short p,
-                    int (*c)(const struct sock *, const struct sock *))
-{
-       return  __udp_lib_get_port(sk, p, udplite_hash, c);
-}
-
-static int udplite_v4_get_port(struct sock *sk, unsigned short snum)
-{
-       return udplite_get_port(sk, snum, ipv4_rcv_saddr_equal);
-}
-
 static int udplite_rcv(struct sk_buff *skb)
 {
        return __udp4_lib_rcv(skb, udplite_hash, IPPROTO_UDPLITE);
@@ -63,8 +52,9 @@ struct proto  udplite_prot = {
        .backlog_rcv       = udp_queue_rcv_skb,
        .hash              = udp_lib_hash,
        .unhash            = udp_lib_unhash,
-       .get_port          = udplite_v4_get_port,
+       .get_port          = udp_v4_get_port,
        .obj_size          = sizeof(struct udp_sock),
+       .h.udp_hash        = udplite_hash,
 #ifdef CONFIG_COMPAT
        .compat_setsockopt = compat_udp_setsockopt,
        .compat_getsockopt = compat_udp_getsockopt,
@@ -92,6 +82,16 @@ static struct udp_seq_afinfo udplite4_seq_afinfo = {
        .seq_show       = udp4_seq_show,
        .seq_fops       = &udplite4_seq_fops,
 };
+
+static __init int udplite4_proc_init(void)
+{
+       return udp_proc_register(&init_net, &udplite4_seq_afinfo);
+}
+#else
+static inline int udplite4_proc_init(void)
+{
+       return 0;
+}
 #endif
 
 void __init udplite4_register(void)
@@ -104,18 +104,15 @@ void __init udplite4_register(void)
 
        inet_register_protosw(&udplite4_protosw);
 
-#ifdef CONFIG_PROC_FS
-       if (udp_proc_register(&udplite4_seq_afinfo)) /* udplite4_proc_init() */
-               printk(KERN_ERR "%s: Cannot register /proc!\n", __FUNCTION__);
-#endif
+       if (udplite4_proc_init())
+               printk(KERN_ERR "%s: Cannot register /proc!\n", __func__);
        return;
 
 out_unregister_proto:
        proto_unregister(&udplite_prot);
 out_register_err:
-       printk(KERN_CRIT "%s: Cannot add UDP-Lite protocol.\n", __FUNCTION__);
+       printk(KERN_CRIT "%s: Cannot add UDP-Lite protocol.\n", __func__);
 }
 
 EXPORT_SYMBOL(udplite_hash);
 EXPORT_SYMBOL(udplite_prot);
-EXPORT_SYMBOL(udplite_get_port);