patch-2.1.15 linux/include/net/af_unix.h

Next file: linux/include/net/arp.h
Previous file: linux/include/linux/wireless.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.1.14/linux/include/net/af_unix.h linux/include/net/af_unix.h
@@ -7,8 +7,29 @@
 typedef struct sock unix_socket;
 extern void unix_gc(void);
 
-extern unix_socket *unix_socket_list;
+#define UNIX_HASH_SIZE	16
 
-#define UNIX_MAX_FD	8
+extern unix_socket *unix_socket_table[UNIX_HASH_SIZE+1];
+
+#define forall_unix_sockets(i, s) for (i=0; i<=UNIX_HASH_SIZE; i++) \
+                                    for (s=unix_socket_table[i]; s; s=s->next)
+
+struct unix_address
+{
+	int		refcnt;
+	int		len;
+	unsigned	hash;
+	struct sockaddr_un name[0];
+};
+
+struct unix_skb_parms
+{
+	struct ucred		creds;		/* Skb credentials	*/
+	struct scm_fp_list	*fp;		/* Passed files		*/
+	unsigned		attr;		/* Special attributes	*/
+};
+
+#define UNIXCB(skb) 	(*(struct unix_skb_parms*)&((skb)->cb))
+#define UNIXCREDS(skb)	(&UNIXCB((skb)).creds)
 
 #endif

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov