Skip to content

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);

Listens 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);

Binds 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);

Closes 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.