DOKK / manpages / debian 12 / libupsclient-dev / upscli_splitname.3.en
UPSCLI_SPLITNAME(3) NUT Manual UPSCLI_SPLITNAME(3)

upscli_splitname - split a UPS definition into its components

#include <upsclient.h>

int upscli_splitname(const char *buf, char **upsname,

char **hostname, int *port)

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.

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".

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

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

upscli_fd(3), upscli_get(3), upscli_readline(3), upscli_sendline(3), upscli_splitaddr(3), upscli_ssl(3), upscli_strerror(3), upscli_upserror(3)

01/25/2023 Network UPS Tools 2.8.0