]> err.no Git - linux-2.6/blobdiff - include/net/udp.h
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6] / include / net / udp.h
index 3e55a99b0ba3836441804f33b7c6880d21a3d9cb..3e551592aa76778c73d23f6633da65c3190cea3a 100644 (file)
@@ -135,6 +135,7 @@ extern void udp_err(struct sk_buff *, u32);
 
 extern int     udp_sendmsg(struct kiocb *iocb, struct sock *sk,
                            struct msghdr *msg, size_t len);
+extern void    udp_flush_pending_frames(struct sock *sk);
 
 extern int     udp_rcv(struct sk_buff *skb);
 extern int     udp_ioctl(struct sock *sk, int cmd, unsigned long arg);
@@ -157,17 +158,17 @@ DECLARE_SNMP_STAT(struct udp_mib, udplite_stats_in6);
 /*
  *     SNMP statistics for UDP and UDP-Lite
  */
-#define UDP_INC_STATS_USER(field, is_udplite)                         do {   \
+#define UDP_INC_STATS_USER(net, field, is_udplite)           do { (void)net; \
        if (is_udplite) SNMP_INC_STATS_USER(udplite_statistics, field);       \
        else            SNMP_INC_STATS_USER(udp_statistics, field);  }  while(0)
-#define UDP_INC_STATS_BH(field, is_udplite)                           do  {  \
+#define UDP_INC_STATS_BH(net, field, is_udplite)             do { (void)net; \
        if (is_udplite) SNMP_INC_STATS_BH(udplite_statistics, field);         \
        else            SNMP_INC_STATS_BH(udp_statistics, field);    }  while(0)
 
-#define UDP6_INC_STATS_BH(field, is_udplite)                         do  {  \
+#define UDP6_INC_STATS_BH(net, field, is_udplite)          do { (void)net;  \
        if (is_udplite) SNMP_INC_STATS_BH(udplite_stats_in6, field);         \
        else            SNMP_INC_STATS_BH(udp_stats_in6, field);    } while(0)
-#define UDP6_INC_STATS_USER(field, is_udplite)                        do {    \
+#define UDP6_INC_STATS_USER(net, field, is_udplite)        do { (void)net;    \
        if (is_udplite) SNMP_INC_STATS_USER(udplite_stats_in6, field);         \
        else            SNMP_INC_STATS_USER(udp_stats_in6, field);    } while(0)
 
@@ -175,12 +176,12 @@ DECLARE_SNMP_STAT(struct udp_mib, udplite_stats_in6);
 #define UDPX_INC_STATS_BH(sk, field) \
        do { \
                if ((sk)->sk_family == AF_INET) \
-                       UDP_INC_STATS_BH(field, 0); \
+                       UDP_INC_STATS_BH(sock_net(sk), field, 0); \
                else \
-                       UDP6_INC_STATS_BH(field, 0); \
+                       UDP6_INC_STATS_BH(sock_net(sk), field, 0); \
        } while (0);
 #else
-#define UDPX_INC_STATS_BH(sk, field) UDP_INC_STATS_BH(field, 0)
+#define UDPX_INC_STATS_BH(sk, field) UDP_INC_STATS_BH(sock_net(sk), field, 0)
 #endif
 
 /* /proc */
@@ -195,8 +196,8 @@ struct udp_seq_afinfo {
 struct udp_iter_state {
        struct seq_net_private  p;
        sa_family_t             family;
-       struct hlist_head       *hashtable;
        int                     bucket;
+       struct hlist_head       *hashtable;
 };
 
 #ifdef CONFIG_PROC_FS