Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dea60d08 authored by Chris Manton's avatar Chris Manton
Browse files

Add stack/btm/security_device_record::security_state_text

Towards loggable code

Bug: 163134718
Tag: #refactor
Test: gd/cert/run

Change-Id: Id1b18be2898e8892b420aa4aa77659b99fd73d34
parent c3b2a468
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -136,6 +136,10 @@ enum : uint16_t {
  BTM_SEC_16_DIGIT_PIN_AUTHED = 0x4000,
};

#define CASE_RETURN_TEXT(code) \
  case code:                   \
    return #code

typedef enum : uint8_t {
  BTM_SEC_STATE_IDLE = 0,
  BTM_SEC_STATE_AUTHENTICATING = 1,
@@ -152,6 +156,23 @@ typedef enum : uint8_t {
  BTM_SEC_STATE_DISCONNECTING_BOTH = 9,
} tSECURITY_STATE;

static inline std::string security_state_text(const tSECURITY_STATE& state) {
  switch (state) {
    CASE_RETURN_TEXT(BTM_SEC_STATE_IDLE);
    CASE_RETURN_TEXT(BTM_SEC_STATE_AUTHENTICATING);
    CASE_RETURN_TEXT(BTM_SEC_STATE_ENCRYPTING);
    CASE_RETURN_TEXT(BTM_SEC_STATE_GETTING_NAME);
    CASE_RETURN_TEXT(BTM_SEC_STATE_AUTHORIZING);
    CASE_RETURN_TEXT(BTM_SEC_STATE_SWITCHING_ROLE);
    CASE_RETURN_TEXT(BTM_SEC_STATE_DISCONNECTING);
    CASE_RETURN_TEXT(BTM_SEC_STATE_DELAY_FOR_ENC);
    CASE_RETURN_TEXT(BTM_SEC_STATE_DISCONNECTING_BLE);
    CASE_RETURN_TEXT(BTM_SEC_STATE_DISCONNECTING_BOTH);
    default:
      return std::string("UNKNOWN[%hhu]", state);
  }
}

typedef enum : uint8_t {
  BTM_SM4_UNKNOWN = 0x00,
  BTM_SM4_KNOWN = 0x10,