return (false);
}
- if ((p_cfg->result == L2CAP_CFG_OK) || (p_cfg->result == L2CAP_CFG_PENDING))
- l2c_csm_execute(p_ccb, L2CEVT_L2CA_CONFIG_RSP, p_cfg);
- else {
- p_cfg->fcr_present =
- false; /* FCR options already negotiated before this point */
-
- /* Clear out any cached options that are being returned as an error
- * (excluding FCR) */
- if (p_cfg->mtu_present) p_ccb->peer_cfg.mtu_present = false;
- if (p_cfg->flush_to_present) p_ccb->peer_cfg.flush_to_present = false;
- if (p_cfg->qos_present) p_ccb->peer_cfg.qos_present = false;
-
- l2c_csm_execute(p_ccb, L2CEVT_L2CA_CONFIG_RSP_NEG, p_cfg);
- }
+ l2c_csm_execute(p_ccb, L2CEVT_L2CA_CONFIG_RSP, p_cfg);
return (true);
}
case L2CEVT_L2CA_CONFIG_RSP: /* Upper layer config rsp */
l2cu_process_our_cfg_rsp(p_ccb, p_cfg);
- /* Not finished if continuation flag is set */
- if ((p_cfg->flags & L2CAP_CFG_FLAGS_MASK_CONT) ||
- (p_cfg->result == L2CAP_CFG_PENDING)) {
- /* Send intermediate response; remain in cfg state */
- l2cu_send_peer_config_rsp(p_ccb, p_cfg);
- break;
- }
-
/* Local config done; clear cached configuration in case reconfig takes
* place later */
p_ccb->peer_cfg.mtu_present = false;
}
break;
- case L2CEVT_L2CA_CONFIG_RSP_NEG: /* Upper layer config reject */
- l2cu_send_peer_config_rsp(p_ccb, p_cfg);
- alarm_set_on_mloop(p_ccb->l2c_ccb_timer, L2CAP_CHNL_CFG_TIMEOUT_MS,
- l2c_ccb_timer_timeout, p_ccb);
- break;
-
case L2CEVT_L2CA_DISCONNECT_REQ: /* Upper wants to disconnect */
l2cu_send_peer_disc_req(p_ccb);
p_ccb->chnl_state = CST_W4_L2CAP_DISCONNECT_RSP;
return ("UPPER_LAYER_CONFIG_REQ");
case L2CEVT_L2CA_CONFIG_RSP: /* Upper layer config response */
return ("UPPER_LAYER_CONFIG_RSP");
- case L2CEVT_L2CA_CONFIG_RSP_NEG: /* Upper layer config response (failed) */
- return ("UPPER_LAYER_CONFIG_RSP_NEG");
case L2CEVT_L2CA_DISCONNECT_REQ: /* Upper layer disconnect request */
return ("UPPER_LAYER_DISCONNECT_REQ");
case L2CEVT_L2CA_DISCONNECT_RSP: /* Upper layer disconnect response */
#define L2CEVT_L2CA_CONNECT_RSP_NEG 23 /* connect response (failed)*/
#define L2CEVT_L2CA_CONFIG_REQ 24 /* config request */
#define L2CEVT_L2CA_CONFIG_RSP 25 /* config response */
-#define L2CEVT_L2CA_CONFIG_RSP_NEG 26 /* config response (failed) */
#define L2CEVT_L2CA_DISCONNECT_REQ 27 /* disconnect request */
#define L2CEVT_L2CA_DISCONNECT_RSP 28 /* disconnect response */
#define L2CEVT_L2CA_DATA_READ 29 /* data read */