void AvrcpListAppSettingValueResponse(AVRCP              *avrcp, 
                                      avrcp_response_type response, 
                                      uint16              size_values, 
                                      Source              values)
{
    /* Send the response only if the command arrived to start with. */
    if (avrcp->block_received_data == avrcp_list_app_values)
    {
        sendListValuesResponse(avrcp, response, size_values, values);
    }
    else
        AVRCP_INFO(("AvrcpListAppSettingValueResponse:"
              "CT not waiting for response\n"));
}
/****************************************************************************
 *NAME    
 *    avrcpHandleListAppValuesCommand    
 *
 *DESCRIPTION
 *  Handle the incoming PlayerApplicationListValues Command from CT. 
 *
 *PARAMETERS
 *  AVRCP       -  AVRCP Instance
 *  attribute_id -  Requested attribute ID for Value.
 ****************************************************************************/
void avrcpHandleListAppValuesCommand(AVRCP *avrcp, uint16 attribute_id)
{

    if (!isAvrcpPlayerSettingsEnabled(avrcpGetDeviceTask()))
    {
        sendListValuesResponse(avrcp, avctp_response_not_implemented, 0, 0);
    }
    else
    {
        /* We know this PDU cannot be fragmented.
           Pass the request directly to the client. */
        MAKE_AVRCP_MESSAGE(AVRCP_LIST_APP_VALUE_IND);
        message->avrcp = avrcp;
#ifdef AVRCP_ENABLE_DEPRECATED 
    /* Deprecated fields will be removed later */
        message->transaction =  avrcp->rsp_transaction_label;
#endif
        message->attribute_id = attribute_id;
        MessageSend(avrcp->clientTask, AVRCP_LIST_APP_VALUE_IND, message);
    }
}