aboutsummaryrefslogtreecommitdiffstats
path: root/include/net/iucv/af_iucv.h
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-11 22:40:14 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-10-11 22:40:14 -0400
commit038a5008b2f395c85e6e71d6ddf3c684e7c405b0 (patch)
tree4735eab577e97e5a22c3141e3f60071c8065585e /include/net/iucv/af_iucv.h
parentdd6d1844af33acb4edd0a40b1770d091a22c94be (diff)
parent266918303226cceac7eca38ced30f15f277bd89c (diff)
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
* 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (867 commits) [SKY2]: status polling loop (post merge) [NET]: Fix NAPI completion handling in some drivers. [TCP]: Limit processing lost_retrans loop to work-to-do cases [TCP]: Fix lost_retrans loop vs fastpath problems [TCP]: No need to re-count fackets_out/sacked_out at RTO [TCP]: Extract tcp_match_queue_to_sack from sacktag code [TCP]: Kill almost unused variable pcount from sacktag [TCP]: Fix mark_head_lost to ignore R-bit when trying to mark L [TCP]: Add bytes_acked (ABC) clearing to FRTO too [IPv6]: Update setsockopt(IPV6_MULTICAST_IF) to support RFC 3493, try2 [NETFILTER]: x_tables: add missing ip6t_modulename aliases [NETFILTER]: nf_conntrack_tcp: fix connection reopening [QETH]: fix qeth_main.c [NETLINK]: fib_frontend build fixes [IPv6]: Export userland ND options through netlink (RDNSS support) [9P]: build fix with !CONFIG_SYSCTL [NET]: Fix dev_put() and dev_hold() comments [NET]: make netlink user -> kernel interface synchronious [NET]: unify netlink kernel socket recognition [NET]: cleanup 3rd argument in netlink_sendskb ... Fix up conflicts manually in Documentation/feature-removal-schedule.txt and my new least favourite crap, the "mod_devicetable" support in the files include/linux/mod_devicetable.h and scripts/mod/file2alias.c. (The latter files seem to be explicitly _designed_ to get conflicts when different subsystems work with them - that have an absolutely horrid lack of subsystem separation!) Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
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,