NAME
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
SYNOPSIS
| Note | Two NUT websites This version of the page reflects NUT release v2.8.4 with codebase commited 541c2ecf0b at 2025-08-08T12:48:39+02:00 Options, features and capabilities in current development (and future releases) are detailed on the main site and may differ from ones described here. | 
        #include <nutclient.h>
        #include <cstdint> /* uint16_t */
        #include <ctime> /* time_t */
        typedef NUTCLIENT_t NUTCLIENT_TCP_t;
        NUTCLIENT_TCP_t nutclient_tcp_create_client(
                const char* host, uint16_t 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, time_t timeout);
        time_t nutclient_tcp_get_timeout(NUTCLIENT_TCP_t client);DESCRIPTION
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 address like "localhost", "127.0.0.1" or "::1". 
- 
port is a valid TCP port, generally 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, use negative values for blocking.