libnutclient_tcp, nutclient_tcp_create_client, nutclient_tcp_is_connected, nutclient_tcp_disconnect, nutclient_tcp_reconnect, nutclient_tcp_set_timeout, nutclient_tcp_get_timeout - TCP protocol related function for Network UPS Tools high-level client access library


#include <nutclient.h>
NUTCLIENT_TCP_t nutclient_tcp_create_client(const char* host, unsigned short port);
int nutclient_tcp_is_connected(NUTCLIENT_TCP_t client);
void nutclient_tcp_disconnect(NUTCLIENT_TCP_t client);
int nutclient_tcp_reconnect(NUTCLIENT_TCP_t client);
void nutclient_tcp_set_timeout(NUTCLIENT_TCP_t client, long timeout);
long nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);


These functions allow to manage connections to upsd(8) using NUT TCP protocol.

The nutclient_tcp_create_client() function create the NUTCLIENT_TCP_t context and intend to connect to upsd at host and port. The context must be freed by nutclient_destroy()

host can be a sever name or a valid IPv4 or IPv6 adress like "localhost", "" or "::1".

port is a valid TCP port, genrally 3493.

The nutclient_tcp_is_connected() function test if the connection is valid.

The nutclient_tcp_disconnect() function force to disconnect the specified connection.

The nutclient_tcp_reconnect() function force to reconnect a connection, disconnecting it if needed.

The nutclient_tcp_set_timeout() function set the timeout duration for I/O operations.

The nutclient_tcp_get_timeout() function retrieve the timeout duration for I/O operations.

timeout values are specified in seconds, negatives values for blocking.