41 #define ATT_MTU_REQ_BUF_LEN (ATT_MTU_REQ_LEN + L2C_PAYLOAD_START) 42 #define ATT_FIND_INFO_REQ_BUF_LEN (ATT_FIND_INFO_REQ_LEN + L2C_PAYLOAD_START) 43 #define ATT_FIND_TYPE_REQ_BUF_LEN (ATT_FIND_TYPE_REQ_LEN + L2C_PAYLOAD_START) 44 #define ATT_READ_TYPE_REQ_BUF_LEN (ATT_READ_TYPE_REQ_LEN + L2C_PAYLOAD_START) 45 #define ATT_READ_REQ_BUF_LEN (ATT_READ_REQ_LEN + L2C_PAYLOAD_START) 46 #define ATT_READ_BLOB_REQ_BUF_LEN (ATT_READ_BLOB_REQ_LEN + L2C_PAYLOAD_START) 47 #define ATT_READ_MULT_REQ_BUF_LEN (ATT_READ_MULT_REQ_LEN + L2C_PAYLOAD_START) 48 #define ATT_READ_GROUP_TYPE_REQ_BUF_LEN (ATT_READ_GROUP_TYPE_REQ_LEN + L2C_PAYLOAD_START) 49 #define ATT_WRITE_REQ_BUF_LEN (ATT_WRITE_REQ_LEN + L2C_PAYLOAD_START) 50 #define ATT_WRITE_CMD_BUF_LEN (ATT_WRITE_CMD_LEN + L2C_PAYLOAD_START) 51 #define ATT_SIGNED_WRITE_CMD_BUF_LEN (ATT_SIGNED_WRITE_CMD_LEN + L2C_PAYLOAD_START) 52 #define ATT_PREP_WRITE_REQ_BUF_LEN (ATT_PREP_WRITE_REQ_LEN + L2C_PAYLOAD_START) 53 #define ATT_EXEC_WRITE_REQ_BUF_LEN (ATT_EXEC_WRITE_REQ_LEN + L2C_PAYLOAD_START) 54 #define ATT_READ_MULT_VAR_REQ_BUF_LEN (ATT_READ_MULT_VAR_REQ_LEN + L2C_PAYLOAD_START) 57 #define ATTC_CONTINUING TRUE 58 #define ATTC_NOT_CONTINUING FALSE 68 ATTC_MSG_API_NONE = ATTC_MSG_START,
69 ATTC_MSG_API_MTU = ATT_METHOD_MTU,
70 ATTC_MSG_API_FIND_INFO = ATT_METHOD_FIND_INFO,
71 ATTC_MSG_API_FIND_BY_TYPE_VALUE = ATT_METHOD_FIND_TYPE,
72 ATTC_MSG_API_READ_BY_TYPE = ATT_METHOD_READ_TYPE,
73 ATTC_MSG_API_READ = ATT_METHOD_READ,
74 ATTC_MSG_API_READ_LONG = ATT_METHOD_READ_BLOB,
75 ATTC_MSG_API_READ_MULTIPLE = ATT_METHOD_READ_MULTIPLE,
76 ATTC_MSG_API_READ_BY_GROUP_TYPE = ATT_METHOD_READ_GROUP_TYPE,
77 ATTC_MSG_API_WRITE = ATT_METHOD_WRITE,
78 ATTC_MSG_API_WRITE_CMD = ATT_METHOD_WRITE_CMD,
79 ATTC_MSG_API_PREP_WRITE = ATT_METHOD_PREPARE_WRITE,
80 ATTC_MSG_API_EXEC_WRITE = ATT_METHOD_EXECUTE_WRITE,
81 ATTC_MSG_API_READ_MULT_VAR = ATT_METHOD_READ_MULT_VAR,
82 ATTC_MSG_API_SIGNED_WRITE_CMD,
106 uint16_t startHandle;
162 typedef void (*attcCloseCback_t)(
attcCcb_t *pCcb, uint8_t status);
167 attcSignMsgCback_t msgCback;
168 attcCloseCback_t closeCback;
181 typedef void (*attcProcRsp_t)(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
195 attcCcb_t *attcCcbByHandle(uint16_t handle, uint8_t slot);
198 void attcExecCallback(
dmConnId_t connId, uint8_t event, uint16_t handle, uint8_t status);
200 bool_t attcPendWriteCmd(
attcCcb_t *pCcb, uint16_t handle);
208 void attcProcRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket);
209 void attcProcInd(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket);
211 void attcProcErrRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
212 void attcProcMtuRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
213 void attcProcFindOrReadRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
214 void attcProcFindByTypeRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
215 void attcProcReadRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
216 void attcProcReadLongRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
217 void attcProcWriteRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
218 void attcProcPrepWriteRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
219 void attcProcReadMultVarRsp(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket,
attEvt_t *pEvt);
220 void attcProcMultiVarNtf(
attcCcb_t *pCcb, uint16_t len, uint8_t *pPacket);
uint8_t dmConnId_t
Connection identifier.
WSF_CT_ASSERT(((int) LCTR_EXT_INIT_MSG_INITIATE_CANCEL==(int) LCTR_INIT_MSG_INITIATE_CANCEL))
LCTR_EXT_INIT_MSG_INITIATE_CANCEL and LCTR_INIT_MSG_INITIATE_CANCEL shall be aligned.
#define ATT_NUM_SIMUL_WRITE_CMD
Maximum number of simultaneous ATT write commands.
#define L2C_PAYLOAD_START
Start of L2CAP payload in an HCI ACL packet buffer.
General purpose queue service.
#define DM_CONN_MAX
Maximum number of connections.
Attribute protocol client and server API.
Common message structure passed to event handler.