Provided by: libupsclient-dev_2.8.1-3.1ubuntu2_amd64 bug

NAME

       upsclient - Network UPS Tools client access library

DESCRIPTION

       The Network UPS Tools (NUT) upsclient library provides a number of useful functions for
       programs to use when communicating with upsd(8). Many of the low-level socket and protocol
       details are handled automatically when using this interface.

       State is maintained across calls in an opaque structure called UPSCONN_t. Callers are
       expected to create one per connection. These will be provided to most of the upsclient
       functions. The format of this structure is subject to change, and client programs must not
       reference elements within it directly.

INITIALIZATION AND CLEANUP

       Before creating any connection, and in general using any upscli function, you must call
       upscli_init(3) with proper parameters to initialize upscli module.

       To register specific host security policy, you must call upscli_add_host_cert(3) before
       initialize connection to it.

       In the same way, just before exiting, and after all upscli usage, you must call
       upscli_cleanup(3) to flush cache files and perform other cleanup.

NETWORK FUNCTIONS

       To create a new connection, use upscli_connect(3). This will also initialize the UPSCONN_t
       structure. To verify that a connection has been established later, upscli_fd(3) can be
       used to return the file descriptor. Clients wishing to check for the presence and
       operation of SSL on a connection may call upscli_ssl(3).

       The majority of clients will use upscli_get(3) to retrieve single items from the server.
       To retrieve a list, use upscli_list_start(3) to get it started, then call
       upscli_list_next(3) for each element.

       Raw lines of text may be sent to upsd(8) with upscli_sendline(3). Reading raw lines is
       possible with upscli_readline(3). Client programs are expected to format these lines
       according to the protocol, as no checking will be performed before transmission.

       At the end of a connection, you must call upsclient_disconnect(3) to disconnect from upsd
       and release any dynamic memory associated with the UPSCONN_t structure. Failure to call
       this function will result in memory and file descriptor leaks in your program.

ERROR HANDLING

       In the event of an error, upscli_strerror(3) will provide human-readable details on what
       happened. upscli_upserror(3) may also be used to retrieve the error number. These numbers
       are defined in upsclient.h as UPSCLI_ERR_*.

SEE ALSO

       libupsclient-config(1), upscli_init(3), upscli_cleanup(3), upscli_add_host_cert(3),
       upscli_connect(3), upscli_disconnect(3), upscli_fd(3), upscli_getvar(3),
       upscli_list_next(3), upscli_list_start(3), upscli_readline(3), upscli_sendline(3),
       upscli_splitaddr(3), upscli_splitname(3), upscli_ssl(3), upscli_strerror(3),
       upscli_upserror(3)