NAME

upscli_splitname - split a UPS definition into its components

SYNOPSIS

Note
Two NUT websites

This version of the page reflects NUT release v2.8.1 with codebase commited 4ba352d8f at 2023-10-31T21:46:20+01: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 <upsclient.h>
int upscli_splitname(const char *buf, char **upsname,
                               char **hostname, int *port)

DESCRIPTION

The upscli_splitname() function takes a pointer to the raw UPS definition buf and returns pointers to dynamically allocated memory in upsname and hostname. It also copies the port number into port.

FORMATTING

A UPS definition is specified according to this format:

<upsname>[@<hostname>[:<port>]]

When the UPS name is not given, this function will print an error to stderr and return -1 without changing anything.

Definitions without an explicit port value receive the default value of 3493. The default hostname is "localhost".

MEMORY USAGE

You must free(3) the pointers to upsname and hostname when you are done with them to avoid memory leaks.

RETURN VALUE

The upscli_splitname() function returns 0 on success, or -1 if an error occurs.

SEE ALSO