Datagram based network message client.
More...
|
typedef struct vtm_nm_dgram_client | vtm_nm_dgram_client |
|
#define VTM_NM_DGRAM_CL_OPT_RECV_TIMEOUT 1 |
expects unsigned long, value is millisceonds
Creates a new client.
- Returns
- the created client which can be used in the other functions
-
NULL if an error occured
VTM_API void vtm_nm_dgram_client_free |
( |
vtm_nm_dgram_client * |
cl | ) |
|
Releases the client and all allocated resources.
After this call the client pointer is no longer valid.
- Parameters
-
cl | the client that should be released |
VTM_API int vtm_nm_dgram_client_set_opt |
( |
vtm_nm_dgram_client * |
cl, |
|
|
int |
opt, |
|
|
const void * |
val, |
|
|
size_t |
len |
|
) |
| |
Sets one of the possible options.
The possible options are macros starting with VTM_NM_DGRAM_CL_OPT_.
- Parameters
-
cl | the client where the option should be set |
opt | the option that should be set |
val | pointer to new value of the option |
len | size of the value |
- Returns
- VTM_OK if the option was successfully set
-
VTM_E_NOT_SUPPORTED if the given option or the value format is not supported
-
VTM_ERROR if an error occured
Sends a message to given destination adress.
- Parameters
-
cl | the client |
msg | the dataset containing the message values |
saddr | the destination adress |
- Returns
- VTM_OK if the message was successfully sent
-
VTM_E_IO_UNKNOWN or VTM_ERROR if an error occured
Tries to receive a message.
- Parameters
-
| cl | the client |
[out] | msg | the dataset where the received message is stored |
[out] | saddr | if not NULL the source adress is stored here |
- Returns
- VTM_OK if a message was successfully received
-
VTM_E_TIMEOUT if the timeout elapsed and no message was received
-
VTM_E_IO_UNKNOWN or VTM_ERROR if an error occured