Datagram based network server.
More...
|
typedef struct vtm_socket_dgram_srv | vtm_socket_dgram_srv |
|
VTM_API vtm_socket_dgram_srv* vtm_socket_dgram_srv_new |
( |
void |
| ) |
|
Creates a new server.
- Returns
- the created server which can be used in the other functions
-
NULL if an error occured
VTM_API void vtm_socket_dgram_srv_free |
( |
vtm_socket_dgram_srv * |
srv | ) |
|
Releases the server and all allocated resources.
After this call the server pointer is no longer valid.
- Parameters
-
srv | the server which should be released |
VTM_API void* vtm_socket_dgram_srv_get_usr_data |
( |
vtm_socket_dgram_srv * |
srv | ) |
|
Retrieves the stored user data.
- Parameters
-
- Returns
- the previous saved user data
-
NULL if no data was stored
VTM_API void vtm_socket_dgram_srv_set_usr_data |
( |
vtm_socket_dgram_srv * |
srv, |
|
|
void * |
data |
|
) |
| |
Stores arbitrary user data with the server.
- Parameters
-
srv | the server that should store the user data |
data | the data that should be stored |
Runs the server.
This method blocks until the server is stopped or if an error occurs.
- Parameters
-
srv | the previously created server |
opts | the options for running the server |
- Returns
- VTM_OK if the server has been started successfully and has already been shut down again
-
VTM_ERROR or other more specific error code when the server could not be started
VTM_API int vtm_socket_dgram_srv_stop |
( |
vtm_socket_dgram_srv * |
srv | ) |
|
Stops the server.
This method blocks until the server is gracefully shutdown.
- Parameters
-
srv | the server which should be stopped |
- Returns
- VTM_OK if the shutdown was successful
-
VTM_ERROR if an error occured
VTM_API int vtm_socket_dgram_srv_send |
( |
vtm_socket_dgram_srv * |
srv, |
|
|
void * |
buf, |
|
|
size_t |
len, |
|
|
const struct vtm_socket_saddr * |
saddr |
|
) |
| |
Sends a datagram to the given address.
- Parameters
-
srv | the server that should send the message |
buf | the payload of the datagram |
len | the the length in bytes of the payload |
saddr | the destination address |
- Returns
- VTM_OK if the datagram was sent successfully
-
VTM_E_IO_UNKNOWN or VTM_ERROR if an error occured