diff options
Diffstat (limited to 'include/net/bluetooth/l2cap.h')
-rw-r--r-- | include/net/bluetooth/l2cap.h | 37 |
1 files changed, 10 insertions, 27 deletions
diff --git a/include/net/bluetooth/l2cap.h b/include/net/bluetooth/l2cap.h index c853b16d..1a966af 100644 --- a/include/net/bluetooth/l2cap.h +++ b/include/net/bluetooth/l2cap.h @@ -131,7 +131,6 @@ struct l2cap_conninfo { /* L2CAP fixed channels */ #define L2CAP_FC_L2CAP 0x02 -#define L2CAP_FC_CONNLESS 0x04 #define L2CAP_FC_A2MP 0x08 /* L2CAP Control Field bit masks */ @@ -238,9 +237,8 @@ struct l2cap_conn_rsp { /* protocol/service multiplexer (PSM) */ #define L2CAP_PSM_SDP 0x0001 #define L2CAP_PSM_RFCOMM 0x0003 -#define L2CAP_PSM_3DSP 0x0021 -/* channel identifier */ +/* channel indentifier */ #define L2CAP_CID_SIGNALING 0x0001 #define L2CAP_CID_CONN_LESS 0x0002 #define L2CAP_CID_A2MP 0x0003 @@ -435,6 +433,8 @@ struct l2cap_seq_list { #define L2CAP_SEQ_LIST_TAIL 0x8000 struct l2cap_chan { + struct sock *sk; + struct l2cap_conn *conn; struct hci_conn *hs_hcon; struct hci_chan *hs_hchan; @@ -442,12 +442,7 @@ struct l2cap_chan { __u8 state; - bdaddr_t dst; - __u8 dst_type; - bdaddr_t src; - __u8 src_type; __le16 psm; - __le16 sport; __u16 dcid; __u16 scid; @@ -458,6 +453,8 @@ struct l2cap_chan { __u8 chan_type; __u8 chan_policy; + __le16 sport; + __u8 sec_level; __u8 ident; @@ -549,12 +546,9 @@ struct l2cap_ops { void (*teardown) (struct l2cap_chan *chan, int err); void (*close) (struct l2cap_chan *chan); void (*state_change) (struct l2cap_chan *chan, - int state, int err); + int state); void (*ready) (struct l2cap_chan *chan); void (*defer) (struct l2cap_chan *chan); - void (*resume) (struct l2cap_chan *chan); - void (*set_shutdown) (struct l2cap_chan *chan); - long (*get_sndtimeo) (struct l2cap_chan *chan); struct sk_buff *(*alloc_skb) (struct l2cap_chan *chan, unsigned long len, int nb); }; @@ -563,11 +557,13 @@ struct l2cap_conn { struct hci_conn *hcon; struct hci_chan *hchan; + bdaddr_t *dst; + bdaddr_t *src; + unsigned int mtu; __u32 feat_mask; __u8 fixed_chan_mask; - bool hs_enabled; __u8 info_state; __u8 info_ident; @@ -653,7 +649,6 @@ enum { FLAG_FLUSHABLE, FLAG_EXT_CTRL, FLAG_EFS_ENABLE, - FLAG_DEFER_SETUP, }; enum { @@ -795,19 +790,6 @@ static inline void l2cap_chan_no_defer(struct l2cap_chan *chan) { } -static inline void l2cap_chan_no_resume(struct l2cap_chan *chan) -{ -} - -static inline void l2cap_chan_no_set_shutdown(struct l2cap_chan *chan) -{ -} - -static inline long l2cap_chan_no_get_sndtimeo(struct l2cap_chan *chan) -{ - return 0; -} - extern bool disable_ertm; int l2cap_init_sockets(void); @@ -815,6 +797,7 @@ void l2cap_cleanup_sockets(void); bool l2cap_is_socket(struct socket *sock); void __l2cap_connect_rsp_defer(struct l2cap_chan *chan); +int __l2cap_wait_ack(struct sock *sk); int l2cap_add_psm(struct l2cap_chan *chan, bdaddr_t *src, __le16 psm); int l2cap_add_scid(struct l2cap_chan *chan, __u16 scid); |