embenet_brc/embenet_defs.h File Reference

Table of contents Table of contents

Common API definitions. More...

Data Structures

struct  EMBENET_IPV6
 IPv6 address. More...
 
struct  EMBENET_K1
 128 bit pre-shared key used to authenticate Beacons More...
 
struct  EMBENET_PSK
 Constrained join 128-bit pre-shared key. This key should be unique and shared with JRC. More...
 
struct  EMBENET_NODE_QuickJoinCredentials
 Structure describing the data necessary to perform a quick network rejoin. More...
 

Macros

#define EMBENET_EUI64_INVALID   UINT64_C(0)
 Invalid value of EMBENET_GroupId used as an error indication. More...
 
#define EMBENET_GROUPID_INVALID   (EMBENET_GroupId)(0U)
 Invalid value of EMBENET_GroupId used as an error indication. More...
 

Typedefs

typedef uint64_t EMBENET_NetworkPrefix
 Network prefix - common first 8 bytes of nodes IPv6 Address. More...
 
typedef uint64_t EMBENET_EUI64
 Unique identifier of the node. More...
 
typedef uint16_t EMBENET_GroupId
 Multicast group ID. More...
 
typedef uint16_t EMBENET_PANID
 IEEE802.15.4e PAN ID. More...
 
typedef uint64_t EMBENET_RandomSeed
 Initial value of internal random number generators. USING NOT A RANDOM NUMBER WILL CAUSE A SERIOUS SECURITY VUNERABILITY. More...
 

Enumerations

enum  EMBENET_Result {
  EMBENET_RESULT_OK = 0 , EMBENET_RESULT_UNSPECIFIED_ERROR , EMBENET_RESULT_INVALID_ARGUMENT , EMBENET_RESULT_CALLED_OUTSIDE_A_TASK ,
  EMBENET_RESULT_NOT_SYNCHRONIZED , EMBENET_RESULT_UNABLE_TO_SCHEDULE_IN_THE_PAST , EMBENET_RESULT_INVALID_CREDENTIALS , EMBENET_RESULT_ROOT_CAPABILITIES_DISABLED ,
  EMBENET_RESULT_UDP_MAX_DATA_SIZE_EXCEEDED , EMBENET_RESULT_UDP_PACKET_QUEUE_FULL , EMBENET_RESULT_UDP_FORWARDING_ERROR , EMBENET_RESULT_UDP_SOCKET_UNREGISTERED ,
  EMBENET_RESULT_JOIN_RULE_ALREADY_EXISTS , EMBENET_RESULT_JOIN_RULE_NOT_FOUND , EMBENET_RESULT_JOIN_RULE_REGISTER_FULL , EMBENET_RESULT_OK = 0 ,
  EMBENET_RESULT_UNSPECIFIED_ERROR , EMBENET_RESULT_INVALID_ARGUMENT , EMBENET_RESULT_CALLED_OUTSIDE_A_TASK , EMBENET_RESULT_NOT_SYNCHRONIZED ,
  EMBENET_RESULT_UNABLE_TO_SCHEDULE_IN_THE_PAST , EMBENET_RESULT_INVALID_CREDENTIALS , EMBENET_RESULT_ROOT_CAPABILITIES_DISABLED , EMBENET_RESULT_UDP_MAX_DATA_SIZE_EXCEEDED ,
  EMBENET_RESULT_UDP_PACKET_QUEUE_FULL , EMBENET_RESULT_UDP_FORWARDING_ERROR , EMBENET_RESULT_UDP_SOCKET_UNREGISTERED , EMBENET_RESULT_JOIN_RULE_ALREADY_EXISTS ,
  EMBENET_RESULT_JOIN_RULE_NOT_FOUND , EMBENET_RESULT_JOIN_RULE_REGISTER_FULL
}
 Possible result codes. More...
 
enum  EMBENET_AddressingMode { EMBENET_ADDRESSING_MODE_SINGLE , EMBENET_ADDRESSING_MODE_GROUP , EMBENET_ADDRESSING_MODE_SINGLE , EMBENET_ADDRESSING_MODE_GROUP }
 Possible addressing modes. More...
 

Functions

EMBENET_IPV6 EMBENET_AssembleUnicastIpv6 (EMBENET_NetworkPrefix nwkPrefix, EMBENET_EUI64 uid)
 Assembles Network prefix and Node's UID into IPv6 Address. More...
 
EMBENET_IPV6 EMBENET_AssembleMulticastIpv6 (EMBENET_NetworkPrefix nwkPrefix, EMBENET_GroupId gid)
 Assembles Network prefix and Multicast group ID into IPv6 Address. More...
 

Detailed Description

Common API definitions.

License: Commercial
Version
1.0.3624
Purpose: embeNET API