RTI Connext Micro C API  Version 2.4.14.1
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
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...

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.
#define UDP_MAX_MESSAGE_SIZE_UNLIMITED   (-1)
 Specify an unlimited maximum message size.

Enumerations

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

Functions

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.
RTI_BOOL UDP_InterfaceFactoryProperty_initialize (struct UDP_InterfaceFactoryProperty *self)
 Initialize a UDP_InterfaceFactoryProperty structure.
RTI_BOOL UDP_InterfaceFactoryProperty_finalize (struct UDP_InterfaceFactoryProperty *self)
 Finalize a UDP_InterfaceFactoryProperty structure.
RTI_BOOL UDP_TransformRules_assert_source_rule (struct UDP_TransformRuleSeq *src_rules, RTI_INT32 ipv4_address, RTI_UINT32 ipv4_netmask, const char *transform_name, void *user_data)
 Add a source address rule for incoming payloads.
RTI_BOOL UDP_TransformRules_assert_destination_rule (struct UDP_TransformRuleSeq *dst_rules, RTI_INT32 ipv4_address, RTI_UINT32 ipv4_netmask, const char *transform_name, void *user_data)
 Add a destination address rule for outgoing payloads.
struct RT_ComponentFactoryI * UDP_InterfaceFactory_get_interface (void)
 Gets the singleton instance of the UDP interface factory.

Variables

struct UDP_InterfaceFactoryProperty UDP_INTERFACE_FACTORY_PROPERTY_DEFAULT
 Constant to initialize UDP_InterfaceFactoryProperty.

Detailed Description

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


Macro Definition Documentation

#define UDP_NatEntry_INITIALIZER
Value:
{\
NETIO_Address_INITIALIZER,\
NETIO_Address_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
Value:
{ \
OSAPI_THREAD_USE_OSDEFAULT_STACKSIZE, \
OSAPI_THREAD_PRIORITY_DEFAULT, \
UDP_THREAD_DEFAULT_OPTIONS \
OSAPI_PORT_THREAD_PROPERTY_INITIALIZER \
}

Initializer for thread properties.

#define UDP_MAX_MESSAGE_SIZE_UNLIMITED   (-1)

Specify an unlimited maximum message size.


Enumeration Type Documentation

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 transforms are enabled.


Function Documentation

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
MT Safety:
This operation is not thread safe.
API Restriction:
This function must only be called after DDS_DomainParticipantFactory_get_instance.
RTI_BOOL UDP_InterfaceFactoryProperty_initialize ( struct UDP_InterfaceFactoryProperty self)

Initialize a UDP_InterfaceFactoryProperty structure.

Parameters:
[in]selfThe property to initialize.
Returns:
RTI_TRUE on success, RTI_FALSE on failure.
MT Safety:
This operation is not thread safe.
RTI_BOOL UDP_InterfaceFactoryProperty_finalize ( struct UDP_InterfaceFactoryProperty self)

Finalize a UDP_InterfaceFactoryProperty structure.

Parameters:
[in]selfThe property to finalize.
Returns:
RTI_TRUE on success, RTI_FALSE on failure.
RTI_BOOL UDP_TransformRules_assert_source_rule ( struct UDP_TransformRuleSeq src_rules,
RTI_INT32  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
RTI_BOOL UDP_TransformRules_assert_destination_rule ( struct UDP_TransformRuleSeq dst_rules,
RTI_INT32  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
struct RT_ComponentFactoryI* UDP_InterfaceFactory_get_interface ( void  )
read

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
MT Safety:
This operation is thread safe.

Variable Documentation

struct UDP_InterfaceFactoryProperty UDP_INTERFACE_FACTORY_PROPERTY_DEFAULT

Constant to initialize UDP_InterfaceFactoryProperty.


RTI Connext Micro C API Version 2.4.14.1 Copyright © Thu Nov 2 2023 Real-Time Innovations, Inc