UPSCLI_SPLITNAME(3)
===================

NAME
----

upscli_splitname - split a UPS definition into its components

SYNOPSIS
--------

 #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
--------

linkman:upscli_fd[3], linkman:upscli_get[3],
linkman:upscli_readline[3], linkman:upscli_sendline[3],
linkman:upscli_splitaddr[3], linkman:upscli_ssl[3],
linkman:upscli_strerror[3], linkman:upscli_upserror[3]
