Matthias Ringwald
|
122c2b0535
|
l2cap-ertm: assert incoming ertm data is <= local MTU and check for buffer overrun during reassemblt
|
2017-10-09 11:27:39 +02:00 |
|
Matthias Ringwald
|
07c7de8699
|
l2cap-ertm: assert ertm SDUs contains Control + FCS fields and are smaller or equal local_mps
|
2017-10-09 11:12:53 +02:00 |
|
Matthias Ringwald
|
0d3ee2efe6
|
l2cap-ertm: fix setup of outgoing ertm tx buffers
|
2017-10-08 21:09:35 +02:00 |
|
Matthias Ringwald
|
7cbe539fe0
|
l2cap-ertm: use min(local,remote) in config response for TxWindow and MPS
|
2017-10-08 21:03:07 +02:00 |
|
Matthias Ringwald
|
3271797891
|
l2cap: limit mtu in conf resp to remote mtu - regression from 6dca2a0c
|
2017-10-08 14:52:02 +02:00 |
|
Matthias Ringwald
|
6b99230fe8
|
l2cap: seperate l2cap_setup_options for request and response
|
2017-10-08 14:34:51 +02:00 |
|
Matthias Ringwald
|
1fcd10b705
|
l2cap: fix regression in LE Signaling Len check for Connection Update Request/Response in adcfabadef2147ecee52ccbc9ab695b6df44e568
|
2017-10-02 11:50:32 +02:00 |
|
Matthias Ringwald
|
63854e74af
|
l2cap: fix -Wvarargs warnings from clang 9.0
|
2017-09-25 21:50:25 +02:00 |
|
Matthias Ringwald
|
959f646afa
|
l2cap: fix compile
|
2017-09-18 21:00:25 +02:00 |
|
Matthias Ringwald
|
fe7ca8b009
|
l2cap: fix compile
|
2017-09-18 17:58:53 +02:00 |
|
Matthias Ringwald
|
5774a3925b
|
l2cap: remove unused arguments, annotate all UNUSED
|
2017-09-18 14:34:31 +02:00 |
|
Matthias Ringwald
|
adcfabadef
|
l2cap: validate LE signaling command length
|
2017-09-18 14:07:01 +02:00 |
|
Matthias Ringwald
|
bb98c113be
|
l2cap: check SDU len against provided buffer, prevent buffer overrun during reassembly
|
2017-09-18 13:52:45 +02:00 |
|
Matthias Ringwald
|
e9cfb251d0
|
l2cap: verify signaling len for CONNECTION_RESPONSE, CONFIGURE_REQUEST, CONFIGURE_RESPONSE
|
2017-09-18 12:20:26 +02:00 |
|
Matthias Ringwald
|
0493bf3a19
|
l2cap: verify signaling command len for CONNECTION_REQUEST, INFORMATION_REQUEST, and INFORMATION_RESPONSE
|
2017-09-18 11:48:12 +02:00 |
|
Matthias Ringwald
|
ed2ed8e12c
|
l2cap: assert classic signaling command has valid data len
|
2017-09-18 11:32:36 +02:00 |
|
Matthias Ringwald
|
bb0a72a6e3
|
l2cap: split l2cap_acl_handler into seperate LE and Classic handlers. Classic: Signaling, Connection-less, Classic channels. LE: LE Signaling, ATT, SM, LE Data Channels
|
2017-09-17 22:08:29 +02:00 |
|
Milanka Ringwald
|
dfce2622b0
|
l2cap: abort outgoing connection if SSP supported, LEVEL0 is not enough and security update fails
|
2017-08-25 14:21:18 +02:00 |
|
Matthias Ringwald
|
6aa7d7949b
|
l2cap: fix compile
|
2017-08-08 16:38:06 +02:00 |
|
Matthias Ringwald
|
188c56a58d
|
l2cap: fix compile
|
2017-08-08 16:20:24 +02:00 |
|
Matthias Ringwald
|
2053036d0c
|
l2cap: emit L2CAP_EVENT_CHANNEL_OPENED with status L2CAP_CONNECTION_BASEBAND_DISCONNECT on HCI Disconnect Event before channel was opened
|
2017-08-08 16:08:03 +02:00 |
|
Matthias Ringwald
|
725276951f
|
l2cap: fix regression sending config options - introduced in ERTM feature merge
|
2017-08-06 21:45:05 +02:00 |
|
Matthias Ringwald
|
688f976463
|
l2cap: avoid unused parameter warning
|
2017-07-25 15:25:58 +02:00 |
|
Matthias Ringwald
|
9c0e62d33a
|
l2cap: introduce parameter object l2cap_ertm_config_t for l2cap_create_ertm_channel and l2cap_accept_ertm_connection
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
671fb338cc
|
l2cap: introduce l2cap_config_option_type_t
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
3e64cb4412
|
l2cap: introduce l2cap_info_type_t
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
943013524c
|
l2cap-ertm: keep track of unacknowledged i-frames in unacked_frames field
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
3c412221cc
|
l2cap-ertm: fix l2cap data dispatch for ertm
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
550189ff21
|
l2cap-ertm: stop monitor timer on RR/F=1
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
1e1a46bbd1
|
l2cap-ertm: review use of retransmission timer
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
474f5c3f07
|
l2cap-ertm: collect all ERTM-only function at the beginning
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
8a70005207
|
l2cap-ertm: extract l2cap_ertm_stop_retransmission_timer
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
c9300dca9a
|
l2cap-ertm: move retransmission and monitor timers into l2cap_channel, extract l2cap_ertm_start_retransmission_timer and l2cap_ertm_start_monitor_timer
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
9664600160
|
l2cap-ertm: extract l2cap_ertm_can_store_packet_now, implement l2cap_ertm_notify_channel_can_send, support l2cap_request_can_send_now_event for ERTM connections
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
0b20b13bb3
|
l2cap-ertm: implement l2cap_can_send_packet_now for ERTM
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
f85ade6bf6
|
l2cap-ertm: set final bit for RR with p=1 in S-REJ, process stored frames and send updated S-RR
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
707347078f
|
l2cap-ertm: store out of sequence SDUs, process in order after missing packet is received
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
e32be4094e
|
l2cap-ertm: pass payload of current packet to l2cap_ertm_handle_in_sequence_sdu, simplify code
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
e8e9809fca
|
l2cap-ertm: reassemble ertm packets in dedicated reassembly buffer
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
d48432d429
|
l2cap-ertm: extract l2cap_ertm_handle_in_sequence_sdu
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
7bebc11caa
|
l2cap-ertm: fragment outgoing data into tx buffers
|
2017-07-25 15:15:03 +02:00 |
|
Matthias Ringwald
|
82bb0e2240
|
l2cap-ertm: prepare for segmentation
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
843bae5d26
|
l2cap-ertm: reserve buffer for packet reassembly, too. calculate local mps and use in ertm config
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
3844aeadb3
|
l2cap-ertm: track remote mps
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
2bea1b8d8a
|
l2cap-ertm: signal/clear local busy condition
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
11b576c5ca
|
l2cap-ertm: handle I with F=1 - caused by S-RR with P=1
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
3233d8ab19
|
l2cap-ertm: handle S-RR with F=1 - caused by S-RR with P=1
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
d2afdd388b
|
l2cap-ertm: track p=1 bit in set_final_bit_after_packet_with_poll_bit_set for now
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
df2191a738
|
l2cap-ertm: send S-SREJ if only a single packet is missing
|
2017-07-25 15:15:02 +02:00 |
|
Matthias Ringwald
|
c7309e8d6f
|
l2cap-ertm: set req_seq to tx_seq + 1 if expected, send S-REJ for unexpected packets
|
2017-07-25 15:15:02 +02:00 |
|