l2cap: fix parsing of CONNECTION_PARAMETER_UPDATE_REQUEST

This commit is contained in:
Matthias Ringwald 2018-01-17 12:05:42 +01:00
parent efd3b3273d
commit d5e694a307

View File

@ -2765,10 +2765,10 @@ static int l2cap_le_signaling_handler_dispatch(hci_con_handle_t handle, uint8_t
int update_parameter = 1;
le_connection_parameter_range_t existing_range;
gap_get_connection_parameter_range(&existing_range);
uint16_t le_conn_interval_min = little_endian_read_16(command,8);
uint16_t le_conn_interval_max = little_endian_read_16(command,10);
uint16_t le_conn_latency = little_endian_read_16(command,12);
uint16_t le_supervision_timeout = little_endian_read_16(command,14);
uint16_t le_conn_interval_min = little_endian_read_16(command,L2CAP_SIGNALING_COMMAND_DATA_OFFSET);
uint16_t le_conn_interval_max = little_endian_read_16(command,L2CAP_SIGNALING_COMMAND_DATA_OFFSET+2);
uint16_t le_conn_latency = little_endian_read_16(command,L2CAP_SIGNALING_COMMAND_DATA_OFFSET+4);
uint16_t le_supervision_timeout = little_endian_read_16(command,L2CAP_SIGNALING_COMMAND_DATA_OFFSET+6);
if (le_conn_interval_min < existing_range.le_conn_interval_min) update_parameter = 0;
if (le_conn_interval_max > existing_range.le_conn_interval_max) update_parameter = 0;