RTI Connext Micro C API Version 4.2.0
Loading...
Searching...
No Matches
UDP Transport API

Data Structures

struct  UDP_NatEntry
 <<eXtension>> Properties for a Network Address Translation entry More...
 
struct  UDP_NatEntrySeq
 <<eXtension>> Declares IDL sequence<UDP_NatEntry> More...
 
struct  UDP_InterfaceTableEntry
 Generic structure to describe a network interface. More...
 
struct  UDP_InterfaceTableEntrySeq
 <<eXtension>> Declares IDL sequence<UDP_InterfaceTableEntry> More...
 
struct  UDP_TransformRuleSeq
 <<eXtension>> Declares IDL sequence<UDP_TransformRule> More...
 
struct  UDP_InterfaceFactoryProperty
 <<eXtension>> <<cert>> Properties for the UDP Transport. More...
 
class  UDPInterfaceFactory
 <<eXtension>> <<cert>> A UDP transport factory that will be used by a DomainParticipant to create a UDP interface. Only one UDP interface can be registered with the DomainParticipantFactory. More...
 
class  UDPInterfaceTable
 

Macros

#define UDP_NatEntry_INITIALIZER
 Initializer for a the NatEntry structure.
 
#define UDP_NatEntrySeq_INITIALIZER    REDA_DEFINE_SEQUENCE_INITIALIZER(struct UDP_NatEntry)
 UDP_NatEntrySeq initializer.
 
#define UDP_INTERFACE_MAX_IFNAME   64
 Maximum length of a UDP network interface.
 
#define UDP_INTERFACE_INTERFACE_UP_FLAG   0x1U
 Generic flag to indicate if a network stack is up.
 
#define UDP_INTERFACE_INTERFACE_MULTICAST_FLAG   0x2U
 Generic flag to indicate if a network stack supports multicast.
 
#define UDP_INTERFACE_MAX_NETMASK_BITS   (32U)
 The maximum number of bits in a UDP netmask.
 
#define UDP_THREAD_PROPERTY_DEFAULT
 Initializer for thread properties.
 

Enumerations

enum  UDP_TransformUdpMode_T { UDP_TRANSFORM_UDP_MODE_DISABLED , UDP_TRANSFORM_UDP_MODE_ENABLED }
 Operation mode when UDP transformations are enabled. More...
 

Functions

NETIOPSLDllExport RTI_BOOL UDP_InterfaceTable_add_entry (struct UDP_InterfaceTableEntrySeq *seq, RTI_UINT32 address, RTI_UINT32 netmask, const char *ifname, RTI_UINT32 flags)
 Add an entry to the list of available interfaces.
 
NETIOPSLDllExport RTI_BOOL UDP_InterfaceFactoryProperty_initialize (struct UDP_InterfaceFactoryProperty *self)
 Initialize a UDP factory property.
 
NETIOPSLDllExport RTI_BOOL UDP_InterfaceFactoryProperty_finalize (struct UDP_InterfaceFactoryProperty *self)
 Finalize a UDP factory property.
 
NETIOPSLDllExport RTI_BOOL UDP_TransformRules_assert_source_rule (struct UDP_TransformRuleSeq *src_rules, RTI_UINT32 ipv4_address, RTI_UINT32 ipv4_netmask, const char *transform_name, void *user_data)
 Add a source address rule for incoming payloads.
 
NETIOPSLDllExport RTI_BOOL UDP_TransformRules_assert_destination_rule (struct UDP_TransformRuleSeq *dst_rules, RTI_UINT32 ipv4_address, RTI_UINT32 ipv4_netmask, const char *transform_name, void *user_data)
 Add a destination address rule for outgoing payloads.
 
NETIOPSLDllExport struct RT_ComponentFactoryI * UDP_InterfaceFactory_get_interface (void)
 Gets the singleton instance of the UDP interface factory.
 
NETIOPSLDllExport RTI_BOOL UDP_Interface_register (RT_Registry_T *registry, const char *name, struct UDP_InterfaceFactoryProperty *property)
 Gets the singleton instance of the UDP interface factory.
 
static struct RT_ComponentFactoryI * UDPInterfaceFactory::get_interface ()
 Gets the singleton instance of the UDP interface factory.
 
static bool UDPInterfaceTable::add_entry (struct UDP_InterfaceTableEntrySeq *seq, RTI_UINT32 address, RTI_UINT32 netmask, const char *ifname, RTI_UINT32 flags)
 Add an entry to the list of available interfaces.
 

Variables

NETIOPSLDllVariable struct UDP_InterfaceFactoryProperty UDP_INTERFACE_FACTORY_PROPERTY_DEFAULT
 Constant to initialize UDP_InterfaceFactoryProperty.
 

Detailed Description

<<eXtension>> <<cert>> The UDP transport implements the RTI Connext DDS Micro NETIO interface and supports UDPv4. Please refer to the User Manual for information about how to use the UDP transport.

Macro Definition Documentation

◆ UDP_NatEntry_INITIALIZER

#define UDP_NatEntry_INITIALIZER
Value:
{\
}
#define NETIO_Address_INITIALIZER
<<eXtension>> <<cert>> Initialize a NETIO_Address.
Definition netio_address.h:479

Initializer for a the NatEntry structure.

◆ UDP_NatEntrySeq_INITIALIZER

#define UDP_NatEntrySeq_INITIALIZER    REDA_DEFINE_SEQUENCE_INITIALIZER(struct UDP_NatEntry)

UDP_NatEntrySeq initializer.

◆ UDP_INTERFACE_MAX_IFNAME

#define UDP_INTERFACE_MAX_IFNAME   64

Maximum length of a UDP network interface.

◆ UDP_INTERFACE_INTERFACE_UP_FLAG

#define UDP_INTERFACE_INTERFACE_UP_FLAG   0x1U

Generic flag to indicate if a network stack is up.

◆ UDP_INTERFACE_INTERFACE_MULTICAST_FLAG

#define UDP_INTERFACE_INTERFACE_MULTICAST_FLAG   0x2U

Generic flag to indicate if a network stack supports multicast.

◆ UDP_INTERFACE_MAX_NETMASK_BITS

#define UDP_INTERFACE_MAX_NETMASK_BITS   (32U)

The maximum number of bits in a UDP netmask.

◆ UDP_THREAD_PROPERTY_DEFAULT

#define UDP_THREAD_PROPERTY_DEFAULT
Value:
{ \
OSAPI_THREAD_PRIORITY_DEFAULT, \
UDP_THREAD_DEFAULT_OPTIONS \
}
#define OSAPI_THREAD_USE_OSDEFAULT_STACKSIZE
Use the default stack size when creating a thread.
Definition osapi_thread.h:90

Initializer for thread properties.

Enumeration Type Documentation

◆ UDP_TransformUdpMode_T

Operation mode when UDP transformations are enabled.

Enumerator
UDP_TRANSFORM_UDP_MODE_DISABLED 

Disable regular UDP, even when no transforms are enabled.

UDP_TRANSFORM_UDP_MODE_ENABLED 

Allow regular UDP, even when transformations are enabled.

Function Documentation

◆ UDP_InterfaceTable_add_entry()

NETIOPSLDllExport RTI_BOOL UDP_InterfaceTable_add_entry ( struct UDP_InterfaceTableEntrySeq * seq,
RTI_UINT32 address,
RTI_UINT32 netmask,
const char * ifname,
RTI_UINT32 flags )

Add an entry to the list of available interfaces.

This function can be used to add an interface to the if_table in the UDP_InterfaceFactoryProperty.

Parameters
[in]seqThe sequence to add the entry to
[in]addressThe UDPv4 interface address to add in host order
[in]netmaskThe interface netmask, maximum of UDP_INTERFACE_MAX_NETMASK_BITS bits.
[in]ifnameThe interface name. Cannot exceed UDP_INTERFACE_MAX_IFNAME including NUL.
[in]flagsBitmap of UDP_INTERFACE_INTERFACE_UP_FLAG and/or UDP_INTERFACE_INTERFACE_MULTICAST_FLAG
Returns
RTI_TRUE on success, RTI_FALSE on failure

References RTI_UINT32.

◆ UDP_InterfaceFactoryProperty_initialize()

NETIOPSLDllExport RTI_BOOL UDP_InterfaceFactoryProperty_initialize ( struct UDP_InterfaceFactoryProperty * self)

Initialize a UDP factory property.

Parameters
[in]selfProperty to initialize
Returns
RTI_TRUE on success, RTI_FALSE on failure

◆ UDP_InterfaceFactoryProperty_finalize()

NETIOPSLDllExport RTI_BOOL UDP_InterfaceFactoryProperty_finalize ( struct UDP_InterfaceFactoryProperty * self)

Finalize a UDP factory property.

Parameters
[in]selfProperty to finalize
Returns
RTI_TRUE on success, RTI_FALSE on failure

◆ UDP_TransformRules_assert_source_rule()

NETIOPSLDllExport RTI_BOOL UDP_TransformRules_assert_source_rule ( struct UDP_TransformRuleSeq * src_rules,
RTI_UINT32 ipv4_address,
RTI_UINT32 ipv4_netmask,
const char * transform_name,
void * user_data )

Add a source address rule for incoming payloads.

This function can be used to add rules to the source_rules sequence in the UDP_InterfaceFactoryProperty.

Parameters
[in]src_rulesThe sequence to add the rule to.
[in]ipv4_addressThe IPv4 address to compare the source of incoming packets to after applying the netmask.
[in]ipv4_netmaskThe IPv4 netmask to apply to the source address of a UDP payload before comparing with ipv4_address.
[in]transform_nameThe name of the transformation to apply to an incoming payload.
[in]user_datauser data associated with the rule.
Returns
RTI_TRUE on success, RTI_FALSE on failure

References RTI_UINT32.

◆ UDP_TransformRules_assert_destination_rule()

NETIOPSLDllExport RTI_BOOL UDP_TransformRules_assert_destination_rule ( struct UDP_TransformRuleSeq * dst_rules,
RTI_UINT32 ipv4_address,
RTI_UINT32 ipv4_netmask,
const char * transform_name,
void * user_data )

Add a destination address rule for outgoing payloads.

This function can be used to add rules to the destination_rules in the UDP_InterfaceFactoryProperty.

Parameters
[in]dst_rulesThe sequence to add the rule to.
[in]ipv4_addressThe IPv4 address to compare the destination of outgoing packets to after applying the netmask.
[in]ipv4_netmaskThe IPv4 netmask to apply to the destination address of a UDP payload before comparing with ipv4_address.
[in]transform_nameThe name of the transformation to apply to an outgoing payload.
[in]user_datauser data associated with the rule.
Returns
RTI_TRUE on success, RTI_FALSE on failure

References RTI_UINT32.

◆ UDP_InterfaceFactory_get_interface()

NETIOPSLDllExport struct RT_ComponentFactoryI * UDP_InterfaceFactory_get_interface ( void )

Gets the singleton instance of the UDP interface factory.

This function gets the singleton instance of the UDP factory that is used by the middleware to create a UDP transport instance. UDP_InterfaceFactoryProperty

Returns
Pointer to UDP factory instance

◆ UDP_Interface_register()

NETIOPSLDllExport RTI_BOOL UDP_Interface_register ( RT_Registry_T * registry,
const char * name,
struct UDP_InterfaceFactoryProperty * property )

Gets the singleton instance of the UDP interface factory.

This function gets the singleton instance of the UDP factory that is used by the middleware to create a UDP transport instance. UDP_InterfaceFactoryProperty

Returns
Pointer to UDP factory instance

◆ get_interface()

static struct RT_ComponentFactoryI * UDPInterfaceFactory::get_interface ( )
static

Gets the singleton instance of the UDP interface factory.

This function gets the singleton instance of the UDP factory that is used by the middleware to create a UDP transport instance. UDP_InterfaceFactoryProperty

Returns
Pointer to UDP factory instance()

◆ add_entry()

static bool UDPInterfaceTable::add_entry ( struct UDP_InterfaceTableEntrySeq * seq,
RTI_UINT32 address,
RTI_UINT32 netmask,
const char * ifname,
RTI_UINT32 flags )
static

Add an entry to the list of available interfaces.

This function can be used to add an interface to the if_table in the UDP_InterfaceFactoryProperty.

Parameters
[in]seqThe sequence to add the entry to
[in]addressThe UDPv4 interface address to add in host order
[in]netmaskThe interface netmask, maximum of UDP_INTERFACE_MAX_NETMASK_BITS bits.
[in]ifnameThe interface name. Cannot exceed UDP_INTERFACE_MAX_IFNAME including NUL.
[in]flagsBitmap of UDP_INTERFACE_INTERFACE_UP_FLAG and/or UDP_INTERFACE_INTERFACE_MULTICAST_FLAG
Returns
RTI_TRUE on success, RTI_FALSE on failure

References RTI_UINT32.

Variable Documentation

◆ UDP_INTERFACE_FACTORY_PROPERTY_DEFAULT

NETIOPSLDllVariable struct UDP_InterfaceFactoryProperty UDP_INTERFACE_FACTORY_PROPERTY_DEFAULT
extern

Constant to initialize UDP_InterfaceFactoryProperty.