|
RetroArch
|
Go to the source code of this file.
Classes | |
| struct | l2cap_hdr |
| struct | l2cap_sig_hdr |
| struct | l2cap_cfgopt_hdr |
| struct | l2cap_sig |
| struct | l2cap_cfg |
| struct | l2cap_seg |
| struct | l2cap_pcb |
| struct | l2cap_pcb_listen |
Macros | |
| #define | HIDP_PSM 0x0011 |
| #define | INTR_PSM 0x0013 |
| #define | L2CAP_HDR_LEN 4 |
| #define | L2CAP_SIGHDR_LEN 4 |
| #define | L2CAP_CFGOPTHDR_LEN 2 |
| #define | L2CAP_CONN_REQ_SIZE 4 |
| #define | L2CAP_CONN_RSP_SIZE 8 |
| #define | L2CAP_CFG_RSP_SIZE 6 |
| #define | L2CAP_DISCONN_RSP_SIZE 4 |
| #define | L2CAP_CFG_REQ_SIZE 4 |
| #define | L2CAP_DISCONN_REQ_SIZE 4 |
| #define | L2CAP_CMD_REJ_SIZE 2 |
| #define | L2CAP_CMD_REJ 0x01 |
| #define | L2CAP_CONN_REQ 0x02 |
| #define | L2CAP_CONN_RSP 0x03 |
| #define | L2CAP_CFG_REQ 0x04 |
| #define | L2CAP_CFG_RSP 0x05 |
| #define | L2CAP_DISCONN_REQ 0x06 |
| #define | L2CAP_DISCONN_RSP 0x07 |
| #define | L2CAP_ECHO_REQ 0x08 |
| #define | L2CAP_ECHO_RSP 0x09 |
| #define | L2CAP_INFO_REQ 0x0A |
| #define | L2CAP_INFO_RSP 0x0B |
| #define | L2CAP_NULL_CID 0x0000 |
| #define | L2CAP_SIG_CID 0x0001 |
| #define | L2CAP_CONNLESS_CID 0x0002 |
| #define | L2CAP_MIN_CID 0x0040 |
| #define | L2CAP_MAX_CID 0xFFFF |
| #define | L2CAP_CFG_MTU 0x01 |
| #define | L2CAP_FLUSHTO 0x02 |
| #define | L2CAP_QOS 0x03 |
| #define | L2CAP_MTU_LEN 2 |
| #define | L2CAP_FLUSHTO_LEN 2 |
| #define | L2CAP_QOS_LEN 22 |
| #define | L2CAP_CFG_SUCCESS 0x0000 |
| #define | L2CAP_CFG_UNACCEPT 0x0001 |
| #define | L2CAP_CFG_REJ 0x0002 |
| #define | L2CAP_CFG_UNKNOWN 0x0003 |
| #define | L2CAP_CFG_TIMEOUT 0xEEEE |
| #define | L2CAP_QOS_NO_TRAFFIC 0x00 |
| #define | L2CAP_QOS_BEST_EFFORT 0x01 |
| #define | L2CAP_QOS_GUARANTEED 0x02 |
| #define | L2CAP_CMD_NOT_UNDERSTOOD 0x0000 |
| #define | L2CAP_MTU_EXCEEDED 0x0001 |
| #define | L2CAP_INVALID_CID 0x0002 |
| #define | L2CAP_CONN_SUCCESS 0x0000 |
| #define | L2CAP_CONN_PND 0x0001 |
| #define | L2CAP_CONN_REF_PSM 0x0002 |
| #define | L2CAP_CONN_REF_SEC 0x0003 |
| #define | L2CAP_CONN_REF_RES 0x0004 |
| #define | L2CAP_CONN_CFG_TO 0x0005 /* Implementation specific result */ |
| #define | L2CAP_ECHO_RCVD 0x00 |
| #define | L2CAP_ECHO_TO 0x01 |
| #define | L2CAP_ACL_START 0x02 |
| #define | L2CAP_ACL_CONT 0x01 |
| #define | L2CAP_CFG_DEFAULT_INMTU |
| #define | L2CAP_CFG_DEFAULT_OUTFLUSHTO 0xFFFF |
| #define | L2CAP_CFG_IR 0x01 |
| #define | L2CAP_CFG_IN_SUCCESS 0x02 |
| #define | L2CAP_CFG_OUT_SUCCESS 0x04 |
| #define | L2CAP_CFG_OUT_REQ 0x08 |
| #define | l2cap_psm(pcb) ((pcb)->psm) |
| #define | L2CA_ACTION_CONN_CFM(pcb, result, status, ret) if((pcb)->l2ca_connect_cfm != NULL) (ret = (pcb)->l2ca_connect_cfm((pcb)->callback_arg,(pcb),(result),(status))) |
| #define | L2CA_ACTION_DISCONN_CFM(pcb, ret) if((pcb)->l2ca_disconnect_cfm != NULL) (ret = (pcb)->l2ca_disconnect_cfm((pcb)->callback_arg,(pcb))) |
| #define | L2CA_ACTION_PING_CFM(pcb, result, ret) if((pcb)->l2ca_pong != NULL) (ret = (pcb)->l2ca_pong((pcb)->callback_arg,(pcb),(result))) |
| #define | L2CA_ACTION_CONN_IND(pcb, err, ret) if((pcb)->l2ca_connect_ind != NULL) (ret = (pcb)->l2ca_connect_ind((pcb)->callback_arg,(pcb),(err))) |
| #define | L2CA_ACTION_DISCONN_IND(pcb, err, ret) |
| #define | L2CA_ACTION_TO_IND(pcb, err, ret) if((pcb)->l2ca_timeout_ind != NULL) (ret = (pcb)->l2ca_timeout_ind((pcb)->callback_arg,(pcb),(err))) |
| #define | L2CA_ACTION_RECV(pcb, p, err, ret) |
| #define | L2CAP_OPTH_TYPE(hdr) (((hdr)->type) & 0x7f) |
| #define | L2CAP_OPTH_TOA(hdr) (((hdr)->type) >> 7) |
| #define | L2CAP_REG(pcbs, npcb) |
| #define | L2CAP_RMV(pcbs, npcb) |
| #define | L2CAP_SIG_REG(ursp_sigs, nsig) |
| #define | L2CAP_SIG_RMV(ursp_sigs, nsig) |
| #define | L2CAP_SEG_REG(segs, nseg) |
| #define | L2CAP_SEG_RMV(segs, nseg) |
Enumerations | |
| enum | l2cap_state { L2CAP_CLOSED, L2CAP_LISTEN, W4_L2CAP_CONNECT_RSP, W4_L2CA_CONNECT_RSP, L2CAP_CONFIG, L2CAP_OPEN, W4_L2CAP_DISCONNECT_RSP, W4_L2CA_DISCONNECT_RSP } |
Functions | |
| void | l2cap_init () |
| struct l2cap_pcb * | l2cap_new (void) |
| void | lp_connect_ind (struct bd_addr *bdaddr) |
| void | lp_connect_cfm (struct bd_addr *bdaddr, u8_t encrypt_mode, err_t err) |
| void | lp_disconnect_ind (struct bd_addr *bdaddr, u8_t reason) |
| err_t | l2ca_config_req (struct l2cap_pcb *pcb) |
| err_t | l2ca_disconnect_req (struct l2cap_pcb *pcb, err_t(*l2ca_disconnect_cfm)(void *arg, struct l2cap_pcb *pcb)) |
| err_t | l2ca_datawrite (struct l2cap_pcb *pcb, struct pbuf *p) |
| err_t | l2ca_ping (struct bd_addr *bdaddr, struct l2cap_pcb *tpcb, err_t(*l2ca_pong)(void *arg, struct l2cap_pcb *pcb, u8_t result)) |
| err_t | l2ca_connect_req (struct l2cap_pcb *pcb, struct bd_addr *bdaddr, u16_t psm, u8_t role_switch, err_t(*l2ca_connect_cfm)(void *arg, struct l2cap_pcb *lpcb, u16_t result, u16_t status)) |
| void | l2cap_tmr () |
| void | l2cap_input (struct pbuf *p, struct bd_addr *bdaddr) |
| err_t | l2cap_close (struct l2cap_pcb *pcb) |
| void | l2cap_reset_all (void) |
| u8_t | l2cap_next_sigid (void) |
| err_t | l2cap_write (struct bd_addr *bdaddr, struct pbuf *p, u16_t len) |
| void | l2cap_arg (struct l2cap_pcb *pcb, void *arg) |
| void | l2cap_disconnect_ind (struct l2cap_pcb *pcb, err_t(*l2ca_disconnect_ind)(void *arg, struct l2cap_pcb *newpcb, err_t err)) |
| void | l2cap_timeout_ind (struct l2cap_pcb *pcb, err_t(*l2ca_timeout_ind)(void *arg, struct l2cap_pcb *newpcb, err_t err)) |
| void | l2cap_recv (struct l2cap_pcb *pcb, err_t(*l2ca_recv)(void *arg, struct l2cap_pcb *pcb, struct pbuf *p, err_t err)) |
| err_t | l2cap_signal (struct l2cap_pcb *pcb, u8_t code, u16_t ursp_id, struct bd_addr *remote_bdaddr, struct pbuf *data) |
| void | l2cap_process_sig (struct pbuf *q, struct l2cap_hdr *l2caphdr, struct bd_addr *bdaddr) |
| err_t | l2cap_rexmit_signal (struct l2cap_pcb *pcb, struct l2cap_sig *sig) |
| err_t | l2cap_connect_ind (struct l2cap_pcb *npcb, struct bd_addr *bdaddr, u16_t psm, err_t(*l2ca_connect_ind)(void *arg, struct l2cap_pcb *pcb, err_t err)) |
Variables | |
| struct l2cap_hdr | ATTRIBUTE_PACKED |
| void(*)(struct bd_addr *bdaddr, u8_t reason) | l2cap_disconnect_bb (void(*l2ca_disconnect_bb)(struct bd_addr *bdaddr, u8_t reason)) |
| struct l2cap_pcb_listen * | l2cap_listen_pcbs |
| struct l2cap_pcb * | l2cap_active_pcbs |
| struct l2cap_pcb * | l2cap_tmp_pcb |
| struct l2cap_sig * | l2cap_tmp_sig |
| struct l2cap_seg * | l2cap_tmp_inseg |
| #define HIDP_PSM 0x0011 |
| #define INTR_PSM 0x0013 |
| #define L2CA_ACTION_CONN_CFM | ( | pcb, | |
| result, | |||
| status, | |||
| ret | |||
| ) | if((pcb)->l2ca_connect_cfm != NULL) (ret = (pcb)->l2ca_connect_cfm((pcb)->callback_arg,(pcb),(result),(status))) |
| #define L2CA_ACTION_CONN_IND | ( | pcb, | |
| err, | |||
| ret | |||
| ) | if((pcb)->l2ca_connect_ind != NULL) (ret = (pcb)->l2ca_connect_ind((pcb)->callback_arg,(pcb),(err))) |
| #define L2CA_ACTION_DISCONN_CFM | ( | pcb, | |
| ret | |||
| ) | if((pcb)->l2ca_disconnect_cfm != NULL) (ret = (pcb)->l2ca_disconnect_cfm((pcb)->callback_arg,(pcb))) |
| #define L2CA_ACTION_DISCONN_IND | ( | pcb, | |
| err, | |||
| ret | |||
| ) |
| #define L2CA_ACTION_PING_CFM | ( | pcb, | |
| result, | |||
| ret | |||
| ) | if((pcb)->l2ca_pong != NULL) (ret = (pcb)->l2ca_pong((pcb)->callback_arg,(pcb),(result))) |
| #define L2CA_ACTION_RECV | ( | pcb, | |
| p, | |||
| err, | |||
| ret | |||
| ) |
| #define L2CA_ACTION_TO_IND | ( | pcb, | |
| err, | |||
| ret | |||
| ) | if((pcb)->l2ca_timeout_ind != NULL) (ret = (pcb)->l2ca_timeout_ind((pcb)->callback_arg,(pcb),(err))) |
| #define L2CAP_ACL_CONT 0x01 |
| #define L2CAP_ACL_START 0x02 |
| #define L2CAP_CFG_DEFAULT_INMTU |
| #define L2CAP_CFG_DEFAULT_OUTFLUSHTO 0xFFFF |
| #define L2CAP_CFG_IN_SUCCESS 0x02 |
| #define L2CAP_CFG_IR 0x01 |
| #define L2CAP_CFG_MTU 0x01 |
| #define L2CAP_CFG_OUT_REQ 0x08 |
| #define L2CAP_CFG_OUT_SUCCESS 0x04 |
| #define L2CAP_CFG_REJ 0x0002 |
| #define L2CAP_CFG_REQ 0x04 |
| #define L2CAP_CFG_REQ_SIZE 4 |
| #define L2CAP_CFG_RSP 0x05 |
| #define L2CAP_CFG_RSP_SIZE 6 |
| #define L2CAP_CFG_SUCCESS 0x0000 |
| #define L2CAP_CFG_TIMEOUT 0xEEEE |
| #define L2CAP_CFG_UNACCEPT 0x0001 |
| #define L2CAP_CFG_UNKNOWN 0x0003 |
| #define L2CAP_CFGOPTHDR_LEN 2 |
| #define L2CAP_CMD_NOT_UNDERSTOOD 0x0000 |
| #define L2CAP_CMD_REJ 0x01 |
| #define L2CAP_CMD_REJ_SIZE 2 |
| #define L2CAP_CONN_CFG_TO 0x0005 /* Implementation specific result */ |
| #define L2CAP_CONN_PND 0x0001 |
| #define L2CAP_CONN_REF_PSM 0x0002 |
| #define L2CAP_CONN_REF_RES 0x0004 |
| #define L2CAP_CONN_REF_SEC 0x0003 |
| #define L2CAP_CONN_REQ 0x02 |
| #define L2CAP_CONN_REQ_SIZE 4 |
| #define L2CAP_CONN_RSP 0x03 |
| #define L2CAP_CONN_RSP_SIZE 8 |
| #define L2CAP_CONN_SUCCESS 0x0000 |
| #define L2CAP_CONNLESS_CID 0x0002 |
| #define L2CAP_DISCONN_REQ 0x06 |
| #define L2CAP_DISCONN_REQ_SIZE 4 |
| #define L2CAP_DISCONN_RSP 0x07 |
| #define L2CAP_DISCONN_RSP_SIZE 4 |
| #define L2CAP_ECHO_RCVD 0x00 |
| #define L2CAP_ECHO_REQ 0x08 |
| #define L2CAP_ECHO_RSP 0x09 |
| #define L2CAP_ECHO_TO 0x01 |
| #define L2CAP_FLUSHTO 0x02 |
| #define L2CAP_FLUSHTO_LEN 2 |
| #define L2CAP_HDR_LEN 4 |
| #define L2CAP_INFO_REQ 0x0A |
| #define L2CAP_INFO_RSP 0x0B |
| #define L2CAP_INVALID_CID 0x0002 |
| #define L2CAP_MAX_CID 0xFFFF |
| #define L2CAP_MIN_CID 0x0040 |
| #define L2CAP_MTU_EXCEEDED 0x0001 |
| #define L2CAP_MTU_LEN 2 |
| #define L2CAP_NULL_CID 0x0000 |
| #define L2CAP_OPTH_TOA | ( | hdr | ) | (((hdr)->type) >> 7) |
| #define L2CAP_OPTH_TYPE | ( | hdr | ) | (((hdr)->type) & 0x7f) |
| #define l2cap_psm | ( | pcb | ) | ((pcb)->psm) |
| #define L2CAP_QOS 0x03 |
| #define L2CAP_QOS_BEST_EFFORT 0x01 |
| #define L2CAP_QOS_GUARANTEED 0x02 |
| #define L2CAP_QOS_LEN 22 |
| #define L2CAP_QOS_NO_TRAFFIC 0x00 |
| #define L2CAP_REG | ( | pcbs, | |
| npcb | |||
| ) |
| #define L2CAP_RMV | ( | pcbs, | |
| npcb | |||
| ) |
| #define L2CAP_SEG_REG | ( | segs, | |
| nseg | |||
| ) |
| #define L2CAP_SEG_RMV | ( | segs, | |
| nseg | |||
| ) |
| #define L2CAP_SIG_CID 0x0001 |
| #define L2CAP_SIG_REG | ( | ursp_sigs, | |
| nsig | |||
| ) |
| #define L2CAP_SIG_RMV | ( | ursp_sigs, | |
| nsig | |||
| ) |
| #define L2CAP_SIGHDR_LEN 4 |
| enum l2cap_state |
| err_t l2ca_connect_req | ( | struct l2cap_pcb * | pcb, |
| struct bd_addr * | bdaddr, | ||
| u16_t | psm, | ||
| u8_t | role_switch, | ||
| err_t(*)(void *arg, struct l2cap_pcb *lpcb, u16_t result, u16_t status) | l2ca_connect_cfm | ||
| ) |
| err_t l2ca_disconnect_req | ( | struct l2cap_pcb * | pcb, |
| err_t(*)(void *arg, struct l2cap_pcb *pcb) | l2ca_disconnect_cfm | ||
| ) |
| err_t l2ca_ping | ( | struct bd_addr * | bdaddr, |
| struct l2cap_pcb * | tpcb, | ||
| err_t(*)(void *arg, struct l2cap_pcb *pcb, u8_t result) | l2ca_pong | ||
| ) |
| err_t l2cap_connect_ind | ( | struct l2cap_pcb * | npcb, |
| struct bd_addr * | bdaddr, | ||
| u16_t | psm, | ||
| err_t(*)(void *arg, struct l2cap_pcb *pcb, err_t err) | l2ca_connect_ind | ||
| ) |
| void l2cap_disconnect_ind | ( | struct l2cap_pcb * | pcb, |
| err_t(*)(void *arg, struct l2cap_pcb *newpcb, err_t err) | l2ca_disconnect_ind | ||
| ) |
| void l2cap_init | ( | ) |
| void l2cap_recv | ( | struct l2cap_pcb * | pcb, |
| err_t(*)(void *arg, struct l2cap_pcb *pcb, struct pbuf *p, err_t err) | l2ca_recv | ||
| ) |
| err_t l2cap_signal | ( | struct l2cap_pcb * | pcb, |
| u8_t | code, | ||
| u16_t | ursp_id, | ||
| struct bd_addr * | remote_bdaddr, | ||
| struct pbuf * | data | ||
| ) |
| void l2cap_timeout_ind | ( | struct l2cap_pcb * | pcb, |
| err_t(*)(void *arg, struct l2cap_pcb *newpcb, err_t err) | l2ca_timeout_ind | ||
| ) |
| void l2cap_tmr | ( | ) |
| struct l2cap_cfgopt_hdr ATTRIBUTE_PACKED |
| struct l2cap_pcb* l2cap_active_pcbs |
| void(*)(struct bd_addr *bdaddr, u8_t reason) l2cap_disconnect_bb(void(*l2ca_disconnect_bb)(struct bd_addr *bdaddr, u8_t reason)) |
| struct l2cap_pcb_listen* l2cap_listen_pcbs |
| struct l2cap_seg* l2cap_tmp_inseg |
| struct l2cap_pcb* l2cap_tmp_pcb |
| struct l2cap_sig* l2cap_tmp_sig |
1.8.15