Zephyr API Documentation 4.0.0
A Scalable Open Source RTOS
 4.0.0
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
att.h File Reference

Attribute Protocol handling. More...

Go to the source code of this file.

Macros

#define BT_ATT_ERR_SUCCESS   0x00
 The ATT operation was successful.
 
#define BT_ATT_ERR_INVALID_HANDLE   0x01
 The attribute handle given was not valid on the server.
 
#define BT_ATT_ERR_READ_NOT_PERMITTED   0x02
 The attribute cannot be read.
 
#define BT_ATT_ERR_WRITE_NOT_PERMITTED   0x03
 The attribute cannot be written.
 
#define BT_ATT_ERR_INVALID_PDU   0x04
 The attribute PDU was invalid.
 
#define BT_ATT_ERR_AUTHENTICATION   0x05
 The attribute requires authentication before it can be read or written.
 
#define BT_ATT_ERR_NOT_SUPPORTED   0x06
 The ATT Server does not support the request received from the client.
 
#define BT_ATT_ERR_INVALID_OFFSET   0x07
 Offset specified was past the end of the attribute.
 
#define BT_ATT_ERR_AUTHORIZATION   0x08
 The attribute requires authorization before it can be read or written.
 
#define BT_ATT_ERR_PREPARE_QUEUE_FULL   0x09
 Too many prepare writes have been queued.
 
#define BT_ATT_ERR_ATTRIBUTE_NOT_FOUND   0x0a
 No attribute found within the given attribute handle range.
 
#define BT_ATT_ERR_ATTRIBUTE_NOT_LONG   0x0b
 The attribute cannot be read using the ATT_READ_BLOB_REQ PDU.
 
#define BT_ATT_ERR_ENCRYPTION_KEY_SIZE   0x0c
 The Encryption Key Size used for encrypting this link is too short.
 
#define BT_ATT_ERR_INVALID_ATTRIBUTE_LEN   0x0d
 The attribute value length is invalid for the operation.
 
#define BT_ATT_ERR_UNLIKELY   0x0e
 The attribute request that was requested has encountered an error that was unlikely.
 
#define BT_ATT_ERR_INSUFFICIENT_ENCRYPTION   0x0f
 The attribute requires encryption before it can be read or written.
 
#define BT_ATT_ERR_UNSUPPORTED_GROUP_TYPE   0x10
 The attribute type is not a supported grouping attribute.
 
#define BT_ATT_ERR_INSUFFICIENT_RESOURCES   0x11
 Insufficient Resources to complete the request.
 
#define BT_ATT_ERR_DB_OUT_OF_SYNC   0x12
 The server requests the client to rediscover the database.
 
#define BT_ATT_ERR_VALUE_NOT_ALLOWED   0x13
 The attribute parameter value was not allowed.
 
#define BT_ATT_ERR_WRITE_REQ_REJECTED   0xfc
 Write Request Rejected.
 
#define BT_ATT_ERR_CCC_IMPROPER_CONF   0xfd
 Client Characteristic Configuration Descriptor Improperly Configured.
 
#define BT_ATT_ERR_PROCEDURE_IN_PROGRESS   0xfe
 Procedure Already in Progress.
 
#define BT_ATT_ERR_OUT_OF_RANGE   0xff
 Out of Range.
 
#define BT_ATT_MAX_ATTRIBUTE_LEN   512
 
#define BT_ATT_FIRST_ATTRIBUTE_HANDLE   0x0001
 
#define BT_ATT_LAST_ATTRIBUTE_HANDLE   0xffff
 

Enumerations

enum  bt_att_chan_opt { BT_ATT_CHAN_OPT_NONE = 0x0 , BT_ATT_CHAN_OPT_UNENHANCED_ONLY = BIT(0) , BT_ATT_CHAN_OPT_ENHANCED_ONLY = BIT(1) }
 ATT channel option bit field values. More...
 

Functions

static const char * bt_att_err_to_str (uint8_t att_err)
 Converts a ATT error to string.
 
int bt_eatt_connect (struct bt_conn *conn, size_t num_channels)
 Connect Enhanced ATT channels.
 
size_t bt_eatt_count (struct bt_conn *conn)
 Get number of EATT channels connected.
 

Detailed Description

Attribute Protocol handling.