diff options
author | Dario Nieuwenhuis <dirbaio@dirbaio.net> | 2021-06-29 02:40:11 +0200 |
---|---|---|
committer | Dario Nieuwenhuis <dirbaio@dirbaio.net> | 2021-06-29 02:45:12 +0200 |
commit | c774d6769482de7c1c9dd4fcbd5332d9f26cd2fe (patch) | |
tree | 00f77bf33ecf1ab6bec358dde52a63f4a2f589cd | |
parent | f78135ec68586fb7d85af80e6e1f3be4d93ccbda (diff) | |
download | nrf-softdevice-c774d6769482de7c1c9dd4fcbd5332d9f26cd2fe.zip |
ble/gap: unconditionally accept peer's conn param requests.
-rw-r--r-- | nrf-softdevice/src/ble/gap.rs | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/nrf-softdevice/src/ble/gap.rs b/nrf-softdevice/src/ble/gap.rs index fc8f135..b28a49f 100644 --- a/nrf-softdevice/src/ble/gap.rs +++ b/nrf-softdevice/src/ble/gap.rs @@ -55,6 +55,25 @@ pub(crate) unsafe fn on_evt(ble_evt: *const raw::ble_evt_t) { state.conn_params = conn_params; }); } + #[cfg(feature = "ble-central")] + raw::BLE_GAP_EVTS_BLE_GAP_EVT_CONN_PARAM_UPDATE_REQUEST => { + let conn_handle = gap_evt.conn_handle; + let conn_params = gap_evt.params.conn_param_update_request.conn_params; + debug!( + "on_conn_param_update_request conn_handle={:?} conn_sup_timeout={:?} max_conn_interval={:?} min_conn_interval={:?} slave_latency={:?}", + gap_evt.conn_handle, + conn_params.conn_sup_timeout, + conn_params.max_conn_interval, + conn_params.min_conn_interval, + conn_params.slave_latency, + ); + + let ret = raw::sd_ble_gap_conn_param_update(conn_handle, &conn_params); + if let Err(err) = RawError::convert(ret) { + warn!("sd_ble_gap_conn_param_update err {:?}", err); + return; + } + } raw::BLE_GAP_EVTS_BLE_GAP_EVT_TIMEOUT => { trace!("on_timeout conn_handle={:?}", gap_evt.conn_handle); |