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

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

stack::avct cleanup Remove link and browse functions

Bug: 375741222
Test: m .
Flag: EXEMPT, Code cleanup

Change-Id: I56759d2e5aec7fcfdaa0ad017113d3c75b34dd86
parent 69bd11a1
Loading
Loading
Loading
Loading
+22 −26
Original line number Diff line number Diff line
@@ -197,27 +197,25 @@ uint16_t AVCT_CreateConn(uint8_t* p_handle, tAVCT_CC* p_cc, const RawAddress& pe
 *
 ******************************************************************************/
uint16_t AVCT_RemoveConn(uint8_t handle) {
  uint16_t result = AVCT_SUCCESS;
  tAVCT_CCB* p_ccb;

  log::verbose("AVCT_RemoveConn");

  /* map handle to ccb */
  p_ccb = avct_ccb_by_idx(handle);
  if (p_ccb == NULL) {
    result = AVCT_BAD_HANDLE;
  tAVCT_CCB* p_ccb = avct_ccb_by_idx(handle);
  if (p_ccb == nullptr) {
    return AVCT_BAD_HANDLE;
  }

  /* if connection not bound to lcb, dealloc */
  else if (p_ccb->p_lcb == NULL) {
  if (p_ccb->p_lcb == nullptr) {
    avct_ccb_dealloc(p_ccb, AVCT_NO_EVT, 0, NULL);
  }
  } else {
    /* send unbind event to lcb */
  else {
    tAVCT_LCB_EVT avct_lcb_evt;
    avct_lcb_evt.p_ccb = p_ccb;
    tAVCT_LCB_EVT avct_lcb_evt = {
            .p_ccb = p_ccb,
    };
    avct_lcb_event(p_ccb->p_lcb, AVCT_LCB_UL_UNBIND_EVT, &avct_lcb_evt);
  }
  return result;
  return AVCT_SUCCESS;
}

/*******************************************************************************
@@ -301,24 +299,22 @@ uint16_t AVCT_CreateBrowse(uint8_t handle, tAVCT_ROLE role) {
 *
 ******************************************************************************/
uint16_t AVCT_RemoveBrowse(uint8_t handle) {
  uint16_t result = AVCT_SUCCESS;
  tAVCT_CCB* p_ccb;

  log::verbose("AVCT_RemoveBrowse");

  /* map handle to ccb */
  p_ccb = avct_ccb_by_idx(handle);
  if (p_ccb == NULL) {
    result = AVCT_BAD_HANDLE;
  } else if (p_ccb->p_bcb != NULL)
  tAVCT_CCB* p_ccb = avct_ccb_by_idx(handle);
  if (p_ccb == nullptr) {
    return AVCT_BAD_HANDLE;
  }

  if (p_ccb->p_bcb != nullptr) {
    /* send unbind event to bcb */
  {
    tAVCT_LCB_EVT avct_lcb_evt;
    avct_lcb_evt.p_ccb = p_ccb;
    tAVCT_LCB_EVT avct_lcb_evt = {
            .p_ccb = p_ccb,
    };
    avct_bcb_event(p_ccb->p_bcb, AVCT_LCB_UL_UNBIND_EVT, &avct_lcb_evt);
  }

  return result;
  return AVCT_SUCCESS;
}

/*******************************************************************************
+19 −6
Original line number Diff line number Diff line
@@ -90,10 +90,23 @@ typedef void (*tAVCT_LCB_ACTION)(tAVCT_LCB* p_ccb, tAVCT_LCB_EVT* p_data);

/* action function list */
const tAVCT_LCB_ACTION avct_lcb_action[] = {
        avct_lcb_chnl_open, avct_lcb_chnl_disc,   avct_lcb_send_msg,  avct_lcb_open_ind,
        avct_lcb_open_fail, avct_lcb_close_ind,   avct_lcb_close_cfm, avct_lcb_msg_ind,
        avct_lcb_cong_ind,  avct_lcb_bind_conn,   avct_lcb_bind_fail, avct_lcb_unbind_disc,
        avct_lcb_chk_disc,  avct_lcb_discard_msg, avct_lcb_dealloc,   avct_lcb_free_msg_ind};
        avct_lcb_chnl_open,    // AVCT_LCB_CHNL_OPEN
        avct_lcb_chnl_disc,    // AVCT_LCB_CHNL_DISC
        avct_lcb_send_msg,     // AVCT_LCB_SEND_MSG
        avct_lcb_open_ind,     // AVCT_LCB_OPEN_IND
        avct_lcb_open_fail,    // AVCT_LCB_OPEN_FAIL
        avct_lcb_close_ind,    // AVCT_LCB_CLOSE_IND
        avct_lcb_close_cfm,    // AVCT_LCB_CLOSE_CFM
        avct_lcb_msg_ind,      // AVCT_LCB_MSG_IND
        avct_lcb_cong_ind,     // AVCT_LCB_CONG_IND
        avct_lcb_bind_conn,    // AVCT_LCB_BIND_CONN
        avct_lcb_bind_fail,    // AVCT_LCB_BIND_FAIL
        avct_lcb_unbind_disc,  // AVCT_LCB_UNBIND_DISC
        avct_lcb_chk_disc,     // AVCT_LCB_CHK_DISC
        avct_lcb_discard_msg,  // AVCT_LCB_DISCARD_MSG
        avct_lcb_dealloc,      // AVCT_LCB_DEALLOC
        avct_lcb_free_msg_ind  // AVCT_LCB_FREE_MSG_IND
};

/* state table information */
#define AVCT_LCB_ACTIONS 2    /* number of actions */
@@ -341,8 +354,8 @@ tAVCT_LCB* avct_lcb_by_lcid(uint16_t lcid) {

  if (i == AVCT_NUM_LINKS) {
    /* out of lcbs */
    p_lcb = NULL;
    log::warn("No lcb for lcid {:x}", lcid);
    p_lcb = nullptr;
    log::warn("No lcb for lcid 0x{:04x}", lcid);
  }

  return p_lcb;