sm: move SM_INITIATOR_PH0_HAS_LTK code into sm_run

remove  SM_INITIATOR_PH0_SEND_START_ENCRYPTION
This commit is contained in:
Matthias Ringwald 2020-10-29 11:35:34 +01:00
parent 178e8c1b8f
commit f32b7a88e6
2 changed files with 7 additions and 6 deletions

View File

@ -2206,9 +2206,7 @@ static void sm_run_activate_connection(void){
#ifdef ENABLE_LE_CENTRAL #ifdef ENABLE_LE_CENTRAL
case SM_INITIATOR_PH0_HAS_LTK: case SM_INITIATOR_PH0_HAS_LTK:
sm_reset_setup(); // just lock context
sm_load_security_info(sm_connection);
sm_connection->sm_engine_state = SM_INITIATOR_PH0_SEND_START_ENCRYPTION;
break; break;
case SM_INITIATOR_PH1_W2_SEND_PAIRING_REQUEST: case SM_INITIATOR_PH1_W2_SEND_PAIRING_REQUEST:
sm_reset_setup(); sm_reset_setup();
@ -2354,7 +2352,7 @@ static void sm_run(void){
break; break;
} }
// responding state // secure connections, initiator + responding states
#ifdef ENABLE_LE_SECURE_CONNECTIONS #ifdef ENABLE_LE_SECURE_CONNECTIONS
case SM_SC_W2_CMAC_FOR_CONFIRMATION: case SM_SC_W2_CMAC_FOR_CONFIRMATION:
if (!sm_cmac_ready()) break; if (!sm_cmac_ready()) break;
@ -2417,7 +2415,11 @@ static void sm_run(void){
#ifdef ENABLE_LE_CENTRAL #ifdef ENABLE_LE_CENTRAL
// initiator side // initiator side
case SM_INITIATOR_PH0_SEND_START_ENCRYPTION: {
case SM_INITIATOR_PH0_HAS_LTK: {
sm_reset_setup();
sm_load_security_info(connection);
sm_key_t peer_ltk_flipped; sm_key_t peer_ltk_flipped;
reverse_128(setup->sm_peer_ltk, peer_ltk_flipped); reverse_128(setup->sm_peer_ltk, peer_ltk_flipped);
connection->sm_engine_state = SM_INITIATOR_PH0_W4_CONNECTION_ENCRYPTED; connection->sm_engine_state = SM_INITIATOR_PH0_W4_CONNECTION_ENCRYPTED;

View File

@ -340,7 +340,6 @@ typedef enum {
// INITITIATOR ROLE // INITITIATOR ROLE
SM_INITIATOR_CONNECTED, SM_INITIATOR_CONNECTED,
SM_INITIATOR_PH0_HAS_LTK, SM_INITIATOR_PH0_HAS_LTK,
SM_INITIATOR_PH0_SEND_START_ENCRYPTION,
SM_INITIATOR_PH0_W4_CONNECTION_ENCRYPTED, SM_INITIATOR_PH0_W4_CONNECTION_ENCRYPTED,
SM_INITIATOR_PH1_W2_SEND_PAIRING_REQUEST, SM_INITIATOR_PH1_W2_SEND_PAIRING_REQUEST,
SM_INITIATOR_PH1_SEND_PAIRING_REQUEST, SM_INITIATOR_PH1_SEND_PAIRING_REQUEST,