2011-01-26 09:35:08 +00:00
|
|
|
UPSCLI_SENDLINE(3)
|
|
|
|
==================
|
|
|
|
|
|
|
|
NAME
|
|
|
|
----
|
|
|
|
|
2022-06-29 10:37:36 +00:00
|
|
|
upscli_sendline, upscli_sendline_timeout - send a single command to a UPS
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
--------
|
|
|
|
|
|
|
|
#include <upsclient.h>
|
2022-06-29 10:37:36 +00:00
|
|
|
#include <time.h> /* or <sys/time.h> on some platforms */
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
int upscli_sendline(UPSCONN_t *ups, const char *buf, size_t buflen);
|
|
|
|
|
2022-06-29 10:37:36 +00:00
|
|
|
int upscli_sendline_timeout(UPSCONN_t *ups, const char *buf, size_t buflen,
|
|
|
|
const time_t timeout);
|
|
|
|
|
2011-01-26 09:35:08 +00:00
|
|
|
DESCRIPTION
|
|
|
|
-----------
|
|
|
|
|
2022-06-29 10:37:36 +00:00
|
|
|
The *upscli_sendline()* and *upscli_sendline_timeout()* functions take the
|
|
|
|
pointer 'ups' to a `UPSCONN_t` state structure and transmit a buffer 'buf'
|
|
|
|
of size 'buflen' to the server.
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
The data in 'buf' must be a fully formatted protocol command as no
|
|
|
|
parsing of the buffer occurs within this function.
|
|
|
|
|
2022-06-29 10:37:36 +00:00
|
|
|
The difference between the two functions is that *upscli_sendline_timeout()*
|
|
|
|
lets the caller decide the amount of time ('timeout' seconds) after which it
|
|
|
|
should give up and return, whereas *upscli_sendline()* does not offer this
|
|
|
|
freedom, and uses an immediate timeout (0 second).
|
|
|
|
|
2011-01-26 09:35:08 +00:00
|
|
|
RETURN VALUE
|
|
|
|
------------
|
|
|
|
|
2022-06-29 10:37:36 +00:00
|
|
|
The *upscli_sendline()* and *upscli_sendline_timeout()* functions
|
|
|
|
return 0 on success, or -1 if an error occurs.
|
2011-01-26 09:35:08 +00:00
|
|
|
|
|
|
|
SEE ALSO
|
|
|
|
--------
|
|
|
|
|
|
|
|
linkman:upscli_fd[3], linkman:upscli_get[3],
|
|
|
|
linkman:upscli_readline[3], linkman:upscli_sendline[3],
|
|
|
|
linkman:upscli_ssl[3],
|
|
|
|
linkman:upscli_strerror[3], linkman:upscli_upserror[3]
|