Always passing ATT_ERR_APP_ERROR in custs1_value_req_rsp_handler()

ID: LPCBARESDK-690

Status: Open

First reported: 6.0.14.1114

Fixed in: TBD

Description

The custs1_value_req_rsp_handler() function will always return the ATT_ERR_APP_ERROR status, ignoring the status that came from the application via the CUSTS1_VALUE_REQ_RSP message. The handler has hardcoded the statement cfm->status = ATT_ERR_APP_ERROR instead of param->status. This requires to be modified in order to convey the application status message to the remotely connected device.

Workaround

The code is by default located in ROM. As a result, the user should :

  • build the application with the define:

    #define __EXCLUDE_ROM_CUSTS1_
    
  • Patch the custs1_value_req_rsp_handler() function as described:

    @@ -716,7 +716,7 @@ static int custs1_value_req_rsp_handler(ke_msg_id_t const msgid,
    
                // Fill parameters
                cfm->handle = custs1_get_att_handle(param->att_idx);
    -            cfm->status = ATT_ERR_APP_ERROR;
    +            cfm->status = param->status;
    
                // Send message to GATTC
                ke_msg_send(cfm);