upscli_connect - Man Page

Open a connection to a NUT upsd


#include <upsclient.h>
int upscli_connect(UPSCONN_t *ups, const char *host, uint16_t port, int flags);


The upscli_connect() function takes the pointer ups to a UPSCONN_t state structure and opens a TCP connection to the host on the given port.

flags may be either UPSCLI_CONN_TRYSSL to try a SSL connection, or UPSCLI_CONN_REQSSL to require a SSL connection.

Introduced in version 2.7, an additional flag UPSCLI_CONN_CERTVERIF now exists to verify the signature offered during the SSL handshake. This flag should be used in conjunction with upscli_init(3) and/or upscli_add_host_cert(3) calls before connecting in order to define a CA certificate with which to verify.

If SSL mode is required, this function will only return successfully if it is able to establish a SSL connection with the server. Possible reasons for failure include no SSL support on the server, and if upsclient itself hasn’t been compiled with SSL support.

You must call upscli_disconnect(3) when finished with a connection, or your program will slowly leak memory and file descriptors.

Return Value

The upscli_connect() function modifies the UPSCONN_t structure and returns 0 on success, or -1 if an error occurs.

See Also

upscli_disconnect(3), upscli_fd(3), upscli_splitaddr(3), upscli_splitname(3), upscli_ssl(3), upscli_strerror(3), upscli_upserror(3)

Referenced By

upscli_add_host_cert(3), upscli_disconnect(3), upsclient(3), upscli_fd(3).

04/26/2022 Network UPS Tools 2.8.0 NUT Manual