EPS Conduits  v0.0.2-2411
networking over networking
EPS::CommHello2 Struct Referencefinal

Communication header: initial "hello" sent between clients and servers when they first connect. More...

#include "comm.hpp"

Collaboration diagram for EPS::CommHello2:

Public Member Functions

void set (const UUID &uuid, const EPS::EMode mode, const time_t eps_timestamp, const std::string &cipherhash, const IPv4Set &other_addresses, const IPv4 &address_eps=IPv4())
 Set the CommHello2 fields. More...
 
 CommHello2 (void)
 Constructor. More...
 
 CommHello2 (const UUID &uuid, const EPS::EMode mode, const time_t eps_timestamp, const std::string &cipherhash, const IPv4Set &other_addresses, const IPv4 &address_eps=IPv4())
 Constructor. More...
 

Public Attributes

CommHeader1 header
 common header More...
 
uint8_t mode
 
uint32_t address_eps
 eps address (or 0.0.0.0 if it hasn't yet been assigned) More...
 
uint32_t other_addresses [MAX_NUMBER_OF_OTHER_ADDRESSES]
 other addresses this host can use (LAN, WAN, ...) in network byte order More...
 
uint32_t eps_uptime
 timestamp when EPS was started (network byte order) More...
 
uint32_t system_uptime
 timestamp when the system was started (network byte order) More...
 
char version_str [20]
 text representation of the version string More...
 
char uuid_str [40]
 uuid More...
 
char hostname_str [40]
 first 40 chars of the hostname (which can be up to 255 bytes long) More...
 
char cipherhash_str [20]
 nonesense hash used to quickly determine if the cipher key and iv are correctly set More...
 
char os_version_str [40]
 version string of the operating system More...
 

Static Public Attributes

static const size_t max_number_of_other_addresses
 

Detailed Description

Communication header: initial "hello" sent between clients and servers when they first connect.

Constructor & Destructor Documentation

◆ CommHello2() [1/2]

EPS::CommHello2::CommHello2 ( void  )

Constructor.

◆ CommHello2() [2/2]

EPS::CommHello2::CommHello2 ( const UUID uuid,
const EPS::EMode  mode,
const time_t  eps_timestamp,
const std::string &  cipherhash,
const IPv4Set other_addresses,
const IPv4 address_eps = IPv4() 
)

Constructor.

Member Function Documentation

◆ set()

void EPS::CommHello2::set ( const UUID uuid,
const EPS::EMode  mode,
const time_t  eps_timestamp,
const std::string &  cipherhash,
const IPv4Set other_addresses,
const IPv4 address_eps = IPv4() 
)

Set the CommHello2 fields.

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ address_eps

uint32_t EPS::CommHello2::address_eps

eps address (or 0.0.0.0 if it hasn't yet been assigned)

◆ cipherhash_str

char EPS::CommHello2::cipherhash_str[20]

nonesense hash used to quickly determine if the cipher key and iv are correctly set

◆ eps_uptime

uint32_t EPS::CommHello2::eps_uptime

timestamp when EPS was started (network byte order)

◆ header

CommHeader1 EPS::CommHello2::header

common header

◆ hostname_str

char EPS::CommHello2::hostname_str[40]

first 40 chars of the hostname (which can be up to 255 bytes long)

◆ max_number_of_other_addresses

const size_t EPS::CommHello2::max_number_of_other_addresses
static

◆ mode

uint8_t EPS::CommHello2::mode
See also
EPS::EMode

◆ os_version_str

char EPS::CommHello2::os_version_str[40]

version string of the operating system

See also
EPS::get_os_name()

◆ other_addresses

uint32_t EPS::CommHello2::other_addresses[MAX_NUMBER_OF_OTHER_ADDRESSES]

other addresses this host can use (LAN, WAN, ...) in network byte order

◆ system_uptime

uint32_t EPS::CommHello2::system_uptime

timestamp when the system was started (network byte order)

◆ uuid_str

char EPS::CommHello2::uuid_str[40]

uuid

◆ version_str

char EPS::CommHello2::version_str[20]

text representation of the version string


The documentation for this struct was generated from the following files: