UDP¶
Types¶
Name | Type | Description |
---|---|---|
mira_net_udp_connection_t |
struct |
|
mira_net_udp_callback_t |
void(* )(mira_net_udp_connection_t *connection, const void *data, uint16_t data_len, const mira_net_udp_callback_metadata_t *metadata, void *storage) |
Structs¶
mira_net_udp_callback_metadata_t¶
Type | Name | Description |
---|---|---|
mira_net_address_t |
source_address | |
mira_net_address_t |
destination_address | |
uint16_t |
source_port | |
uint16_t |
destination_port |
Functions¶
mira_net_udp_listen¶
mira_net_udp_connection_t* mira_net_udp_listen( uint16_t port, mira_net_udp_callback_t callback, void* storage);
Listen the specified UDP port.
Parameters
Parameter | Description |
---|---|
port |
The port number. |
callback |
Callback function with data. |
storage |
Storage pointer which is used to store optional information to be used by the callback function. E.g. it could be used as an identifier or to pass on a configuration struct. |
Return
A UDP connection on the specified port.
mira_net_udp_connect¶
mira_net_udp_connection_t* mira_net_udp_connect( const mira_net_address_t* address, uint16_t port, mira_net_udp_callback_t callback, void* storage);
Connect via UDP to the specified IP address.
Parameters
Parameter | Description |
---|---|
address |
The IP address to connect to. |
port |
The port number to connect to. |
callback |
UDP callback function. |
storage |
Storage pointer which is used to store optional information to be used by the callback function. E.g. it could be used as an identifier or to pass on a configuration struct. |
Return
UDP connection.
mira_net_udp_bind¶
mira_net_udp_connection_t* mira_net_udp_bind( const mira_net_address_t* address, uint16_t remote_port, uint16_t local_port, mira_net_udp_callback_t callback, void* storage);
Bind a socket and sets up a connection.
Parameters
Parameter | Description |
---|---|
address |
IP address to bind to. |
remote_port |
The remote port to connect to. |
local_port |
The local port to bind the connection to. |
callback |
UDP callback function. |
storage |
Storage pointer which is used to store optional information to be used by the callback function. E.g. it could be used as an identifier or to pass on a configuration struct. |
Return
The UDP Connection.
mira_net_udp_close¶
mira_status_t mira_net_udp_close( mira_net_udp_connection_t* mira_udp_connection);
Close the specified connection.
Parameters
Parameter | Description |
---|---|
mira_udp_connection |
The UDP connection to close. |
Return
MIRA_SUCCESS if successful.
mira_net_udp_send¶
mira_status_t mira_net_udp_send( mira_net_udp_connection_t* mira_udp_connection, const void* data, uint16_t data_len);
Sends a data string over a specified UDP connection.
Parameters
Parameter | Description |
---|---|
mira_udp_connection |
The UDP connection to use for the transmission. |
data |
The data to be sent. |
data_len |
The length, in bytes, of the data to be sent. |
Return
See enum definition.
Value | Description |
---|---|
MIRA_SUCCESS |
UDP packet successfully sent. |
MIRA_NET_ERROR_SEND_FAILED |
Sending UDP packet failed. |
mira_net_udp_send_to¶
mira_status_t mira_net_udp_send_to( mira_net_udp_connection_t* mira_udp_connection, const mira_net_address_t* address, uint16_t port, const void* data, uint16_t data_len);
Sends a data string via UDP to a specified IP address.
Parameters
Parameter | Description |
---|---|
mira_udp_connection |
The UDP connection to use for the transmission. |
address |
The IP address to send to, i.e. the receiver. |
port |
The UDP port to send to. |
data |
Data to send as vector. |
data_len |
The length of the data vector to send. |
Return
See enum definition.
Value | Description |
---|---|
MIRA_SUCCESS |
UDP packet successfully sent. |
MIRA_NET_ERROR_SEND_FAILED |
Sending UDP packet failed. |