Merge commit 'upstream/2.6.4' into debian

This commit is contained in:
Arnaud Quette 2012-06-01 15:55:22 +02:00
commit e16f76b337
257 changed files with 6020 additions and 1394 deletions

1134
ChangeLog

File diff suppressed because it is too large Load Diff

View File

@ -222,7 +222,7 @@ the 'nut' package, and optionaly the following:
////////////////////////////////////////////////////////////////////////////////
Configuration files are located in /etc/nut.
nut.conf must be edited to be able to invoke /etc/init.d/nut
linkman:nut.conf[5] must be edited to be able to invoke /etc/init.d/nut
NOTE: Ubuntu users can access the APT URL installation by clicking on link:apt://nut[this link].

View File

@ -41,7 +41,7 @@ MAINTAINERCLEAN_FILES = ChangeLog
# in case it has already been generated previously
dummy-stamp:
ChangeLog: tools/svn2cl.authors dummy-stamp
svn2cl --group-by-day --include-rev --authors=$< --revision 'HEAD:2332' --output=$@ || \
svn2cl --group-by-day --include-rev --authors=$< --reparagraph --revision 'HEAD:2332' --output=$@ || \
echo "svn2cl failed to generate the ChangeLog. See http://trac.networkupstools.org/projects/nut/timeline" > $@
if HAVE_ASCIIDOC

View File

@ -40,7 +40,8 @@ subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/configure \
$(top_srcdir)/scripts/HP-UX/nut.psf.in \
$(top_srcdir)/scripts/avahi/nut.service.in AUTHORS COPYING \
$(top_srcdir)/scripts/avahi/nut.service.in \
$(top_srcdir)/scripts/ufw/nut.ufw.profile.in AUTHORS COPYING \
ChangeLog INSTALL NEWS TODO compile config.guess config.sub \
depcomp install-sh ltmain.sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@ -72,7 +73,8 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/include/config.h
CONFIG_CLEAN_FILES = scripts/avahi/nut.service scripts/HP-UX/nut.psf
CONFIG_CLEAN_FILES = scripts/avahi/nut.service scripts/HP-UX/nut.psf \
scripts/ufw/nut.ufw.profile
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
@ -207,6 +209,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -220,6 +223,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -227,6 +231,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@
@ -373,6 +378,8 @@ scripts/avahi/nut.service: $(top_builddir)/config.status $(top_srcdir)/scripts/a
cd $(top_builddir) && $(SHELL) ./config.status $@
scripts/HP-UX/nut.psf: $(top_builddir)/config.status $(top_srcdir)/scripts/HP-UX/nut.psf.in
cd $(top_builddir) && $(SHELL) ./config.status $@
scripts/ufw/nut.ufw.profile: $(top_builddir)/config.status $(top_srcdir)/scripts/ufw/nut.ufw.profile.in
cd $(top_builddir) && $(SHELL) ./config.status $@
mostlyclean-libtool:
-rm -f *.lo
@ -816,7 +823,7 @@ distcleancheck:
# in case it has already been generated previously
dummy-stamp:
ChangeLog: tools/svn2cl.authors dummy-stamp
svn2cl --group-by-day --include-rev --authors=$< --revision 'HEAD:2332' --output=$@ || \
svn2cl --group-by-day --include-rev --authors=$< --reparagraph --revision 'HEAD:2332' --output=$@ || \
echo "svn2cl failed to generate the ChangeLog. See http://trac.networkupstools.org/projects/nut/timeline" > $@
@HAVE_ASCIIDOC_TRUE@website:

119
NEWS
View File

@ -2,6 +2,125 @@ If you're upgrading from an earlier version, see the UPGRADING file.
For a complete list of changes, please refer to the ChangeLog file.
---------------------------------------------------------------------------
Release notes for NUT 2.6.4 - what's new since 2.6.3:
- This release Fix an important vulnerability in upsd
(CVE-2012-2944: upsd can be remotely crashed)
NUT server (upsd), from versions 2.4.0 to 2.6.3, are exposed to
crashes when receiving random data from the network.
This issue is related to the way NUT parses characters,
especially from the network. Non printable characters were missed
from strings operation (such as strlen), but still copied to the
buffer, causing an overflow.
Thus, fix NUT parser, to only allow the subset Ascii charset from
Space to ~
(Reported by Sebastian Pohle, Alioth bug #313636, CVE-2012-2944)
A separate patch, which applies to any faulty version, is also available:
http://trac.networkupstools.org/projects/nut/changeset/3633
For more information, refer to the Common Vulnerabilities and Exposures:
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-2944
- A static source code analysis has been done by Michal Hlavinka from RedHat,
using Coverity (12 issues fixed).
- Add new "LIST CLIENTS" and "NETVER" commands to NUT network protocol.
"NETVER" allows to retrieve the Network protocol version, while
"LIST CLIENTS" provides the list of clients connected to a device.
Refer to the developer guide, "Network protocol information" section for
more information.
- Support of ranges of values for writable variables has been added, to
complete the existing enumerated values mechanism. This will start to
appear in some drivers soon, beginning with Eaton. Refer to the developer
guide, "Creating a new driver..." section for more information.
- PyNUT.py has been updated to version 1.2.2, adding support for
LIST CLIENTS, FSD, HELP and VER (Rene Martín Rodríguez)
- support for new devices:
AEG Power Solutions PROTECT HOME
more APC SNMP cards
ATEK Defensor range
all Borri models
all COVER ENERGY SA
CyberPower OR700LCDRM1U, PR6000LCDRTXL5U and CP1000PFCLCD
Dell UPS Network Management Card
Dynamix 1000VA USB
Eaton Management Card Contact (ref 66104)
EVER POWERLINE RT / 11 / 31 and DUO II Pro
GE Digital Energy GT Series 1000-3000 VA
Gtec models
all recent HP serial / USB UPS (G2, G3 and R/T models, ) and HP UPS
Management Module
Ippon INNOVA RT
KOLFF BLACK NOVA
Lexis X-power Tigra 1kVA
Microline C-Lion Innova
Online Yunto YQ450
PowerShield Defender 1200VA
PowerWalker Online VFI LCD, Line-Interactive VI LCD and Line-Interactive VI
Riello Netman Plus 102 SNMP Card
Tripp-Lite OMNISMART500
- apcsmart has received some fixes to work better on Mac OS X, and in general
- bcmxcp has improved support for battery status, and better supports
PW9120 units
- bestfortress has improved Best Fortress LI675VA support
- blazer_ser and blazer_usb now try to automatically estimate high and low
voltages, to be able to calculate battery charge ; support for online
Innova UPS (T, RT and 3/1 T) has been added ; Best UPS support has been
improved, to prepare for superseeding bestups driver
- bestups has also received some care, though users are encouraged to switch
to blazer_ser, since bestups will soon be deprecated.
- newmge-shut has been heavilly improved. However, replacement of the
current mge-shut has been postponed to the next release, due to the CVE
issue.
- oneac 0.80 improves support for all families of Oneac (EG, ON, OZ and OB),
including more data and instant commands (Bill Elliot).
- usbhid-ups: for Eaton devices, ups.start.auto is now automatically adjusted
for shutdown.{return,stayoff} to behave as expected ; Liebert firmwares with
incorrect exponents have also been addressed.
- snmp-ups now provides support for UPS shutdown, based on usbhid-ups
mechanisms (composite commands and fallback). Composite commands are also
supported now. This means, for example, that if 'shutdown.return' is not
supported, a combination of 'load.off' + 'load.on' may be used ;
Actual validity of instant commands is now tested before commands addition ;
Eaton/MGE MIB has been cleaned and completed ; 3-phases support has been
added to Socomec Netvision MIB ; HP/Compaq MIB has been completed, with
thresholds, nominal values and more commands.
- nut-scanner now also has libupsclient has a weak runtime dependency ; more
docs and bugfixes have also happened.
- Provide an Uncomplicated Firewall (UFW) profile (nut.ufw.profile)
- Riello protocols have been officially published in NUT protocols library:
http://www.networkupstools.org/ups-protocols.html#_riello
- Duplicate instances of upsd / upsmon are now detected upon startup
- NUT variables namespace has been completed with missing variables and
commands that are already known and standard
- upslog now comes with a companion file, for logrotate configuration
- more devices embed NUT for power protection, now including Thecus NAS range
- more bugfixes, cleanup and improvements, on both source code and
documentation, with a good bunch from Greg A. Woods.
---------------------------------------------------------------------------
Release notes for NUT 2.6.3 - what's new since 2.6.2:

View File

@ -7,6 +7,14 @@ This file lists changes that affect users who installed older versions
of this software. When upgrading from an older version, be sure to
check this file to see if you need to make changes to your system.
Changes from 2.6.3 to 2.6.4
---------------------------
- users are encouraged to update to NUT 2.6.4, to fix upsd vulnerability
(CVE-2012-2944: upsd can be remotely crashed)
- users of the bestups driver are encouraged to switch to blazer_ser,
since bestups will soon be deprecated.
Changes from 2.6.2 to 2.6.3
---------------------------
@ -202,7 +210,6 @@ which makes it work with upsclient.
- 'make install-misc' is now 'make install-lib'. The misc directory
has been gone for a long time, and the target was ambiguous.
>>>>>>> switch UPGRADING information to AsciiDoc, and integrate these in the User Manual.
- The newapc driver has been renamed to apcsmart. If you previously
used newapc, make sure you delete the old binary and fix your

View File

@ -268,6 +268,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -281,6 +282,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -288,6 +290,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@

View File

@ -1,6 +1,7 @@
/* upsc - simple "client" to test communications
Copyright (C) 1999 Russell Kroll <rkroll@exploits.org>
Copyright (C) 2012 Arnaud Quette <arnaud.quette@free.fr>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -34,6 +35,7 @@ static void usage(const char *prog)
printf("usage: %s -l | -L [<hostname>[:port]]\n", prog);
printf(" %s <ups> [<variable>]\n", prog);
printf(" %s -c <ups>\n", prog);
printf("\nDemo program to display UPS variables.\n\n");
@ -46,6 +48,10 @@ static void usage(const char *prog)
printf(" <ups> - upsd server, <upsname>[@<hostname>[:<port>]] form\n");
printf(" <variable> - optional, display this variable only.\n");
printf(" Default: list all variables for <host>\n");
printf("\nThird form (lists clients connected to a device):\n");
printf(" -c - lists each client connected on <ups>, one per line.\n");
printf(" <ups> - upsd server, <upsname>[@<hostname>[:<port>]] form\n");
}
static void printvar(const char *var)
@ -155,6 +161,39 @@ static void list_upses(int verbose)
}
}
static void list_clients(const char *devname)
{
int ret;
unsigned int numq, numa;
const char *query[4];
char **answer;
query[0] = "CLIENT";
query[1] = devname;
numq = 2;
ret = upscli_list_start(ups, numq, query);
if (ret < 0) {
/* check for an old upsd */
if (upscli_upserror(ups) == UPSCLI_ERR_UNKCOMMAND) {
fatalx(EXIT_FAILURE, "Error: upsd is too old to support this query");
}
fatalx(EXIT_FAILURE, "Error: %s", upscli_strerror(ups));
}
while ((ret=upscli_list_next(ups, numq, query, &numa, &answer)) == 1) {
/* CLIENT <upsname> <address> */
if (numa < 3) {
fatalx(EXIT_FAILURE, "Error: insufficient data (got %d args, need at least 3)", numa);
}
printf("%s\n", answer[2]);
}
}
static void clean_exit(void)
{
if (ups) {
@ -169,10 +208,10 @@ static void clean_exit(void)
int main(int argc, char **argv)
{
int i, port;
int varlist = 0, verbose = 0;
int varlist = 0, clientlist = 0, verbose = 0;
const char *prog = xbasename(argv[0]);
while ((i = getopt(argc, argv, "+hlLV")) != -1) {
while ((i = getopt(argc, argv, "+hlLcV")) != -1) {
switch (i)
{
@ -181,6 +220,9 @@ int main(int argc, char **argv)
case 'l':
varlist = 1;
break;
case 'c':
clientlist = 1;
break;
case 'V':
fatalx(EXIT_SUCCESS, "Network UPS Tools upscmd %s", UPS_VERSION);
@ -219,6 +261,11 @@ int main(int argc, char **argv)
exit(EXIT_SUCCESS);
}
if (clientlist) {
list_clients(upsname);
exit(EXIT_SUCCESS);
}
if (argc > 1) {
printvar(argv[1]);
} else {

View File

@ -1,6 +1,8 @@
/* upsmon - monitor power status over the 'net (talks to upsd via TCP)
Copyright (C) 1998 Russell Kroll <rkroll@exploits.org>
Copyright (C)
1998 Russell Kroll <rkroll@exploits.org>
2012 Arnaud Quette <arnaud.quette.free.fr>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -79,12 +81,6 @@ static int opt_af = AF_UNSPEC;
static struct sigaction sa;
static sigset_t nut_upsmon_sigmask;
#ifdef SHUT_RDWR
#define shutdown_how SHUT_RDWR
#else
#define shutdown_how 2
#endif
static void setflag(int *val, int flag)
{
*val |= flag;
@ -709,8 +705,8 @@ static void recalc(void)
ups = ups->next;
}
/* upsdebugx(3, "Current power value: %d", val_ol);
upsdebugx(3, "Minimum power value: %d", minsupplies); */
upsdebugx(3, "Current power value: %d", val_ol);
upsdebugx(3, "Minimum power value: %d", minsupplies);
if (val_ol < minsupplies)
forceshutdown();
@ -792,10 +788,7 @@ static void redefine_ups(utype_t *ups, int pv, const char *un,
free(ups->un);
if (un)
ups->un = xstrdup(un);
else
ups->un = NULL;
/*
* if not logged in force a reconnection since this
@ -1945,6 +1938,15 @@ int main(int argc, char *argv[])
exit(EXIT_SUCCESS);
}
/* otherwise, we are being asked to start.
* so check if a previous instance is running by sending signal '0'
* (Ie 'kill <pid> 0') */
if (sendsignal(prog, 0) == 0) {
printf("Fatal error: A previous upsmon instance is already running!\n");
printf("Either stop the previous instance first, or use the 'reload' command.\n");
exit(EXIT_FAILURE);
}
argc -= optind;
argv += optind;
@ -1961,6 +1963,8 @@ int main(int argc, char *argv[])
/* we may need to get rid of a flag from a previous shutdown */
if (powerdownflag != NULL)
clear_pdflag();
/* FIXME (else): POWERDOWNFLAG is not defined!!
* => fallback to a default value */
if (totalpv < minsupplies) {
printf("\nFatal error: insufficient power configured!\n\n");

View File

@ -19,15 +19,13 @@
/* flags for ups->status */
#define ST_ONLINE 0x001 /* UPS is on line (OL) */
#define ST_ONBATT 0x002 /* UPS is on battery (OB) */
#define ST_LOWBATT 0x004 /* UPS has a low battery (LB) */
#define ST_FSD 0x008 /* master has set forced shutdown flag */
#define ST_MASTER 0x010 /* we are the master on this UPS */
/* was ST_ALIVE 0x020 */
#define ST_LOGIN 0x040 /* we are logged into this UPS */
/* was ST_FIRST 0x080 */
#define ST_CONNECTED 0x100 /* upscli_connect returned OK */
#define ST_ONLINE (1 << 0) /* UPS is on line (OL) */
#define ST_ONBATT (1 << 1) /* UPS is on battery (OB) */
#define ST_LOWBATT (1 << 2) /* UPS has a low battery (LB) */
#define ST_FSD (1 << 3) /* master has set forced shutdown flag */
#define ST_MASTER (1 << 4) /* we are the master on this UPS */
#define ST_LOGIN (1 << 5) /* we are logged into this UPS */
#define ST_CONNECTED (1 << 6) /* upscli_connect returned OK */
/* required contents of flag file */
#define SDMAGIC "upsmon-shutdown-file"
@ -74,10 +72,10 @@ typedef struct {
/* notify flag values */
#define NOTIFY_IGNORE 1 /* don't do anything */
#define NOTIFY_SYSLOG 2 /* send the msg to the syslog */
#define NOTIFY_WALL 4 /* send the msg to all users */
#define NOTIFY_EXEC 8 /* send the msg to NOTIFYCMD script */
#define NOTIFY_IGNORE (1 << 0) /* don't do anything */
#define NOTIFY_SYSLOG (1 << 1) /* send the msg to the syslog */
#define NOTIFY_WALL (1 << 2) /* send the msg to all users */
#define NOTIFY_EXEC (1 << 3) /* send the msg to NOTIFYCMD script */
/* flags are set to NOTIFY_SYSLOG | NOTIFY_WALL at program init */
/* the user can override with NOTIFYFLAGS in the upsmon.conf */

View File

@ -267,6 +267,61 @@ static void do_enum(const char *varname)
}
}
static void do_range(const char *varname)
{
int ret;
unsigned int numq, numa;
char **answer;
const char *query[4], *val;
int ival, min, max;
/* get current value */
val = get_data("VAR", varname);
if (!val) {
fatalx(EXIT_FAILURE, "do_range: can't get current value of %s", varname);
}
ival = atoi(val);
query[0] = "RANGE";
query[1] = upsname;
query[2] = varname;
numq = 3;
ret = upscli_list_start(ups, numq, query);
if (ret < 0) {
fatalx(EXIT_FAILURE, "Error: %s", upscli_strerror(ups));
}
ret = upscli_list_next(ups, numq, query, &numa, &answer);
printf("Type: RANGE\n");
while (ret == 1) {
/* RANGE <upsname> <varname> <min> <max> */
if (numa < 5) {
fatalx(EXIT_FAILURE, "Error: insufficient data (got %d args, need at least 4)", numa);
}
min = atoi(answer[3]);
max = atoi(answer[4]);
printf("Option: \"%i-%i\"", min, max);
if ((ival >= min) && (ival <= max)) {
printf(" SELECTED");
}
printf("\n");
ret = upscli_list_next(ups, numq, query, &numa, &answer);
}
}
static void do_type(const char *varname)
{
int ret;
@ -294,6 +349,11 @@ static void do_type(const char *varname)
return;
}
if (!strcasecmp(answer[i], "RANGE")) {
do_range(varname);
return;
}
if (!strncasecmp(answer[i], "STRING:", 7)) {
do_string(varname);
return;

View File

@ -694,7 +694,7 @@ static void sendcmd(const char *cmd, const char *arg1, const char *arg2)
snprintfcat(buf, sizeof(buf), " \"%s\"",
pconf_encode(arg2, enc, sizeof(enc)));
snprintfcat(buf, sizeof(buf), "\n");
snprintfcat(enc, sizeof(enc), "%s\n", buf);
/* see if the parent needs to be started (and maybe start it) */
@ -715,10 +715,10 @@ static void sendcmd(const char *cmd, const char *arg1, const char *arg2)
/* we're connected now */
ret = write(pipefd, buf, strlen(buf));
ret = write(pipefd, enc, strlen(enc));
/* if we can't send the whole thing, loop back and try again */
if ((ret < 1) || (ret != (int) strlen(buf))) {
if ((ret < 1) || (ret != (int) strlen(enc))) {
upslogx(LOG_ERR, "write failed, trying again");
close(pipefd);
continue;

View File

@ -2,15 +2,14 @@
AM_CFLAGS = -I$(top_srcdir)/include
../include/nut_version.h: FORCE
(cd ../include/ && $(MAKE) $(AM_MAKEFLAGS) nut_version.h)
FORCE:
noinst_LTLIBRARIES = libparseconf.la libcommon.la
libparseconf_la_SOURCES = parseconf.c
libcommon_la_SOURCES = common.c state.c upsconf.c ../include/nut_version.h
# do not hard depend on '../include/nut_version.h', since it blocks
# 'dist', and is only required for actual build, in which case
# BUILT_SOURCES (in ../include) will ensure nut_version.h will
# be built before anything else
libcommon_la_SOURCES = common.c state.c upsconf.c
# ensure inclusion of local implementation of missing systems functions
# using LTLIBOBJS. Refer to configure.in -> AC_REPLACE_FUNCS
libcommon_la_LIBADD = libparseconf.la @LTLIBOBJS@

View File

@ -174,6 +174,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -187,6 +188,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -194,6 +196,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@
@ -270,7 +273,12 @@ udevdir = @udevdir@
AM_CFLAGS = -I$(top_srcdir)/include
noinst_LTLIBRARIES = libparseconf.la libcommon.la
libparseconf_la_SOURCES = parseconf.c
libcommon_la_SOURCES = common.c state.c upsconf.c ../include/nut_version.h
# do not hard depend on '../include/nut_version.h', since it blocks
# 'dist', and is only required for actual build, in which case
# BUILT_SOURCES (in ../include) will ensure nut_version.h will
# be built before anything else
libcommon_la_SOURCES = common.c state.c upsconf.c
# ensure inclusion of local implementation of missing systems functions
# using LTLIBOBJS. Refer to configure.in -> AC_REPLACE_FUNCS
libcommon_la_LIBADD = libparseconf.la @LTLIBOBJS@
@ -562,11 +570,6 @@ uninstall-am:
pdf pdf-am ps ps-am tags uninstall uninstall-am
../include/nut_version.h: FORCE
(cd ../include/ && $(MAKE) $(AM_MAKEFLAGS) nut_version.h)
FORCE:
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:

View File

@ -527,11 +527,28 @@ char *rtrim(char *in, const char sep)
{
char *p;
if (in) {
p = &in[strlen(in) - 1];
while ((p >= in) && (*p == sep))
*p-- = '\0';
}
return in;
}
/* modify in - strip all leading instances of <sep> */
char* ltrim(char *in, const char sep)
{
char *p;
if (in) {
p = in;
while ((*p != '\0') && (*p == sep))
*p++ = *in++;
p = '\0';
}
return in;
}

View File

@ -171,6 +171,13 @@ static void addchar(PCONF_CTX_t *ctx)
wbuflen = strlen(ctx->wordbuf);
/* CVE-2012-2944: only allow the subset Ascii charset from Space to ~ */
if ((ctx->ch < 0x20) || (ctx->ch > 0x7f)) {
fprintf(stderr, "addchar: discarding invalid character (0x%02x)!\n",
ctx->ch);
return;
}
if (ctx->wordlen_limit != 0) {
if (wbuflen >= ctx->wordlen_limit) {
@ -240,6 +247,13 @@ static int findwordstart(PCONF_CTX_t *ctx)
/* at this point the word just started */
addchar(ctx);
/* if the first character is a '=' this is considered a whole word */
if (ctx->ch == '=') {
endofword(ctx);
return STATE_FINDWORDSTART;
}
return STATE_COLLECT;
}
@ -326,6 +340,14 @@ static int collect(PCONF_CTX_t *ctx)
return STATE_FINDWORDSTART;
}
/* '=' means the word is done and the = is a single char word*/
if (ctx->ch == '=') {
endofword(ctx);
findwordstart(ctx);
return STATE_FINDWORDSTART;
}
/* \ = literal = accept the next char blindly */
if (ctx->ch == '\\')
return STATE_COLLECTLITERAL;

View File

@ -3,6 +3,7 @@
Copyright (C)
2003 Russell Kroll <rkroll@exploits.org>
2008 Arjen de Korte <adkorte-guest@alioth.debian.org>
2012 Arnaud Quette <arnaud.quette@free.fr>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -65,6 +66,17 @@ static void st_tree_enum_free(enum_t *list)
free(list);
}
static void st_tree_range_free(range_t *list)
{
if (!list) {
return;
}
st_tree_range_free(list->next);
free(list);
}
/* free all memory associated with a node */
static void st_tree_node_free(st_tree_t *node)
{
@ -77,6 +89,9 @@ static void st_tree_node_free(st_tree_t *node)
/* blow away the list of enums */
st_tree_enum_free(node->enum_list);
/* and the list of ranges */
st_tree_range_free(node->range_list);
/* now finally kill the node itself */
free(node);
}
@ -237,6 +252,54 @@ int state_addenum(st_tree_t *root, const char *var, const char *val)
return st_tree_enum_add(&sttmp->enum_list, enc);
}
static int st_tree_range_add(range_t **list, const int min, const int max)
{
range_t *item;
while (*list) {
if (((*list)->min != min) && ((*list)->max != max)) {
list = &(*list)->next;
continue;
}
return 0; /* duplicate */
}
item = xcalloc(1, sizeof(*item));
item->min = min;
item->max = max;
item->next = *list;
/* now we're done creating it, add it to the list */
*list = item;
return 1; /* added */
}
int state_addrange(st_tree_t *root, const char *var, const int min, const int max)
{
st_tree_t *sttmp;
/* sanity check */
if (min > max) {
upslogx(LOG_ERR, "state_addrange: min is superior to max! (%i, %i)",
min, max);
return 0;
}
/* find the tree node for var */
sttmp = state_tree_find(root, var);
if (!sttmp) {
upslogx(LOG_ERR, "state_addrange: base variable (%s) "
"does not exist", var);
return 0; /* failed */
}
return st_tree_range_add(&sttmp->range_list, min, max);
}
int state_setaux(st_tree_t *root, const char *var, const char *auxs)
{
st_tree_t *sttmp;
@ -319,6 +382,20 @@ const enum_t *state_getenumlist(st_tree_t *root, const char *var)
return sttmp->enum_list;
}
const range_t *state_getrangelist(st_tree_t *root, const char *var)
{
st_tree_t *sttmp;
/* find the tree node for var */
sttmp = state_tree_find(root, var);
if (!sttmp) {
return NULL;
}
return sttmp->range_list;
}
void state_setflags(st_tree_t *root, const char *var, int numflags, char **flag)
{
int i;
@ -471,6 +548,43 @@ int state_delenum(st_tree_t *root, const char *var, const char *val)
return st_tree_del_enum(&sttmp->enum_list, val);
}
static int st_tree_del_range(range_t **list, const int min, const int max)
{
while (*list) {
range_t *item = *list;
/* if this is not the right value, go on to the next */
if (((*list)->min != min) && ((*list)->max != max)) {
list = &item->next;
continue;
}
/* we found it! */
*list = item->next;
free(item);
return 1; /* deleted */
}
return 0; /* not found */
}
int state_delrange(st_tree_t *root, const char *var, const int min, const int max)
{
st_tree_t *sttmp;
/* find the tree node for var */
sttmp = state_tree_find(root, var);
if (!sttmp) {
return 0;
}
return st_tree_del_range(&sttmp->range_list, min, max);
}
st_tree_t *state_tree_find(st_tree_t *node, const char *var)
{
while (node) {

View File

@ -31,8 +31,6 @@
/* handle arguments separated by parseconf */
static void conf_args(int numargs, char **arg)
{
char *ep;
if (numargs < 1)
return;
@ -46,15 +44,6 @@ static void conf_args(int numargs, char **arg)
return;
}
/* handle 'foo=bar' (compressed form) */
ep = strchr(arg[0], '=');
if (ep) {
*ep = '\0';
do_upsconf_args(ups_section, arg[0], ep+1);
return;
}
/* handle 'foo' (flag) */
if (numargs == 1) {
do_upsconf_args(ups_section, arg[0], NULL);
@ -64,7 +53,7 @@ static void conf_args(int numargs, char **arg)
if (numargs < 3)
return;
/* handle 'foo = bar' (split form) */
/* handle 'foo = bar', 'foo=bar', 'foo =bar' or 'foo= bar' forms */
if (!strcmp(arg[1], "=")) {
do_upsconf_args(ups_section, arg[0], arg[2]);
return;

View File

@ -179,6 +179,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -192,6 +193,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -199,6 +201,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@

View File

@ -24,5 +24,9 @@
# Since this MODE is opened to the network, a special care should be applied
# to security concerns.
# - netclient: this mode only requires upsmon.
#
# IMPORTANT NOTE:
# This file is intended to be sourced by shell scripts.
# You MUST NOT use spaces around the equal sign!
MODE=none

53
configure vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.68 for nut 2.6.3.
# Generated by GNU Autoconf 2.68 for nut 2.6.4.
#
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
@ -567,8 +567,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='nut'
PACKAGE_TARNAME='nut'
PACKAGE_VERSION='2.6.3'
PACKAGE_STRING='nut 2.6.3'
PACKAGE_VERSION='2.6.4'
PACKAGE_STRING='nut 2.6.4'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''
@ -626,9 +626,11 @@ SUN_LIBUSB
RUN_AS_GROUP
RUN_AS_USER
PORT
SBINDIR
BINDIR
CONFPATH
STATEPATH
PIDPATH
SERLIBS
NETLIBS
DRIVER_INSTALL_TARGET
@ -661,6 +663,7 @@ LIBGD_LDFLAGS
LIBGD_CFLAGS
LIBSSL_LIBS
LIBSSL_CFLAGS
NUT_NETVERSION
TREE_VERSION
OS_NAME
MANUALUPDATE_FALSE
@ -1449,7 +1452,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures nut 2.6.3 to adapt to many kinds of systems.
\`configure' configures nut 2.6.4 to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@ -1520,7 +1523,7 @@ fi
if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of nut 2.6.3:";;
short | recursive ) echo "Configuration of nut 2.6.4:";;
esac
cat <<\_ACEOF
@ -1706,7 +1709,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
nut configure 2.6.3
nut configure 2.6.4
generated by GNU Autoconf 2.68
Copyright (C) 2010 Free Software Foundation, Inc.
@ -2171,7 +2174,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by nut $as_me 2.6.3, which was
It was created by nut $as_me 2.6.4, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ $0 $@
@ -3241,7 +3244,7 @@ fi
# Define the identity of the package.
PACKAGE='nut'
VERSION='2.6.3'
VERSION='2.6.4'
cat >>confdefs.h <<_ACEOF
@ -4753,6 +4756,7 @@ fi
TREE_VERSION="`echo ${PACKAGE_VERSION} | awk '{ print substr($0,1,3) }'`"
cat >>confdefs.h <<_ACEOF
@ -4760,6 +4764,13 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
NUT_NETVERSION="1.2"
cat >>confdefs.h <<_ACEOF
#define NUT_NETVERSION "${NUT_NETVERSION}"
_ACEOF
test "${prefix}" = "NONE" && prefix="${ac_default_prefix}"
test "${exec_prefix}" = "NONE" && exec_prefix='${prefix}'
@ -10352,7 +10363,7 @@ no)
if test -z "${DOC_NOBUILD_LIST}"; then
nut_with_doc="yes"
else
as_fn_error $? "\"Asciidoc is required for documentation support and missing\"" "$LINENO" 5
as_fn_error $? "\"Unable to build ${DOC_NOBUILD_LIST} documentation\"" "$LINENO" 5
fi
;;
esac
@ -18438,6 +18449,14 @@ cat >>confdefs.h <<_ACEOF
_ACEOF
conftemp="${sbindir}"
eval conftemp=\"${conftemp}\"
eval conftemp=\"${conftemp}\"
SBINDIR=${conftemp}
cat >>confdefs.h <<_ACEOF
#define SBINDIR "${conftemp}"
_ACEOF
@ -18489,7 +18508,12 @@ _ACEOF
ac_config_files="$ac_config_files clients/Makefile common/Makefile conf/Makefile conf/upssched.conf.sample data/html/header.html data/html/Makefile data/Makefile data/driver.list docs/Makefile docs/man/Makefile docs/website/Makefile drivers/Makefile include/Makefile lib/libupsclient-config lib/libupsclient.pc lib/libnutscan.pc lib/Makefile scripts/augeas/Makefile scripts/augeas/nutnutconf.aug scripts/augeas/nutupsconf.aug scripts/augeas/nutupsdconf.aug scripts/augeas/nutupsdusers.aug scripts/augeas/nutupsmonconf.aug scripts/augeas/nutupsschedconf.aug scripts/augeas/nuthostsconf.aug scripts/augeas/nutupssetconf.aug scripts/avahi/nut.service scripts/hal/Makefile scripts/hal/ups-nut-device.fdi scripts/hotplug/Makefile scripts/hotplug/libhidups scripts/HP-UX/nut.psf scripts/java/Makefile scripts/python/Makefile scripts/systemd/Makefile scripts/udev/Makefile scripts/udev/nut-ipmipsu.rules scripts/udev/nut-usbups.rules scripts/Makefile server/Makefile tools/Makefile tools/nut-scanner/Makefile Makefile"
ac_config_files="$ac_config_files clients/Makefile common/Makefile conf/Makefile conf/upssched.conf.sample data/html/header.html data/html/Makefile data/Makefile data/driver.list docs/Makefile docs/man/Makefile docs/website/Makefile drivers/Makefile include/Makefile lib/libupsclient-config lib/libupsclient.pc lib/libnutscan.pc lib/Makefile scripts/augeas/Makefile scripts/augeas/nutnutconf.aug scripts/augeas/nutupsconf.aug scripts/augeas/nutupsdconf.aug scripts/augeas/nutupsdusers.aug scripts/augeas/nutupsmonconf.aug scripts/augeas/nutupsschedconf.aug scripts/augeas/nuthostsconf.aug scripts/augeas/nutupssetconf.aug scripts/avahi/nut.service scripts/hal/Makefile scripts/hal/ups-nut-device.fdi scripts/hotplug/Makefile scripts/hotplug/libhidups scripts/HP-UX/nut.psf scripts/java/Makefile scripts/python/Makefile scripts/systemd/Makefile scripts/systemd/nut-driver.service scripts/systemd/nut-monitor.service scripts/systemd/nut-server.service scripts/systemd/nutshutdown scripts/udev/Makefile scripts/udev/nut-ipmipsu.rules scripts/udev/nut-usbups.rules scripts/ufw/nut.ufw.profile scripts/Makefile server/Makefile tools/Makefile tools/nut-scanner/Makefile Makefile"
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure
@ -19130,7 +19154,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by nut $as_me 2.6.3, which was
This file was extended by nut $as_me 2.6.4, which was
generated by GNU Autoconf 2.68. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@ -19196,7 +19220,7 @@ _ACEOF
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
ac_cs_version="\\
nut config.status 2.6.3
nut config.status 2.6.4
configured by $0, generated by GNU Autoconf 2.68,
with options \\"\$ac_cs_config\\"
@ -19640,9 +19664,14 @@ do
"scripts/java/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/java/Makefile" ;;
"scripts/python/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/python/Makefile" ;;
"scripts/systemd/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/systemd/Makefile" ;;
"scripts/systemd/nut-driver.service") CONFIG_FILES="$CONFIG_FILES scripts/systemd/nut-driver.service" ;;
"scripts/systemd/nut-monitor.service") CONFIG_FILES="$CONFIG_FILES scripts/systemd/nut-monitor.service" ;;
"scripts/systemd/nut-server.service") CONFIG_FILES="$CONFIG_FILES scripts/systemd/nut-server.service" ;;
"scripts/systemd/nutshutdown") CONFIG_FILES="$CONFIG_FILES scripts/systemd/nutshutdown" ;;
"scripts/udev/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/udev/Makefile" ;;
"scripts/udev/nut-ipmipsu.rules") CONFIG_FILES="$CONFIG_FILES scripts/udev/nut-ipmipsu.rules" ;;
"scripts/udev/nut-usbups.rules") CONFIG_FILES="$CONFIG_FILES scripts/udev/nut-usbups.rules" ;;
"scripts/ufw/nut.ufw.profile") CONFIG_FILES="$CONFIG_FILES scripts/ufw/nut.ufw.profile" ;;
"scripts/Makefile") CONFIG_FILES="$CONFIG_FILES scripts/Makefile" ;;
"server/Makefile") CONFIG_FILES="$CONFIG_FILES server/Makefile" ;;
"tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;;

View File

@ -3,7 +3,7 @@ dnl | Network UPS Tools: configure.in |
dnl +------------------------------------------------------------------+
dnl NUT version number is defined here and *only* here (no more include/version)
AC_INIT(nut, 2.6.3)
AC_INIT(nut, 2.6.4)
AC_CONFIG_SRCDIR(server/upsd.c)
AC_CONFIG_MACRO_DIR([m4])
echo "Network UPS Tools version ${PACKAGE_VERSION}"
@ -28,6 +28,9 @@ AM_MAINTAINER_MODE
dnl PKG_PROG_PKG_CONFIG
dnl Various version related processing
dnl ----------------------------------
dnl # the following is commented out, because the UPS_VERSION macro now
dnl # resides in include/nut_version.h, which is generated by Makefile.am,
dnl # rather than in include/config.h, which is generated by configure. The
@ -39,6 +42,9 @@ dnl However, automatically define the tree version (mostly for AC_SUBST)
TREE_VERSION="`echo ${PACKAGE_VERSION} | awk '{ print substr($0,1,3) }'`"
AC_DEFINE_UNQUOTED(TREE_VERSION, "${TREE_VERSION}", [NUT tree version])
NUT_NETVERSION="1.2"
AC_DEFINE_UNQUOTED(NUT_NETVERSION, "${NUT_NETVERSION}", [NUT network protocol version])
dnl Fix this early so we can expand with eval later
test "${prefix}" = "NONE" && prefix="${ac_default_prefix}"
@ -594,7 +600,7 @@ no)
if test -z "${DOC_NOBUILD_LIST}"; then
nut_with_doc="yes"
else
AC_MSG_ERROR(["Asciidoc is required for documentation support and missing"])
AC_MSG_ERROR(["Unable to build ${DOC_NOBUILD_LIST} documentation"])
fi
;;
esac
@ -1028,8 +1034,16 @@ eval conftemp=\"${conftemp}\"
BINDIR=${conftemp}
AC_DEFINE_UNQUOTED(BINDIR, "${conftemp}", [Default path for user executables])
dnl same for sbindir
conftemp="${sbindir}"
eval conftemp=\"${conftemp}\"
eval conftemp=\"${conftemp}\"
SBINDIR=${conftemp}
AC_DEFINE_UNQUOTED(SBINDIR, "${conftemp}", [Default path for system executables])
AC_SUBST(OS_NAME)
AC_SUBST(TREE_VERSION)
AC_SUBST(NUT_NETVERSION)
AC_SUBST(LIBSSL_CFLAGS)
AC_SUBST(LIBSSL_LIBS)
AC_SUBST(LIBGD_CFLAGS)
@ -1062,9 +1076,11 @@ AC_SUBST(DRIVER_MAN_LIST)
AC_SUBST(DRIVER_INSTALL_TARGET)
AC_SUBST(NETLIBS)
AC_SUBST(SERLIBS)
AC_SUBST(PIDPATH)
AC_SUBST(STATEPATH)
AC_SUBST(CONFPATH)
AC_SUBST(BINDIR)
AC_SUBST(SBINDIR)
AC_SUBST(PORT)
AC_SUBST(RUN_AS_USER)
AC_SUBST(RUN_AS_GROUP)
@ -1115,9 +1131,14 @@ AC_OUTPUT([
scripts/java/Makefile
scripts/python/Makefile
scripts/systemd/Makefile
scripts/systemd/nut-driver.service
scripts/systemd/nut-monitor.service
scripts/systemd/nut-server.service
scripts/systemd/nutshutdown
scripts/udev/Makefile
scripts/udev/nut-ipmipsu.rules
scripts/udev/nut-usbups.rules
scripts/ufw/nut.ufw.profile
scripts/Makefile
server/Makefile
tools/Makefile

View File

@ -215,6 +215,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -228,6 +229,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -235,6 +237,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@

View File

@ -46,6 +46,8 @@
"AEC" "ups" "1" "MiniGuard UPS 700" "Megatec M2501 cable" "genericups upstype=21"
"AEG Power Solutions" "ups" "2" "PROTECT HOME" "" "blazer_ser or blazer_usb"
"APC" "ups" "1" "Back-UPS Pro" "" "apcsmart"
"APC" "ups" "1" "Matrix-UPS" "" "apcsmart"
"APC" "ups" "1" "Smart-UPS" "" "apcsmart"
@ -76,6 +78,22 @@
"Appro" "pdu" "1" "SWPDU" "48 outlets" "powerman-pdu (experimental)"
"ARTronic" "ups" "2" "ARTon Millenium 1/2/3/6/10 kVA" "Serial" "blazer_ser"
"ARTronic" "ups" "2" "ARTon Millenium 3.1 10/15/20 kVA" "Serial" "blazer_ser"
"ARTronic" "ups" "2" "ARTon Titanium 6/10 kVA" "Serial" "blazer_ser"
"ARTronic" "ups" "2" "ARTon Titanium 3.1 10/15/20 kVA" "Serial" "blazer_ser"
"ARTronic" "ups" "2" "ARTon Optimum 1/2/3/6/10 kVA" "Serial" "blazer_ser"
"ARTronic" "ups" "2" "ARTon Titanium Plus 1/2/3 kVA" "USB" "blazer_usb"
"ARTronic" "ups" "2" "ARTon Platinium 6/10 kVA" "USB" "blazer_usb"
"ARTronic" "ups" "2" "ARTon Platinium Combo 3.1 10/15/20 kVA" "USB" "blazer_usb"
"ARTronic" "ups" "2" "ARTon Platinium RT 1/2/3/6/10 kVA" "USB" "blazer_usb"
"ATEK" "ups" "2" "Defensor 1K Tower / Rack" "USB" "blazer_usb"
"ATEK" "ups" "2" "Defensor 2K Tower / Rack" "USB" "blazer_usb"
"ATEK" "ups" "2" "Defensor 3K Tower / Rack" "USB" "blazer_usb"
"ATEK" "ups" "2" "Defensor 6K Tower / Rack" "USB" "blazer_usb"
"ATEK" "ups" "2" "Defensor 10K Tower / Rack" "USB" "blazer_usb"
"Atlantis Land" "ups" "2" "A03-P826" "" "blazer_ser"
"Baytech" "pdu" "1" "RPC3" "8 outlets" "powerman-pdu (experimental)"
@ -111,15 +129,21 @@
"Belkin" "ups" "2" "F6S600auUSB" "USB" "blazer_usb"
"Best Power" "ups" "1" "Fortress (older)" "" "bestfortress"
"Best Power" "ups" "1" "Fortress (newer)" "" "bestups"
"Best Power" "ups" "1" "Fortress Telecom" "" "bestups"
"Best Power" "ups" "1" "Axxium Rackmount" "" "bestups"
"Best Power" "ups" "1" "Patriot Pro" "" "bestups"
"Best Power" "ups" "1" "Patriot Pro II" "" "bestups"
"Best Power" "ups" "1" "Fortress (newer)" "" "blazer_ser or bestups"
"Best Power" "ups" "1" "Fortress Telecom" "" "blazer_ser or bestups"
"Best Power" "ups" "1" "Axxium Rackmount" "" "blazer_ser or bestups"
"Best Power" "ups" "1" "Patriot Pro" "" "blazer_ser or bestups"
"Best Power" "ups" "1" "Patriot Pro II" "" "blazer_ser or bestups"
"Best Power" "ups" "1" "Patriot" "INT51 cable" "genericups upstype=6"
"Best Power" "ups" "1" "Micro-Ferrups" "" "bestuferrups"
"Best Power" "ups" "1" "Fortress/Ferrups" "f-command support" "bestfcom"
"Borri" "ups" "2" "B400-010-B/B400-020-B/B400-030-B/B400-010-C/B400-020-C/B400-030-C" "" "blazer_usb"
"Borri" "ups" "2" "B400-R010-B/B400-R020-B/B400-R030-B/B400-R010-C/B400-R020-C/B400-R030-C" "" "blazer_usb"
"Borri" "ups" "2" "B500-060-B/B500-100-B/B500-060-C/B500-100-C" "" "blazer_usb"
"Borri" "ups" "2" "B500-R060-B/B500-R100-B" "" "blazer_usb"
"Borri" "ups" "2" "B500EVO-100-B/B500EVO-200-B" "" "blazer_usb"
"Chloride" "ups" "2" "Desk Power 650" "serial port" "blazer_ser"
"Cito Power" "ups" "2" "CPG-SR1000" "" "blazer_ser"
@ -131,6 +155,10 @@
"Compaq" "ups" "4" "R3000 XR" "" "bcmxcp"
"Compaq" "ups" "4" "R5500 XR" "" "bcmxcp"
"COVER ENERGY SA" "ups" "2" "COVER PRM 1K/2K/3K/6K/10K" "" "blazer_usb"
"COVER ENERGY SA" "ups" "2" "COVER PRM 1K/2K/3K/6K/10K EC" "" "blazer_usb"
"COVER ENERGY SA" "ups" "2" "COVER PRM 6K/10K PR" "" "blazer_usb"
"Cyber Power Systems" "ups" "1" "320AVR" "" "powerpanel"
"Cyber Power Systems" "ups" "1" "500AVR" "" "powerpanel"
"Cyber Power Systems" "ups" "1" "650AVR" "" "powerpanel"
@ -154,12 +182,15 @@
"Cyber Power Systems" "ups" "2" "AE550" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "3" "CP 1500C" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "3" "OR2200LCDRM2U" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "3" "OR700LCDRM1U" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "3" "PR6000LCDRTXL5U" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "Value 400E" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "Value 600E" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "Value 800E" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "CP1000AVRLCD" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "CP1350AVRLCD" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "CP1500AVRLCD" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "2" "CP1000PFCLCD" "USB" "usbhid-ups"
"Cyber Power Systems" "ups" "3" "RMCARD100" "" "snmp-ups"
"Cyber Power Systems" "ups" "3" "RMCARD201" "" "snmp-ups"
"Cyber Power Systems" "ups" "3" "RMCARD202" "" "snmp-ups"
@ -168,26 +199,28 @@
"Cyclades" "pdu" "1" "PM8" "8 outlets" "powerman-pdu (experimental)"
"Cyclades" "pdu" "1" "PM10" "10 outlets" "powerman-pdu (experimental)"
"Dell" "ups" "5" "Tower 500W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Tower 500W LV / HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack/Tower 1000W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1000W LV / HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack/Tower 1500W LV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1500W LV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack/Tower 1920W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1920W LV / HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack/Tower 2300W LV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 2300W LV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack/Tower 2700W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 2700W LV / HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Short Depth Rack 2700W Online LV / HV" "High Efficiency, USB port" "usbhid-ups"
"Dell" "ups" "5" "Short Depth Rack 2700W Online LV / HV" "High Efficiency, Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack 3750W High Efficiency Online HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 3750W High Efficiency Online HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack 4200W High Efficiency Online HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 4200W High Efficiency Online HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Rack 5600W HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 5600W HV" "Serial port" "newmge-shut"
"Dell" "ups" "5" "Tower 500W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1000W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1500W LV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 1920W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 2300W LV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack/Tower 2700W LV / HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Short Depth Rack 2700W Online LV / HV" "High Efficiency, USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 3750W High Efficiency Online HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 4200W High Efficiency Online HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Rack 5600W HV" "USB port" "usbhid-ups"
"Dell" "ups" "5" "Various (SNMP mode)" "UPS Network Management Card " "snmp-ups"
"Dell" "ups" "5" "Various (XML/HTTP mode)" "UPS Network Management Card " "netxml-ups (experimental)"
"Delta" "ups" "1" "GES602N" "" "belkin"
@ -200,7 +233,7 @@
"Dynamix" "ups" "2" "UPS1700D" "" "blazer_ser"
"Dynamix" "ups" "2" "UPS-650VA" "" "blazer_ser"
"Dynamix" "ups" "2" "650VA" "USB" "blazer_usb langid_fix=0x0409"
"Dynamix" "ups" "2" "650VA/1000VA" "USB" "blazer_usb langid_fix=0x0409"
"Dynex" "ups" "1" "975AVR" "" "genericups upstype=7"
"Dynex" "ups" "2" "DX-800U" "USB" "usbhid-ups"
@ -235,10 +268,11 @@
"Eaton" "ups" "5" "E Series DX UPS 1-20 kVA" "" "mge-utalk"
"Eaton" "ups" "4" "NetUPS SE 450/700/1000/1500" "" "upscode2"
"Eaton" "ups" "5" "BladeUPS (SNMP)" "ConnectUPS Web/SNMP Card" "snmp-ups (experimental)"
"Eaton" "ups" "5" "various models (XML/HTTP mode)" "NMC Minislot (Ref 66102)" "netxml-ups (experimental)"
"Eaton" "ups" "5" "various models (SNMP mode)" "NMC Minislot (Ref 66102)" "snmp-ups (experimental)"
"Eaton" "ups" "5" "various models (XML/HTTP mode)" "NMC Minislot (ref 66102)" "netxml-ups (experimental)"
"Eaton" "ups" "5" "various models (SNMP mode)" "NMC Minislot (ref 66102)" "snmp-ups (experimental)"
"Eaton" "ups" "5" "various models (XML/HTTP mode)" "SNMP/Web Minislot card (ref 66244)" "netxml-ups (experimental)"
"Eaton" "ups" "5" "various models (SNMP mode)" "SNMP/Web Minislot card (ref 66244)" "snmp-ups (experimental)"
"Eaton" "ups" "5" "various models (serial mode)" "Management Card Contact (ref 66104)" "mge-shut or mge-utalk"
"Eaton" "pdu" "5" "ePDU Managed" "" "snmp-ups (experimental)"
"Eaton" "pdu" "5" "ePDU Monitored" "" "snmp-ups or netxml-ups"
"Eaton" "ups" "5" "Powerware 9130" "" "bcmxcp or usbhid-ups"
@ -257,10 +291,16 @@
"ETA" "ups" "1" "mini+UPS" "WinNT/Upsoft cable" "genericups upstype=7"
"ETA" "ups" "1" "mini+UPS PRO" "UPS Explorer cable" "etapro"
"Ever UPS" "ups" "1" "NET *-DPC" "" "everups"
"Ever UPS" "ups" "1" "AP *-PRO" "" "everups"
"Ever-Power" "ups" "1" "625/1000" "" "safenet"
"EVER" "ups" "1" "NET DPC series" "Serial port" "everups"
"EVER" "ups" "1" "AP Pro series" "Serial port" "everups"
"EVER" "ups" "1" "625/1000" "" "safenet"
"EVER" "ups" "2" "POWERLINE RT 1-3kVA series" "Serial port" "blazer_ser"
"EVER" "ups" "2" "POWERLINE RT 6-10kVA series" "Serial port" "blazer_ser"
"EVER" "ups" "2" "POWERLINE 11 series" "Serial port" "blazer_ser"
"EVER" "ups" "2" "POWERLINE 31 series" "Serial port" "blazer_ser"
"EVER" "ups" "2" "DUO II Pro series" "USB port" "blazer_usb"
"EVER" "ups" "2" "POWERLINE RT 1-3kVA series" "USB port" "blazer_usb"
"EVER" "ups" "2" "POWERLINE RT 6-10kVA series" "USB port" "blazer_usb"
"Exide" "ups" "1" "NetUPS SE" "" "genericups upstype=15"
"Exide" "ups" "4" "NetUPS SE 450/700/1000/1500" "" "upscode2"
@ -291,24 +331,41 @@
"Gamatronic" "ups" "5" "MS" "" "gamatronic"
"Gamatronic" "ups" "5" "µPS3/1" "" "gamatronic"
"GE" "ups" "2" "EP series" "" "blazer_usb"
"GE Digital Energy" "ups" "2" "EP Series" "" "blazer_usb"
"GE Digital Energy" "ups" "2" "GT Series 1000/1500/2000/3000 VA Rack/Tower" "UL-version" "blazer_ser"
"Geek Squad" "ups" "2" "GS1285U" "USB" "usbhid-ups"
"Gemini" "ups" "1" "UPS625/UPS1000" "" "safenet"
"Gtec" "ups" "2" "ZP120N-1K / ZP120N-1KS / ZP120N-2K / ZP120N-2KS / ZP120N-3K / ZP120N-3KS" "" "blazer_usb"
"Gtec" "ups" "2" "ZP120N-6K / ZP120N-6KS / ZP120N-10K-11 / ZP120N-10KS-11" "" "blazer_usb"
"Gtec" "ups" "2" "ZP120N-10K-31-00 / ZP120N-10K-31-07 / ZP120N-10K-31-09 / ZP120N-10K-31-99 / ZP120N-20K" "USB port" "blazer_usb"
"Gtec" "ups" "2" "AP160N-1K / AP160LCD-1K-KS / AP160N-2K / AP160LCD-2K-KS / AP160N-3K / AP160LCD-3K-KS / AP160N-6K-PDU / AP160N-10K-PDU" "USB port" "blazer_usb"
"Gtec" "ups" "2" "ZP120N-10K-31-00 / ZP120N-10K-31-07 / ZP120N-10K-31-09 / ZP120N-10K-31-99 / ZP120N-20K" "Serial port" "blazer_ser"
"Gtec" "ups" "2" "AP160N-1K / AP160LCD-1K-KS / AP160N-2K / AP160LCD-2K-KS / AP160N-3K / AP160LCD-3K-KS / AP160N-6K-PDU / AP160N-10K-PDU" "Serial port" "blazer_ser"
"HP" "ups" "1" "PowerTrust 2997A" "HP 5061-2575 cable" "apcsmart"
"HP" "ups" "3" "T750 G2" "Serial port" "bcmxcp"
"HP" "ups" "3" "T1000 G3" "Serial port" "bcmxcp"
"HP" "ups" "3" "T1500 G3" "Serial port" "bcmxcp"
"HP" "ups" "3" "R1500 G2" "Serial port" "bcmxcp"
"HP" "ups" "4" "R3000 XR" "" "bcmxcp"
"HP" "ups" "4" "R5500 XR" "" "bcmxcp"
"HP" "ups" "2" "R1500 G2" "" "bcmxcp"
"HP" "ups" "2" "R/T 2200 G2" "" "usbhid-ups"
"HP" "ups" "2" "T500" "older models" "bcmxcp_usb"
"HP" "ups" "2" "T750 INTL" "" "usbhid-ups"
"HP" "ups" "2" "T750" "older models" "bcmxcp_usb"
"HP" "ups" "2" "T1000 INTL" "" "usbhid-ups"
"HP" "ups" "2" "T1500 INTL" "" "usbhid-ups"
"HP" "ups" "2" "T750 G2" "" "usbhid-ups"
"HP" "ups" "2" "R1500 G2 INTL" "" "usbhid-ups"
"HP" "ups" "3" "T500 / T750" "older models, USB port" "bcmxcp_usb"
"HP" "ups" "3" "R/T3000" "Serial port" "mge-shut or newmge-shut"
"HP" "ups" "3" "R5000 / R7000" "Serial port" "mge-shut or newmge-shut"
"HP" "ups" "3" "T750 INTL" "" "usbhid-ups"
"HP" "ups" "3" "T1000 INTL" "" "usbhid-ups"
"HP" "ups" "3" "T1500 INTL" "" "usbhid-ups"
"HP" "ups" "3" "T750 G2" "USB port" "usbhid-ups"
"HP" "ups" "3" "T1000 G3" "USB port" "usbhid-ups"
"HP" "ups" "3" "T1500 G3" "USB port" "usbhid-ups"
"HP" "ups" "3" "R1500 G2 INTL" "USB port" "usbhid-ups"
"HP" "ups" "3" "R/T 2200 G2" "" "usbhid-ups"
"HP" "ups" "3" "R/T3000" "USB port" "usbhid-ups"
"HP" "ups" "3" "R5000 / R7000" "USB port" "usbhid-ups"
"HP" "ups" "4" "Various (SNMP mode)" "HP UPS Management Module " "snmp-ups"
"HP" "pdu" "1" "HP3488 Switch/Control Unit" "" "powerman-pdu (experimental)"
"IBM" "pdu" "1" "Blade Center Management Module" "15 outlets" "powerman-pdu (experimental)"
@ -347,6 +404,7 @@
"Ippon" "ups" "2" "Smart Winner 750/1000/1500/2000/3000" "USB" "blazer_usb (experimental)"
"Ippon" "ups" "2" "(various)" "" "blazer_ser"
"Ippon" "ups" "2" "(various)" "USB" "blazer_usb"
"Ippon" "ups" "2" "INNOVA RT 1K/1.5K/2K/3K" "" "blazer_usb"
"IVT" "scd" "1" "SCD series" "" "ivtscd"
@ -354,6 +412,11 @@
"Kebo" "ups" "2" "1200D/D Series" "" "blazer_ser"
"KOLFF" "ups" "2" "BLACK NOVA 1K/2K/3K/6K/10K/20K TOWER" "" "blazer_usb"
"KOLFF" "ups" "2" "BLACK NOVA 1K/2K/3K/6K/10K/20K XL TOWER" "" "blazer_usb"
"KOLFF" "ups" "2" "BLACK NOVA 1K/1.5K/2K/3K/6K/10K RACK" "" "blazer_usb"
"KOLFF" "ups" "2" "BLACK NOVA 1K/1.5K/2K/3K/6K/10K XL RACK" "" "blazer_usb"
"Krauler" "ups" "2" "UP-D1200VA" "USB" "blazer_usb"
"Krauler" "ups" "2" "UP-M500VA" "USB" "blazer_usb"
@ -361,6 +424,8 @@
"Lestar" "ups" "2" "MD-800E" "" "blazer_ser"
"Lexis" "ups" "2" "X-Power Tigra 1kVA" "" "blazer_ser or bestups"
"Liebert" "ups" "2" "ITON 600VA" "" "blazer_ser"
"Liebert" "ups" "5" "UPStation GXT2" "contact-closure cable" "liebert"
"Liebert" "ups" "1" "GXT2-3000RT230" "" "liebert-esp2 (experimental)"
@ -560,6 +625,11 @@
"MicroDowell" "ups" "5" "Enterprise N60" "" "microdowell"
"MicroDowell" "ups" "5" "Enterprise HiBox ST" "" "microdowell"
"Microline" "ups" "2" "C-Lion Innova RT 2K/3K" "" "blazer_usb"
"Microline" "ups" "2" "C-Lion Innova RT 6K/10K (Parallel)" "" "blazer_usb"
"Microline" "ups" "2" "C-Lion Innova Tower 6K/10K" "" "blazer_usb"
"Microline" "ups" "2" "C-Lion Innova Combo 10K/20K (3/1)" "" "blazer_usb"
"Microsol" "ups" "4" "Solis 1.0" "1000VA" "solis"
"Microsol" "ups" "4" "Solis 1.5" "1500VA" "solis"
"Microsol" "ups" "4" "Solis 2.0" "2000VA" "solis"
@ -608,6 +678,7 @@
"Online" "ups" "1" "P-Series" "" "genericups upstype=14"
"Online" "ups" "1" "Zinto D" "" "optiups"
"Online" "ups" "2" "Yunto YQ450" "" "blazer_usb"
"OnLite" "ups" "2" "AQUA" "50" "blazer_ser"
@ -651,14 +722,21 @@
"PowerMan" "ups" "2" "RealSmart 1000" "" "blazer_ser"
"PowerMan" "ups" "1" "BackPro" "" "genericups upstype=4"
"PowerShield" "ups" "2" "Defender 1200VA" "" "blazer_usb"
"PowerTech" "ups" "1" "Comp1000" "DTR cable power" "genericups upstype=3"
"PowerTech" "ups" "2" "SMK-800" "" "blazer_ser"
"PowerWalker" "ups" "2" "Line-Interactive VI 1000" "" "blazer_ser"
"PowerWalker" "ups" "2" "Line-Interactive VI 400/800" "" "blazer_ser"
"PowerWalker" "ups" "2" "Line-Interactive VI 600" "" "blazer_ser"
"PowerWalker" "ups" "2" "Line-Interactive VI 600 SE" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 800 SE" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 1400" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 2000" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 850 LCD" "" "blazer_usb"
"PowerWalker" "ups" "2" "Online VFI 1000RT/1500RT/2000RT/3000RT/6000RT/10000RT LCD" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 1000RT/1500RT/2000RT/3000RT LCD" "" "blazer_usb"
"Powerware" "ups" "4" "3110" "" "genericups upstype=7"
"Powerware" "ups" "4" "3115" "" "genericups upstype=11"
@ -693,6 +771,10 @@
"Repotec" "ups" "1" "RPT-800A" "" "genericups upstype=13"
"Repotec" "ups" "1" "RPT-162A" "" "genericups upstype=13"
"Riello" "ups" "3" "Riello Sentinel SDL 6000-7" "Netman Plus 102 SNMP Card" "snmp-ups"
"Riello" "ups" "3" "Riello Sentinel Dual SDH 1000-7" "Netman Plus 102 SNMP Card" "snmp-ups"
"Riello" "ups" "3" "(various)" "Netman Plus 102 SNMP Card" "snmp-ups"
"Rocketfish" "ups" "2" "RF-1000VA / RF-1025VA" "" "usbhid-ups"
"SmartLabs" "pdu" "1" "2412S Power Line Modem" "for X10/Insteon" "powerman-pdu (experimental)"
@ -700,16 +782,17 @@
"SMS (Brazil)" "ups" "2" "Manager III" "" "blazer_ser"
"SOLA" "ups" "1" "305" "cable INT-0025C" "genericups upstype=7"
"SOLA" "ups" "1" "325" "" "bestups"
"SOLA" "ups" "1" "520" "" "bestups"
"SOLA" "ups" "1" "610" "use ID= in ups.conf" "bestups"
"SOLA" "ups" "1" "620" "" "bestups"
"SOLA" "ups" "1" "325" "" "blazer_ser or bestups"
"SOLA" "ups" "1" "520" "" "blazer_ser or bestups"
"SOLA" "ups" "1" "610" "use ID= in ups.conf" "blazer_ser or bestups"
"SOLA" "ups" "1" "620" "" "blazer_ser or bestups"
"SOLA" "ups" "4" "330" "" "blazer_ser"
"SOLA/BASIC Mexico" "ups" "1" "various" "ISBMEX protocol" "isbmex"
"Socomec" "ups" "2" "NeTYS-PE 600VA" "" "blazer_ser"
"Socomec Sicon" "ups" "2" "NeTYS-PE 600VA" "" "blazer_ser"
"Socomec Sicon" "ups" "1" "Egys" "420 VA" "powercom"
"Socomec Sicon" "ups" "3" "MASTERYS 3/3 SYSTEM 60 kVA" "Net Vision v5.05 SNMP card" "snmp-ups (experimental)"
"Socomec Sicon" "ups" "3" "Netvision" "UPS equipped with Netvision WEB/SNMP card/external box" "snmp-ups (experimental)"
"Soltec" "ups" "1" "Winmate 525/625/800/1000" "" "safenet"
@ -744,6 +827,7 @@
"Tripp-Lite" "ups" "1" "SMART700USB" "USB" "tripplite_usb"
"Tripp-Lite" "ups" "1" "SMART1500RM2U" "USB" "tripplite_usb"
"Tripp-Lite" "ups" "1" "SMART550USB" "USB" "tripplite_usb"
"Tripp-Lite" "ups" "1" "OMNISMART500" "USB" "tripplite_usb"
"Tripp-Lite" "ups" "1" "SMART2200RMXL2U" "USB, older models" "tripplite_usb (experimental)"
"Tripp-Lite" "ups" "1" "SmartUPS" "" "tripplite"
"Tripp-Lite" "ups" "1" "SmartOnline" "" "tripplitesu"
@ -783,10 +867,15 @@
"Various" "ups" "1" "(various)" "Generic RUPS 2000 (Megatec M2501 cable)" "genericups upstype=21"
"Various" "ups" "2" "(various serial)" "Q1 / Megatec protocol" "blazer_ser"
"Various" "ups" "2" "(various USB)" "Q1 / Megatec protocol" "blazer_usb"
"Various" "ups" "2" "(various)" "PhoenixTec protocol" "bestups"
"Various" "ups" "2" "(various)" "PhoenixTec protocol" "blazer_ser or bestups"
"Various" "ups" "3" "(various)" "SNMP - RFC 1628" "snmp-ups (experimental)"
"Various" "ups" "1" "(various)" "Safenet software" "safenet"
"Various" "ups" "2" "(Various USB)" "UPSilon 2000 software" "blazer_usb langid_fix=0x409"
"Various" "ups" "2" "(Various serial)" "WinPower software" "blazer_ser"
"Various" "ups" "2" "(Various USB)" "WinPower software" "blazer_usb"
"Various" "ups" "2" "Various Innova T" "(USB ID 06da:0201)" "blazer_ser or blazer_usb"
"Various" "ups" "2" "Various Innova RT" "(USB ID 06da:0005)" "blazer_ser or blazer_usb"
"Various" "ups" "2" "Various Innova 3/1 T" "(USB ID 06da:0004)" "blazer_ser or blazer_usb"
"Victron/IMV" "ups" "1" "(various)" "" "victronups"
"Victron/IMV" "ups" "1" "Lite" "crack cable" "genericups upstype=10"

View File

@ -174,6 +174,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -187,6 +188,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -194,6 +196,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@

View File

@ -85,7 +85,7 @@ ups-html.txt:
### TODO: automatic dependency generation
# Add other directory deps (not for local EXTRA_DIST) and generated contents
FULL_USER_MANUAL_DEPS = $(USER_MANUAL_DEPS) $(SHARED_DEPS) ../README \
../INSTALL ../UPGRADING ../TODO
../INSTALL ../UPGRADING ../TODO ../scripts/ufw/README
FULL_DEVELOPER_GUIDE_DEPS = $(DEVELOPER_GUIDE_DEPS) $(SHARED_DEPS) \
../scripts/augeas/README ../TODO ../lib/README \
../tools/nut-scanner/README

View File

@ -188,6 +188,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -201,6 +202,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -208,6 +210,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@
@ -344,7 +347,7 @@ SUFFIXES = .txt .html .pdf
### TODO: automatic dependency generation
# Add other directory deps (not for local EXTRA_DIST) and generated contents
FULL_USER_MANUAL_DEPS = $(USER_MANUAL_DEPS) $(SHARED_DEPS) ../README \
../INSTALL ../UPGRADING ../TODO
../INSTALL ../UPGRADING ../TODO ../scripts/ufw/README
FULL_DEVELOPER_GUIDE_DEPS = $(DEVELOPER_GUIDE_DEPS) $(SHARED_DEPS) \
../scripts/augeas/README ../TODO ../lib/README \

View File

@ -1,10 +1,37 @@
Desc: APC UPS cables
File: apc.txt
Date: 12 Februari 2010
Date: 12 February 2010
Auth: Arjen de Korte <adkorte-guest@alioth.debian.org
http://lists.alioth.debian.org/pipermail/nut-upsuser/2005-August/000118.html
Note that APC UPS serial cable part numbers follow a numbering scheme
where the "940-" prefix identifies them as cables.
940-1000 straight through cable
940-0103 null modem cable
940-0020 Basic Signaling Cable (OB and kill power)
940-0023 Simple Signaling Cable (OB only)
940-LL24 Smart Signaling Cable
940-0095 PnP Cable (see Apcupsd manual for diagram)
940-0119 Simple Signaling Cable (OB and kill power)
940-0127 RJ45-10P10C to USB Cable
940-0128 Simple Signaling Cable for Back-UPS CS
"LL" represents the length:
00 six feet
NN NN feet
The suffix letter represents a minor revision in physical design, or a
change of OEM, _not_ a change of wiring or pin-out, and all cables
differing only in this suffix letter are electrically interchangeable.
Note though the following quote from the APC Discussion Forums: "At one
point there were a small number of revision D cables [940-0024D] that
had some shielding issues from the manufacturer that could maybe cause
[...] [spontaneous] self-tests)."
+-----------------------------------------------------------------+
| |
| Black APC 940-0024C Smart Signalling UPS Cable Wiring Diagram |
@ -183,6 +210,7 @@ http://lists.alioth.debian.org/pipermail/nut-upsuser/2005-August/000118.html
+-----------------------------------------------------------------+
| |
| APC 940-1000 Straight Through cable |
| Universal APC serial extension cable for use in conjunction |
| with an APC UPS cable. This cable is verified to work. |
| |

View File

@ -45,35 +45,49 @@ configuration directive for some reason. You can do that too.
NOTIFYCMD "/bin/notifyme -foo -bar \"hi there\" -baz"
In other words, \ can be used to escape the ".
In other words, *\* can be used to escape the *"*.
Finally, for the situation where you need to put the \ character into your
Finally, for the situation where you need to put the *\* character into your
string, you just escape it.
NOTIFYCMD "/bin/notifyme c:\\dos\\style\\path"
The \ can actually be used to escape any character, but you only really
need it for \, ", and # as they have special meanings to the parser.
The *\* can actually be used to escape any character, but you only really
need it for *\*, *"*, and *#* as they have special meanings to the parser.
When using file names with space characters, you may end up having tricky
things since you need to write them inside "" which must be escaped:
things since you need to write them inside *""* which must be escaped:
NOTIFYCMD "\"c:\\path with space\\notifyme\" \"c:\\path with space\\name\""
# is the comment character. Anything after an unescaped # is ignored.
*#* is the comment character. Anything after an unescaped *#* is ignored.
Something like this...
identity = my#1ups
... will actually turn into "identity = my", since the # stops the
parsing. If you really need to have a # in your configuration, then
... will actually turn into "identity = my", since the *#* stops the
parsing. If you really need to have a *#* in your configuration, then
escape it.
identity = my\#1ups
Much better.
The *=* character should be used with care too. There should be only one
"simple" *=* character in a line: between the parameter name and its value.
All other *=* characters should be either escaped or whithin "quotes".
password = 123=123
... is incorrect. You should use:
password = 123\=123
... or :
password = "123=123"
Line spanning
~~~~~~~~~~~~~
@ -81,7 +95,7 @@ You can put a backslash at the end of the line to join it to the next
one. This creates one virtual line that is composed of more than one
physical line.
Also, if you leave the "" quote container open before a newline, it will
Also, if you leave the *""* quote container open before a newline, it will
keep scanning until it reaches another one. If you see bizarre behavior
in your configuration files, check for an unintentional instance of
quotes spanning multiple lines.

View File

@ -128,7 +128,7 @@ This scenario requires some configuration, obviously:
2. upsd has a valid UPS entry in ups.conf for this UPS.
[myups]
driver = upsdriver
driver = nutupsdrv
port = /dev/ttySx
3. upsd has a valid user for upsmon in upsd.users.

View File

@ -119,7 +119,7 @@ Device recording
----------------
To complete dummy-ups, NUT provides a device recorder script called
'device-recorder.sh' and located in the 'tools/' directory of the
'nut-recorder.sh' and located in the 'tools/' directory of the
NUT source tree.
This script uses 'upsc' to record device information, and stores
@ -131,7 +131,7 @@ Its usage is the following:
For example, to record information from the device 'myups' every 10 seconds:
tools/device-recorder.sh myups@localhost myups.seq 10
nut-recorder.sh myups@localhost myups.seq 10
During the recording, you will want to generate power events, such as power
failure and restoration. These will be tracked in the simulation files, and be

View File

@ -145,15 +145,15 @@ int open_subspace(char *ship, int privacy)
}
--------------------------------------------------------------------------------
The basic idea is that I try to group things into functions, and then
The basic idea is that we try to group things into functions, and then
find ways to drop out of them when we can't go any further. There's
another way to program this involving a big else chunk and a bunch of
braces, and it can be hard to follow. You can read this from top to
bottom and have a pretty good idea of what's going on without having to
track too much { } nesting and indenting.
I don't really care for pretentiousVariableNamingSchemes, but you can
probably get away with it in your own driver that I will never have to
We don't really care for pretentiousVariableNamingSchemes, but you can
probably get away with it in your own driver that we will never have to
touch. If your function or variable names start pushing important code
off the right margin of the screen, expect them to meet the byte
chainsaw sooner or later.
@ -171,8 +171,13 @@ without inflicting much pain on other developers. If you use a space,
then you've fixed the spacing in stone and have really annoyed half of
the people out there.
Note that tabs apply only to *indenting*. Alignment of text after any
non-tab character has appeared on the line must be done by spaces in
order for it to remain at the same alignment when someone views tabs at
a different widths.
If you write something that uses spaces, you may get away with it in a
driver that's relatively secluded. However, if I have to work on that
driver that's relatively secluded. However, if we have to work on that
code, expect it to get reformatted according to the above.
Patches to existing code that don't conform to the coding style being

View File

@ -25,7 +25,8 @@ Stable tree: {tree_version}
- link:http://www.networkupstools.org/source/{tree_version}/nut-{revision}.tar.gz[nut-{revision}.tar.gz]
- link:http://www.networkupstools.org/source/{tree_version}/nut-{revision}.tar.gz.sig[PGP/GPG signature]
- SHA-256 sum: 343554add0713348f8b09bca8d83eee2eb2ae8bad9cdad9a39e0f0e2d0f5d375
- link:http://www.networkupstools.org/source/{tree_version}/nut-{revision}.tar.gz.sha256[SHA-256 sum]
- link:http://www.networkupstools.org/source/{tree_version}/nut-{revision}.tar.gz.md5[MD5 sum]
- link:http://www.networkupstools.org/source/{tree_version}/new-{revision}.txt[Release notes]
- link:http://www.networkupstools.org/source/{tree_version}/ChangeLog[ChangeLog]
@ -114,7 +115,7 @@ link:http://pdb.finkproject.org/pdb/package.php/nut[Fink],
link:http://trac.macports.org/browser/trunk/dports/sysutils/nut/Portfile[MacPorts]
- Windows (complete port, Beta):
link:http://www.networkupstools.org/source/2.6/NUT-Installer-2.6.1-1.msi[Windows MSI installer 2.6.1-1]
link:http://www.networkupstools.org/source/2.6/NUT-Installer-2.6.3-3.msi[Windows MSI installer 2.6.3-3]
Java packages

View File

@ -74,13 +74,13 @@ HTML_CLIENT_MANS = \
upsrw.html \
upssched.html
SRC_TOOL_PAGES = nut-scanner.txt
SRC_TOOL_PAGES = nut-scanner.txt nut-recorder.txt
MAN_TOOL_PAGES = nut-scanner.8
MAN_TOOL_PAGES = nut-scanner.8 nut-recorder.8
man8_MANS += $(MAN_TOOL_PAGES)
HTML_TOOL_MANS = nut-scanner.html
HTML_TOOL_MANS = nut-scanner.html nut-recorder.html
# CGI (--with-cgi) related manpages
SRC_CGI_PAGES = \

View File

@ -204,6 +204,7 @@ MKDIR_P = @MKDIR_P@
NETLIBS = @NETLIBS@
NM = @NM@
NMEDIT = @NMEDIT@
NUT_NETVERSION = @NUT_NETVERSION@
OBJDUMP = @OBJDUMP@
OBJEXT = @OBJEXT@
OS_NAME = @OS_NAME@
@ -217,6 +218,7 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PIDPATH = @PIDPATH@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
@ -224,6 +226,7 @@ PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
SBINDIR = @SBINDIR@
SED = @SED@
SERLIBS = @SERLIBS@
SET_MAKE = @SET_MAKE@
@ -361,9 +364,9 @@ HTML_CLIENT_MANS = \
upsrw.html \
upssched.html
SRC_TOOL_PAGES = nut-scanner.txt
MAN_TOOL_PAGES = nut-scanner.8
HTML_TOOL_MANS = nut-scanner.html
SRC_TOOL_PAGES = nut-scanner.txt nut-recorder.txt
MAN_TOOL_PAGES = nut-scanner.8 nut-recorder.8
HTML_TOOL_MANS = nut-scanner.html nut-recorder.html
# CGI (--with-cgi) related manpages
SRC_CGI_PAGES = \

View File

@ -2,12 +2,12 @@
.\" Title: apcsmart-old
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "APCSMART\-OLD" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "APCSMART\-OLD" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: apcsmart
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 11/17/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "APCSMART" "8" "11/17/2011" "Network UPS Tools" "NUT Manual"
.TH "APCSMART" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -96,17 +96,17 @@ These models usually come from late 1990s / pre\-2009 times\&. They are often re
.RS 4
WARNING: these are not
\fInatively\fR
supported by apcsmart (or apcupsd for that matter, if you\(cqre wondering)\&. Around 2007 APC (now APC Schneider) decided to go back to its proprietry roots and all the new models (SMT, SMX, SURTD) use completely different protocol and cables\&. If you purchased a new APC ups, that uses cable with rj45 on the one end, and db\-9 on the other \- then you have such model\&. Your only option to support it through
supported by apcsmart (or apcupsd for that matter, if you\(cqre wondering)\&. Around 2007 APC (now APC Schneider) decided to go back to its proprietry roots and all the new models (SMT, SMX, SURTD) use completely different protocol and cables\&. If you purchased a new APC UPS, that uses cable with rj45 on the one end, and db\-9 on the other \- then you have such model\&. Your only option to support it through
\fBNUT\fR
is to purchase "legacy communications card" \- part #AP9620 (google \*(AqAP9620\*(Aq for more details)\&. Or if that\*(Aqs not an option, rely on official software\&.
.RE
.sp
Another thing to remember is that Smart protocol is not USB protocol\&. If you have ups with both USB and serial ports, then depending on how you connect it, you will need either apcsmart or usbhid\-ups driver\&.
Another thing to remember is that Smart protocol is not USB protocol\&. If you have UPS with both USB and serial ports, then depending on how you connect it, you will need either apcsmart or usbhid\-ups driver\&.
.SH "CABLING"
.sp
This driver expects to see a 940\-0024C cable or a clone by default\&. You can switch to the 940\-0095B dual\-mode cable support with the \*(Aqcable=\*(Aq definition described below\&.
.sp
If your 940\-0024C cable is broken or missing, use this diagram to build a clone:
If your 940\-xx24X cable is broken or missing, use this diagram to build a clone:
.sp
http://www\&.networkupstools\&.org/cables\&.html#_940_0024c_clone
.if n \{\
@ -122,7 +122,7 @@ http://www\&.networkupstools\&.org/cables\&.html#_940_0024c_clone
.ps -1
.br
.sp
It was reported, that the 940\-0024E cable uses the same wiring as the 940\-0024C one\&.
The "xx" is either "00" for a short cable, or the number of feet of a longer cable\&. The "X" is a letter representing the minor revision of the physical cable and its connectors ("C" and "E" are commonly found revisions)\&. All minor revisions should use the same pin\-outs and wiring\&.
.sp .5v
.RE
.sp
@ -144,12 +144,12 @@ This is most basic command present in probably all APC models\&. It will hiberna
.PP
"old" models
.RS 4
The behaviour here is unfortunately pretty primitive \- when the power returns, the ups just wakes up\&. No grace periods, no min\&. battery charge condition, etc\&. This is probably not what you want\&.
The behaviour here is unfortunately pretty primitive \- when the power returns, the UPS just wakes up\&. No grace periods, no min\&. battery charge condition, etc\&. This is probably not what you want\&.
.RE
.PP
"new" models
.RS 4
The behaviour here is as expected \- the power is cut off after the eeprom defined grace period\&. The ups will wake up when the power returns, after the eeprom defined delay AND if the eeprom defined min\&. battery charge level is met\&. The delay is counted from the power\*(Aqs return\&.
The behaviour here is as expected \- the power is cut off after the eeprom defined grace period\&. The UPS will wake up when the power returns, after the eeprom defined delay AND if the eeprom defined min\&. battery charge level is met\&. The delay is counted from the power\*(Aqs return\&.
.RE
.RE
.PP
@ -173,9 +173,9 @@ This is basic command used to hibernate UPS regardless if it\*(Aqs running on ba
"old" models
.RS 4
The behaviour is \- unfortunately \- similary primitive to
\fBS\fR\&. The ups unconditionally wakes up after nnn*6 minutes \-
\fBS\fR\&. The UPS unconditionally wakes up after nnn*6 minutes \-
\fBit doesn\*(Aqt care if the power returned !\fR
If nnn = 000, then UPS will do precisely nothing\&. On those models you\*(Aqre better specifying nnn > 0, if you can estimate the kind of power problems that might be happening in your environment\&. Another thing to consider with "old" models \- you might lose the connection with the ups, until it wakes up (with
If nnn = 000, then UPS will do precisely nothing\&. On those models you\*(Aqre better specifying nnn > 0, if you can estimate the kind of power problems that might be happening in your environment\&. Another thing to consider with "old" models \- you might lose the connection with the UPS, until it wakes up (with
\fBS\fR, the serial connection is kept alive)\&.
.RE
.PP
@ -191,16 +191,16 @@ option, or argument to one of the supported instant commands)\&.
.PP
\fBK\fR (delayed poweroff)
.RS 4
This is permanent poweroff \- the ups will not wake up automatically\&. On newer units, it will respect applicable eeprom variables\&.
This is permanent poweroff \- the UPS will not wake up automatically\&. On newer units, it will respect applicable eeprom variables\&.
.RE
.PP
\fBZ\fR (instant poweroff)
.RS 4
This is also permanent poweroff \- the ups will not wake up automatically\&. The poweroff is executed immediately\&.
This is also permanent poweroff \- the UPS will not wake up automatically\&. The poweroff is executed immediately\&.
.RE
.SH "SHUTDOWN CONTROL BY NUT"
.sp
There\*(Aqre 3 options used to control shutdown behaviour\&.
There are three options used to control the shutdown behaviour\&.
.PP
\fBsdtype\fR=[0\-5]
.RS 4
@ -229,7 +229,7 @@ The values permitted are from 0 to 5\&. Only one can be specified\&. Anything el
.PP
0
.RS 4
issue soft hibernate (\fBS\fR) if the ups is running on batteries, otherwise issue hard hibernate (\fB@\fR)
issue soft hibernate (\fBS\fR) if the UPS is running on batteries, otherwise issue hard hibernate (\fB@\fR)
.RE
.PP
1
@ -274,7 +274,7 @@ Hard hibernate\*(Aqs additional wakeup delay can be provided by \fBawd\fR\&.
.RE
.SS "ADVORDER"
.sp
The argument is either a word \*(Aqno\*(Aq, or a string of 1 \- 5 digits in [0 \- 4] range\&. Each digit maps to the one of shutdown methods supported by APC upses\&. Methods listed in this way are tried in order, until one of them succedes\&.
The argument is either a word \*(Aqno\*(Aq, or a string of 1 \- 5 digits in [0 \- 4] range\&. Each digit maps to the one of shutdown methods supported by APC UPSes\&. Methods listed in this way are tried in order, until one of them succedes\&.
.sp
If \fBadvorder\fR is undefined or set to \*(Aqno\*(Aq, \fBsdtype\fR is used instead\&.
.sp
@ -351,9 +351,9 @@ battery\&.runtime < battery\&.runtime\&.low
.sp
Of course \- if any of the variables are not available, the appropriate condition is not checked\&. If you want to explicitly disable one of the conditions, simply override the right hand variable causing the condition to always evaluate to false (you can even provide negative numbers)\&.
.sp
APC upses don\*(Aqt have battery\&.charge\&.low \- you will have to define it if you want to use such condition (prefix the variable with override\&. or default\&.)\&.
APC UPSes don\*(Aqt have battery\&.charge\&.low \- you will have to define it if you want to use such condition (prefix the variable with override\&. or default\&.)\&.
.sp
"New" units have battery\&.runtime\&.low, but depending on battery quality, firmware version, calibration and ups load \- this variable can be underestimated quite a bit \- especially right after going into OB state\&. This in turn can cause LB to be asserted, which under normal conditions will cause \fBNUT\fR to initiate the shutdown\&. You might want to disable this condition entirely, when relying on \fBignorelb\fR option (this was actually the main motivation behind introduction of such feature)\&.
"New" units have battery\&.runtime\&.low, but depending on battery quality, firmware version, calibration and UPS load \- this variable can be underestimated quite a bit \- especially right after going into OB state\&. This in turn can cause LB to be asserted, which under normal conditions will cause \fBNUT\fR to initiate the shutdown\&. You might want to disable this condition entirely, when relying on \fBignorelb\fR option (this was actually the main motivation behind introduction of such feature)\&.
.sp
Simple example:
.sp
@ -372,7 +372,7 @@ Simple example:
.sp
This would cause apcsmart to go into shutdown \fIonly\fR if detected battery charge < 15%\&. Runtime condition is always false in this example\&.
.sp
You could ask \- why bother ? Well, the reason is already hinted above\&. APC units can be very picky about the batteries, and their firmware can underestimate the remaining runtime (especially right after going into OB state)\&. \fBignorelb\fR option and \fBoverride\&.*\fR let you remain in control of the ups, not ups in control of you\&.
You could ask \- why bother ? Well, the reason is already hinted above\&. APC units can be very picky about the batteries, and their firmware can underestimate the remaining runtime (especially right after going into OB state)\&. \fBignorelb\fR option and \fBoverride\&.*\fR let you remain in control of the UPS, not UPS in control of you\&.
.sp
Furthermore, this allows to specify conditions similary to how it\(cqs done in apcupsd daemon, so it should be welcome by people used to that software\&.
.SH "SUPPORTED INSTANT COMMANDS"
@ -406,7 +406,7 @@ load\&.off
executes "instant poweroff"
.RE
.sp
All the above commands must be issued 2nd time to have any effect (no less than 3 seconds, and no more than 15 seconds after the initial call)\&. Those commands are mostly useful for manual testing, when your machine is not powered by the ups you\*(Aqre testing\&.
All the above commands must be issued 2nd time to have any effect (no less than 3 seconds, and no more than 15 seconds after the initial call)\&. Those commands are mostly useful for manual testing, when your machine is not powered by the UPS you\*(Aqre testing\&.
.sp
Other supported commands:
.sp

View File

@ -53,14 +53,14 @@ division isn\'t strict by any means, and the borders between those are pretty fu
WARNING: these are not _natively_ supported by apcsmart (or apcupsd for that
matter, if you\'re wondering). Around 2007 APC (now APC Schneider) decided to
go back to its proprietry roots and all the new models (SMT, SMX, SURTD) use
completely different protocol and cables. If you purchased a new APC ups,
completely different protocol and cables. If you purchased a new APC UPS,
that uses cable with rj45 on the one end, and db-9 on the other - then you
have such model. Your only option to support it through *NUT* is to
purchase "legacy communications card" - part #AP9620 (google \'AP9620' for
more details). Or if that\'s not an option, rely on official software.
Another thing to remember is that Smart protocol is not USB protocol. If you
have ups with both USB and serial ports, then depending on how you connect it,
have UPS with both USB and serial ports, then depending on how you connect it,
you will need either apcsmart or usbhid-ups driver.
CABLING
@ -70,13 +70,16 @@ This driver expects to see a 940-0024C cable or a clone by default. You
can switch to the 940-0095B dual-mode cable support with the \'cable='
definition described below.
If your 940-0024C cable is broken or missing, use this diagram to build
If your 940-xx24X cable is broken or missing, use this diagram to build
a clone:
http://www.networkupstools.org/cables.html#_940_0024c_clone
NOTE: It was reported, that the 940-0024E cable uses the same wiring as the
940-0024C one.
NOTE: The "xx" is either "00" for a short cable, or the number of feet
of a longer cable. The "X" is a letter representing the minor revision
of the physical cable and its connectors ("C" and "E" are commonly found
revisions). All minor revisions should use the same pin-outs and
wiring.
You can specify alternate cable in linkman:ups.conf[5]:
@ -99,12 +102,12 @@ behaviour quite a bit, depending on the model.
"old" models:::
The behaviour here is unfortunately pretty primitive - when the power
returns, the ups just wakes up. No grace periods, no min. battery
returns, the UPS just wakes up. No grace periods, no min. battery
charge condition, etc. This is probably not what you want.
"new" models:::
The behaviour here is as expected - the power is cut off after the
eeprom defined grace period. The ups will wake up when the power
eeprom defined grace period. The UPS will wake up when the power
returns, after the eeprom defined delay AND if the eeprom defined min.
battery charge level is met. The delay is counted from the power\'s
return.
@ -125,13 +128,13 @@ command if your UPS supports it (and is not too old, see below).
+
--
"old" models:::
The behaviour is - unfortunately - similary primitive to *S*. The ups
The behaviour is - unfortunately - similary primitive to *S*. The UPS
unconditionally wakes up after $$nnn*6$$ minutes - *it doesn\'t care if the
power returned !* If nnn = 000, then UPS will do precisely nothing. On
those models you\'re better specifying nnn > 0, if you can estimate
the kind of power problems that might be happening in your environment.
Another thing to consider with "old" models - you might lose the
connection with the ups, until it wakes up (with *S*, the serial
connection with the UPS, until it wakes up (with *S*, the serial
connection is kept alive).
"new" models:::
@ -147,17 +150,17 @@ NUT also supports such variation. You have to provide exactly 2 digits to
trigger it (*awd* option, or argument to one of the supported instant commands).
*K* (delayed poweroff)::
This is permanent poweroff - the ups will not wake up automatically. On
This is permanent poweroff - the UPS will not wake up automatically. On
newer units, it will respect applicable eeprom variables.
*Z* (instant poweroff)::
This is also permanent poweroff - the ups will not wake up automatically. The
poweroff is executed immediately.
This is also permanent poweroff - the UPS will not wake up automatically.
The poweroff is executed immediately.
SHUTDOWN CONTROL BY NUT
-----------------------
There\'re 3 options used to control shutdown behaviour.
There are three options used to control the shutdown behaviour.
*sdtype*=[0-5]::
This option takes a single digit (0-5) as an argument. See below for
@ -188,7 +191,7 @@ The values permitted are from 0 to 5. Only one can be specified. Anything else
will cause apcsmart to exit.
0::
issue soft hibernate (*S*) if the ups is running on batteries, otherwise issue
issue soft hibernate (*S*) if the UPS is running on batteries, otherwise issue
hard hibernate (*@*)
1::
issue soft hibernate (*S*) (if on batteries), and if it fails (or on mains) -
@ -208,7 +211,7 @@ ADVORDER
~~~~~~~~
The argument is either a word \'no', or a string of 1 - 5 digits in [0 - 4]
range. Each digit maps to the one of shutdown methods supported by APC upses.
range. Each digit maps to the one of shutdown methods supported by APC UPSes.
Methods listed in this way are tried in order, until one of them succedes.
If *advorder* is undefined or set to \'no', *sdtype* is used instead.
@ -245,11 +248,11 @@ is not checked. If you want to explicitly disable one of the conditions, simply
override the right hand variable causing the condition to always evaluate to
false (you can even provide negative numbers).
APC upses don\'t have battery.charge.low - you will have to define it if you want
APC UPSes don\'t have battery.charge.low - you will have to define it if you want
to use such condition (prefix the variable with override. or default.).
"New" units have battery.runtime.low, but depending on battery quality, firmware
version, calibration and ups load - this variable can be underestimated quite a bit -
version, calibration and UPS load - this variable can be underestimated quite a bit -
especially right after going into OB state. This in turn can cause LB to be
asserted, which under normal conditions will cause *NUT* to initiate the
shutdown. You might want to disable this condition entirely, when relying on
@ -272,7 +275,7 @@ This would cause apcsmart to go into shutdown _only_ if detected battery charge
You could ask - why bother ? Well, the reason is already hinted above. APC units
can be very picky about the batteries, and their firmware can underestimate the
remaining runtime (especially right after going into OB state). *ignorelb*
option and *$$override.*$$* let you remain in control of the ups, not ups in control
option and *$$override.*$$* let you remain in control of the UPS, not UPS in control
of you.
Furthermore, this allows to specify conditions similary to how it's done in
@ -298,7 +301,7 @@ executes "instant poweroff"
All the above commands must be issued 2nd time to have any effect (no less than 3
seconds, and no more than 15 seconds after the initial call). Those commands are
mostly useful for manual testing, when your machine is not powered by the ups
mostly useful for manual testing, when your machine is not powered by the UPS
you\'re testing.
Other supported commands:

View File

@ -2,12 +2,12 @@
.\" Title: bcmxcp
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BCMXCP" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BCMXCP" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: bcmxcp_usb
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BCMXCP_USB" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BCMXCP_USB" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: belkin
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BELKIN" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BELKIN" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: belkinunv
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BELKINUNV" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BELKINUNV" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: bestfcom
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTFCOM" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTFCOM" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: bestfortress
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTFORTRESS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTFORTRESS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: bestuferrups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTUFERRUPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTUFERRUPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: bestups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTUPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTUPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: blazer
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/17/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BLAZER" "8" "12/17/2011" "Network UPS Tools" "NUT Manual"
.TH "BLAZER" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -34,7 +34,7 @@ blazer \- Driver for Megatec/Q1 protocol serial (blazer_ser) and USB (blazer_usb
This man page only documents the hardware\-specific features of the blazer driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "SUPPORTED HARDWARE"
.sp
The blazer driver is known to work with various UPSes from Blazer, Energy Sistem, Fenton Technologies, Mustek and many others\&. The NUT compatibility table lists all the known supported models\&. Keep in mind, however, that other models not listed there may also be supported, but haven\(cqt been tested\&.
The blazer driver is known to work with various UPSes from Blazer, Energy Sistem, Fenton Technologies, General Electric, Mustek and many others\&. The NUT compatibility table lists all the known supported models\&. Keep in mind, however, that other models not listed there may also be supported, but haven\(cqt been tested\&.
.sp
All devices with a serial interface (use the \fBblazer_ser\fR driver) and many with a USB interface (use the \fBblazer_usb\fR driver) are supported\&.
.SH "EXTRA ARGUMENTS"
@ -109,7 +109,7 @@ Parameter used in the (optional) runtime estimation\&. This takes two runtimes a
.RS 4
.\}
.nf
runtimecal = 270,100,720,50
runtimecal = 240,100,720,50
.fi
.if n \{\
.RE

View File

@ -16,9 +16,10 @@ SUPPORTED HARDWARE
------------------
The blazer driver is known to work with various UPSes from Blazer, Energy
Sistem, Fenton Technologies, Mustek and many others. The NUT compatibility
table lists all the known supported models. Keep in mind, however, that
other models not listed there may also be supported, but haven't been tested.
Sistem, Fenton Technologies, General Electric, Mustek and many others.
The NUT compatibility table lists all the known supported models. Keep
in mind, however, that other models not listed there may also be supported,
but haven't been tested.
All devices with a serial interface (use the *blazer_ser* driver) and
many with a USB interface (use the *blazer_usb* driver) are supported.
@ -90,7 +91,7 @@ at different loads. Typically, this uses the runtime at full load and the
runtime at half load. For instance, if your UPS has a rated runtime of 240
seconds at full load and 720 seconds at half load, you would enter
+
runtimecal = 270,100,720,50
runtimecal = 240,100,720,50
+
The first load should always be higher than the second. If you have values
available for loads other than 100 and 50 % respectively, you can use those

View File

@ -2,12 +2,12 @@
.\" Title: clone
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "CLONE" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "CLONE" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: dummy-ups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "DUMMY\-UPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "DUMMY\-UPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: etapro
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ETAPRO" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "ETAPRO" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: everups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "EVERUPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "EVERUPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: gamatronic
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "GAMATRONIC" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "GAMATRONIC" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: genericups
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "GENERICUPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "GENERICUPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: hosts.conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "HOSTS\&.CONF" "5" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "HOSTS\&.CONF" "5" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: isbmex
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ISBMEX" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "ISBMEX" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: ivtscd
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "IVTSCD" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "IVTSCD" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: libupsclient-config
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIBUPSCLIENT\-CONFIG" "1" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "LIBUPSCLIENT\-CONFIG" "1" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: liebert-esp2
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIEBERT\-ESP2" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "LIEBERT\-ESP2" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: liebert
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIEBERT" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "LIEBERT" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: masterguard
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MASTERGUARD" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "MASTERGUARD" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: metasys
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "METASYS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "METASYS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: mge-shut
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MGE\-SHUT" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "MGE\-SHUT" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: mge-utalk
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MGE\-UTALK" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "MGE\-UTALK" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: microdowell
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MICRODOWELL" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "MICRODOWELL" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: netxml-ups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NETXML\-UPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NETXML\-UPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nut-ipmipsu
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\-IPMIPSU" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUT\-IPMIPSU" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

103
docs/man/nut-recorder.8 Normal file
View File

@ -0,0 +1,103 @@
'\" t
.\" Title: nut-recorder
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\-RECORDER" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
nut-recorder \- utility to record device status and values changes
.SH "SYNOPSIS"
.sp
\fBnut\-recorder\fR \fIdevice\-name\fR [output\-file] [interval]
.SH "DESCRIPTION"
.sp
\fBnut\-recorder\fR is an utility to record device running sequence (Ie power failures or any other change) through a NUT data server, and dump it in a \&.seq format\&.
.sp
The \&.seq file can then be used by the \fBdummy-ups\fR(8) driver to replay the sequence\&.
.SH "OPTIONS"
.PP
\fIdevice\-name\fR
.RS 4
Record the changes of that device\&. The format for this option is
\fIdevname[@hostname[:port]]\fR\&. The default hostname is "localhost"\&.
.RE
.PP
\fIoutput\-file\fR
.RS 4
Optional\&. Data will be saved to this file\&. The default is
\fIdummy\-device\&.seq\fR\&.
.RE
.PP
\fIinterval\fR
.RS 4
Optional\&. The status of the device will be checked every
\fIinterval\fR\&. The default is 5 seconds\&.
.RE
.SH "EXAMPLES"
.sp
To record data from \fIups1@host1\fR every 10 seconds:
.sp
.if n \{\
.RS 4
.\}
.nf
$ nut\-recorder ups1@host1\*(Aq ups1\-output\&.seq 10
\&. \&. \&.
battery\&.charge: 100\&.0
battery\&.voltage: 13\&.9
battery\&.voltage\&.nominal: 13\&.6
ups\&.status: OL
\&. \&. \&.
battery\&.charge: 90\&.0
ups\&.status: OB
\&. \&. \&.
.fi
.if n \{\
.RE
.\}
.sp
You can then define a dummy device in \fBups.conf\fR(5):
.sp
.if n \{\
.RS 4
.\}
.nf
[ups\-test]
driver = dummy\-ups
port = ups1\-output\&.seq
.fi
.if n \{\
.RE
.\}
.SH "AUTHOR"
.sp
Arnaud Quette
.SH "SEE ALSO"
.sp
\fBdummy-ups\fR(8)
.SH "INTERNET RESOURCES"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

73
docs/man/nut-recorder.txt Normal file
View File

@ -0,0 +1,73 @@
NUT-RECORDER(8)
===============
NAME
----
nut-recorder - utility to record device status and values changes
SYNOPSIS
--------
*nut-recorder* 'device-name' [output-file] [interval]
DESCRIPTION
-----------
*nut-recorder* is an utility to record device running sequence (Ie
power failures or any other change) through a NUT data server, and
dump it in a .seq format.
The .seq file can then be used by the linkman:dummy-ups[8] driver
to replay the sequence.
OPTIONS
-------
'device-name'::
Record the changes of that device. The format for this option is
'devname[@hostname[:port]]'. The default hostname is "localhost".
'output-file'::
Optional. Data will be saved to this file. The default is
'dummy-device.seq'.
'interval'::
Optional. The status of the device will be checked every 'interval'.
The default is 5 seconds.
EXAMPLES
--------
To record data from 'ups1@host1' every 10 seconds:
$ nut-recorder ups1@host1' ups1-output.seq 10
. . .
battery.charge: 100.0
battery.voltage: 13.9
battery.voltage.nominal: 13.6
ups.status: OL
. . .
battery.charge: 90.0
ups.status: OB
. . .
You can then define a dummy device in linkman:ups.conf[5]:
[ups-test]
driver = dummy-ups
port = ups1-output.seq
AUTHOR
------
Arnaud Quette
SEE ALSO
--------
linkman:dummy-ups[8]
INTERNET RESOURCES
------------------
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

View File

@ -2,12 +2,12 @@
.\" Title: nut-scanner
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 01/03/2012
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\-SCANNER" "8" "01/03/2012" "Network UPS Tools" "NUT Manual"
.TH "NUT\-SCANNER" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -37,6 +37,9 @@ nut-scanner \- scan communication buses for NUT devices
.SH "DESCRIPTION"
.sp
\fBnut\-scanner\fR scans available communication buses and displays any NUT\-compatible devices it has found\&.
.SH "INSTALLATION"
.sp
\fBnut\-scanner\fR is always built by default\&. However, available options (USB, SNMP, IPMI, \&...) will vary according to the available compile time and runtime dependencies\&. For example, if Net\-SNMP is installed, thus providing libsnmp (\&.so or \&.dll) and headers, both during compilation and runtime, then SNMP discovery will be available\&.
.SH "OPTIONS"
.PP
\fB\-h\fR

View File

@ -18,6 +18,15 @@ DESCRIPTION
*nut-scanner* scans available communication buses and displays any
NUT-compatible devices it has found.
INSTALLATION
------------
*nut-scanner* is always built by default. However, available options
(USB, SNMP, IPMI, ...) will vary according to the available compile time
and runtime dependencies. For example, if Net-SNMP is installed, thus
providing libsnmp (.so or .dll) and headers, both during compilation
and runtime, then SNMP discovery will be available.
OPTIONS
-------
*-h*::
@ -159,7 +168,6 @@ To scan NUT servers with a timeout of 10 seconds on IP range 192.168.0.0 to 192.
*nut-scanner -O -t 10 -m 192.168.0.0/25*
SEE ALSO
--------

View File

@ -2,12 +2,12 @@
.\" Title: nut.conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\&.CONF" "5" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUT\&.CONF" "5" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -36,6 +36,11 @@ This file attempts to standardize the various files being found in different ins
Distribution\(cqs init script should source this file in order to determine which components have to be started\&.
.sp
Blank lines are ignored\&. Lines with a hash (\fI#\fR) character at the 1st position of the line are ignored, too\&. They can be used to add comments\&.
.SH "IMPORTANT NOTE"
.sp
This file is intended to be sourced by shell scripts\&. You MUST NOT use spaces around the equal sign!
.sp
Refer to the EXAMPLE section for illustrations\&.
.SH "DIRECTIVES"
.PP
\fBMODE\fR

View File

@ -19,6 +19,14 @@ Blank lines are ignored. Lines with a hash ('#') character at the
1st position of the line are ignored, too. They can be used to add
comments.
IMPORTANT NOTE
--------------
This file is intended to be sourced by shell scripts.
You MUST NOT use spaces around the equal sign!
Refer to the EXAMPLE section for illustrations.
DIRECTIVES
----------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 11/03/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN" "3" "11/03/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_add_device_to_device
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_ADD_DEVICE_T" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_ADD_DEVICE_T" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_add_option_to_device
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_ADD_OPTION_T" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_ADD_OPTION_T" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_cidr_to_ip
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_CIDR_TO_IP" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_CIDR_TO_IP" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_display_parsable
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_DISPLAY_PARS" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_DISPLAY_PARS" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_display_ups_conf
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_DISPLAY_UPS_" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_DISPLAY_UPS_" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_free_device
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_FREE_DEVICE" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_FREE_DEVICE" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_init
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_INIT" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_INIT" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_new_device
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_NEW_DEVICE" "3" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_NEW_DEVICE" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_avahi
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_AVAHI" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_AVAHI" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_ipmi
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_IPMI" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_IPMI" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_nut
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_NUT" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_NUT" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_snmp
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_SNMP" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_SNMP" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_usb
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_USB" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_USB" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutscan_scan_xml_http
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/15/2011
.\" Date: 05/22/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_XML_HTT" "3" "12/15/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTSCAN_SCAN_XML_HTT" "3" "05/22/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: nutupsdrv
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTUPSDRV" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTUPSDRV" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: oneac
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ONEAC" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "ONEAC" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -34,7 +34,53 @@ oneac \- Driver for Oneac UPS equipment
This man page only documents the hardware\-specific features of the oneac driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.SH "SUPPORTED HARDWARE"
.sp
This driver supports Oneac EG and ON UPS equipment with the Advanced Interface\&. If your UPS is equipped with the Basic Interface card, use the genericups driver\&.
This driver supports various Oneac UPS families:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
EG (late 80s, early 90s, plug\-in serial interface card)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
ON (early and mid\-90s, plug\-in serial interface card)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
OZ (mid\-90s on, DB\-25 std\&., interface slot)
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
OB (early 2000\(cqs on, big cabinet, DB\-25 std\&., interface slot)
.RE
.sp
If your UPS is equipped with the Basic Interface card, use the \fBgenericups\fR(8) driver\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5) file:
@ -43,18 +89,39 @@ This driver supports the following optional settings in the \fBups.conf\fR(5) fi
.RS 4
Change battery test time from the 2 minute default\&.
.RE
.PP
\fBoffdelay\fR=\fInum\fR
.RS 4
Change shutdown delay time from 0 second default\&.
.RE
.SH "INSTANT COMMANDS"
.sp
This driver supports the following Instant Commands\&.
This driver supports the following Instant Commands\&. (See \fBupscmd\fR(8))
.SS "All UPS units"
.PP
\fBreset\&.input\&.minmax\fR
\fBshutdown\&.return\fR
.RS 4
Reset the minimum and maximum input line voltage values seen since the last reset or power on\&.
Turn off the load possibly after a delay and return when power is back\&.
.RE
.PP
\fBtest\&.battery\&.start\fR
\fBshutdown\&.stop\fR
.RS 4
Start a battery test\&. The default time is 2 minutes\&. This time can be set in the
Stop a shutdown in progress\&.
.RE
.PP
\fBshutdown\&.reboot\fR
.RS 4
Shut down the load briefly while rebooting the UPS\&.
.RE
.PP
\fBtest\&.failure\&.start\fR
.RS 4
Starts a 15 second long simulation of an input power failure\&.
.RE
.PP
\fBtest\&.battery\&.start\&.quick\fR
.RS 4
Start a "quick" battery test\&. The default time is 2 minutes\&. This time can be set in the
\fBups\&.conf\fR
file\&. See
\fBtestime\fR
@ -65,14 +132,81 @@ above\&.
.RS 4
Stops a battery test that is in progress\&.
.RE
.SS "All ON UPS units"
.PP
\fBtest\&.failure\&.start\fR
\fBreset\&.input\&.minmax\fR
.RS 4
Starts a 15 second long simulation of an input power failure\&.
Reset the minimum and maximum input line voltage values seen since the last reset or power on\&.
.RE
.SS "Newer ON UPS units"
.PP
\fBtest\&.panel\&.start\fR
.RS 4
Start testing the UPS panel\&.
.RE
.PP
\fBtest\&.battery\&.start\&.deep\fR
.RS 4
Start a "deep" battery test\&. This test runs the UPS until the low battery point and then returns to the AC line\&.
.RE
.PP
\fBreset\&.input\&.minmax\fR
.RS 4
Reset the minimum and maximum input line voltage values seen since the last reset or power on\&.
.RE
.PP
\fBbeeper\&.enable\fR
.RS 4
Enable UPS beeper/buzzer\&.
.RE
.PP
\fBbeeper\&.disable\fR
.RS 4
Disable UPS beeper/buzzer\&.
.RE
.PP
\fBbeeper\&.mute\fR
.RS 4
Mutes the UPS beeper/buzzer for the current alarm condition(s)\&.
.RE
.SH "WRITABLE VARIABLES"
.sp
See \fBupsrw\fR(8) to see what variables are writable for the UPS\&.
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
If your UPS supports writing battery\&.runtime\&.low, the new set value is to be entered in minutes (up to 99) but the reported value is reported in seconds (set value * 60)\&.
.sp .5v
.RE
.if n \{\
.sp
.\}
.RS 4
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
.ps +1
\fBNote\fR
.ps -1
.br
.sp
If your UPS supports input\&.transfer\&.low and input\&.transfer\&.high, those values are used to create an allowable output range\&. The UPS will do what it can to keep the output voltage value within the defined range (for example: tap change or switch to inverter)\&.
.sp .5v
.RE
.SH "AUTHOR"
.sp
Eric Lawson <elawson@inficad\&.com>
Bill Elliot <bill@wreassoc\&.com>, Eric Lawson <elawson@inficad\&.com>
.SH "SEE ALSO"
.SS "The core driver:"
.sp

View File

@ -15,9 +15,16 @@ linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver supports Oneac EG and ON UPS equipment with the
Advanced Interface. If your UPS is equipped with the Basic
Interface card, use the genericups driver.
This driver supports various Oneac UPS families:
- EG (late 80s, early 90s, plug-in serial interface card)
- ON (early and mid-90s, plug-in serial interface card)
- OZ (mid-90s on, DB-25 std., interface slot)
- OB (early 2000's on, big cabinet, DB-25 std., interface slot)
If your UPS is equipped with the Basic Interface card, use the
linkman:genericups[8] driver.
EXTRA ARGUMENTS
---------------
@ -27,27 +34,83 @@ linkman:ups.conf[5] file:
*testtime*='num'::
Change battery test time from the 2 minute default.
*offdelay*='num'::
Change shutdown delay time from 0 second default.
INSTANT COMMANDS
----------------
This driver supports the following Instant Commands.
(See linkman:upscmd[8])
*reset.input.minmax*::
Reset the minimum and maximum input line voltage values
seen since the last reset or power on.
All UPS units
~~~~~~~~~~~~~
*test.battery.start*::
Start a battery test. The default time is 2 minutes. This
time can be set in the *ups.conf* file. See *testime* above.
*shutdown.return*::
Turn off the load possibly after a delay and return when power is back.
*test.battery.stop*::
Stops a battery test that is in progress.
*shutdown.stop*::
Stop a shutdown in progress.
*shutdown.reboot*::
Shut down the load briefly while rebooting the UPS.
*test.failure.start*::
Starts a 15 second long simulation of an input power
failure.
*test.battery.start.quick*::
Start a "quick" battery test. The default time is 2 minutes. This
time can be set in the *ups.conf* file. See *testime* above.
*test.battery.stop*::
Stops a battery test that is in progress.
All ON UPS units
~~~~~~~~~~~~~~~~
*reset.input.minmax*::
Reset the minimum and maximum input line voltage values
seen since the last reset or power on.
Newer ON UPS units
~~~~~~~~~~~~~~~~~~
*test.panel.start*::
Start testing the UPS panel.
*test.battery.start.deep*::
Start a "deep" battery test. This test runs the UPS until the low
battery point and then returns to the AC line.
*reset.input.minmax*::
Reset the minimum and maximum input line voltage values
seen since the last reset or power on.
*beeper.enable*::
Enable UPS beeper/buzzer.
*beeper.disable*::
Disable UPS beeper/buzzer.
*beeper.mute*::
Mutes the UPS beeper/buzzer for the current alarm condition(s).
Writable Variables
------------------
See linkman:upsrw[8] to see what variables are writable for the UPS.
NOTE: If your UPS supports writing battery.runtime.low, the new set value
is to be entered in minutes (up to 99) but the reported value is reported
in seconds (set value * 60).
NOTE: If your UPS supports input.transfer.low and input.transfer.high,
those values are used to create an allowable output range. The UPS
will do what it can to keep the output voltage value within the
defined range (for example: tap change or switch to inverter).
AUTHOR
------
Bill Elliot <bill@wreassoc.com>,
Eric Lawson <elawson@inficad.com>
SEE ALSO

View File

@ -2,12 +2,12 @@
.\" Title: optiups
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "OPTIUPS" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "OPTIUPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: powercom
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERCOM" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERCOM" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: powerman-pdu
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERMAN\-PDU" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERMAN\-PDU" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: powerpanel
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERPANEL" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERPANEL" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: rhino
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "RHINO" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "RHINO" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: richcomm_usb
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "RICHCOMM_USB" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "RICHCOMM_USB" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: safenet
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 10/09/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "SAFENET" "8" "10/09/2011" "Network UPS Tools" "NUT Manual"
.TH "SAFENET" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -2,12 +2,12 @@
.\" Title: snmp-ups
.\" Author: [see the "AUTHORS" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 12/05/2011
.\" Date: 05/21/2012
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "SNMP\-UPS" "8" "12/05/2011" "Network UPS Tools" "NUT Manual"
.TH "SNMP\-UPS" "8" "05/21/2012" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -43,7 +43,7 @@ MGE UPS SYSTEMS and MGE Office Protection Systems devices with SNMP cards (ref 6
.PP
\fBapcc\fR
.RS 4
APC AP9606 APC Web/SNMP management card, perhaps others
APC AP9605, AP9606, AP9617, and AP9618 APC network management cards, as well as any others supporting the APC POWERNET MIB
.RE
.PP
\fBnetvision\fR

View File

@ -23,7 +23,7 @@ UPS that is RFC 1628 (UPS MIB) compliant, e.g. MGE UPS SYSTEMS, Liebert, perhaps
MGE UPS SYSTEMS and MGE Office Protection Systems devices with SNMP cards (ref 66062, 66045, 66074 and 66244)
*apcc*::
APC AP9606 APC Web/SNMP management card, perhaps others
APC AP9605, AP9606, AP9617, and AP9618 APC network management cards, as well as any others supporting the APC POWERNET MIB
*netvision*::
Socomec Sicon UPS with Netvision Web/SNMP management card/external box

Some files were not shown because too many files have changed in this diff Show More