41#ifdef PLATFORM_ARDUINO
42#error To be implemented. No support for federation on Arduino yet.
44#include <sys/socket.h>
58#define HOST_LITTLE_ENDIAN 1
59#define HOST_BIG_ENDIAN 2
173void extract_header(
unsigned char*
buffer, uint16_t* port_id, uint16_t* federate_id,
size_t* length);
187void extract_timed_header(
unsigned char*
buffer, uint16_t* port_id, uint16_t* federate_id,
size_t* length,
tag_t* tag);
213typedef struct rti_addr_info_t {
214 char rti_host_str[256];
215 char rti_port_str[6];
216 char rti_user_str[256];
226bool match_regex(
const char* str,
char* regex);
232bool validate_port(
char* port);
238bool validate_host(
const char* host);
244bool validate_user(
const char* user);
250bool extract_match_group(
const char* rti_addr,
char* dest, regmatch_t group,
size_t max_len,
size_t min_len,
251 const char* err_msg);
257bool extract_match_groups(
const char* rti_addr,
char** rti_addr_strs,
bool** rti_addr_flags, regmatch_t* group_array,
258 int* gids,
size_t* max_lens,
size_t* min_lens,
const char** err_msgs);
263void extract_rti_addr_info(
const char* rti_addr, rti_addr_info_t* rti_addr_info);
uint16_t extract_uint16(unsigned char *bytes)
Definition net_util.c:220
uint16_t swap_bytes_if_big_endian_uint16(uint16_t src)
Definition net_util.c:171
int64_t extract_int64(unsigned char *bytes)
Definition net_util.c:210
int32_t extract_int32(unsigned char *bytes)
Definition net_util.c:190
void encode_uint32(uint32_t data, unsigned char *buffer)
Definition net_util.c:69
int64_t swap_bytes_if_big_endian_int64(int64_t src)
Definition net_util.c:143
int host_is_big_endian(void)
Definition net_util.c:85
void encode_int64(int64_t data, unsigned char *buffer)
Definition net_util.c:50
int32_t swap_bytes_if_big_endian_int32(int32_t src)
Definition net_util.c:99
void encode_uint16(uint16_t data, unsigned char *buffer)
Definition net_util.c:78
void encode_int32(int32_t data, unsigned char *buffer)
Definition net_util.c:60
Time and tag definitions and functions for Lingua Franca.
char buffer[BUFFER_SIZE]
Definition trace_util.c:42