ble/net/llcp.h header reference
[Bluetooth Low Energy library module]

The source code of this header can be browsed online.

Description [link] 

This header defines Network Layer API for Link-Layer Control Protocol.

LLCP takes care of most aspects of the out-of-band communication of BLE:

  • connection parameters negociation and updates,

  • channel mapping,

  • encryption setup,

  • link termination.

To this extent, LLCP layer needs to communicate with:

  • physical layer (for updating connection parameters and channels),

  • link layer (for enabling / disabling cryptography),

  • Security DB (for key lookup),

LLCP is expected to be bound on a link layer.

There is a generic implementation of this layer in the library that can be created through ble_llcp_create.

Members [link] 

Types [link] 

Functions [link] 

Members detail [link] 

#define BLE_LLCP_H_ [link] 

This macro is declared in ble/net/llcp.h source file, line 21.

struct ble_llcp_channel_map_update_s [link] 

This struct is declared in ble/net/llcp.h source file, line 102.

FieldDescription
struct net_task_s task;
uint64_t channel_map;
uint16_t instant;

struct ble_llcp_channel_map_update_s * ble_llcp_channel_map_update_s_from_task(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 109.

enum ble_llcp_child_e [link] 

This enum is declared in ble/net/llcp.h source file, line 69.

IdentifierDescription
BLE_LLCP_CHILD_GAP

void ble_llcp_connection_close(struct net_layer_s *layer) [link] 

This function is declared in ble/net/llcp.h source file, line 144.

struct ble_llcp_connection_parameters_update_s [link] 

This struct is declared in ble/net/llcp.h source file, line 93.

FieldDescription
struct net_task_s task;
struct ble_conn_params_update update;

struct ble_llcp_connection_parameters_update_s * ble_llcp_connection_parameters_update_s_from_task(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 99.

struct ble_llcp_delegate_vtable_s [link] 

This struct is declared in ble/net/llcp.h source file, line 74.

FieldDescription
struct net_layer_delegate_vtable_s base;
void (*connection_closed)(void *delegate, struct net_layer_s *layer, uint8_t reason) ;

struct ble_llcp_delegate_vtable_s * ble_llcp_delegate_vtable_s_from_base(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 80.

error_t ble_llcp_encryption_enable(struct net_layer_s *layer) [link] 

This function is declared in ble/net/llcp.h source file, line 150.

error_t ble_llcp_encryption_restart(struct net_layer_s *layer) [link] 

This function is declared in ble/net/llcp.h source file, line 156.

struct ble_llcp_encryption_setup_s [link] 

This struct is declared in ble/net/llcp.h source file, line 112.

FieldDescription
struct net_task_s task;
uint8_t sk[16];
uint8_t iv[8];
bool_t authenticated;

struct ble_llcp_encryption_setup_s * ble_llcp_encryption_setup_s_from_task(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 120.

struct ble_llcp_handler_s [link] 

This struct is declared in ble/net/llcp.h source file, line 133.

FieldDescription
struct net_layer_handler_s base;
void (*connection_close)(struct net_layer_s *layer) ;
error_t (*encryption_enable)(struct net_layer_s *layer) ;
error_t (*encryption_restart)(struct net_layer_s *layer) ;

struct ble_llcp_handler_s * ble_llcp_handler_s_from_base(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 141.

struct ble_llcp_length_update_s [link] 

This struct is declared in ble/net/llcp.h source file, line 123.

FieldDescription
struct net_task_s task;
uint16_t rx_mtu;

struct ble_llcp_length_update_s * ble_llcp_length_update_s_from_task(void *x) [link] 

This function is declared in ble/net/llcp.h source file, line 129.

struct ble_llcp_params_s [link] 

This struct is declared in ble/net/llcp.h source file, line 162.

FieldDescription
struct dev_rng_s * rng;
struct ble_peer_s * peer;
struct ble_conn_timing_param_s conn_timing;
struct ble_gap_preferred_conn_params_s wanted_timing;

enum ble_llcp_task_id_e [link] 

This enum is declared in ble/net/llcp.h source file, line 83.

IdentifierDescription
BLE_LLCP_CONNECTION_PARAMETERS_UPDATE
BLE_LLCP_CHANNEL_MAP_UPDATE
BLE_LLCP_CONNECTION_PARAMETERS_REQ
BLE_LLCP_ENCRYPTION_SETUP
BLE_LLCP_LENGTH_UPDATE
BLE_LLCP_PING
Valid XHTML 1.0 StrictGenerated by diaxen on Thu Aug 4 15:44:05 2022 using MkDoc