mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
sysutils/nut: Update to 2.8.1
This commit is contained in:
parent
a8c2e945f8
commit
f702184e22
8 changed files with 47 additions and 340 deletions
|
@ -1,6 +1,5 @@
|
|||
PORTNAME= nut
|
||||
PORTVERSION= 2.8.0
|
||||
PORTREVISION= 24
|
||||
PORTVERSION= 2.8.1
|
||||
CATEGORIES= sysutils
|
||||
MASTER_SITES= http://www.networkupstools.org/source/${PORTVERSION:R}/
|
||||
|
||||
|
@ -69,9 +68,15 @@ CONFIGURE_ARGS= --sysconfdir=${PREFIX}/etc/nut \
|
|||
--with-pidpath=${STATEDIR} \
|
||||
--with-pkgconfig-dir=${PREFIX}/libdata/pkgconfig \
|
||||
--with-user=${NUT_USER} \
|
||||
--with-group=${NUT_GROUP}
|
||||
--with-group=${NUT_GROUP} \
|
||||
--with-python=${PYTHON_CMD} \
|
||||
--without-python2 \
|
||||
--with-python3=${PYTHON_CMD} \
|
||||
--without-nut_monitor \
|
||||
--with-ltdl --with-nut-scanner
|
||||
|
||||
CFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib
|
||||
CFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib -pthread
|
||||
CPPFLAGS+= -I${LOCALBASE}/include -L${LOCALBASE}/lib
|
||||
LIB_DEPENDS+= libltdl.so:devel/libltdl
|
||||
|
||||
MANPAGES_CONFIGURE_ON= --with-doc=man=auto
|
||||
|
@ -143,7 +148,7 @@ post-install:
|
|||
${INSTALL_DATA} ${WRKSRC}/docs/cables/*.txt ${STAGEDIR}${DOCSDIR}/cables
|
||||
${INSTALL_DATA} ${WRKSRC}/docs/*.txt ${STAGEDIR}${DOCSDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/docs/FAQ.txt ${STAGEDIR}${DOCSDIR}
|
||||
.for file in AUTHORS COPYING ChangeLog INSTALL MAINTAINERS NEWS README UPGRADING
|
||||
.for file in AUTHORS COPYING ChangeLog INSTALL MAINTAINERS NEWS README
|
||||
${INSTALL_DATA} ${WRKSRC}/${file} ${STAGEDIR}${DOCSDIR}
|
||||
.endfor
|
||||
.endif
|
||||
|
@ -152,7 +157,5 @@ post-install:
|
|||
${INSTALL_DATA} ${PATCHDIR}/nut.newsyslog ${STAGEDIR}${EXAMPLESDIR}/newsyslog.sample
|
||||
${INSTALL_DATA} ${PATCHDIR}/nut_upslog.sample ${STAGEDIR}${EXAMPLESDIR}/nut_upslog.sample
|
||||
${MKDIR} ${STAGEDIR}/var/log/nut
|
||||
@${RM} ${STAGEDIR}${PREFIX}/etc/nut/solaris-init/nut
|
||||
@${RMDIR} ${STAGEDIR}${PREFIX}/etc/nut/solaris-init
|
||||
|
||||
.include <bsd.port.post.mk>
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
TIMESTAMP = 1651085820
|
||||
SHA256 (nut-2.8.0.tar.gz) = c3e5a708da797b7c70b653d37b1206a000fcb503b85519fe4cdf6353f792bfe5
|
||||
SIZE (nut-2.8.0.tar.gz) = 3287640
|
||||
TIMESTAMP = 1699981499
|
||||
SHA256 (nut-2.8.1.tar.gz) = 7da48ee23b1f0d8d72560bb0af84f5c5ae4dbe35452b84cb49840132e47f099c
|
||||
SIZE (nut-2.8.1.tar.gz) = 4125263
|
||||
|
|
|
@ -1,280 +0,0 @@
|
|||
--- clients/upslog.c.orig 2022-08-29 22:20:14.342137000 -0700
|
||||
+++ clients/upslog.c 2022-08-29 22:21:10.934419000 -0700
|
||||
@@ -41,32 +45,49 @@
|
||||
#include "upslog.h"
|
||||
|
||||
static int reopen_flag = 0, exit_flag = 0;
|
||||
- static uint16_t port;
|
||||
- static char *upsname, *hostname;
|
||||
- static UPSCONN_t ups;
|
||||
+ static char *upsname;
|
||||
+ static UPSCONN_t *ups;
|
||||
|
||||
- static FILE *logfile;
|
||||
- static const char *logfn, *monhost;
|
||||
+ static char *logfn, *monhost;
|
||||
static sigset_t nut_upslog_sigmask;
|
||||
static char logbuffer[LARGEBUF], *logformat;
|
||||
|
||||
static flist_t *fhead = NULL;
|
||||
+ struct monhost_ups {
|
||||
+ char *monhost;
|
||||
+ char *logfn;
|
||||
+ char *upsname;
|
||||
+ char *hostname;
|
||||
+ uint16_t port;
|
||||
+ UPSCONN_t *ups;
|
||||
+ FILE *logfile;
|
||||
+ struct monhost_ups *next;
|
||||
+ };
|
||||
+ static struct monhost_ups *monhost_ups_anchor = NULL;
|
||||
+ static struct monhost_ups *monhost_ups_current = NULL;
|
||||
+ static struct monhost_ups *monhost_ups_prev = NULL;
|
||||
|
||||
+
|
||||
#define DEFAULT_LOGFORMAT "%TIME @Y@m@d @H@M@S% %VAR battery.charge% " \
|
||||
"%VAR input.voltage% %VAR ups.load% [%VAR ups.status%] " \
|
||||
"%VAR ups.temperature% %VAR input.frequency%"
|
||||
|
||||
static void reopen_log(void)
|
||||
{
|
||||
- if (logfile == stdout) {
|
||||
- upslogx(LOG_INFO, "logging to stdout");
|
||||
- return;
|
||||
- }
|
||||
+ for (monhost_ups_current = monhost_ups_anchor;
|
||||
+ monhost_ups_current != NULL;
|
||||
+ monhost_ups_current = monhost_ups_current->next) {
|
||||
+ if (monhost_ups_current->logfile == stdout) {
|
||||
+ upslogx(LOG_INFO, "logging to stdout");
|
||||
+ return;
|
||||
+ }
|
||||
|
||||
- fclose(logfile);
|
||||
- logfile = fopen(logfn, "a");
|
||||
- if (logfile == NULL)
|
||||
- fatal_with_errno(EXIT_FAILURE, "could not reopen logfile %s", logfn);
|
||||
+ if ((monhost_ups_current->logfile = freopen(
|
||||
+ monhost_ups_current->logfn, "a",
|
||||
+ monhost_ups_current->logfile)) == NULL)
|
||||
+ fatal_with_errno(EXIT_FAILURE,
|
||||
+ "could not reopen logfile %s", logfn);
|
||||
+ }
|
||||
}
|
||||
|
||||
static void set_reopen_flag(int sig)
|
||||
@@ -131,6 +152,8 @@
|
||||
printf(" -p <pidbase> - Base name for PID file (defaults to \"%s\")\n", prog);
|
||||
printf(" -s <ups> - Monitor UPS <ups> - <upsname>@<host>[:<port>]\n");
|
||||
printf(" - Example: -s myups@server\n");
|
||||
+ printf(" -m <tuple> - Monitor UPS <ups,logfile>\n");
|
||||
+ printf(" - Example: -m myups@server,/var/log/myups.log\n");
|
||||
printf(" -u <user> - Switch to <user> if started as root\n");
|
||||
|
||||
printf("\n");
|
||||
@@ -215,7 +238,7 @@
|
||||
query[2] = var;
|
||||
numq = 3;
|
||||
|
||||
- ret = upscli_get(&ups, numq, query, &numa, &answer);
|
||||
+ ret = upscli_get(ups, numq, query, &numa, &answer);
|
||||
|
||||
if ((ret < 0) || (numa < numq)) {
|
||||
snprintfcat(logbuffer, sizeof(logbuffer), "NA");
|
||||
@@ -368,7 +391,7 @@
|
||||
}
|
||||
|
||||
/* go through the list of functions and call them in order */
|
||||
-static void run_flist(void)
|
||||
+static void run_flist(struct monhost_ups *monhost_ups_print)
|
||||
{
|
||||
flist_t *tmp;
|
||||
|
||||
@@ -382,8 +405,8 @@
|
||||
tmp = tmp->next;
|
||||
}
|
||||
|
||||
- fprintf(logfile, "%s\n", logbuffer);
|
||||
- fflush(logfile);
|
||||
+ fprintf(monhost_ups_print->logfile, "%s\n", logbuffer);
|
||||
+ fflush(monhost_ups_print->logfile);
|
||||
}
|
||||
|
||||
/* -s <monhost>
|
||||
@@ -396,6 +419,7 @@
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
int interval = 30, i, foreground = -1;
|
||||
+ size_t monhost_len = 0;
|
||||
const char *prog = xbasename(argv[0]);
|
||||
time_t now, nextpoll = 0;
|
||||
const char *user = NULL;
|
||||
@@ -407,7 +431,7 @@
|
||||
|
||||
printf("Network UPS Tools %s %s\n", prog, UPS_VERSION);
|
||||
|
||||
- while ((i = getopt(argc, argv, "+hs:l:i:f:u:Vp:FB")) != -1) {
|
||||
+ while ((i = getopt(argc, argv, "+hs:l:i:f:u:Vp:FBm:")) != -1) {
|
||||
switch(i) {
|
||||
case 'h':
|
||||
help(prog);
|
||||
@@ -415,6 +439,33 @@
|
||||
break;
|
||||
#endif
|
||||
|
||||
+ case 'm': { /* var scope */
|
||||
+ char *m_arg, *s;
|
||||
+
|
||||
+ monhost_ups_prev = monhost_ups_current;
|
||||
+ monhost_ups_current = xmalloc(sizeof(struct monhost_ups));
|
||||
+ if (monhost_ups_anchor == NULL)
|
||||
+ monhost_ups_anchor = monhost_ups_current;
|
||||
+ else
|
||||
+ monhost_ups_prev->next = monhost_ups_current;
|
||||
+ monhost_ups_current->next = NULL;
|
||||
+ monhost_len++;
|
||||
+
|
||||
+ /* Be sure to not mangle original optarg, nor rely on its longevity */
|
||||
+ s = xstrdup(optarg);
|
||||
+ m_arg = s;
|
||||
+ monhost_ups_current->monhost = xstrdup(strsep(&m_arg, ","));
|
||||
+ if (!m_arg)
|
||||
+ fatalx(EXIT_FAILURE, "Argument '-m upsspec,logfile' requires exactly 2 components in the tuple");
|
||||
+ monhost_ups_current->logfn = xstrdup(strsep(&m_arg, ","));
|
||||
+ if (m_arg) /* Had a third comma - also unexpected! */
|
||||
+ fatalx(EXIT_FAILURE, "Argument '-m upsspec,logfile' requires exactly 2 components in the tuple");
|
||||
+ if (upscli_splitname(monhost_ups_current->monhost, &(monhost_ups_current->upsname), &(monhost_ups_current->hostname), &(monhost_ups_current->port)) != 0) {
|
||||
+ fatalx(EXIT_FAILURE, "Error: invalid UPS definition. Required format: upsname[@hostname[:port]]\n");
|
||||
+ }
|
||||
+ free(s);
|
||||
+ } /* var scope */
|
||||
+ break;
|
||||
case 's':
|
||||
monhost = optarg;
|
||||
break;
|
||||
@@ -479,42 +530,59 @@
|
||||
snprintfcat(logformat, LARGEBUF, "%s ", argv[i]);
|
||||
}
|
||||
|
||||
- if (!monhost)
|
||||
- fatalx(EXIT_FAILURE, "No UPS defined for monitoring - use -s <system>");
|
||||
+ if (monhost_ups_anchor == NULL) {
|
||||
+ if (monhost) {
|
||||
+ monhost_ups_current = xmalloc(sizeof(struct monhost_ups));
|
||||
+ monhost_ups_anchor = monhost_ups_current;
|
||||
+ monhost_ups_current->next = NULL;
|
||||
+ monhost_ups_current->monhost = monhost;
|
||||
+ monhost_len=1;
|
||||
+ } else {
|
||||
+ fatalx(EXIT_FAILURE, "No UPS defined for monitoring - use -s <system>");
|
||||
+ }
|
||||
|
||||
- if (!logfn)
|
||||
- fatalx(EXIT_FAILURE, "No filename defined for logging - use -l <file>");
|
||||
+ if (logfn)
|
||||
+ monhost_ups_current->logfn = logfn;
|
||||
+ else
|
||||
+ fatalx(EXIT_FAILURE, "No filename defined for logging - use -l <file>");
|
||||
+ }
|
||||
|
||||
/* shouldn't happen */
|
||||
if (!logformat)
|
||||
fatalx(EXIT_FAILURE, "No format defined - but this should be impossible");
|
||||
|
||||
- printf("logging status of %s to %s (%is intervals)\n",
|
||||
- monhost, logfn, interval);
|
||||
+ for (monhost_ups_current = monhost_ups_anchor;
|
||||
+ monhost_ups_current != NULL;
|
||||
+ monhost_ups_current = monhost_ups_current->next) {
|
||||
+ printf("logging status of %s to %s (%is intervals)\n",
|
||||
+ monhost_ups_current->monhost, monhost_ups_current->logfn, interval);
|
||||
+ if (upscli_splitname(monhost_ups_current->monhost, &(monhost_ups_current->upsname), &(monhost_ups_current->hostname), &(monhost_ups_current->port)) != 0) {
|
||||
+ fatalx(EXIT_FAILURE, "Error: invalid UPS definition. Required format: upsname[@hostname[:port]]\n");
|
||||
+ }
|
||||
|
||||
- if (upscli_splitname(monhost, &upsname, &hostname, &port) != 0) {
|
||||
- fatalx(EXIT_FAILURE, "Error: invalid UPS definition. Required format: upsname[@hostname[:port]]\n");
|
||||
- }
|
||||
+ monhost_ups_current->ups = xmalloc(sizeof(UPSCONN_t));
|
||||
+ if (upscli_connect(monhost_ups_current->ups, monhost_ups_current->hostname, monhost_ups_current->port, UPSCLI_CONN_TRYSSL) < 0)
|
||||
+ fprintf(stderr, "Warning: initial connect failed: %s\n",
|
||||
+ upscli_strerror(monhost_ups_current->ups));
|
||||
|
||||
- if (upscli_connect(&ups, hostname, port, UPSCLI_CONN_TRYSSL) < 0)
|
||||
- fprintf(stderr, "Warning: initial connect failed: %s\n",
|
||||
- upscli_strerror(&ups));
|
||||
+ if (strcmp(monhost_ups_current->logfn, "-") == 0)
|
||||
+ monhost_ups_current->logfile = stdout;
|
||||
+ else
|
||||
+ monhost_ups_current->logfile = fopen(monhost_ups_current->logfn, "a");
|
||||
|
||||
- if (strcmp(logfn, "-") == 0)
|
||||
- logfile = stdout;
|
||||
- else
|
||||
- logfile = fopen(logfn, "a");
|
||||
+ if (monhost_ups_current->logfile == NULL)
|
||||
+ fatal_with_errno(EXIT_FAILURE, "could not open logfile %s", logfn);
|
||||
|
||||
- if (logfile == NULL)
|
||||
- fatal_with_errno(EXIT_FAILURE, "could not open logfile %s", logfn);
|
||||
+ }
|
||||
|
||||
+
|
||||
/* now drop root if we have it */
|
||||
new_uid = get_user_pwent(user);
|
||||
|
||||
open_syslog(prog);
|
||||
|
||||
if (foreground < 0) {
|
||||
- if (logfile == stdout) {
|
||||
+ if (monhost_ups_anchor->logfile == stdout) {
|
||||
foreground = 1;
|
||||
} else {
|
||||
foreground = 0;
|
||||
@@ -552,25 +620,35 @@
|
||||
reopen_flag = 0;
|
||||
}
|
||||
|
||||
- /* reconnect if necessary */
|
||||
- if (upscli_fd(&ups) < 0) {
|
||||
- upscli_connect(&ups, hostname, port, 0);
|
||||
- }
|
||||
+ for (monhost_ups_current = monhost_ups_anchor;
|
||||
+ monhost_ups_current != NULL;
|
||||
+ monhost_ups_current = monhost_ups_current->next) {
|
||||
+ ups = monhost_ups_current->ups; /* XXX Not ideal */
|
||||
+ upsname = monhost_ups_current->upsname; /* XXX Not ideal */
|
||||
+ /* reconnect if necessary */
|
||||
+ if (upscli_fd(ups) < 0) {
|
||||
+ upscli_connect(ups, monhost_ups_current->hostname, monhost_ups_current->port, 0);
|
||||
+ }
|
||||
|
||||
- run_flist();
|
||||
+ run_flist(monhost_ups_current);
|
||||
|
||||
- /* don't keep connection open if we don't intend to use it shortly */
|
||||
- if (interval > 30) {
|
||||
- upscli_disconnect(&ups);
|
||||
+ /* don't keep connection open if we don't intend to use it shortly */
|
||||
+ if (interval > 30) {
|
||||
+ upscli_disconnect(ups);
|
||||
+ }
|
||||
}
|
||||
}
|
||||
|
||||
upslogx(LOG_INFO, "Signal %d: exiting", exit_flag);
|
||||
+ for (monhost_ups_current = monhost_ups_anchor;
|
||||
+ monhost_ups_current != NULL;
|
||||
+ monhost_ups_current = monhost_ups_current->next) {
|
||||
|
||||
- if (logfile != stdout)
|
||||
- fclose(logfile);
|
||||
+ if (monhost_ups_current->logfile != stdout)
|
||||
+ fclose(monhost_ups_current->logfile);
|
||||
|
||||
- upscli_disconnect(&ups);
|
||||
+ upscli_disconnect(monhost_ups_current->ups);
|
||||
+ }
|
||||
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
|
@ -1,16 +0,0 @@
|
|||
--- docs/man/upslog.8.orig 2022-08-30 05:56:02.734873000 -0700
|
||||
+++ docs/man/upslog.8 2022-08-30 06:09:47.928348000 -0700
|
||||
@@ -134,6 +134,13 @@
|
||||
upsname[@hostname[:port]]\&. The default hostname is "localhost"\&.
|
||||
.RE
|
||||
.PP
|
||||
+\fB\-m\fR \fItuple\fR
|
||||
+.RS 4
|
||||
+Monitor multiple UPSs\&. The format for this option is a tuple of
|
||||
+ups and logfile separated by commas\&. An example would be:
|
||||
+upsname@hostname:9999,/var/log/nut/cps.log
|
||||
+.RE
|
||||
+.PP
|
||||
\fB\-u\fR \fIusername\fR
|
||||
.RS 4
|
||||
If started as root, upslog will
|
|
@ -1,14 +0,0 @@
|
|||
--- docs/man/upslog.txt.orig 2022-08-30 05:56:02.761764000 -0700
|
||||
+++ docs/man/upslog.txt 2022-08-30 06:04:33.428455000 -0700
|
||||
@@ -78,6 +78,11 @@
|
||||
Monitor this UPS. The format for this option is
|
||||
+upsname[@hostname[:port]]+. The default hostname is "localhost".
|
||||
|
||||
+*-m* 'tuple'::
|
||||
+Monitor multiple UPSs. The format for this option is a tuple of
|
||||
+ups and logfile separated by commas. An example would be:
|
||||
+`upsname@hostname:9999,/var/log/nut/cps.log`
|
||||
+
|
||||
*-u* 'username'::
|
||||
|
||||
If started as root, upslog will *setuid*(2) to the user id
|
21
sysutils/nut/files/patch-m4_nut__check_libltdl.m4
Normal file
21
sysutils/nut/files/patch-m4_nut__check_libltdl.m4
Normal file
|
@ -0,0 +1,21 @@
|
|||
--- m4/nut_check_libltdl.m4.orig 2023-08-01 07:33:24.593954000 -0700
|
||||
+++ m4/nut_check_libltdl.m4 2023-08-01 07:35:18.506094000 -0700
|
||||
@@ -10,10 +10,7 @@
|
||||
dnl No NUT_CHECK_PKGCONFIG here: (lib)ltdl.pc was not seen on any OS
|
||||
|
||||
dnl save CFLAGS and LIBS
|
||||
- CFLAGS_ORIG="${CFLAGS}"
|
||||
- LIBS_ORIG="${LIBS}"
|
||||
LIBS=""
|
||||
- CFLAGS=""
|
||||
dnl For fallback below:
|
||||
myCFLAGS=""
|
||||
|
||||
@@ -71,7 +68,5 @@
|
||||
unset myCFLAGS
|
||||
|
||||
dnl restore original CFLAGS and LIBS
|
||||
- CFLAGS="${CFLAGS_ORIG}"
|
||||
- LIBS="${LIBS_ORIG}"
|
||||
fi
|
||||
])
|
|
@ -1,16 +0,0 @@
|
|||
diff --git tools/nut-scanner/nutscan-init.c.orig tools/nut-scanner/nutscan-init.c
|
||||
index 9ea3f5d..13f4e78 100644
|
||||
--- tools/nut-scanner/nutscan-init.c.orig
|
||||
+++ tools/nut-scanner/nutscan-init.c
|
||||
@@ -133,7 +133,11 @@ void nutscan_init(void)
|
||||
char *libname = NULL;
|
||||
#ifdef WITH_USB
|
||||
#if WITH_LIBUSB_1_0
|
||||
+ #ifdef __FreeBSD__
|
||||
+ libname = get_libname("libusb.so");
|
||||
+ #else
|
||||
libname = get_libname("libusb-1.0.so");
|
||||
+ #endif
|
||||
#else
|
||||
libname = get_libname("libusb-0.1.so");
|
||||
if (!libname) {
|
|
@ -40,19 +40,21 @@ bin/upssched-cmd
|
|||
lib/libnutclient.a
|
||||
lib/libnutclient.so
|
||||
lib/libnutclient.so.2
|
||||
lib/libnutclient.so.2.0.0
|
||||
lib/libnutclient.so.2.0.2
|
||||
lib/libupsclient.a
|
||||
lib/libupsclient.so
|
||||
lib/libupsclient.so.6
|
||||
lib/libupsclient.so.6.0.0
|
||||
lib/libupsclient.so.6.0.1
|
||||
lib/libnutclientstub.a
|
||||
lib/libnutclientstub.so
|
||||
lib/libnutclientstub.so.1
|
||||
lib/libnutclientstub.so.1.0.0
|
||||
lib/libnutclientstub.so.1.0.1
|
||||
lib/libnutscan.a
|
||||
lib/libnutscan.so
|
||||
lib/libnutscan.so.2
|
||||
lib/libnutscan.so.2.0.0
|
||||
lib/libnutscan.so.2.0.2
|
||||
%%PYTHON_SITELIBDIR%%/PyNUT.py
|
||||
%%PYTHON_SITELIBDIR%%/test_nutclient.py
|
||||
%%DEV%%libdata/pkgconfig/libnutclient.pc
|
||||
%%DEV%%libdata/pkgconfig/libnutscan.pc
|
||||
%%DEV%%libdata/pkgconfig/libupsclient.pc
|
||||
|
@ -104,6 +106,7 @@ lib/libnutscan.so.2.0.0
|
|||
%%USB%%libexec/nut/richcomm_usb
|
||||
%%SERIAL%%libexec/nut/safenet
|
||||
%%SERIAL%%libexec/nut/skel
|
||||
libexec/nut/sms_ser
|
||||
%%SNMP%%libexec/nut/snmp-ups
|
||||
%%SERIAL%%libexec/nut/solis
|
||||
%%SERIAL%%libexec/nut/tripplite
|
||||
|
@ -117,6 +120,7 @@ lib/libnutscan.so.2.0.0
|
|||
%%MODBUS%%libexec/nut/phoenixcontact_modbus
|
||||
%%MODBUS%%libexec/nut/socomec_jbus
|
||||
%%SERIAL%%libexec/nut/victronups
|
||||
%%DEV%%libexec/sockdebug
|
||||
%%MANPAGES%%%%DEV%%man/man3/libnutclient.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/libnutclient_commands.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/libnutclient_devices.3.gz
|
||||
|
@ -156,6 +160,9 @@ lib/libnutscan.so.2.0.0
|
|||
%%MANPAGES%%%%DEV%%man/man3/nutscan_add_option_to_device.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_cidr_to_ip.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_display_parsable.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_display_sanity_check.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_display_sanity_check_serial.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_display_ups_conf_with_sanity_check.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_display_ups_conf.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_free_device.3.gz
|
||||
%%MANPAGES%%%%DEV%%man/man3/nutscan_get_serial_ports_list.3.gz
|
||||
|
@ -258,6 +265,7 @@ lib/libnutscan.so.2.0.0
|
|||
%%MANPAGES%%%%SERIAL%%man/man8/powerpanel.8.gz
|
||||
%%MANPAGES%%%%SERIAL%%man/man8/rhino.8.gz
|
||||
%%MANPAGES%%%%SERIAL%%man/man8/safenet.8.gz
|
||||
%%MANPAGES%%man/man8/sms_ser.8.gz
|
||||
%%MANPAGES%%%%SERIAL%%man/man8/solis.8.gz
|
||||
%%MANPAGES%%%%SERIAL%%man/man8/tripplite.8.gz
|
||||
%%MANPAGES%%%%SERIAL%%man/man8/tripplitesu.8.gz
|
||||
|
@ -265,6 +273,7 @@ lib/libnutscan.so.2.0.0
|
|||
%%MANPAGES%%%%SERIAL%%man/man8/victronups.8.gz
|
||||
%%MANPAGES%%%%USB%%man/man8/bcmxcp_usb.8.gz
|
||||
%%MANPAGES%%%%USB%%man/man8/richcomm_usb.8.gz
|
||||
%%MANPAGES%%%%DEV%%man/man8/sockdebug.8.gz
|
||||
%%MANPAGES%%%%USB%%man/man8/tripplite_usb.8.gz
|
||||
%%MANPAGES%%%%USB%%man/man8/usbhid-ups.8.gz
|
||||
%%MANPAGES%%%%SNMP%%man/man8/snmp-ups.8.gz
|
||||
|
|
Loading…
Add table
Reference in a new issue