# LIBNUTCLIENT_GENERAL(3)

## NAME

libnutclient_general, nutclient_destroy, strarr_alloc, strarr_free - General and utility functions in Network UPS Tools high-level client access library

## SYNOPSIS

            #include <nutclient.h>

            typedef void* NUTCLIENT_t;

            void nutclient_destroy(NUTCLIENT_t client);

            typedef char** strarr;

            strarr strarr_alloc(unsigned short count);

            void strarr_free(strarr arr);

## DESCRIPTION

The nutclient_destroy() function destroys a NUTCLIENT_t or derived (like NUTCLIENT_TCP_t) connection object, and frees allocated memory.

- The strarr type represents an array of C strings (array of char pointer). The array must always be terminated by a NULL pointer.

  Pointed strings must be allocated by `(x)calloc` or `(x)strdup`.

- The strarr_alloc() function allocates a strarr array with the specified number of (non-initialized) string pointers.

  Another additional pointer set to NULL is added at the end of the array.

- The strarr_free function frees a strarr array. It also frees all pointed strings.

Common arguments:

- dev is the device name.

## SEE ALSO

libnutclient(3)