Hazelnet 3.0.0
Reference implementation of the CAN Bus Security (CBS) protocol
|
Configuration and status of the HazelNet Server library. More...
#include <hzl_Server.h>
Data Fields | |
HZL_SET_BY_USER const hzl_ServerConfig_t * | serverConfig |
Pointer to one struct with the constant Server configuration. More... | |
HZL_SET_BY_USER const hzl_ServerClientConfig_t * | clientConfigs |
Pointer to an array of structs, each with the constant configuration of one Client. More... | |
HZL_SET_BY_USER const hzl_ServerGroupConfig_t * | groupConfigs |
Pointer to an array of structs, each with the constant configuration of one Group. More... | |
HZL_SET_BY_USER hzl_ServerGroupState_t * | groupStates |
Pointer to an array of structs, each with the variable state of one Group. More... | |
HZL_SET_BY_USER hzl_Io_t | io |
Set of function pointers binding the API to the rest of the system. More... | |
Configuration and status of the HazelNet Server library.
Initialised by the user on embedded, loaded from file on an OS.
HZL_SET_BY_USER const hzl_ServerConfig_t* hzl_ServerCtx::serverConfig |
Pointer to one struct with the constant Server configuration.
Set by the user to point to a valid configuration. Must be not NULL.
HZL_SET_BY_USER const hzl_ServerClientConfig_t* hzl_ServerCtx::clientConfigs |
Pointer to an array of structs, each with the constant configuration of one Client.
The array must contain hzl_ServerConfig_t.amountOfClients elements (structs). Set by the user to point to a valid configuration. Must be not NULL.
Constraints:
sid
field strictly ascending without repetition and without gaps, starting from the sid == 1
(as sid == 0
is the Server itself). In other words, the array index i
must contain the struct with sid == i+1
.sid == 1
.gid == 1
). HZL_SET_BY_USER const hzl_ServerGroupConfig_t* hzl_ServerCtx::groupConfigs |
Pointer to an array of structs, each with the constant configuration of one Group.
The array must contain hzl_ServerConfig_t.amountOfGroups elements (structs). Set by the user to point to a valid configuration. Must be not NULL.
Constraints:
gid
field strictly ascending without repetition and without gaps. In other words, the array index i
must contain the struct with gid == i
.gid == 0
.gid == 0
). HZL_SET_BY_USER hzl_ServerGroupState_t* hzl_ServerCtx::groupStates |
Pointer to an array of structs, each with the variable state of one Group.
Set by the user to point to a memory location, does not have to be initialised. The Server handles the initialisation on init and clears it at deinit. Must be not NULL.
The array must contain hzl_ServerConfig_t.amountOfGroups elements (structs), which will be indexed in the same was as in the groupConfigs
array; i.e. groupConfigs[i]
and groupStates[i]
are respectively the configuration and state of the same group, for every i
.
HZL_SET_BY_USER hzl_Io_t hzl_ServerCtx::io |
Set of function pointers binding the API to the rest of the system.
Including random number generation, timestamp generation and message transmission.