aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/iucv/af_iucv.h
diff options
context:
space:
mode:
authorDavid Woodhouse <dwmw2@infradead.org>2007-10-13 09:58:23 -0400
committerDavid Woodhouse <dwmw2@infradead.org>2007-10-13 09:58:23 -0400
commitebf8889bd1fe3615991ff4494635d237280652a2 (patch)
tree10fb735717122bbb86474339eac07f26e7ccdf40 /include/net/iucv/af_iucv.h
parentb160292cc216a50fd0cd386b0bda2cd48352c73b (diff)
parent752097cec53eea111d087c545179b421e2bde98a (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
Diffstat (limited to 'include/net/iucv/af_iucv.h')
-rw-r--r--include/net/iucv/af_iucv.h28
1 files changed, 7 insertions, 21 deletions
diff --git a/include/net/iucv/af_iucv.h b/include/net/iucv/af_iucv.h
index b6c468cd7f5b..85f80eadfa35 100644
--- a/include/net/iucv/af_iucv.h
+++ b/include/net/iucv/af_iucv.h
@@ -50,6 +50,12 @@ struct sockaddr_iucv {
50 50
51 51
52/* Common socket structures and functions */ 52/* Common socket structures and functions */
53struct sock_msg_q {
54 struct iucv_path *path;
55 struct iucv_message msg;
56 struct list_head list;
57 spinlock_t lock;
58};
53 59
54#define iucv_sk(__sk) ((struct iucv_sock *) __sk) 60#define iucv_sk(__sk) ((struct iucv_sock *) __sk)
55 61
@@ -65,6 +71,7 @@ struct iucv_sock {
65 struct iucv_path *path; 71 struct iucv_path *path;
66 struct sk_buff_head send_skb_q; 72 struct sk_buff_head send_skb_q;
67 struct sk_buff_head backlog_skb_q; 73 struct sk_buff_head backlog_skb_q;
74 struct sock_msg_q message_q;
68 unsigned int send_tag; 75 unsigned int send_tag;
69}; 76};
70 77
@@ -74,29 +81,8 @@ struct iucv_sock_list {
74 atomic_t autobind_name; 81 atomic_t autobind_name;
75}; 82};
76 83
77static void iucv_sock_destruct(struct sock *sk);
78static void iucv_sock_cleanup_listen(struct sock *parent);
79static void iucv_sock_kill(struct sock *sk);
80static void iucv_sock_close(struct sock *sk);
81static int iucv_sock_create(struct socket *sock, int proto);
82static int iucv_sock_bind(struct socket *sock, struct sockaddr *addr,
83 int addr_len);
84static int iucv_sock_connect(struct socket *sock, struct sockaddr *addr,
85 int alen, int flags);
86static int iucv_sock_listen(struct socket *sock, int backlog);
87static int iucv_sock_accept(struct socket *sock, struct socket *newsock,
88 int flags);
89static int iucv_sock_getname(struct socket *sock, struct sockaddr *addr,
90 int *len, int peer);
91static int iucv_sock_sendmsg(struct kiocb *iocb, struct socket *sock,
92 struct msghdr *msg, size_t len);
93static int iucv_sock_recvmsg(struct kiocb *iocb, struct socket *sock,
94 struct msghdr *msg, size_t len, int flags);
95unsigned int iucv_sock_poll(struct file *file, struct socket *sock, 84unsigned int iucv_sock_poll(struct file *file, struct socket *sock,
96 poll_table *wait); 85 poll_table *wait);
97static int iucv_sock_release(struct socket *sock);
98static int iucv_sock_shutdown(struct socket *sock, int how);
99
100void iucv_sock_link(struct iucv_sock_list *l, struct sock *s); 86void iucv_sock_link(struct iucv_sock_list *l, struct sock *s);
101void iucv_sock_unlink(struct iucv_sock_list *l, struct sock *s); 87void iucv_sock_unlink(struct iucv_sock_list *l, struct sock *s);
102int iucv_sock_wait_state(struct sock *sk, int state, int state2, 88int iucv_sock_wait_state(struct sock *sk, int state, int state2,