Imported Upstream version 2.6.2

This commit is contained in:
Arnaud Quette 2011-09-29 20:14:46 +02:00
parent a367d9bc54
commit 45043b58d0
246 changed files with 18228 additions and 1415 deletions

443
ChangeLog
View File

@ -1,3 +1,438 @@
2011-09-15 Arnaud Quette <arnaud.quette@free.fr>
* [r3238] drivers/nut-ipmipsu.c, drivers/nut-libfreeipmi.c: Don't
override PSU absence with the power failure flag
* [r3237] NEWS, UPGRADING, configure.in, docs/download.txt,
docs/website/news.txt: Final update for 2.6.2 release
* [r3236] docs/configure.txt: Complete the minimum FreeIPMI version
required
* [r3235] tools/nut-scanner: Mark remaining generated files as a
Subversion ignored files (no functional changes)
2011-09-15 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3234] tools/nut-scanner/scan_nut.c: Conditional inclusion of
pthread.h
* [r3233] tools/nut-scanner/nut-scanner.c,
tools/nut-scanner/nutscan-display.c,
tools/nut-scanner/scan_avahi.c, tools/nut-scanner/scan_ipmi.c,
tools/nut-scanner/scan_nut.c, tools/nut-scanner/scan_usb.c,
tools/nut-scanner/scan_xml_http.c: config.h is included in
common.h, so only include common.h
* [r3232] include/parseconf.h: We need stdio.h because we use FILE
type.
2011-09-15 Arnaud Quette <arnaud.quette@free.fr>
* [r3231] docs/man: Mark remaining generated manual pages as a
Subversion ignored files (no functional changes)
* [r3230] docs/man/nut-ipmipsu.txt, drivers/nut-ipmi.h,
drivers/nut-ipmipsu.c, drivers/nut-libfreeipmi.c,
m4/nut_check_libfreeipmi.m4: Complete nut-ipmipsu, by adding
sensors discovery and monitoring
2011-09-14 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3229] tools/nut-scanner/scan_snmp.c: Remove use of strndup.
This is not supported on Solaris.
2011-09-14 Charles Lepple <clepple+nut@gmail.com>
* [r3228] tools/nut-scanner/scan_snmp.c: Remove unbalanced #endif
* [r3227] tools/nut-scanner/scan_snmp.c: nut-scanner: use
"common.h", which includes "config.h"
* [r3226] tools/nut-scanner/scan_snmp.c,
tools/nut-scanner/scan_usb.c: Include <string.h> for nut-scanner
* [r3225] tools/nut-scanner/scan_snmp.c: Silence redefined PACKAGE_
macro warnings
This should be fixed properly upstream, but in the mean time, the
SNMP-based
tools can't use these macros properly (since they will have the
values for
Net-SNMP, not NUT).
2011-09-14 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3224] tools/nut-scanner/nutscan-ip.c: Get rid of s6_addr32 in
IPv6 code since it is implementation specific. Replaced by
s6_addr. ( thanks to Charles Lepple)
2011-09-14 Arnaud Quette <arnaud.quette@free.fr>
* [r3223] drivers: Mark apcsmart-old binary as a Subversion ignored
file (no functional changes)
2011-09-14 Emilien Kia <emilienkia-guest@alioth.debian.org>
* [r3222]
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Client.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Command.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Device.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/NutException.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/StringLineSocket.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Variable.java:
Fix mail address typo for javadoc.
2011-09-13 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3221] tools/nut-scanner/Makefile.am: Fix make distcheck-light
2011-09-13 Arnaud Quette <arnaud.quette@free.fr>
* [r3220] drivers/bcmxcp.c: Fix compilation warning on values
comparison being always false
* [r3219] configure.in, tools/nut-scanner/nut-scanner.c: Complete
commit r3218, to address getopt_long too
* [r3218] configure.in: Do a second check to ensure inclusion of
getopt.h, in case optind is known
* [r3217] drivers/bcmxcp.c, drivers/bcmxcp.h, drivers/bcmxcp_ser.c:
Add support for outlet.n.delay.{start,shutdown}, and use
outlet.n.delay.shutdown for outlet.n.shutdown.return instead of
the default 3 seconds (patch from Rich Wrenn)
2011-09-13 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3216] tools/nut-scanner/nutscan-ip.c: Do not use long long
variable anymore
* [r3215] tools/nut-scanner/scan_avahi.c,
tools/nut-scanner/scan_nut.c: Remove all calls to asprintf
2011-09-12 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3214] clients/upsclient.c, clients/upsclient.h, configure.in,
docs/man/Makefile.am, docs/man/nut-scanner.txt,
docs/man/nutscan_add_device_to_device.txt,
docs/man/nutscan_add_option_to_device.txt,
docs/man/nutscan_cidr_to_ip.txt,
docs/man/nutscan_display_parsable.txt,
docs/man/nutscan_display_ups_conf.txt,
docs/man/nutscan_free_device.txt,
docs/man/nutscan_new_device.txt, docs/man/nutscan_scan_avahi.txt,
docs/man/nutscan_scan_ipmi.txt, docs/man/nutscan_scan_nut.txt,
docs/man/nutscan_scan_snmp.txt, docs/man/nutscan_scan_usb.txt,
docs/man/nutscan_scan_xml_http.txt, m4/nut_check_libavahi.m4,
tools/Makefile.am, tools/nut-scanner,
tools/nut-scanner/Makefile.am, tools/nut-scanner/nut-scan.h,
tools/nut-scanner/nut-scanner.c,
tools/nut-scanner/nutscan-device.c,
tools/nut-scanner/nutscan-device.h,
tools/nut-scanner/nutscan-display.c,
tools/nut-scanner/nutscan-ip.c, tools/nut-scanner/nutscan-ip.h,
tools/nut-scanner/scan_avahi.c, tools/nut-scanner/scan_ipmi.c,
tools/nut-scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c,
tools/nut-scanner/scan_usb.c, tools/nut-scanner/scan_xml_http.c,
tools/nut-snmpinfo.py, tools/nut-usbinfo.pl: Add nut-scanner tool
2011-09-12 Michal Soltys <msoltyspl-guest@alioth.debian.org>
* [r3211] docs/man/Makefile.am, docs/man/apcsmart-old.txt,
docs/man/apcsmart.txt, drivers/Makefile.am,
drivers/apcsmart-old.c, drivers/apcsmart-old.h,
drivers/apcsmart.c, drivers/apcsmart.h, drivers/apcsmart_tabs.c,
drivers/apcsmart_tabs.h: merge updated apcsmart driver from
apcsmart-dev branch
This commit clones trunk apcsmart to apcsmart-old, and merges
updated driver from apcsmart-dev.
Both drivers are built and available for the users, should there
be any issues with the new version.
The driver/table version is also incremented (3.0).
2011-09-12 Charles Lepple <clepple+nut@gmail.com>
* [r3206] docs/FAQ.txt: Reword rewording in FAQ
2011-09-09 Arnaud Quette <arnaud.quette@free.fr>
* [r3205] docs/FAQ.txt: Fix wording, that is not appropriate
anymore
* [r3204] docs/config-notes.txt: Complete shutdown information on
the "critical UPS" notion
* [r3203] docs/download.txt: Add missing comma for OpenWrt
* [r3202] docs/stable-hcl.txt: Complete information for reporting
new device
* [r3201] drivers/eaton-mib.c, drivers/eaton-mib.h,
drivers/snmp-ups.c: Add a missing Eaton MIB for PDU
2011-09-08 Arnaud Quette <arnaud.quette@free.fr>
* [r3199] docs/download.txt: Forgotten commit for the new updated
Windows package
* [r3198] docs/website/web-layout.conf: Fix XHTML 1.1 compliance
(reported by W3C validators)
* [r3196] ., configure.in, m4/nut_check_os.m4, scripts/Makefile.am,
scripts/README, scripts/systemd, scripts/systemd/Makefile.am,
scripts/systemd/README, scripts/systemd/nut-driver.service.in,
scripts/systemd/nut-monitor.service.in,
scripts/systemd/nut-server.service.in,
scripts/systemd/nutshutdown.in: Add initial support for systemd
(patch from Michal Hlavinka)
2011-09-06 Arnaud Quette <arnaud.quette@free.fr>
* [r3194] drivers/apc-mib.c, drivers/bestpower-mib.c,
drivers/eaton-mib.c, drivers/ietf-mib.c, drivers/mge-mib.c,
drivers/netvision-mib.c, drivers/powerware-mib.c,
drivers/raritan-pdu-mib.c, drivers/snmp-ups.c,
drivers/snmp-ups.h: Add a new initialization method, that uses
sysObjectID (indirection to the main MIB of the device) to detect
supported devices. This speeds up even more init stage and should
render void the use of 'mib' option
* [r3193] drivers/snmp-ups.c: Force numeric OIDs resolution, ie do
not resolve to textual names. This is mostly for the convenience
of debug output
2011-09-05 Arnaud Quette <arnaud.quette@free.fr>
* [r3186] scripts/java/Makefile.am, scripts/java/jNutList/src/test:
Remove test code, since it is bound to jNut and not jNutList
(reported by Emilien Kia)
* [r3185] drivers/mge-hid.c: Add support for battery.runtime.low,
and end of battery life (life cycle monitoring) ; along with
measurements (outlet power factor, power, real power and current)
for 5 PX
* [r3184] configure.in, scripts/Makefile.am, scripts/java,
scripts/java/Makefile.am: Complete jNut automake integration
(distribution rules)
2011-09-03 Arnaud Quette <arnaud.quette@free.fr>
* [r3183] docs/man: Mark nut-ipmipsu.html as a Subversion ignored
files (no functional changes)
2011-09-02 Arnaud Quette <arnaud.quette@free.fr>
* [r3182] docs/new-clients.txt: Fix jNut Asciidoc integration
* [r3181] docs/download.txt, docs/new-clients.txt,
docs/website/news.txt, scripts/README, scripts/java/README,
scripts/java/jNut/README, scripts/java/jNutList/README: Integrate
jNUT information in the developer guide, along with news and
download section
* [r3180] docs/website/news.txt: Add the Beta NUT 2.6.1-1 package
for Windows, and some news history (just intended for VCS
history)
* [r3179] docs/website/projects.txt: Formatting fixes
2011-09-02 Emilien Kia <emilienkia-guest@alioth.debian.org>
* [r3178] scripts/java, scripts/java/README, scripts/java/jNut,
scripts/java/jNut/README, scripts/java/jNut/pom.xml,
scripts/java/jNut/src, scripts/java/jNut/src/main,
scripts/java/jNut/src/main/java,
scripts/java/jNut/src/main/java/org,
scripts/java/jNut/src/main/java/org/networkupstools,
scripts/java/jNut/src/main/java/org/networkupstools/jnut,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Client.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Command.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Device.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/NutException.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/StringLineSocket.java,
scripts/java/jNut/src/main/java/org/networkupstools/jnut/Variable.java,
scripts/java/jNut/src/main/resources, scripts/java/jNut/src/test,
scripts/java/jNut/src/test/java,
scripts/java/jNut/src/test/java/org,
scripts/java/jNut/src/test/java/org/networkupstools,
scripts/java/jNut/src/test/java/org/networkupstools/jnut,
scripts/java/jNut/src/test/java/org/networkupstools/jnut/ClientTest.java,
scripts/java/jNutList, scripts/java/jNutList/README,
scripts/java/jNutList/pom.xml, scripts/java/jNutList/src,
scripts/java/jNutList/src/main,
scripts/java/jNutList/src/main/java,
scripts/java/jNutList/src/main/java/org,
scripts/java/jNutList/src/main/java/org/networkupstools,
scripts/java/jNutList/src/main/java/org/networkupstools/jnutlist,
scripts/java/jNutList/src/main/java/org/networkupstools/jnutlist/AppList.java,
scripts/java/jNutList/src/main/resources,
scripts/java/jNutList/src/test,
scripts/java/jNutList/src/test/java,
scripts/java/jNutList/src/test/java/org,
scripts/java/jNutList/src/test/java/org/networkupstools,
scripts/java/jNutList/src/test/java/org/networkupstools/jnuttest,
scripts/java/jNutList/src/test/java/org/networkupstools/jnuttest/AppTest.java:
Add jNut (NUT client in Java) to trunk.
2011-09-02 Arnaud Quette <arnaud.quette@free.fr>
* [r3174] drivers/main.c: Remove extraneous empty line
2011-08-31 Emilien Kia <emilienkia-guest@alioth.debian.org>
* [r3173] drivers/usb-common.c: Fix pointer check on wrong variable
(Patch from Thomas Jarosch)
* [r3172] drivers/mge-utalk.c: Fix use of uninitialized variable
(Patch from Thomas Jarosch)
* [r3171] common/common.c: Fix file descriptor leak (Patch from
Thomas Jarosch)
2011-08-29 Arnaud Quette <arnaud.quette@free.fr>
* [r3164] drivers/mge-hid.c: Add region/country management, to
improve features provided such as 'output.voltage.nominal' and 3S
Eco control
* [r3163] data/driver.list.in, drivers/mge-hid.c: Add Eaton 3S to
the list of usbhid-ups supported models
2011-08-25 Arnaud Quette <arnaud.quette@free.fr>
* [r3160] docs/nut-names.txt: Fix duplication
2011-08-20 Charles Lepple <clepple+nut@gmail.com>
* [r3158] m4/nut_report_feature.m4: Avoid implementation-specific
use of "echo" in autoconf
http://pubs.opengroup.org/onlinepubs/009695399/utilities/echo.html
2011-08-05 Charles Lepple <clepple+nut@gmail.com>
* [r3150] configure.in: configure.in: minor changes to output
* Capitalized "UPS"
* --with-drivers= : Only *build* specific drivers
2011-07-30 Arnaud Quette <arnaud.quette@free.fr>
* [r3149] data/driver.list.in: Add Cyber Power Systems CP1000AVRLCD
to the list of usbhid-ups supported models (reported by David C.
Rankin)
2011-07-28 Arnaud Quette <arnaud.quette@free.fr>
* [r3148] tools/nut-usbinfo.pl: Proper fix to r3012, which
satisfies both udev and upower
2011-07-27 Arnaud Quette <arnaud.quette@free.fr>
* [r3147] tools/nut-usbinfo.pl: Partially revert r3012. It caused a
udev regression, with several missing USB IDs (thanks to Pawel
Sikora for uncovering it)
* [r3146] scripts/augeas/README: Add a complete Python Augeas
example code
2011-07-26 Arnaud Quette <arnaud.quette@free.fr>
* [r3145] configure.in, docs/man/nut-ipmipsu.txt, scripts/udev,
scripts/udev/Makefile.am, scripts/udev/README,
scripts/udev/nut-ipmipsu.rules.in: Add udev rules file and
documentation for nut-ipmipsu
* [r3144] m4/nut_check_libfreeipmi.m4: Improve detection of the
needed functions
* [r3143] data/driver.list.in: Add Orvaldi 750 / 900SP to the list
of blazer_usb supported models (reported by Pawel Sikora)
* [r3142] drivers/nut-ipmipsu.c: Fix missing comment closure, add a
TODO list and remove unused variables
2011-07-21 Charles Lepple <clepple+nut@gmail.com>
* [r3141] tools/git-svn.authors: Added authors file for git-svn
synchronization
2011-07-19 Arnaud Quette <arnaud.quette@free.fr>
* [r3140] data/driver.list.in: Add POWEREX VI 1000 LED to the list
of blazer_usb supported models (reported by Sergey Talchuk)
2011-07-17 Arnaud Quette <arnaud.quette@free.fr>
* [r3139] data/driver.list.in: Add SVEN Power Pro+ series (USB ID
ffff:0000) to the list of blazer_usb supported models (reported
by Vlad)
2011-07-16 Arnaud Quette <arnaud.quette@free.fr>
* [r3138] configure.in: Fix --with-[free]ipmi configure option so
that it actually behave correctly in automatic detection mode
2011-07-14 Arnaud Quette <arnaud.quette@free.fr>
* [r3137] configure.in: Fix the typo that made its way into commit
r3136, and broke configure
* [r3136] configure.in, docs/configure.txt, docs/man,
docs/man/Makefile.am, docs/man/nut-ipmipsu.txt, drivers,
drivers/Makefile.am, drivers/nut-ipmi.h, drivers/nut-ipmipsu.c,
drivers/nut-libfreeipmi.c, m4/nut_check_libfreeipmi.m4: First
attempt to create a driver to monitor power supply units using
IPMI. This preliminary version only reads FRU (Field Replace
Unit) information, but not yet the sensor information (describing
if the PSU is present and online), and includes base
documentation (manpage and configure options). It currently
supports GNU FreeIPMI, but uses an abstract IPMI implementation
that will allow to use other IPMI toolkits
2011-07-13 Arnaud Quette <arnaud.quette@free.fr>
* [r3135] docs/configure.txt: Move several misplaced options to the
right sections
* [r3132] drivers/bestfcom.c: Remove unused variables (patch from
Regid Ichira, Debian bug #633756)
2011-07-12 Arnaud Quette <arnaud.quette@free.fr>
* [r3131] MAINTAINERS: Update the corporate mail address and some
details
2011-07-08 Charles Lepple <clepple+nut@gmail.com>
* [r3129] docs/acknowledgements.txt: Fix typo in link on
Acknowledgements page
2011-07-07 Arnaud Quette <arnaud.quette@free.fr>
* [r3127] docs/acknowledgements.txt: Move Arjen de Korte, NUT
Senior lieutenant, to the Retired members section. Thanks for all
his years of dedication to make NUT better
2011-07-01 Arjen de Korte <adkorte-guest@alioth.debian.org>
* [r3115] MAINTAINERS: It's been fun, but I feel the time has come
to say farewell. All the best...
2011-06-29 Arnaud Quette <arnaud.quette@free.fr>
* [r3109] configure.in, scripts/Makefile.am, scripts/avahi,
scripts/avahi/nut.service.in: Add Avahi support for NUT mDNS
publication, using a static service file
* [r3106] tools/svn2cl.authors: Add missing committers, and reorder
using the Project Member List:
https://alioth.debian.org/project/memberlist.php?group_id=30602
2011-06-28 Arnaud Quette <arnaud.quette@free.fr>
* [r3105] data/driver.list.in: Add various models equiped with APC
AP9618 management card, including APC Smart-UPS RT XL, to the
list of snmp-ups supported models (reported by Angela Williams)
2011-06-23 Arjen de Korte <adkorte-guest@alioth.debian.org>
* [r3057] drivers/main.c: Try to prevent that drivers are started
multiple times for the same UPS.
2011-06-17 Arjen de Korte <adkorte-guest@alioth.debian.org>
* [r3047] docs/man/blazer.txt, drivers/blazer.c: Add preselection
of communication protocol used
2011-06-16 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r3045] drivers/snmp-ups.c: Fix SNMP v3 session initialisation
2011-06-08 Arnaud Quette <arnaud.quette@free.fr>
* [r3037] docs/website/web-layout.conf: Update the Firefox download
button, since the previous one has disappeared
* [r3036] docs/website/news.txt, docs/website/projects.txt: Add a
news entry, and a reference in the Related projects, on Dell
PowerVault NX3500, which uses NUT for power protection (approved
by Dell)
2011-06-04 Arnaud Quette <arnaud.quette@free.fr>
* [r3026] data/driver.list.in: Add PowerWalker VI 850 LCD to the
list of blazer_usb supported models (reported by Wayne Thomas)
2011-06-01 Arnaud Quette <arnaud.quette@free.fr>
* [r3023] docs/download.txt: Add the missing SHA-256 sum on the
@ -51,7 +486,7 @@
* [r3002] server/netinstcmd.c: Fix the missing 'extra value'
handling for instant commands
2011-05-24 msoltyspl-guest
2011-05-24 Michal Soltys <msoltyspl-guest@alioth.debian.org>
* [r2997] drivers/apcsmart.c: apcmsart.c: fix
upsdrv_shutdown_advanced() - with 'continue' statement, sdcmd_*s
@ -136,7 +571,7 @@
[http://lists.alioth.debian.org/pipermail/nut-upsuser/2011-March/006770.html]
2011-03-31 fbohe-guest
2011-03-31 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r2962] data/driver.list.in, drivers/mge-hid.c: Add Eaton
Powerware 9140 to the list of usbhid-ups supported models
@ -153,7 +588,7 @@
which cause unresolved symbol on libupsclient users (reported by
Fabrice Coutadeur on Ubuntu)
2011-03-23 fbohe-guest
2011-03-23 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r2957] INSTALL: Reverting previous commit (should not be in the
trunk)
@ -341,7 +776,7 @@
* [r2891] drivers/dummy-ups.c: Prefer 'snprintf' and 'snprintfcat'
over 'strncat' (the latter can overflow the destination buffer)
2011-02-09 fbohe-guest
2011-02-09 Frederic Bohe <fbohe-guest@alioth.debian.org>
* [r2888] drivers/dummy-ups.c: Fix a memory leak in dummy-ups
driver

View File

@ -37,13 +37,9 @@ S: Maintained: apcsmart, belkin, bestups, cyberpower, dummycons,
P: Arnaud Quette
M: aquette.dev@gmail.com
M: arnaud.quette@mgeups.com
M: ArnaudQuette@eaton.com
S: Maintained or Supported: dummy-ups, usbhid-ups, mge-shut, newmge-shut
mge-utalk, snmp-ups, HAL support
P: Arjen de Korte
M: arjen@de-korte.org
S: Maintained: safenet, genericups, powerpanel, netxml-ups, usbhid-ups
mge-utalk, snmp-ups, ...
P: Fabio Di Niro
M: blaxwan@users.sourceforge.net

View File

@ -38,7 +38,8 @@ host_triplet = @host@
target_triplet = @target@
subdir = .
DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
$(srcdir)/Makefile.in $(top_srcdir)/configure AUTHORS COPYING \
$(srcdir)/Makefile.in $(top_srcdir)/configure \
$(top_srcdir)/scripts/avahi/nut.service.in AUTHORS COPYING \
ChangeLog INSTALL NEWS TODO compile config.guess config.sub \
depcomp install-sh ltmain.sh missing
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@ -48,6 +49,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -67,7 +70,7 @@ 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 =
CONFIG_CLEAN_FILES = scripts/avahi/nut.service
CONFIG_CLEAN_VPATH_FILES =
SOURCES =
DIST_SOURCES =
@ -166,10 +169,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -207,6 +214,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -271,6 +282,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
@ -349,6 +362,8 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
$(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
$(am__aclocal_m4_deps):
scripts/avahi/nut.service: $(top_builddir)/config.status $(top_srcdir)/scripts/avahi/nut.service.in
cd $(top_builddir) && $(SHELL) ./config.status $@
mostlyclean-libtool:
-rm -f *.lo

73
NEWS
View File

@ -2,6 +2,79 @@ 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.2 - what's new since 2.6.1:
- NUT can now monitor power supply units (PSU) in servers, through IPMI, using
the new experimental 'nut-ipmipsu' driver. Users are encouraged to test it,
and send feedback and debug output to the development mailing list.
This requires GNU FreeIPMI (0.8.5 or higher) development package or files.
Thanks goes to Al Chu, FreeIPMI project leader, for his help during this
development.
- NUT now provides a tool, called 'nut-scanner', to discover supported devices,
both local and remote. nut-scanner will help to ease the configuration step,
and power infrastructure discovery.
This development, sponsored by Eaton, supports the following methods:
* USB,
* SNMP,
* XML/HTTP (from Eaton),
* NUT servers, using the classic connect or Avahi / mDNS methods.
IPMI support will be added in the next release.
A separate library, called 'libnutscan', is also available to provide these
feature. Future NUT releases will provides binding for the supported
languages (Perl, Python and Java).
- NUT now provides a Java interface called 'jNut'.
This development, sponsored by Eaton, is currently limited to the client
interface. But it will be broaden to device discovery and configuration in
the future.
For more info, refer to nut/scripts/java/README, or the developer guide
(chapter 'Creating new client'). Javadoc documentation is also provided,
along with Java archives (.jar) in the Download section.
- support for new devices: Eaton 3S ; Cyber Power Systems CP1000AVRLCD ;
various APC models equiped with APC AP9618 management card, including APC
Smart-UPS RT XL ; Orvaldi 750 / 900SP ; POWEREX VI 1000 LED ; PowerWalker
VI 850 LCD ; SVEN Power Pro+ series (USB ID ffff:0000).
- A regression has been fixed in udev rules file. This previously caused
permission issues to owners of some USB devices.
- Avahi support has been added, for NUT mDNS publication, through a static
service file (nut/scripts/avahi/nut.service).
- usbhid-ups has had Eaton completion: some features have been improved, such
as 'output.voltage.nominal' ; 3S Eco control support has been added, along
with battery.runtime.low and end of battery life (life cycle monitoring)
support ; new measurements for 5 PX are also supported now (outlet power
factor, power, real power and current).
- apcsmart has been updated to support more variables and features ; the
previous driver is however still available as 'apcsmart-old', in case of
issues.
- bcmxcp now supports per outlet startup and shutdown delays setting ; shutdown
delay is also used, when available, for outlet.n.shutdown.return instead of
the default 3 seconds.
- snmp-ups.c has a new initialization method, that uses sysObjectID, which is
a pointer to the prefered MIB of the device, to detect supported devices.
This speeds up even more init stage and should render void the use of 'mib'
option. SNMP v3 session initialisation has also been fixed, and Eaton PDU
support has been completed.
- Initial support has been added for systemd, the System and Service Manager
from RedHat.
- The chapter 'NUT configuration management with Augeas' of the developer guide
has received some completion: a complete Python Augeas example code is now
provided.
- Finally, after years of dedication to NUT, Arjen de Korte is now retired.
Sincere thanks to you Arjen from us all.
---------------------------------------------------------------------------
Release notes for NUT 2.6.1 - what's new since 2.6.0:

View File

@ -7,6 +7,12 @@ 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.1 to 2.6.2
---------------------------
- apcsmart driver has been replaced by a new implementation. In case of issue
with this new version, users can revert to apcsmart-old.
Changes from 2.6.0 to 2.6.1
---------------------------

160
aclocal.m4 vendored
View File

@ -126,6 +126,164 @@ AC_DEFUN([_AC_TYPE_LONG_LONG_SNIPPET],
| (ullmax / ull) | (ullmax % ull));]])
])
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
# serial 1 (pkg-config-0.24)
#
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
#
# 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
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
# ----------------------------------
AC_DEFUN([PKG_PROG_PKG_CONFIG],
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
fi
if test -n "$PKG_CONFIG"; then
_pkg_min_version=m4_default([$1], [0.9.0])
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
AC_MSG_RESULT([yes])
else
AC_MSG_RESULT([no])
PKG_CONFIG=""
fi
fi[]dnl
])# PKG_PROG_PKG_CONFIG
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
#
# Check to see whether a particular set of modules exists. Similar
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
#
# Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG])
# only at the first occurence in configure.ac, so if the first place
# it's called might be skipped (such as if it is within an "if", you
# have to call PKG_CHECK_EXISTS manually
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_EXISTS],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
m4_default([$2], [:])
m4_ifvaln([$3], [else
$3])dnl
fi])
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
# ---------------------------------------------
m4_define([_PKG_CONFIG],
[if test -n "$$1"; then
pkg_cv_[]$1="$$1"
elif test -n "$PKG_CONFIG"; then
PKG_CHECK_EXISTS([$3],
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
[pkg_failed=yes])
else
pkg_failed=untried
fi[]dnl
])# _PKG_CONFIG
# _PKG_SHORT_ERRORS_SUPPORTED
# -----------------------------
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi[]dnl
])# _PKG_SHORT_ERRORS_SUPPORTED
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
# [ACTION-IF-NOT-FOUND])
#
#
# Note that if there is a possibility the first call to
# PKG_CHECK_MODULES might not happen, you should be sure to include an
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
#
#
# --------------------------------------------------------------
AC_DEFUN([PKG_CHECK_MODULES],
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
pkg_failed=no
AC_MSG_CHECKING([for $1])
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.])
if test $pkg_failed = yes; then
AC_MSG_RESULT([no])
_PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
else
$1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors "$2" 2>&1`
fi
# Put the nasty error message in config.log where it belongs
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
m4_default([$4], [AC_MSG_ERROR(
[Package requirements ($2) were not met:
$$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
_PKG_TEXT])[]dnl
])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
m4_default([$4], [AC_MSG_FAILURE(
[The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
_PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])[]dnl
])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
AC_MSG_RESULT([yes])
$3
fi[]dnl
])# PKG_CHECK_MODULES
# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
@ -1139,6 +1297,8 @@ m4_include([m4/ltversion.m4])
m4_include([m4/lt~obsolete.m4])
m4_include([m4/nut_arg_with.m4])
m4_include([m4/nut_check_asciidoc.m4])
m4_include([m4/nut_check_libavahi.m4])
m4_include([m4/nut_check_libfreeipmi.m4])
m4_include([m4/nut_check_libgd.m4])
m4_include([m4/nut_check_libhal.m4])
m4_include([m4/nut_check_libneon.m4])

View File

@ -59,6 +59,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -229,10 +231,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -270,6 +276,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -334,6 +344,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

View File

@ -30,6 +30,7 @@
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <fcntl.h>
#include "upsclient.h"
#include "timehead.h"
@ -393,12 +394,17 @@ int upscli_sslcert(UPSCONN_t *ups, const char *file, const char *path, int verif
#endif /* HAVE_SSL */
int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags)
int upscli_tryconnect(UPSCONN_t *ups, const char *host, int port, int flags,struct timeval * timeout)
{
int sock_fd;
struct addrinfo hints, *res, *ai;
char sport[NI_MAXSERV];
int v;
fd_set wfds;
int ret;
int error;
socklen_t error_size;
long fd_flags;
if (!ups) {
return -1;
@ -466,7 +472,37 @@ int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags)
continue;
}
/* non blocking connect */
if(timeout != NULL) {
fd_flags = fcntl(sock_fd, F_GETFL);
fd_flags |= O_NONBLOCK;
fcntl(sock_fd, F_SETFL, fd_flags);
}
while ((v = connect(sock_fd, ai->ai_addr, ai->ai_addrlen)) < 0) {
if(errno == EINPROGRESS) {
FD_ZERO(&wfds);
FD_SET(sock_fd, &wfds);
ret = select(sock_fd+1,NULL,&wfds,NULL,
timeout);
if (FD_ISSET(sock_fd, &wfds)) {
error_size = sizeof(error);
getsockopt(sock_fd,SOL_SOCKET,SO_ERROR,
&error,&error_size);
if( error == 0) {
/* connect successful */
v = 0;
break;
}
errno = error;
}
else {
/* Timeout */
v = -1;
break;
}
}
switch (errno)
{
case EAFNOSUPPORT:
@ -486,6 +522,13 @@ int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags)
continue;
}
/* switch back to blocking operation */
if(timeout != NULL) {
fd_flags = fcntl(sock_fd, F_GETFL);
fd_flags &= ~O_NONBLOCK;
fcntl(sock_fd, F_SETFL, fd_flags);
}
ups->fd = sock_fd;
ups->upserror = 0;
ups->syserrno = 0;
@ -529,6 +572,11 @@ int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags)
return 0;
}
int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags)
{
return upscli_tryconnect(ups,host,port,flags,NULL);
}
/* map upsd error strings back to upsclient internal numbers */
static struct {
int errnum;

View File

@ -65,6 +65,8 @@ typedef struct {
const char *upscli_strerror(UPSCONN_t *ups);
int upscli_tryconnect(UPSCONN_t *ups, const char *host, int port, int flags, struct timeval *tv);
int upscli_connect(UPSCONN_t *ups, const char *host, int port, int flags);
/* --- functions that only use the new names --- */

View File

@ -47,6 +47,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -135,10 +137,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -176,6 +182,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -240,6 +250,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

View File

@ -244,6 +244,7 @@ int sendsignalfn(const char *pidfn, int sig)
if (fgets(buf, sizeof(buf), pidf) == NULL) {
upslogx(LOG_NOTICE, "Failed to read pid from %s", pidfn);
fclose(pidf);
return -1;
}
@ -251,6 +252,7 @@ int sendsignalfn(const char *pidfn, int sig)
if (pid < 2) {
upslogx(LOG_NOTICE, "Ignoring invalid pid number %d", pid);
fclose(pidf);
return -1;
}
@ -259,6 +261,7 @@ int sendsignalfn(const char *pidfn, int sig)
if (ret < 0) {
perror("kill");
fclose(pidf);
return -1;
}
@ -267,9 +270,11 @@ int sendsignalfn(const char *pidfn, int sig)
if (ret < 0) {
perror("kill");
fclose(pidf);
return -1;
}
fclose(pidf);
return 0;
}

View File

@ -47,6 +47,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -140,10 +142,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -181,6 +187,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -245,6 +255,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

1356
configure vendored

File diff suppressed because it is too large Load Diff

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.1)
AC_INIT(nut, 2.6.2)
AC_CONFIG_SRCDIR(server/upsd.c)
AC_CONFIG_MACRO_DIR([m4])
echo "Network UPS Tools version ${PACKAGE_VERSION}"
@ -26,6 +26,8 @@ dnl Use "./configure --enable-maintainer-mode" to keep Makefile.in and Makefile
dnl in sync after SVN updates.
AM_MAINTAINER_MODE
dnl PKG_PROG_PKG_CONFIG
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
@ -110,7 +112,7 @@ fi
case ${target_os} in
hpux11* )
dnl It seems like the thread safe string functions won't be included
dnl It seems like the thread safe string functions will not be included
dnl on 64 bit HP-UX unless we define _REENTRANT
CFLAGS="${CFLAGS} -D_REENTRANT"
;;
@ -126,6 +128,16 @@ AC_CHECK_DECLS(optind, [], [
], [AC_INCLUDES_DEFAULT])
], [AC_INCLUDES_DEFAULT])
dnl do a 2nd check to ensure inclusion of getopt.h, in case optind is known
AC_CHECK_HEADERS(getopt.h, [
AC_DEFINE(NEED_GETOPT_H, 1, [Define if getopt.h is needed])
], [
AC_DEFINE(NEED_GETOPT_DECLS, 1, [Define to use explicit getopt declarations])
], [AC_INCLUDES_DEFAULT])
dnl also check for getopt_long
AC_CHECK_FUNCS(getopt_long)
dnl FreeBSD serial locking compatibility - look for uu_lock in libutil.h
AC_CHECK_DECLS(uu_lock, [
AC_DEFINE(HAVE_UU_LOCK, 1, [Use uu_lock for locking (FreeBSD)])
@ -154,6 +166,11 @@ AC_SEARCH_LIBS(connect, socket)
AC_HEADER_TIME
AC_CHECK_HEADERS(sys/modem.h stdarg.h varargs.h sys/termios.h sys/time.h, [], [], [AC_INCLUDES_DEFAULT])
# pthread related checks
AC_SEARCH_LIBS([pthread_create], [pthread],
[AC_DEFINE(HAVE_PTHREAD, 1, [Define to enable pthread support code])],
[])
dnl ----------------------------------------------------------------------
dnl Check for types and define possible replacements
NUT_TYPE_SOCKLEN_T
@ -163,7 +180,7 @@ dnl check for --with-all (or --without-all, or --with-all=auto) flag
AC_MSG_CHECKING(for --with-all)
AC_ARG_WITH(all,
AS_HELP_STRING([--with-all], [enable serial, usb, snmp, neon, powerman, cgi, dev]),
AS_HELP_STRING([--with-all], [enable serial, usb, snmp, neon, ipmi, powerman, cgi, dev, avahi]),
[
if test -n "${withval}"; then
dnl Note: we allow "no" as a positive value, because
@ -175,6 +192,8 @@ AC_ARG_WITH(all,
if test -z "${with_powerman}"; then with_powerman="${withval}"; fi
if test -z "${with_cgi}"; then with_cgi="${withval}"; fi
if test -z "${with_dev}"; then with_dev="${withval}"; fi
if test -z "${with_avahi}"; then with_avahi="${withval}"; fi
if test -z "${with_ipmi}"; then with_ipmi="${withval}"; fi
AC_MSG_RESULT("${withval}")
else
AC_MSG_RESULT(not given)
@ -210,6 +229,7 @@ NUT_ARG_WITH([neon], [build and install neon based XML/HTTP driver], [auto])
NUT_CHECK_LIBNEON
NUT_ARG_WITH([powerman], [build and install Powerman PDU client driver], [auto])
NUT_CHECK_LIBPOWERMAN
NUT_CHECK_LIBAVAHI
dnl ----------------------------------------------------------------------
dnl additional USB-related checks
@ -282,6 +302,26 @@ fi
AM_CONDITIONAL(WITH_NEONXML, test "${nut_with_neon}" = "yes")
NUT_REPORT_FEATURE([build neon based XML driver], [${nut_with_neon}])
if test "${nut_with_neon}" = "yes"; then
AC_DEFINE_UNQUOTED(WITH_NEON, 1, [Define to enable Neon XML/HTTP support])
fi
dnl ----------------------------------------------------------------------
dnl checks related to --with-avahi
dnl ${nut_with_avahi}: any value except "yes" or "no" is treated as "auto".
if test "${nut_with_avahi}" = "yes" -a "${nut_have_avahi}" != "yes"; then
AC_MSG_ERROR(["avahi libraries not found"])
fi
if test "${nut_with_avahi}" != "no"; then
nut_with_avahi="${nut_have_avahi}"
fi
AM_CONDITIONAL(WITH_AVAHI, test "${nut_with_avahi}" = "yes")
if test "${nut_with_avahi}" = "yes"; then
AC_DEFINE_UNQUOTED(WITH_AVAHI, 1, [Define to enable avahi support])
fi
dnl ----------------------------------------------------------------------
@ -299,6 +339,68 @@ fi
AM_CONDITIONAL(WITH_LIBPOWERMAN, test "${nut_with_powerman}" = "yes")
NUT_REPORT_FEATURE([build Powerman PDU client driver], [${nut_with_powerman}])
dnl ----------------------------------------------------------------------
dnl Check for with-ipmi, and --with-freeipmi (or --with-openipmi)
dnl Only one can be enabled at a time, with a preference for FreeIPMI
dnl if both are available (since it is the only one supported ATM!!)
nut_ipmi_lib=""
NUT_ARG_WITH([ipmi], [build and install IPMI PSU driver], [auto])
NUT_ARG_WITH([freeipmi], [enable IPMI support using FreeIPMI], [auto])
dnl NUT_ARG_WITH([openipmi], [enable IPMI support using OpenIPMI], [auto])
dnl ${nut_with_ipmi}: any value except "yes" or "no" is treated as "auto".
if test "${nut_with_ipmi}" != "no"; then
dnl check if FreeIPMI (and maybe later OpenIPMI) was explicitly requested
if test "${nut_with_freeipmi}" = "yes"; then
NUT_CHECK_LIBFREEIPMI
if test "${nut_have_freeipmi}" != "yes"; then
AC_MSG_ERROR(["GNU FreeIPMI not found, required for IPMI support"])
fi
dnl Implies --with-ipmi
nut_with_ipmi="yes"
dnl elif test "${nut_with_openipmi}" = "yes"; then
dnl AC_MSG_ERROR(["OpenIPMI is not yet supported"])
dnl NUT_CHECK_LIBOPENIPMI
dnl if test "${nut_have_openipmi}" != "yes"; then
dnl AC_MSG_ERROR(["OpenIPMI not found, required for IPMI support"])
dnl fi
dnl Implies --with-ipmi
dnl nut_with_ipmi="yes"
else
dnl Prefer FreeIPMI over OpenIPMI otherwise
NUT_CHECK_LIBFREEIPMI
if test "${nut_have_freeipmi}" != "yes"; then
if test "${nut_with_ipmi}" = "yes"; then
AC_MSG_ERROR(["FreeIPMI not found, required for IPMI support"])
fi
nut_with_ipmi="no"
dnl NUT_CHECK_OPENIPMI
dnl if test "${nut_have_openipmi}" != "yes"; then
dnl if test "${nut_with_ipmi}" = "yes"; then
dnl AC_MSG_ERROR(["GNU FreeIPMI and OpenIPMI neither found, required for IPMI support"])
dnl fi
dnl nut_with_ipmi="no"
dnl else
dnl Implies --with-ipmi
dnl nut_with_ipmi="yes"
dnl nut_with_openipmi="yes"
dnl fi
else
dnl Implies --with-ipmi
nut_with_ipmi="yes"
nut_with_freeipmi="yes"
fi
fi
fi
AM_CONDITIONAL(WITH_IPMI, test "${nut_with_ipmi}" = "yes")
AM_CONDITIONAL(WITH_FREEIPMI, test "${nut_with_freeipmi}" = "yes")
dnl AM_CONDITIONAL(WITH_OPENIPMI, test "${nut_with_openipmi}" = "yes")
NUT_REPORT_FEATURE([build IPMI driver], [${nut_with_ipmi} ${nut_ipmi_lib}])
dnl ----------------------------------------------------------------------
dnl Check for --with-ssl
@ -550,7 +652,7 @@ AC_MSG_RESULT(${ALTPIDPATH})
AC_MSG_CHECKING(driver path)
AC_ARG_WITH(drvpath,
AS_HELP_STRING([--with-drvpath=PATH], [where to install ups drivers (EPREFIX/bin)]),
AS_HELP_STRING([--with-drvpath=PATH], [where to install UPS drivers (EPREFIX/bin)]),
[
case "${withval}" in
yes|no)
@ -709,7 +811,7 @@ AC_ARG_WITH(drivers,
AS_HELP_STRING([m4_version_prereq(2.62,
[@<:@--with-drivers=driver@<:@,driver@:>@@:>@],
[[[[--with-drivers=driver@<:@,driver@:>@]]]])],
[Only use specific drivers (all)]),
[Only build specific drivers (all)]),
[
case "${withval}" in
yes|no)
@ -783,6 +885,31 @@ else
fi
AM_CONDITIONAL(WITH_PKG_CONFIG, test -n "${pkgconfigdir}")
PKG_PROG_PKG_CONFIG
systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
AC_MSG_CHECKING(whether to install systemd files)
AC_ARG_WITH([systemdsystemunitdir],
AS_HELP_STRING([--with-systemdsystemunitdir=DIR], [Directory for systemd service files (auto)]),
[
case "${withval}" in
yes|auto)
;;
no)
systemdsystemunitdir=""
;;
*)
systemdsystemunitdir="${withval}"
;;
esac
], [])
if test -n "${systemdsystemunitdir}"; then
systemdsystemshutdowndir="/lib/systemd/system-shutdown"
AC_MSG_RESULT(using ${systemdsystemunitdir})
else
AC_MSG_RESULT(no)
fi
AM_CONDITIONAL(HAVE_SYSTEMD, test "$systemdsystemunitdir" != "")
AC_MSG_CHECKING(whether to install hotplug rules)
AC_ARG_WITH(hotplug-dir,
AS_HELP_STRING([--with-hotplug-dir=PATH], [where to install hotplug rules (/etc/hotplug)]),
@ -875,8 +1002,12 @@ AC_SUBST(LIBUSB_CFLAGS)
AC_SUBST(LIBUSB_LIBS)
AC_SUBST(LIBNEON_CFLAGS)
AC_SUBST(LIBNEON_LIBS)
AC_SUBST(LIBAVAHI_CFLAGS)
AC_SUBST(LIBAVAHI_LIBS)
AC_SUBST(LIBPOWERMAN_CFLAGS)
AC_SUBST(LIBPOWERMAN_LIBS)
AC_SUBST(LIBIPMI_CFLAGS)
AC_SUBST(LIBIPMI_LIBS)
AC_SUBST(DOC_BUILD_LIST)
AC_SUBST(LIBWRAP_CFLAGS)
AC_SUBST(LIBWRAP_LIBS)
@ -894,6 +1025,7 @@ AC_SUBST(SERLIBS)
AC_SUBST(STATEPATH)
AC_SUBST(CONFPATH)
AC_SUBST(BINDIR)
AC_SUBST(PORT)
AC_SUBST(RUN_AS_USER)
AC_SUBST(RUN_AS_GROUP)
AC_SUBST(SUN_LIBUSB)
@ -902,6 +1034,8 @@ AC_SUBST(cgiexecdir)
AC_SUBST(driverexecdir)
AC_SUBST(htmldir)
AC_SUBST(pkgconfigdir)
AC_SUBST(systemdsystemunitdir)
AC_SUBST(systemdsystemshutdowndir)
AC_SUBST(hotplugdir)
AC_SUBST(udevdir)
@ -931,16 +1065,21 @@ AC_OUTPUT([
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/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
])

View File

@ -47,6 +47,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -176,10 +178,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -217,6 +223,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -281,6 +291,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

View File

@ -62,6 +62,8 @@
"APC" "ups" "1" "Back-UPS" "940-0023A cable" "genericups upstype=9"
"APC" "ups" "1" "Back-UPS Office" "940-0119A cable" "genericups upstype=12"
"APC" "ups" "1" "Back-UPS RS 500" "custom non-USB cable" "genericups upstype=20"
"APC" "ups" "3" "Smart-UPS RT XL" "AP9618 SNMP monitoring card" "snmp-ups"
"APC" "ups" "3" "(various)" "AP9618 SNMP monitoring card" "snmp-ups"
"APC" "pdu" "1" "Masterswitch" "940-0020 cable" "genericups upstype=12"
"APC" "pdu" "1" "AP9210" "8 outlets" "powerman-pdu (experimental)"
"APC" "pdu" "1" "AP79xx" "8 to 24 outlets" "powerman-pdu (experimental)"
@ -154,6 +156,7 @@
"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"
@ -196,6 +199,7 @@
"Dynex" "ups" "1" "975AVR" "" "genericups upstype=7"
"Dynex" "ups" "2" "DX-800U" "USB" "usbhid-ups"
"Eaton" "ups" "5" "3S" "" "usbhid-ups"
"Eaton" "ups" "5" "Protection Station 500/650/800 VA" "USB" "usbhid-ups"
"Eaton" "ups" "5" "Ellipse ECO 650/800/1200/1600 VA" "USB" "usbhid-ups"
"Eaton" "ups" "5" "Ellipse ASR USBS 600/750/1000/1500 VA" "USB cable" "usbhid-ups"
@ -603,6 +607,7 @@
"Opti-UPS" "ups" "1" "PowerES" "420E" "optiups"
"Orvaldi Power Protection" "ups" "2" "various" "not 400 or 600" "blazer_ser"
"Orvaldi Power Protection" "ups" "2" "750 / 900SP" "" "blazer_usb"
"Phasak" "ups" "2" "400VA / 600VA" "" "blazer_ser"
@ -627,6 +632,8 @@
"Powercom" "ups" "4" "(various)" "USB (<= 2009 models, product id: 0002)" "powercom (requires 'usbserial' kernel module)"
"Powercom" "ups" "5" "(various)" "USB (2009 models, product id: 00a?)" "usbhid-ups (experimental)"
"POWEREX" "ups" "2" "VI 1000 LED" "" "blazer_usb"
"PowerGuard" "ups" "2" "PG-600" "" "blazer_ser"
"PowerKinetics" "ups" "1" "9001" "" "genericups upstype=17"
@ -643,6 +650,7 @@
"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 1400" "" "blazer_usb"
"PowerWalker" "ups" "2" "Line-Interactive VI 850 LCD" "" "blazer_usb"
"Powerware" "ups" "4" "3110" "" "genericups upstype=7"
"Powerware" "ups" "4" "3115" "" "genericups upstype=11"
@ -707,6 +715,7 @@
"SuperPower" "ups" "2" "HP360, Hope-550" "" "blazer_ser"
"SVEN" "ups" "2" "Power Pro+ series" "USB" "blazer_usb (USB ID ffff:0000)"
"SVEN" "ups" "2" "Power Pro+ series" "USB" "blazer_usb (USB ID 05b8:0000)"
"SVEN" "ups" "1" "Power Pro+ series" "USB" "richcomm_usb (USB ID 0925:1234)"
"SVEN" "ups" "2" "Power Smart RM 2000" "USB" "blazer_usb (USB ID 05b8:0000)"

View File

@ -45,6 +45,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -135,10 +137,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -176,6 +182,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -240,6 +250,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

View File

@ -518,9 +518,9 @@ usbhid-ups driver uses libusb (which is available for a wide range of
operating systems) and libhid (currently, a modified internal version
of it).
As of NUT 2.2, usbhid-ups completely replaces the legacy hidups driver
and provide support for various manufacturers. At that time, it will
be renamed to usbhid-ups.
As of NUT 2.2, usbhid-ups completely replaces the legacy hidups driver,
and provides support for various manufacturers. At that time, newhidups was
renamed to usbhid-ups.
usbhid-ups is built automatically if possible (libusb development files
need to be installed) and installed by the "make install" command.

View File

@ -43,6 +43,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -149,10 +151,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -190,6 +196,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -254,6 +264,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@

View File

@ -20,7 +20,6 @@ Active members
~~~~~~~~~~~~~~
- Arnaud Quette: project leader (since 2005), Debian packager and jack of all trades
- Arjen de Korte: senior lieutenant
- Charles Lepple: senior lieutenant
- Kjell Claesson: senior developer
- Alexander Gordeev: junior developer
@ -34,6 +33,7 @@ Retired members
~~~~~~~~~~~~~~~
- Russell Kroll: Founder, and project leader from 1996 to 2005
- Arjen de Korte: senior lieutenant
- Peter Selinger: senior lieutenant
- Carlos Rodrigues: author of the "megatec" drivers, removing the numerous
drivers for Megatec / Q1 protocol. These drivers have now been replaced by
@ -87,7 +87,7 @@ They also proposes NUT as an alternative to its software for
link:http://www.microdowell.com/fra/download.html[Linux / Unix].
- link:http://pcmups.com.tw[Powercom], through Alexey Morozov, has provided
link:ups-protocol.html[extensive information] on its USB/HID devices, along
link:ups-protocols.html[extensive information] on its USB/HID devices, along
with development units.
Appliances manufacturers

View File

@ -339,7 +339,15 @@ Here are the steps that occur when a critical power event happens:
1. The UPS goes on battery
2. The UPS reaches low battery (a "critical" UPS)
2. The UPS reaches low battery (a "critical" UPS), that is to say
upsc displays:
+
ups.status: OB LB
+
The exact behavior depends on the specific device, and is related to:
- battery.charge and battery.charge.low
- battery.runtime and battery.runtime.low
3. The upsmon master notices and sets "FSD" - the "forced shutdown"
flag to tell all slave systems that it will soon power down the load.
@ -566,9 +574,10 @@ Testing shutdowns
^^^^^^^^^^^^^^^^^
UPS equipment varies from manufacturer to manufacturer and even within
model lines. You should test the shutdown sequence on your systems before
leaving them unattended. A successful sequence is one where the OS halts
before the battery runs out, and the system restarts when power returns.
model lines. You should test the <<Shutdown_design,shutdown sequence>>
on your systems before leaving them unattended. A successful sequence
is one where the OS halts before the battery runs out, and the system
restarts when power returns.
The first step is to see how upsdrvctl will behave without actually turning off
power. To do so, use the '-t' argument:

View File

@ -28,6 +28,22 @@ Note that you need to install libsnmp development package or files.
Build and install the XML drivers (default: auto-detect)
Note that you need to install neon development package or files.
--with-powerman
Build and install Powerman PDU client driver (default: auto-detect)
This allows to interact with the Powerman daemon, and the numerous
Power Distribution Units (PDU) supported by the project.
Note that you need to install powerman development package or files.
--with-ipmi
--with-freeipmi
Build and install IPMI PSU driver (default: auto-detect)
This allows to monitor numerous Power Supply Units (PSU) found
on servers.
Note that you need to install freeipmi (0.8.5 or higher) development package or
files.
--with-drivers=<driver>,<driver>,...
Specify exactly which driver or drivers to build and install (this
@ -48,16 +64,6 @@ If you need to build more drivers later on, you will need to rerun
configure with a different list. To make it build all of the
drivers from scratch again, run 'make clean' before starting.
--with-doc=<output-format(s)> (default: no)
Build and install NUT documentation file(s).
The possible values are "html-single" for single page HTML, "html-chunked"
for multi pages HTML, "pdf" for a PDF file or "auto" to build all the
possible previous documentation formats.
Verbose output can be enabled using: ASCIIDOC_VERBOSE=-v make
This feature requires AsciiDoc 8.6.3 (http://www.methods.co.nz/asciidoc).
Optional features
-----------------
@ -69,6 +75,16 @@ CGI configuration files. This is not enabled by default, as they
are only useful on web servers. See data/html/README for additional
information on how to set up CGI programs.
--with-doc=<output-format(s)> (default: no)
Build and install NUT documentation file(s).
The possible values are "html-single" for single page HTML, "html-chunked"
for multi pages HTML, "pdf" for a PDF file or "auto" to build all the
possible previous documentation formats.
Verbose output can be enabled using: ASCIIDOC_VERBOSE=-v make
This feature requires AsciiDoc 8.6.3 (http://www.methods.co.nz/asciidoc).
--with-lib (default: no)
Build and install the upsclient library and header files.
@ -101,12 +117,6 @@ Gnome or KDE desktop, this will enable a full Plug & Play usage.
See docs/nut-hal.txt for additional information on how to set up
and use HAL support.
--with-powerman (default: auto-detect)
Build and install Powerman PDU client driver.
This allows to interact with the Powerman daemon, and the numerous
Power Distribution Units (PDU) supported by the project.
Other configuration options
---------------------------

View File

@ -23,10 +23,10 @@ to do so.
Stable tree: 2.6
~~~~~~~~~~~~~~~~
- link:http://www.networkupstools.org/source/2.6/nut-2.6.1.tar.gz[nut-2.6.1.tar.gz]
- link:http://www.networkupstools.org/source/2.6/nut-2.6.1.tar.gz.sig[PGP/GPG signature]
- link:http://www.networkupstools.org/source/2.6/nut-2.6.2.tar.gz[nut-2.6.2.tar.gz]
- link:http://www.networkupstools.org/source/2.6/nut-2.6.2.tar.gz.sig[PGP/GPG signature]
- SHA-256 sum: 4ba1d297a98190db0ae86eb31136c780f35e6d3f47ae845316b44eaa9245a86e
- link:http://www.networkupstools.org/source/2.6/new-2.6.1.txt[Release notes]
- link:http://www.networkupstools.org/source/2.6/new-2.6.2.txt[Release notes]
- link:http://www.networkupstools.org/source/2.6/ChangeLog[ChangeLog]
You can also browse the link:http://www.networkupstools.org/source/2.6/[stable source directory].
@ -101,7 +101,7 @@ link:http://packages.gentoo.org/package/sys-power/nut[Gentoo Linux],
Mandriva,
link:https://admin.fedoraproject.org/pkgdb/acls/name/nut[Red Hat / Fedora],
link:http://software.opensuse.org/search[Novell Suse / openSUSE],
link:https://forum.openwrt.org/viewtopic.php?id=26269[OpenWrt]
link:https://forum.openwrt.org/viewtopic.php?id=26269[OpenWrt],
link:http://packages.ubuntu.com/nut[Ubuntu].
- BSD systems:
@ -114,5 +114,11 @@ 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.0-1.msi[Windows MSI installer 2.6.0-1]
link:http://www.networkupstools.org/source/2.6/NUT-Installer-2.6.1-1.msi[Windows MSI installer 2.6.1-1]
Java packages
-------------
- NUT Java support (client side, Beta)
link:http://www.networkupstools.org/package/java/jNut-0.1-SNAPSHOT.tar.gz[jNUT 0.1-SNAPSHOT]

View File

@ -7,8 +7,9 @@
# during 'make dist'
# - HTML files are built upon request, if AsciiDoc is available,
# - groff update will only happen if AsciiDoc is available too,
# - all this can probably (and hopefully) by improved, but I've not
# - all this can probably (and hopefully) be improved, but I've not
# found a way to do pattern replacement on the fly for target deps!
# FIXME: investigate an autogen.sh hook
# - Ref: http://www.gnu.org/software/hello/manual/automake/Man-pages.html
# Base configuration and client manpages, always installed
@ -73,6 +74,13 @@ HTML_CLIENT_MANS = \
upsrw.html \
upssched.html
SRC_TOOL_PAGES = nut-scanner.txt
MAN_TOOL_PAGES = nut-scanner.8
man8_MANS += $(MAN_TOOL_PAGES)
HTML_TOOL_MANS = nut-scanner.html
# CGI (--with-cgi) related manpages
SRC_CGI_PAGES = \
@ -124,6 +132,19 @@ SRC_DEV_PAGES = \
upscli_ssl.txt \
upscli_strerror.txt \
upscli_upserror.txt \
nutscan_scan_snmp.txt \
nutscan_scan_usb.txt \
nutscan_scan_xml_http.txt \
nutscan_scan_nut.txt \
nutscan_scan_avahi.txt \
nutscan_scan_ipmi.txt \
nutscan_display_ups_conf.txt \
nutscan_display_parsable.txt \
nutscan_cidr_to_ip.txt \
nutscan_new_device.txt \
nutscan_free_device.txt \
nutscan_add_option_to_device.txt \
nutscan_add_device_to_device.txt \
libupsclient-config.txt \
skel.txt
@ -141,7 +162,20 @@ MAN3_DEV_PAGES = \
upscli_splitname.3 \
upscli_ssl.3 \
upscli_strerror.3 \
upscli_upserror.3
upscli_upserror.3 \
nutscan_scan_snmp.3 \
nutscan_scan_usb.3 \
nutscan_scan_xml_http.3 \
nutscan_scan_nut.3 \
nutscan_scan_avahi.3 \
nutscan_scan_ipmi.3 \
nutscan_display_ups_conf.3 \
nutscan_display_parsable.3 \
nutscan_cidr_to_ip.3 \
nutscan_new_device.3 \
nutscan_free_device.3 \
nutscan_add_option_to_device.3 \
nutscan_add_device_to_device.3
MAN1_DEV_PAGES = \
libupsclient-config.1
@ -170,6 +204,19 @@ HTML_DEV_MANS = \
upscli_ssl.html \
upscli_strerror.html \
upscli_upserror.html \
nutscan_scan_snmp.html \
nutscan_scan_usb.html \
nutscan_scan_xml_http.html \
nutscan_scan_nut.html \
nutscan_scan_avahi.html \
nutscan_scan_ipmi.html \
nutscan_display_ups_conf.html \
nutscan_display_parsable.html \
nutscan_cidr_to_ip.html \
nutscan_new_device.html \
nutscan_free_device.html \
nutscan_add_option_to_device.html \
nutscan_add_device_to_device.html \
libupsclient-config.html \
skel.html
@ -185,6 +232,7 @@ else
# (--with-serial)
SRC_SERIAL_PAGES = \
apcsmart.txt \
apcsmart-old.txt \
bcmxcp.txt \
belkin.txt \
belkinunv.txt \
@ -222,6 +270,7 @@ SRC_SERIAL_PAGES = \
MAN_SERIAL_PAGES = \
apcsmart.8 \
apcsmart-old.8 \
bcmxcp.8 \
belkin.8 \
belkinunv.8 \
@ -263,6 +312,7 @@ endif
HTML_SERIAL_MANS = \
apcsmart.html \
apcsmart-old.html \
bcmxcp.html \
belkin.html \
belkinunv.html \
@ -351,12 +401,23 @@ endif
HTML_POWERMAN_MANS = powerman-pdu.html
# (--with-ipmi)
SRC_IPMIPSU_PAGES = nut-ipmipsu.txt
MAN_IPMIPSU_PAGES = nut-ipmipsu.8
if WITH_IPMI
man8_MANS += $(MAN_IPMIPSU_PAGES)
endif
HTML_IPMIPSU_MANS = nut-ipmipsu.html
# SOME_DRIVERS
endif
MAN_MANS = \
$(MAN_CONF_PAGES) \
$(MAN_CLIENT_PAGES) \
$(MAN_TOOL_PAGES) \
$(MAN5_CGI_PAGES) \
$(MAN8_CGI_PAGES) \
$(MAN1_DEV_PAGES) \
@ -365,13 +426,15 @@ MAN_MANS = \
$(MAN_SNMP_PAGES) \
$(MAN_USB_LIBUSB_PAGES) \
$(MAN_NETXML_PAGES) \
$(MAN_POWERMAN_PAGES)
$(MAN_POWERMAN_PAGES) \
$(MAN_IPMIPSU_PAGES)
# distribute everything, even those not installed by default
# Note that 'dist' target requires AsciiDoc!
EXTRA_DIST = \
$(SRC_CONF_PAGES) \
$(SRC_CLIENT_PAGES) \
$(SRC_TOOL_PAGES) \
$(SRC_CGI_PAGES) \
$(SRC_DEV_PAGES) \
$(SRC_SERIAL_PAGES) \
@ -379,19 +442,22 @@ EXTRA_DIST = \
$(SRC_USB_LIBUSB_PAGES) \
$(SRC_NETXML_PAGES) \
$(SRC_POWERMAN_PAGES) \
$(SRC_IPMIPSU_PAGES) \
$(MAN_MANS) \
asciidoc.conf
HTML_MANS = \
$(HTML_CONF_MANS) \
$(HTML_CLIENT_MANS) \
$(HTML_TOOL_MANS) \
$(HTML_CGI_MANS) \
$(HTML_DEV_MANS) \
$(HTML_SERIAL_MANS) \
$(HTML_SNMP_MANS) \
$(HTML_USB_LIBUSB_MANS) \
$(HTML_NETXML_MANS) \
$(HTML_POWERMAN_MANS)
$(HTML_POWERMAN_MANS) \
$(HTML_IPMIPSU_MANS)
all:

View File

@ -24,8 +24,9 @@
# during 'make dist'
# - HTML files are built upon request, if AsciiDoc is available,
# - groff update will only happen if AsciiDoc is available too,
# - all this can probably (and hopefully) by improved, but I've not
# - all this can probably (and hopefully) be improved, but I've not
# found a way to do pattern replacement on the fly for target deps!
# FIXME: investigate an autogen.sh hook
# - Ref: http://www.gnu.org/software/hello/manual/automake/Man-pages.html
VPATH = @srcdir@
pkgdatadir = $(datadir)/@PACKAGE@
@ -59,6 +60,7 @@ target_triplet = @target@
@SOME_DRIVERS_FALSE@@WITH_USB_TRUE@am__append_6 = $(MAN_USB_LIBUSB_PAGES)
@SOME_DRIVERS_FALSE@@WITH_NEONXML_TRUE@am__append_7 = $(MAN_NETXML_PAGES)
@SOME_DRIVERS_FALSE@@WITH_LIBPOWERMAN_TRUE@am__append_8 = $(MAN_POWERMAN_PAGES)
@SOME_DRIVERS_FALSE@@WITH_IPMI_TRUE@am__append_9 = $(MAN_IPMIPSU_PAGES)
subdir = docs/man
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@ -68,6 +70,8 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/ax_compare_version.m4 \
$(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/m4/nut_arg_with.m4 \
$(top_srcdir)/m4/nut_check_asciidoc.m4 \
$(top_srcdir)/m4/nut_check_libavahi.m4 \
$(top_srcdir)/m4/nut_check_libfreeipmi.m4 \
$(top_srcdir)/m4/nut_check_libgd.m4 \
$(top_srcdir)/m4/nut_check_libhal.m4 \
$(top_srcdir)/m4/nut_check_libneon.m4 \
@ -163,10 +167,14 @@ INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LD = @LD@
LDFLAGS = @LDFLAGS@
LIBAVAHI_CFLAGS = @LIBAVAHI_CFLAGS@
LIBAVAHI_LIBS = @LIBAVAHI_LIBS@
LIBGD_CFLAGS = @LIBGD_CFLAGS@
LIBGD_LDFLAGS = @LIBGD_LDFLAGS@
LIBHAL_CFLAGS = @LIBHAL_CFLAGS@
LIBHAL_LIBS = @LIBHAL_LIBS@
LIBIPMI_CFLAGS = @LIBIPMI_CFLAGS@
LIBIPMI_LIBS = @LIBIPMI_LIBS@
LIBNEON_CFLAGS = @LIBNEON_CFLAGS@
LIBNEON_LIBS = @LIBNEON_LIBS@
LIBNETSNMP_CFLAGS = @LIBNETSNMP_CFLAGS@
@ -204,6 +212,10 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PKG_CONFIG = @PKG_CONFIG@
PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
PORT = @PORT@
RANLIB = @RANLIB@
RUN_AS_GROUP = @RUN_AS_GROUP@
RUN_AS_USER = @RUN_AS_USER@
@ -268,6 +280,8 @@ sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
systemdsystemshutdowndir = @systemdsystemshutdowndir@
systemdsystemunitdir = @systemdsystemunitdir@
target = @target@
target_alias = @target_alias@
target_cpu = @target_cpu@
@ -326,9 +340,10 @@ MAN_CLIENT_PAGES = \
upsrw.8 \
upssched.8
man8_MANS = $(MAN_CLIENT_PAGES) $(am__append_2) $(am__append_3) \
$(am__append_4) $(am__append_5) $(am__append_6) \
$(am__append_7) $(am__append_8)
man8_MANS = $(MAN_CLIENT_PAGES) $(MAN_TOOL_PAGES) $(am__append_2) \
$(am__append_3) $(am__append_4) $(am__append_5) \
$(am__append_6) $(am__append_7) $(am__append_8) \
$(am__append_9)
HTML_CLIENT_MANS = \
nutupsdrv.html \
upsc.html \
@ -340,6 +355,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
# CGI (--with-cgi) related manpages
SRC_CGI_PAGES = \
@ -385,6 +403,19 @@ SRC_DEV_PAGES = \
upscli_ssl.txt \
upscli_strerror.txt \
upscli_upserror.txt \
nutscan_scan_snmp.txt \
nutscan_scan_usb.txt \
nutscan_scan_xml_http.txt \
nutscan_scan_nut.txt \
nutscan_scan_avahi.txt \
nutscan_scan_ipmi.txt \
nutscan_display_ups_conf.txt \
nutscan_display_parsable.txt \
nutscan_cidr_to_ip.txt \
nutscan_new_device.txt \
nutscan_free_device.txt \
nutscan_add_option_to_device.txt \
nutscan_add_device_to_device.txt \
libupsclient-config.txt \
skel.txt
@ -402,7 +433,20 @@ MAN3_DEV_PAGES = \
upscli_splitname.3 \
upscli_ssl.3 \
upscli_strerror.3 \
upscli_upserror.3
upscli_upserror.3 \
nutscan_scan_snmp.3 \
nutscan_scan_usb.3 \
nutscan_scan_xml_http.3 \
nutscan_scan_nut.3 \
nutscan_scan_avahi.3 \
nutscan_scan_ipmi.3 \
nutscan_display_ups_conf.3 \
nutscan_display_parsable.3 \
nutscan_cidr_to_ip.3 \
nutscan_new_device.3 \
nutscan_free_device.3 \
nutscan_add_option_to_device.3 \
nutscan_add_device_to_device.3
MAN1_DEV_PAGES = \
libupsclient-config.1
@ -425,6 +469,19 @@ HTML_DEV_MANS = \
upscli_ssl.html \
upscli_strerror.html \
upscli_upserror.html \
nutscan_scan_snmp.html \
nutscan_scan_usb.html \
nutscan_scan_xml_http.html \
nutscan_scan_nut.html \
nutscan_scan_avahi.html \
nutscan_scan_ipmi.html \
nutscan_display_ups_conf.html \
nutscan_display_parsable.html \
nutscan_cidr_to_ip.html \
nutscan_new_device.html \
nutscan_free_device.html \
nutscan_add_option_to_device.html \
nutscan_add_device_to_device.html \
libupsclient-config.html \
skel.html
@ -432,6 +489,7 @@ HTML_DEV_MANS = \
# (--with-serial)
@SOME_DRIVERS_FALSE@SRC_SERIAL_PAGES = \
@SOME_DRIVERS_FALSE@ apcsmart.txt \
@SOME_DRIVERS_FALSE@ apcsmart-old.txt \
@SOME_DRIVERS_FALSE@ bcmxcp.txt \
@SOME_DRIVERS_FALSE@ belkin.txt \
@SOME_DRIVERS_FALSE@ belkinunv.txt \
@ -469,6 +527,7 @@ HTML_DEV_MANS = \
@SOME_DRIVERS_FALSE@MAN_SERIAL_PAGES = \
@SOME_DRIVERS_FALSE@ apcsmart.8 \
@SOME_DRIVERS_FALSE@ apcsmart-old.8 \
@SOME_DRIVERS_FALSE@ bcmxcp.8 \
@SOME_DRIVERS_FALSE@ belkin.8 \
@SOME_DRIVERS_FALSE@ belkinunv.8 \
@ -506,6 +565,7 @@ HTML_DEV_MANS = \
@SOME_DRIVERS_FALSE@HTML_SERIAL_MANS = \
@SOME_DRIVERS_FALSE@ apcsmart.html \
@SOME_DRIVERS_FALSE@ apcsmart-old.html \
@SOME_DRIVERS_FALSE@ bcmxcp.html \
@SOME_DRIVERS_FALSE@ belkin.html \
@SOME_DRIVERS_FALSE@ belkinunv.html \
@ -577,10 +637,16 @@ HTML_DEV_MANS = \
@SOME_DRIVERS_FALSE@MAN_POWERMAN_PAGES = powerman-pdu.8
@SOME_DRIVERS_FALSE@HTML_POWERMAN_MANS = powerman-pdu.html
# (--with-ipmi)
@SOME_DRIVERS_FALSE@SRC_IPMIPSU_PAGES = nut-ipmipsu.txt
@SOME_DRIVERS_FALSE@MAN_IPMIPSU_PAGES = nut-ipmipsu.8
@SOME_DRIVERS_FALSE@HTML_IPMIPSU_MANS = nut-ipmipsu.html
# SOME_DRIVERS
MAN_MANS = \
$(MAN_CONF_PAGES) \
$(MAN_CLIENT_PAGES) \
$(MAN_TOOL_PAGES) \
$(MAN5_CGI_PAGES) \
$(MAN8_CGI_PAGES) \
$(MAN1_DEV_PAGES) \
@ -589,7 +655,8 @@ MAN_MANS = \
$(MAN_SNMP_PAGES) \
$(MAN_USB_LIBUSB_PAGES) \
$(MAN_NETXML_PAGES) \
$(MAN_POWERMAN_PAGES)
$(MAN_POWERMAN_PAGES) \
$(MAN_IPMIPSU_PAGES)
# distribute everything, even those not installed by default
@ -597,6 +664,7 @@ MAN_MANS = \
EXTRA_DIST = \
$(SRC_CONF_PAGES) \
$(SRC_CLIENT_PAGES) \
$(SRC_TOOL_PAGES) \
$(SRC_CGI_PAGES) \
$(SRC_DEV_PAGES) \
$(SRC_SERIAL_PAGES) \
@ -604,19 +672,22 @@ EXTRA_DIST = \
$(SRC_USB_LIBUSB_PAGES) \
$(SRC_NETXML_PAGES) \
$(SRC_POWERMAN_PAGES) \
$(SRC_IPMIPSU_PAGES) \
$(MAN_MANS) \
asciidoc.conf
HTML_MANS = \
$(HTML_CONF_MANS) \
$(HTML_CLIENT_MANS) \
$(HTML_TOOL_MANS) \
$(HTML_CGI_MANS) \
$(HTML_DEV_MANS) \
$(HTML_SERIAL_MANS) \
$(HTML_SNMP_MANS) \
$(HTML_USB_LIBUSB_MANS) \
$(HTML_NETXML_MANS) \
$(HTML_POWERMAN_MANS)
$(HTML_POWERMAN_MANS) \
$(HTML_IPMIPSU_MANS)
CLEANFILES = *.xml *.html
SUFFIXES = .txt .html .1 .3 .5 .8

124
docs/man/apcsmart-old.8 Normal file
View File

@ -0,0 +1,124 @@
'\" t
.\" Title: apcsmart-old
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "APCSMART\-OLD" "8" "09/15/2011" "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"
apcsmart-old \- Driver for American Power Conversion Smart Protocol UPS equipment
.SH "SYNOPSIS"
.sp
\fBapcsmart\-old\fR \-h
.sp
\fBapcsmart\-old\fR \-a \fIUPS_NAME\fR [\fIOPTIONS\fR]
.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
This man page only documents the hardware\-specific features of the apcsmart\-old driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp .5v
.RE
.SH "SUPPORTED HARDWARE"
.sp
apcsmart\-old should recognize all recent APC models that use a serial protocol at 2400 bps\&. This is primarily the Smart\-UPS, Matrix\-UPS and Back\-UPS Pro lines\&.
.sp
The driver attempts to support every bell and whistle of the APC reporting interface, whether or not this is strictly sensible\&.
.sp
Some older hardware may only report a handful of variables\&. This is usually not a bug\(emthey just don\(cqt support anything else\&.
.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 cable= definition described below\&.
.sp
If your 940\-0024C cable is broken or missing, use this diagram to build a clone:
.sp
http://www\&.networkupstools\&.org/cables/940\-0024C\&.jpg
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5):
.PP
\fBcable=940\-0095B\fR
.RS 4
Configure the serial port for the APC 940\-0095B dual\-mode cable\&.
.RE
.PP
\fBsdtype=\fR\fInum\fR
.RS 4
Use shutdown type
\fInum\fR, according to this table:
.PP
0
.RS 4
soft shutdown or powerdown, depending on battery status
.RE
.PP
1
.RS 4
soft shutdown followed by powerdown
.RE
.PP
2
.RS 4
instant power off
.RE
.PP
3
.RS 4
power off with grace period
.RE
.PP
4
.RS 4
"force OB" hack method for CS 350
.RE
.RE
.sp
Modes 0 and 1 will power up the load when power returns\&. Modes 2 and 3 will keep the load turned off when the power returns\&.
.sp
Mode 4 exploits an oddity in the CS 350 models since they only seem to support the S command, but then only when running on battery\&. As a result, the driver will force the UPS to go on battery if necessary before sending the shutdown command\&. This ensures that the load gets reset\&.
.SH "BUGS"
.sp
Some older APC UPS models return bogus data in the status register during a front panel test\&. This is usually detected and discarded, but some other unexpected values have occasionally slipped through\&.
.sp
APC UPS models with both USB and serial ports require a power cycle when switching from USB communication to serial, and perhaps vice versa\&.
.SH "AUTHOR"
.sp
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&. This driver was called newapc for a time and was renamed in the 1\&.5 series\&. In 2\&.6\&.2 the driver was renamed to apcsmart\-old, being superseded by updated version with new features\&.
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

103
docs/man/apcsmart-old.txt Normal file
View File

@ -0,0 +1,103 @@
APCSMART-OLD(8)
===============
NAME
----
apcsmart-old - Driver for American Power Conversion Smart Protocol UPS equipment
SYNOPSIS
--------
*apcsmart-old* -h
*apcsmart-old* -a 'UPS_NAME' ['OPTIONS']
NOTE: This man page only documents the hardware-specific features of the
apcsmart-old driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
apcsmart-old should recognize all recent APC models that use a serial
protocol at 2400 bps. This is primarily the Smart-UPS, Matrix-UPS and
Back-UPS Pro lines.
The driver attempts to support every bell and whistle of the APC
reporting interface, whether or not this is strictly sensible.
Some older hardware may only report a handful of variables. This is
usually not a bug--they just don't support anything else.
CABLING
-------
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
a clone:
http://www.networkupstools.org/cables/940-0024C.jpg
EXTRA ARGUMENTS
---------------
This driver supports the following optional settings in the
linkman:ups.conf[5]:
*cable=940-0095B*::
Configure the serial port for the APC 940-0095B dual-mode cable.
*sdtype=*'num'::
Use shutdown type 'num', according to this table:
0;; soft shutdown or powerdown, depending on battery status
1;; soft shutdown followed by powerdown
2;; instant power off
3;; power off with grace period
4;; "force OB" hack method for CS 350
Modes 0 and 1 will power up the load when power returns. Modes 2 and 3
will keep the load turned off when the power returns.
Mode 4 exploits an oddity in the CS 350 models since they only seem to
support the S command, but then only when running on battery. As a
result, the driver will force the UPS to go on battery if necessary
before sending the shutdown command. This ensures that the load gets
reset.
BUGS
----
Some older APC UPS models return bogus data in the status register during
a front panel test. This is usually detected and discarded, but some
other unexpected values have occasionally slipped through.
APC UPS models with both USB and serial ports require a power cycle when
switching from USB communication to serial, and perhaps vice versa.
AUTHOR
------
Nigel Metheringham <Nigel.Metheringham@Intechnology.co.uk> (drawing
heavily on the original apcsmart driver by Russell Kroll). This driver
was called newapc for a time and was renamed in the 1.5 series. In 2.6.2
the driver was renamed to apcsmart-old, being superseded by updated version
with new features.
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "APCSMART" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "APCSMART" "8" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -33,7 +33,7 @@ apcsmart \- Driver for American Power Conversion Smart Protocol UPS equipment
.sp
\fBapcsmart\fR \-h
.sp
\fBapcsmart\fR \-a \fIUPS_NAME\fR [\fIOPTIONS\fR]
\fBapcsmart\fR \-a \*(AqUPS_NAME\*(Aq [\-x option=value \&...]
.if n \{\
.sp
.\}
@ -52,61 +52,446 @@ This man page only documents the hardware\-specific features of the apcsmart dri
.RE
.SH "SUPPORTED HARDWARE"
.sp
apcsmart should recognize all recent APC models that use a serial protocol at 2400 bps\&. This is primarily the Smart\-UPS, Matrix\-UPS and Back\-UPS Pro lines\&.
The apcsmart driver should recognize (or at the very least work with) majority of Smart\-UPS models \- which includes Smart\-UPS, Matrix\-UPS and Back\-UPS lineups, among few other ones\&.
.sp
The driver attempts to support every bell and whistle of the APC reporting interface, whether or not this is strictly sensible\&.
Currently we can roughly divide APC hardware into 3 groups (note that the division isn\*(Aqt strict by any means, and the borders between those are pretty fuzzy):
.PP
[very] "old" models
.RS 4
These models usually have old APC logo, white color and
\fIno\fR
programmable eeprom; You won\*(Aqt find them listed anywhere on APC\(cqs site either\&. The support for those will be usually based on driver\*(Aqs compatibility tables, or if the model (firmware) is not listed in those \- the driver will try to follow the very basic subset of features, while still trying to remain useful\&. Despite "smart" tagname, they often tend to behave in pretty dumb way (see the section below about shutdown behaviour)\&.
.PP
\fBExample models:\fR
.sp
Some older hardware may only report a handful of variables\&. This is usually not a bug\(emthey just don\(cqt support anything else\&.
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Smart\-UPS 2000I
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
Smart\-UPS 900I
.RE
.RE
.PP
"new" models
.RS 4
These models usually come from late 1990s / pre\-2009 times\&. They are often referred as "3rd\&. gen"\&. For the most part, they have programmable eeprom, report supported commands and capabilites, and should work just fine with the apcsmart driver\&.
.RE
.PP
"microlink" models
.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
\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\&.
.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 cable= definition described below\&.
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:
.sp
http://www\&.networkupstools\&.org/cables/940\-0024C\&.jpg
.SH "EXTRA ARGUMENTS"
.sp
This driver supports the following optional settings in the \fBups.conf\fR(5):
You can specify alternate cable in \fBups.conf\fR(5):
.sp
\fBcable\fR=940\-0095B
.sp
Alternatively, you can also provide it on the command line using:
.sp
\-x \fBcable\fR=940\-0095B
.SH "EXPLANATION OF SHUTDOWN METHODS SUPPORTED BY APC UPSES"
.sp
APC hardware supports a lot of shutdown methods, that themselves can differ in behaviour quite a bit, depending on the model\&.
.PP
\fBcable=940\-0095B\fR
\fBS\fR (soft hibernate)
.RS 4
Configure the serial port for the APC 940\-0095B dual\-mode cable\&.
This is most basic command present in probably all APC models\&. It will hibernate the UPS, and subsequently wake it up when the mains supply returns\&.
\fBThe command doesn\*(Aqt work if UPS is running on mains\&.\fR
.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\&.
.RE
.PP
\fBsdtype=\fR\fInum\fR
"new" models
.RS 4
Use shutdown type
\fInum\fR, according to this table:
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
\fBCS\fR (aka "force OB hack")
.RS 4
This is a trick to make UPS power down even if it\*(Aqs running on mains\&. Immediately before issuing
\fBS\fR, "simulate power failure" is issued\&. The remaining behaviour is as in
\fBS\fR
case\&.
.sp
The name came from APC CS models, where such trick was used to power down UPSes in consistent fashion using only
\fBS\fR\&. It\*(Aqs better to use
\fB@nnn\fR
command if your UPS supports it (and is not too old, see below)\&.
.RE
.PP
\fB@nnn\fR (hard hibernate)
.RS 4
This is basic command used to hibernate UPS regardless if it\*(Aqs running on batteries or on mains\&. The option takes 3 digits argument which can be used to specify additional wakeup delay (in 6 minute units)\&.
.PP
"old" models
.RS 4
The behaviour is \- unfortunately \- similary primitive to
\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
\fBS\fR, the serial connection is kept alive)\&.
.RE
.PP
"new" models
.RS 4
All the usual variables defined in eeprom are respected (see
\fBS\fR)\&. Additionally, if nnn > 0, the nnn*6 minutes are added to eeprom defined delay\&. UPS will not power up if it\*(Aqs running on batteries, contrary to what "old" models used to do \- the combined delay is counted from the moment of power return\&.
.RE
.sp
Supposedly there exist models that take 2 digits instead of 3\&. Just in case, NUT also supports such variation\&. You have to provide exactly 2 digits to trigger it (\fBawd\fR
option, or argument to one of the supported instant commands)\&.
.RE
.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\&.
.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\&.
.RE
.SH "SHUTDOWN CONTROL BY NUT"
.sp
There\*(Aqre 3 options used to control shutdown behaviour\&.
.PP
\fBsdtype\fR=[0\-5]
.RS 4
This option takes a single digit (0\-5) as an argument\&. See below for details\&.
.RE
.PP
\fBadvorder\fR=no|[0\-4]+
.RS 4
This option takes string of digits as an argument\&. Methods listed are tried in turn until one of them succeedes\&. Note that the meaning of digits is different from
\fBsdtype\fR\&. See below for details\&.
.RE
.PP
\fBawd\fR=[0\-9]{1,3}
.RS 4
This option lets you specify additional wakeup delay used by
\fB@\fR\&. If you provide exactly 2 digits, the driver will try 2 digits variation (see previous section for more info)\&. Otherwise standard 3 digits variation is used\&.
\fBNote: the time unit is 6 minutes !\fR
.RE
.sp
Keep in mind that \fBsdtype\fR and \fBadvorder\fR are mutually exclusive\&. If \fBadvorder\fR is provided, \fBsdtype\fR is ignored\&. If \fBadvorder\fR is set to \*(Aqno\*(Aq, \fBsdtype\fR is used instead\&.
.sp
If nothing is provided, \fBNUT\fR will assume \fBsdtype\fR=0 \- which is generally fine for anything not too ancient or not too quirky\&.
.SS "SDTYPE"
.sp
The values permitted are from 0 to 5\&. Only one can be specified\&. Anything else will cause apcsmart to exit\&.
.PP
0
.RS 4
soft shutdown or powerdown, depending on battery status
issue soft hibernate (\fBS\fR) if the ups is running on batteries, otherwise issue hard hibernate (\fB@\fR)
.RE
.PP
1
.RS 4
soft shutdown followed by powerdown
issue soft hibernate (\fBS\fR) (if on batteries), and if it fails (or on mains) \- try hard hibernate (\fB@\fR)
.RE
.PP
2
.RS 4
instant power off
issue instant poweroff (\fBZ\fR)
.RE
.PP
3
.RS 4
power off with grace period
issue delayed poweroff (\fBK\fR)
.RE
.PP
4
.RS 4
"force OB" hack method for CS 350
issue "force OB hack" (\fBCS\fR)
.RE
.PP
5
.RS 4
issue hard hibernate (\fB@\fR)
.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
Hard hibernate\*(Aqs additional wakeup delay can be provided by \fBawd\fR\&.
.sp .5v
.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\&.
.sp
If \fBadvorder\fR is undefined or set to \*(Aqno\*(Aq, \fBsdtype\fR is used instead\&.
.sp
The mapping is as follows:
.TS
tab(:);
lt lt
lt lt
lt lt
lt lt
lt lt.
T{
.sp
0
T}:T{
.sp
soft hibernate (\fBS\fR)
T}
T{
.sp
1
T}:T{
.sp
hard hibernate (\fB@\fR)
T}
T{
.sp
2
T}:T{
.sp
delayed poweroff (\fBK\fR)
T}
T{
.sp
3
T}:T{
.sp
instant poweroff (\fBZ\fR)
T}
T{
.sp
4
T}:T{
.sp
"force OB hack" (\fBCS\fR)
T}
.TE
.sp 1
.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
Hard hibernate\*(Aqs additional wakeup delay can be provided by \fBawd\fR\&.
.sp .5v
.RE
.SH "IGNORING LB STATE"
.sp
APC units \- even if they report LB mode \- will not go into shutdown automatically\&. This gives us even more control with reference to "when to actually shutdown psu"\&. Since version 2\&.6\&.2, NUT supports \fBignorelb\fR option in driver\*(Aqs section of \fBups.conf\fR(5)\&. When such option is in effect, the core driver will ignore LB state as reported by specific driver and start shutdown basing the decision \fIonly\fR on two conditions:
.sp
battery\&.charge < battery\&.charge\&.low
.sp
\fBOR\fR
.sp
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\&.)\&.
.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)\&.
.sp
Simple example:
.sp
.if n \{\
.RS 4
.\}
.nf
[apc]
ignorelb
override\&.battery\&.charge\&.low = 15
override\&.battery\&.runtime\&.low = \-1
.fi
.if n \{\
.RE
.\}
.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\&.
.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"
.sp
The apcsmart driver exposes following instant commands:
.PP
shutdown\&.return
.RS 4
executes soft hibernate
.RE
.PP
shutdown\&.return cs
.RS 4
executes "force OB hack"
.RE
.PP
shutdown\&.return at:<nbr>
.RS 4
executes "hard hibernate" with <nbr>*6 minutes additional wakeup delay (<nbr> format is the same as of
\fBawd\fR
option)
.RE
.PP
shutdown\&.stayoff
.RS 4
executes "delayed poweroff"
.RE
.PP
load\&.off
.RS 4
executes "instant poweroff"
.RE
.sp
Modes 0 and 1 will power up the load when power returns\&. Modes 2 and 3 will keep the load turned off when the power returns\&.
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
Mode 4 exploits an oddity in the CS 350 models since they only seem to support the S command, but then only when running on battery\&. As a result, the driver will force the UPS to go on battery if necessary before sending the shutdown command\&. This ensures that the load gets reset\&.
Other supported commands:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
load\&.on
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
test\&.panel\&.start
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
test\&.failure\&.start
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
test\&.battery\&.start
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
test\&.battery\&.stop
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
bypass\&.start
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
bypass\&.stop
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
calibrate\&.start
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
calibrate\&.stop
.RE
.SH "BUGS"
.sp
Some older APC UPS models return bogus data in the status register during a front panel test\&. This is usually detected and discarded, but some other unexpected values have occasionally slipped through\&.
@ -114,11 +499,10 @@ Some older APC UPS models return bogus data in the status register during a fron
APC UPS models with both USB and serial ports require a power cycle when switching from USB communication to serial, and perhaps vice versa\&.
.SH "AUTHOR"
.sp
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&. This driver was called newapc for a time and was renamed in the 1\&.5 series\&.
Nigel Metheringham <Nigel\&.Metheringham@Intechnology\&.co\&.uk> (drawing heavily on the original apcsmart driver by Russell Kroll)\&. This driver was called newapc for a time and was renamed in the 1\&.5 series\&. In 2\&.6\&.2 it was renamed to apcsmart\-old, being superseded by updated version with new features, which is maintained by Michal Soltys <soltys@ziu\&.info>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
\fBnutupsdrv\fR(8), \fBups.conf\fR(5)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

View File

@ -11,30 +11,63 @@ SYNOPSIS
*apcsmart* -h
*apcsmart* -a 'UPS_NAME' ['OPTIONS']
*apcsmart* -a \'UPS_NAME' [-x option=value ...]
NOTE: This man page only documents the hardware-specific features of the
apcsmart driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
apcsmart should recognize all recent APC models that use a serial
protocol at 2400 bps. This is primarily the Smart-UPS, Matrix-UPS and
Back-UPS Pro lines.
The apcsmart driver should recognize (or at the very least work with) majority
of Smart-UPS models - which includes Smart-UPS, Matrix-UPS and Back-UPS lineups,
among few other ones.
The driver attempts to support every bell and whistle of the APC
reporting interface, whether or not this is strictly sensible.
Currently we can roughly divide APC hardware into 3 groups (note that the
division isn\'t strict by any means, and the borders between those are pretty fuzzy):
Some older hardware may only report a handful of variables. This is
usually not a bug--they just don't support anything else.
[very] "old" models::
These models usually have old APC logo, white color and _no_ programmable
eeprom; You won\'t find them listed anywhere on APC's site either. The support
for those will be usually based on driver\'s compatibility tables, or if the
model (firmware) is not listed in those - the driver will try to follow the very
basic subset of features, while still trying to remain useful. Despite
"smart" tagname, they often tend to behave in pretty dumb way (see the
section below about shutdown behaviour).
+
--
.Example models:
* Smart-UPS 2000I
* Smart-UPS 900I
--
"new" models::
These models usually come from late 1990s / pre-2009 times. They are often
referred as "3rd. gen". For the most part, they have programmable eeprom,
report supported commands and capabilites, and should work just fine with the
apcsmart driver.
"microlink" models::
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,
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,
you will need either apcsmart or usbhid-ups driver.
CABLING
-------
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=`
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
@ -42,36 +75,240 @@ a clone:
http://www.networkupstools.org/cables/940-0024C.jpg
EXTRA ARGUMENTS
---------------
You can specify alternate cable in linkman:ups.conf[5]:
This driver supports the following optional settings in the
linkman:ups.conf[5]:
*cable*=940-0095B
*cable=940-0095B*::
Configure the serial port for the APC 940-0095B dual-mode cable.
Alternatively, you can also provide it on the command line using:
*sdtype=*'num'::
Use shutdown type 'num', according to this table:
-x *cable*=940-0095B
0;; soft shutdown or powerdown, depending on battery status
EXPLANATION OF SHUTDOWN METHODS SUPPORTED BY APC UPSES
------------------------------------------------------
1;; soft shutdown followed by powerdown
APC hardware supports a lot of shutdown methods, that themselves can differ in
behaviour quite a bit, depending on the model.
2;; instant power off
*S* (soft hibernate)::
This is most basic command present in probably all APC models. It will
hibernate the UPS, and subsequently wake it up when the mains supply
returns. *The command doesn\'t work if UPS is running on mains.*
3;; power off with grace period
"old" models:::
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.
4;; "force OB" hack method for CS 350
"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
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.
Modes 0 and 1 will power up the load when power returns. Modes 2 and 3
will keep the load turned off when the power returns.
*CS* (aka "force OB hack")::
This is a trick to make UPS power down even if it\'s running on mains.
Immediately before issuing *S*, "simulate power failure" is issued. The
remaining behaviour is as in *S* case.
+
The name came from APC CS models, where such trick was used to power down
UPSes in consistent fashion using only *S*. It\'s better to use *@nnn*
command if your UPS supports it (and is not too old, see below).
Mode 4 exploits an oddity in the CS 350 models since they only seem to
support the S command, but then only when running on battery. As a
result, the driver will force the UPS to go on battery if necessary
before sending the shutdown command. This ensures that the load gets
reset.
*@nnn* (hard hibernate)::
This is basic command used to hibernate UPS regardless if it\'s
running on batteries or on mains. The option takes 3 digits argument which
can be used to specify additional wakeup delay (in 6 minute units).
+
--
"old" models:::
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 is kept alive).
"new" models:::
All the usual variables defined in eeprom are respected (see *S*).
Additionally, if nnn > 0, the $$nnn*6$$ minutes are added to eeprom
defined delay. UPS will not power up if it\'s running on batteries,
contrary to what "old" models used to do - the combined delay is counted
from the moment of power return.
--
+
Supposedly there exist models that take 2 digits instead of 3. Just in case,
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
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.
SHUTDOWN CONTROL BY NUT
-----------------------
There\'re 3 options used to control shutdown behaviour.
*sdtype*=[0-5]::
This option takes a single digit (0-5) as an argument. See below for
details.
*advorder*=no|[0-4]+::
This option takes string of digits as an argument. Methods listed are tried
in turn until one of them succeedes. Note that the meaning of digits is
different from *sdtype*. See below for details.
*awd*=[0-9]{1,3}::
This option lets you specify additional wakeup delay used by *@*. If you
provide exactly 2 digits, the driver will try 2 digits variation (see
previous section for more info). Otherwise standard 3 digits variation is
used. *Note: the time unit is 6 minutes !*
Keep in mind that *sdtype* and *advorder* are mutually exclusive. If *advorder*
is provided, *sdtype* is ignored. If *advorder* is set to \'no', *sdtype* is
used instead.
If nothing is provided, *NUT* will assume *sdtype*=0 - which is generally fine
for anything not too ancient or not too quirky.
SDTYPE
~~~~~~
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
hard hibernate (*@*)
1::
issue soft hibernate (*S*) (if on batteries), and if it fails (or on mains) -
try hard hibernate (*@*)
2::
issue instant poweroff (*Z*)
3::
issue delayed poweroff (*K*)
4::
issue "force OB hack" (*CS*)
5::
issue hard hibernate (*@*)
NOTE: Hard hibernate\'s additional wakeup delay can be provided by *awd*.
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.
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.
The mapping is as follows:
[horizontal]
0:: soft hibernate (*S*)
1:: hard hibernate (*@*)
2:: delayed poweroff (*K*)
3:: instant poweroff (*Z*)
4:: "force OB hack" (*CS*)
NOTE: Hard hibernate\'s additional wakeup delay can be provided by *awd*.
IGNORING LB STATE
-----------------
APC units - even if they report LB mode - will not go into shutdown
automatically. This gives us even more control with reference to "when to
actually shutdown psu". Since version 2.6.2, NUT supports *ignorelb* option in
driver\'s section of linkman:ups.conf[5]. When such option is in effect,
the core driver will ignore LB state as reported by specific driver and
start shutdown basing the decision _only_ on two conditions:
battery.charge < battery.charge.low
*OR*
battery.runtime < battery.runtime.low
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).
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 -
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
*ignorelb* option (this was actually the main motivation behind introduction of
such feature).
Simple example:
[source,conf]
----
[apc]
ignorelb
override.battery.charge.low = 15
override.battery.runtime.low = -1
----
This would cause apcsmart to go into shutdown _only_ if detected battery charge
< 15%. Runtime condition is always false in this example.
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
of you.
Furthermore, this allows to specify conditions similary to how it's done in
apcupsd daemon, so it should be welcome by people used to that software.
SUPPORTED INSTANT COMMANDS
--------------------------
The apcsmart driver exposes following instant commands:
shutdown.return::
executes soft hibernate
shutdown.return cs::
executes "force OB hack"
shutdown.return at:<nbr>::
executes "hard hibernate" with $$<nbr>*6$$ minutes additional wakeup delay (<nbr> format
is the same as of *awd* option)
shutdown.stayoff::
executes "delayed poweroff"
load.off::
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
you\'re testing.
Other supported commands:
- load.on
- test.panel.start
- test.failure.start
- test.battery.start
- test.battery.stop
- bypass.start
- bypass.stop
- calibrate.start
- calibrate.stop
BUGS
----
@ -85,17 +322,20 @@ switching from USB communication to serial, and perhaps vice versa.
AUTHOR
------
Nigel Metheringham <Nigel.Metheringham@Intechnology.co.uk> (drawing
heavily on the original apcsmart driver by Russell Kroll). This driver
was called newapc for a time and was renamed in the 1.5 series.
was called newapc for a time and was renamed in the 1.5 series. In 2.6.2
it was renamed to apcsmart-old, being superseded by updated version with
new features, which is maintained by Michal Soltys <soltys@ziu.info>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
linkman:nutupsdrv[8], linkman:ups.conf[5]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
// vim: tw=80 ai si ts=8 sts=4 sw=4 et :

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BCMXCP" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BCMXCP" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BCMXCP_USB" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BCMXCP_USB" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BELKIN" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BELKIN" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BELKINUNV" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BELKINUNV" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTFCOM" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTFCOM" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTFORTRESS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTFORTRESS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTUFERRUPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTUFERRUPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BESTUPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BESTUPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "BLAZER" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "BLAZER" "8" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@ -91,6 +91,16 @@ Some UPSes will lock up if you attempt to read rating information from them\&. S
Some UPSes will lock up if you attempt to read vendor information from them\&. Setting this flag will make the driver skip this step\&.
.RE
.PP
\fBprotocol =\fR \fIstring\fR
.RS 4
Skip autodetection of the protocol to use and only use the one specified\&. Supported values
\fImegatec\fR,
\fImegatec/old\fR,
\fImustek\fR
and
\fIzinto\fR\&.
.RE
.PP
\fBruntimecal =\fR \fIvalue,value,value,value\fR
.RS 4
Parameter used in the (optional) runtime estimation\&. This takes two runtimes 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

View File

@ -78,6 +78,11 @@ Setting this flag will make the driver skip this step.
Some UPSes will lock up if you attempt to read vendor information from them.
Setting this flag will make the driver skip this step.
*protocol =* 'string'::
Skip autodetection of the protocol to use and only use the one specified.
Supported values 'megatec', 'megatec/old', 'mustek' and 'zinto'.
*runtimecal =* 'value,value,value,value'::
Parameter used in the (optional) runtime estimation. This takes two runtimes

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "CLONE" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "CLONE" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "DUMMY\-UPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "DUMMY\-UPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ETAPRO" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "ETAPRO" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "EVERUPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "EVERUPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "GAMATRONIC" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "GAMATRONIC" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "GENERICUPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "GENERICUPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "HOSTS\&.CONF" "5" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "HOSTS\&.CONF" "5" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ISBMEX" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "ISBMEX" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "IVTSCD" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "IVTSCD" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIBUPSCLIENT\-CONFIG" "1" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "LIBUPSCLIENT\-CONFIG" "1" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIEBERT\-ESP2" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "LIEBERT\-ESP2" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "LIEBERT" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "LIEBERT" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MASTERGUARD" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "MASTERGUARD" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "METASYS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "METASYS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MGE\-SHUT" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "MGE\-SHUT" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MGE\-UTALK" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "MGE\-UTALK" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "MICRODOWELL" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "MICRODOWELL" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NETXML\-UPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "NETXML\-UPS" "8" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

231
docs/man/nut-ipmipsu.8 Normal file
View File

@ -0,0 +1,231 @@
'\" t
.\" Title: nut-ipmipsu
.\" Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets v1.75.2 <http://docbook.sf.net/>
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\-IPMIPSU" "8" "09/15/2011" "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-ipmipsu \- Driver for IPMI Power Supply Units (PSU)
.SH "SYNOPSIS"
.sp
\fBnut\-ipmipsu\fR \-h
.sp
\fBnut\-ipmipsu\fR \-a \fIPSU_NAME\fR [\fIOPTIONS\fR]
.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
This driver is experimental, and still a work\-in\-progress\&. Feedback is encouraged\&.
.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
This man page only documents the hardware\-specific features of the nut\-ipmipsu driver\&. For information about the core driver, see \fBnutupsdrv\fR(8)\&.
.sp .5v
.RE
.SH "SUPPORTED HARDWARE"
.sp
This driver should support a wide range of PSUs through local IPMI interface\&.
.sp
nut\-ipmipsu currently use the GNU FreeIPMI project, for IPMI implementation\&.
.SH "EXTRA ARGUMENTS"
.sp
This driver doesn\(cqt support any optional settings\&.
.SH "INSTALLATION"
.sp
This driver is not built by default\&. You can build it by using "configure \-\-with\-ipmi=yes"\&.
.sp
You also need to give proper permissions on the local IPMI device file (/dev/ipmi0 for example) to allow the NUT user to access it\&.
.sp
An udev rules file (nut\-ipmipsu\&.rules) is provided and automatically installed on udev enabled system\&. This file is generally installed in /etc/udev/rules\&.d/ or /lib/udev/rules\&.d/ on newer systems, to address the permission settings problem\&. For more information, refer to nut/scripts/udev/README\&.
.SH "INSTANT COMMANDS"
.sp
This driver doesn\(cqt support any instant commands\&.
.SH "IMPLEMENTATION"
.sp
The "port" value is used to identify the PSU\&. For instance, to target FRU 0x2, use the following in \fBups\&.conf\fR:
.sp
.if n \{\
.RS 4
.\}
.nf
[pdu]
driver = nut\-ipmipsu
port = id2
.fi
.if n \{\
.RE
.\}
.sp
This driver will report various information related to a PSU, including:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
manufacturer, model, serial and part numbers,
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
nominal voltage and frequency,
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
actual current and voltage,
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
status of the PSU:
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIOL\fR
means that the PSU is present and providing power,
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIOB\fR
means that the PSU is present but not providing power (power cable removed),
.RE
.sp
.RS 4
.ie n \{\
\h'-04'\(bu\h'+03'\c
.\}
.el \{\
.sp -1
.IP \(bu 2.3
.\}
\fIstale\fR
means that the PSU is not present (ie physically removed)\&.
.RE
.RE
.sp
Here is an example output for a Dell r610 server:
.sp
.if n \{\
.RS 4
.\}
.nf
device\&.mfr: DELL
device\&.mfr\&.date: 01/05/11 \- 08:51:00
device\&.model: PWR SPLY,717W,RDNT
device\&.part: 0RN442A01
device\&.serial: CN179721130031
device\&.type: psu
driver\&.name: nut\-ipmipsu
driver\&.parameter\&.pollinterval: 2
driver\&.parameter\&.port: id2
driver\&.version: 2\&.6\&.1\-3139M
driver\&.version\&.data: IPMI PSU driver
driver\&.version\&.internal: 0\&.01
input\&.current: 0\&.20
input\&.frequency\&.high: 63
input\&.frequency\&.low: 47
input\&.voltage: 232\&.00
input\&.voltage\&.maximum: 264
input\&.voltage\&.minimum: 90
ups\&.id: 2
ups\&.realpower\&.nominal: 717
ups\&.status: OL
ups\&.voltage: 12
.fi
.if n \{\
.RE
.\}
.SH "AUTHOR"
.sp
Arnaud Quette <arnaud\&.quette@free\&.fr>
.SH "SEE ALSO"
.SS "The core driver:"
.sp
\fBnutupsdrv\fR(8)
.SS "Internet resources:"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/
.sp
GNU FreeIPMI home page: http://www\&.gnu\&.org/software/freeipmi/

115
docs/man/nut-ipmipsu.txt Normal file
View File

@ -0,0 +1,115 @@
NUT-IPMIPSU(8)
==============
NAME
----
nut-ipmipsu - Driver for IPMI Power Supply Units (PSU)
SYNOPSIS
--------
*nut-ipmipsu* -h
*nut-ipmipsu* -a 'PSU_NAME' ['OPTIONS']
NOTE: This driver is experimental, and still a work-in-progress. Feedback is
encouraged.
NOTE: This man page only documents the hardware-specific features of the
nut-ipmipsu driver. For information about the core driver, see
linkman:nutupsdrv[8].
SUPPORTED HARDWARE
------------------
This driver should support a wide range of PSUs through local IPMI interface.
nut-ipmipsu currently use the GNU FreeIPMI project, for IPMI implementation.
EXTRA ARGUMENTS
---------------
This driver doesn't support any optional settings.
INSTALLATION
------------
This driver is not built by default. You can build it by using
"configure --with-ipmi=yes".
You also need to give proper permissions on the local IPMI device file
(/dev/ipmi0 for example) to allow the NUT user to access it.
An udev rules file (nut-ipmipsu.rules) is provided and automatically installed
on udev enabled system. This file is generally installed in /etc/udev/rules.d/
or /lib/udev/rules.d/ on newer systems, to address the permission settings
problem. For more information, refer to nut/scripts/udev/README.
INSTANT COMMANDS
----------------
This driver doesn't support any instant commands.
IMPLEMENTATION
--------------
The "port" value is used to identify the PSU. For instance, to target
FRU 0x2, use the following in *ups.conf*:
[pdu]
driver = nut-ipmipsu
port = id2
This driver will report various information related to a PSU, including:
- manufacturer, model, serial and part numbers,
- nominal voltage and frequency,
- actual current and voltage,
- status of the PSU:
* 'OL' means that the PSU is present and providing power,
* 'OB' means that the PSU is present but not providing power (power cable removed),
* 'stale' means that the PSU is not present (ie physically removed).
Here is an example output for a Dell r610 server:
device.mfr: DELL
device.mfr.date: 01/05/11 - 08:51:00
device.model: PWR SPLY,717W,RDNT
device.part: 0RN442A01
device.serial: CN179721130031
device.type: psu
driver.name: nut-ipmipsu
driver.parameter.pollinterval: 2
driver.parameter.port: id2
driver.version: 2.6.1-3139M
driver.version.data: IPMI PSU driver
driver.version.internal: 0.01
input.current: 0.20
input.frequency.high: 63
input.frequency.low: 47
input.voltage: 232.00
input.voltage.maximum: 264
input.voltage.minimum: 90
ups.id: 2
ups.realpower.nominal: 717
ups.status: OL
ups.voltage: 12
AUTHOR
------
Arnaud Quette <arnaud.quette@free.fr>
SEE ALSO
--------
The core driver:
~~~~~~~~~~~~~~~~
linkman:nutupsdrv[8]
Internet resources:
~~~~~~~~~~~~~~~~~~~
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/
GNU FreeIPMI home page: http://www.gnu.org/software/freeipmi/

186
docs/man/nut-scanner.8 Normal file
View File

@ -0,0 +1,186 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\-SCANNER" "8" "09/15/2011" "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-scanner \- scan communication buses for NUT devices
.SH "SYNOPSIS"
.sp
\fBnut\-scanner\fR \-h
.sp
\fBnut\-scanner\fR [\fIOPTIONS\fR]
.SH "DESCRIPTION"
.sp
\fBnut\-scanner\fR scans available communication buses and display any NUT compatible device it has found\&.
.SH "OPTIONS"
.PP
\fB\-h\fR
.RS 4
Display the help text\&.
.RE
.SH "DISPLAY OPTIONS"
.PP
\fB\-N\fR | \fB\-\-disp_nut_conf\fR
.RS 4
Display result in the
\fIups\&.conf\fR
format\&.
.RE
.PP
\fB\-P\fR | \fB\-\-disp_parsable\fR
.RS 4
Display result in a parsable format\&.
.RE
.SH "BUS OPTIONS"
.PP
\fB\-C\fR | \fB\-\-complete_scan\fR
.RS 4
Scan all available communication buses (default behavior)
.RE
.PP
\fB\-U\fR | \fB\-\-usb_scan\fR
.RS 4
List all NUT compatible USB devices currently plugged in\&.
.RE
.PP
\fB\-S\fR | \fB\-\-snmp_scan\fR
.RS 4
Scan SNMP devices\&. Require at least a
\fIstart IP\fR, and optionnaly an
\fIend IP\fR\&. See specific SNMP OPTIONS for community and security settings\&.
.RE
.PP
\fB\-M\fR | \fB\-\-xml_scan\fR
.RS 4
Scan XML/HTTP devices\&. Broadcast a network message on the current network interfaces to retrieve XML/HTTP capable devices\&. No IP required\&.
.RE
.PP
\fB\-O\fR | \fB\-\-oldnut_scan\fR
.RS 4
Scan NUT devices (i\&.e\&. upsd daemon) on IP ranging from
\fIstart IP\fR
to
\fIend IP\fR\&.
.RE
.PP
\fB\-A\fR | \fB\-\-avahi_scan\fR
.RS 4
Scan NUT servers using avahi request on the current network interfaces\&. No IP required\&.
.RE
.PP
\fB\-I\fR | \fB\-\-ipmi_scan\fR
.RS 4
Scan NUT compatible devices available via IPMI on the current host\&.
.RE
.SH "NETWORK OPTIONS"
.PP
\fB\-t\fR | \fB\-\-timeout\fR \fItimeout\fR
.RS 4
Set the network timeout in seconds\&. Default timeout is 5 seconds\&.
.RE
.PP
\fB\-s\fR | \fB\-\-start_ip\fR \fIstart IP\fR
.RS 4
Set the first IP (IPv4 or IPv6) when a range of IP is required (SNMP, old_nut)\&.
.RE
.PP
\fB\-e\fR | \fB\-\-end_ip\fR \fIend IP\fR
.RS 4
Set the last IP (IPv4 or IPv6) when a range of IP is required (SNMP, old_nut)\&. If this parameter is omitted, only the
\fIstart IP\fR
is scanned\&. If
\fIend IP\fR
is lesser than
\fIstart IP\fR, both parameter are internally permuted\&.
.RE
.SH "NUT DEVICE OPTION"
.PP
\fB\-p\fR | \fB\-\-port <port number\fR \fIport number\fR
.RS 4
Set the port number of scanned NUT devices (default 3493)\&.
.RE
.SH "SNMP V1 OPTION"
.PP
\fB\-c\fR | \fB\-\-community\fR \fIcommunity\fR
.RS 4
Set SNMP v1 community name (default = public)\&.
.RE
.SH "SNMP V3 OPTIONS"
.PP
\fB\-l\fR | \fB\-\-secLevel\fR \fIsecurity level\fR
.RS 4
Set the
\fIsecurity level\fR
used for SNMPv3 messages\&. Allowed values are: noAuthNoPriv, authNoPriv and authPriv\&.
.RE
.PP
\fB\-u\fR | \fB\-\-secName\fR \fIsecurity name\fR
.RS 4
Set the
\fIsecurity name\fR
used for authenticated SNMPv3 messages\&. This parameter is mandatory if you set
\fIsecurity level\fR\&.
.RE
.PP
\fB\-a\fR | \fB\-\-authProtocol\fR \fIauthentication protocol\fR
.RS 4
Set the
\fIauthentication protocol\fR
used for authenticated SNMPv3 messages\&. Allowed values are MD5 or SHA\&. Default value is MD5\&.
.RE
.PP
\fB\-A\fR | \fB\-\-authPassword\fR \fIauthentication pass phrase\fR
.RS 4
Set the
\fIauthentication pass phrase\fR
used for authenticated SNMPv3 messages\&. This parameter is mandatory if you set
\fIsecurity level\fR
to authNoPriv or authPriv\&.
.RE
.PP
\fB\-x\fR | \fB\-\-privProtocol\fR \fIprivacy protocol\fR
.RS 4
Set the
\fIprivacy protocol\fR
used for encrypted SNMPv3 messages\&. Allowed values are DES or AES\&. Default value is DES\&.
.RE
.PP
\fB\-X\fR | \fB\-\-privPassword\fR \fIprivacy pass phrase\fR
.RS 4
Set the
\fIprivacy pass phrase\fR
used for encrypted SNMPv3 messages\&. This parameter is mandatory if you set
\fIsecurity level\fR
to authPriv\&.
.RE
.SH "SEE ALSO"
.sp
\fBups.conf\fR(5)
.SH "INTERNET RESOURCES"
.sp
The NUT (Network UPS Tools) home page: http://www\&.networkupstools\&.org/

131
docs/man/nut-scanner.txt Normal file
View File

@ -0,0 +1,131 @@
NUT-SCANNER(8)
==============
NAME
----
nut-scanner - scan communication buses for NUT devices
SYNOPSIS
--------
*nut-scanner* -h
*nut-scanner* ['OPTIONS']
DESCRIPTION
-----------
*nut-scanner* scans available communication buses and display any NUT compatible device it has found.
OPTIONS
-------
*-h*::
Display the help text.
DISPLAY OPTIONS
---------------
*-N* | *--disp_nut_conf*::
Display result in the 'ups.conf' format.
*-P* | *--disp_parsable*::
Display result in a parsable format.
BUS OPTIONS
-----------
*-C* | *--complete_scan*::
Scan all available communication buses (default behavior)
*-U* | *--usb_scan*::
List all NUT compatible USB devices currently plugged in.
*-S* | *--snmp_scan*::
Scan SNMP devices. Require at least a 'start IP', and optionnaly an 'end IP'. See specific SNMP OPTIONS for community and security settings.
*-M* | *--xml_scan*::
Scan XML/HTTP devices. Broadcast a network message on the current network interfaces to retrieve XML/HTTP capable devices. No IP required.
*-O* | *--oldnut_scan*::
Scan NUT devices (i.e. upsd daemon) on IP ranging from 'start IP' to 'end IP'.
*-A* | *--avahi_scan*::
Scan NUT servers using avahi request on the current network interfaces. No IP required.
*-I* | *--ipmi_scan*::
Scan NUT compatible devices available via IPMI on the current host.
NETWORK OPTIONS
---------------
*-t* | *--timeout* 'timeout'::
Set the network timeout in seconds. Default timeout is 5 seconds.
*-s* | *--start_ip* 'start IP'::
Set the first IP (IPv4 or IPv6) when a range of IP is required (SNMP, old_nut).
*-e* | *--end_ip* 'end IP'::
Set the last IP (IPv4 or IPv6) when a range of IP is required (SNMP, old_nut). If this parameter is omitted, only the 'start IP' is scanned. If 'end IP' is lesser than 'start IP', both parameter are internally permuted.
NUT DEVICE OPTION
-----------------
*-p* | *--port <port number* 'port number'::
Set the port number of scanned NUT devices (default 3493).
SNMP V1 OPTION
--------------
*-c* | *--community* 'community'::
Set SNMP v1 community name (default = public).
SNMP V3 OPTIONS
---------------
*-l* | *--secLevel* 'security level'::
Set the 'security level' used for SNMPv3 messages. Allowed values are: noAuthNoPriv, authNoPriv and authPriv.
*-u* | *--secName* 'security name'::
Set the 'security name' used for authenticated SNMPv3 messages. This parameter is mandatory if you set 'security level'.
*-a* | *--authProtocol* 'authentication protocol'::
Set the 'authentication protocol' used for authenticated SNMPv3 messages. Allowed values are MD5 or SHA. Default value is MD5.
*-A* | *--authPassword* 'authentication pass phrase'::
Set the 'authentication pass phrase' used for authenticated SNMPv3 messages. This parameter is mandatory if you set 'security level' to authNoPriv or authPriv.
*-x* | *--privProtocol* 'privacy protocol'::
Set the 'privacy protocol' used for encrypted SNMPv3 messages. Allowed values are DES or AES. Default value is DES.
*-X* | *--privPassword* 'privacy pass phrase'::
Set the 'privacy pass phrase' used for encrypted SNMPv3 messages. This parameter is mandatory if you set 'security level' to authPriv.
SEE ALSO
--------
linkman:ups.conf[5]
INTERNET RESOURCES
------------------
The NUT (Network UPS Tools) home page: http://www.networkupstools.org/

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUT\&.CONF" "5" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "NUT\&.CONF" "5" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

@ -0,0 +1,68 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_ADD_DEVICE_T" "3" "09/15/2011" "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"
nutscan_add_device_to_device \- Concatenate two devices structure\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_add_device_to_device(nutscan_device_t * first, nutscan_device_t * second);
.fi
.SH "DESCRIPTION"
.sp
The nutscan_device_t contains the following variables:
.sp
.if n \{\
.RS 4
.\}
.nf
nutscan_device_type_t type;
char * driver;
char * port;
nutscan_options_t opt;
struct nutscan_device * prev;
struct nutscan_device * next;
.fi
.if n \{\
.RE
.\}
.sp
This is a double linked list of device\&. Each device is described by its type, its driver name, its port and any number of optional data\&.
.sp
The \fBnutscan_add_device_to_device()\fR concatenates \fIfirst\fR and \fIsecond\fR devices to a unique device\&. No new device is created, the two linked list are simply linked to each other\&. So \fIfirst\fR and \fIsecond\fR devices are likely to be modified by this function\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_add_device_to_device()\fR functions returns a pointer to a device containg both passed devices\&. Note that it\(cqs not a new device, so it is either \fIfirst\fR or \fIsecond\fR which is returned\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3)

View File

@ -0,0 +1,45 @@
NUTSCAN_ADD_DEVICE_TO_DEVICE(3)
===============================
NAME
----
nutscan_add_device_to_device - Concatenate two devices structure.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_add_device_to_device(nutscan_device_t * first, nutscan_device_t * second);
DESCRIPTION
-----------
The `nutscan_device_t` contains the following variables:
nutscan_device_type_t type;
char * driver;
char * port;
nutscan_options_t opt;
struct nutscan_device * prev;
struct nutscan_device * next;
This is a double linked list of device. Each device is described by its `type`, its `driver` name, its `port` and any number of optional data.
The *nutscan_add_device_to_device()* concatenates 'first' and 'second' devices to a unique device. No new device is created, the two linked list are simply linked to each other. So 'first' and 'second' devices are likely to be modified by this function.
RETURN VALUE
------------
The *nutscan_add_device_to_device()* functions returns a pointer to a device containg both passed devices. Note that it's not a new device, so it is either 'first' or 'second' which is returned.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_ups_conf[3], linkman:nutscan_display_parsable[3],
linkman:nutscan_new_device[3], linkman:nutscan_free_device[3],
linkman:nutscan_add_option_to_device[3]

View File

@ -0,0 +1,65 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_ADD_OPTION_T" "3" "09/15/2011" "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"
nutscan_add_option_to_device \- Add option data to the specified device\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
void nutscan_add_option_to_device(nutscan_device_t * device,char * option_name, char * value);
.fi
.SH "DESCRIPTION"
.sp
The nutscan_device_t contains the following variables:
.sp
.if n \{\
.RS 4
.\}
.nf
nutscan_device_type_t type;
char * driver;
char * port;
nutscan_options_t opt;
struct nutscan_device * prev;
struct nutscan_device * next;
.fi
.if n \{\
.RE
.\}
.sp
This is a double linked list of device\&. Each device is described by its type, its driver name, its port and any number of optional data\&.
.sp
The \fBnutscan_add_option_to_device()\fR adds an optional data in the given devcie\&. Optional data are made of an \fIoption_name\fR and an associated \fIvalue\fR\&. Copies of \fIoption_name\fR and \fIvalue\fR are stored in the device, so the caller can safely free both of them\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_device_to_device\fR(3)

View File

@ -0,0 +1,40 @@
NUTSCAN_ADD_OPTION_TO_DEVICE(3)
===============================
NAME
----
nutscan_add_option_to_device - Add option data to the specified device.
SYNOPSIS
--------
#include <nut-scan.h>
void nutscan_add_option_to_device(nutscan_device_t * device,char * option_name, char * value);
DESCRIPTION
-----------
The `nutscan_device_t` contains the following variables:
nutscan_device_type_t type;
char * driver;
char * port;
nutscan_options_t opt;
struct nutscan_device * prev;
struct nutscan_device * next;
This is a double linked list of device. Each device is described by its `type`, its `driver` name, its `port` and any number of optional data.
The *nutscan_add_option_to_device()* adds an optional data in the given devcie. Optional data are made of an 'option_name' and an associated 'value'. Copies of 'option_name' and 'value' are stored in the device, so the caller can safely free both of them.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_ups_conf[3], linkman:nutscan_display_parsable[3],
linkman:nutscan_new_device[3], linkman:nutscan_free_device[3],
linkman:nutscan_add_device_to_device[3]

View File

@ -0,0 +1,49 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_CIDR_TO_IP" "3" "09/15/2011" "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"
nutscan_cidr_to_ip \- Convert a CIDR IP to a range of IP address\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
int nutscan_cidr_to_ip(const char * cidr, char ** start_ip, char ** stop_ip);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_cidr_to_ip()\fR function converts a range of IP address in the CIDR format given as a string in \fIcidr\fR, to two IPs in strings pointed by \fIstart_ip\fR and \fIstop_ip\fR which can be used as input paramters in the scanning functions of the libnutscan API\&. It is the caller\(cqs responsability to free \fIstart_ip\fR and \fIstop_ip\fR strings\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_cidr_to_ip()\fR function returns 0 if an error occured (invalid \fIcidr\fR address) or 1 if successful\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_display_ups_conf\fR(3)

View File

@ -0,0 +1,31 @@
NUTSCAN_CIDR_TO_IP(3)
=====================
NAME
----
nutscan_cidr_to_ip - Convert a CIDR IP to a range of IP address.
SYNOPSIS
--------
#include <nut-scan.h>
int nutscan_cidr_to_ip(const char * cidr, char ** start_ip, char ** stop_ip);
DESCRIPTION
-----------
The *nutscan_cidr_to_ip()* function converts a range of IP address in the CIDR format given as a string in 'cidr', to two IPs in strings pointed by 'start_ip' and 'stop_ip' which can be used as input paramters in the scanning functions of the libnutscan API. It is the caller's responsability to free 'start_ip' and 'stop_ip' strings.
RETURN VALUE
------------
The *nutscan_cidr_to_ip()* function returns 0 if an error occured (invalid 'cidr' address) or 1 if successful.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_display_ups_conf[3]

View File

@ -0,0 +1,50 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_DISPLAY_PARS" "3" "09/15/2011" "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"
nutscan_display_parsable \- Display the specified `nutscan_device_t` structure on stdout\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
void nutscan_display_parsable(nutscan_device_t * device);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_display_parsable()\fR function displays all NUT devices in \fIdevice\fR to stdout\&. It displays them in a way that can be easily parsed which is:
.sp
<driver type>:driver="<driver name>",port="<port type>"[,<optional parameter 1>="<optional data 1>",<optional parameter 2>="<optional data 2>",\&...]
.sp
<driver type> may be one of USB, SNMP, XML, NUT, IPMI or AVAHI\&. <driver name> is the name of the driver\(cqs binary corresponding to this device\&. <port type> and <optional parameter X> depend on <driver name>, see the corresponding driver\(cqs man page\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,34 @@
NUTSCAN_DISPLAY_PARSABLE(3)
===========================
NAME
----
nutscan_display_parsable - Display the specified `nutscan_device_t` structure on stdout.
SYNOPSIS
--------
#include <nut-scan.h>
void nutscan_display_parsable(nutscan_device_t * device);
DESCRIPTION
-----------
The *nutscan_display_parsable()* function displays all NUT devices in 'device' to stdout. It displays them in a way that can be easily parsed which is:
<driver type>:driver="<driver name>",port="<port type>"[,<optional parameter 1>="<optional data 1>",<optional parameter 2>="<optional data 2>",...]
<driver type> may be one of USB, SNMP, XML, NUT, IPMI or AVAHI.
<driver name> is the name of the driver's binary corresponding to this device.
<port type> and <optional parameter X> depend on <driver name>, see the corresponding driver's man page.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_ups_conf[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,46 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_DISPLAY_UPS_" "3" "09/15/2011" "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"
nutscan_display_ups_conf \- Display the specified `nutscan_device_t` structure on stdout\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
void nutscan_display_ups_conf(nutscan_device_t * device);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_display_ups_conf()\fR function displays all NUT devices in \fIdevice\fR to stdout\&. It displays them in a way that it can be directly copied into the ups\&.conf file\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,28 @@
NUTSCAN_DISPLAY_UPS_CONF(3)
===========================
NAME
----
nutscan_display_ups_conf - Display the specified `nutscan_device_t` structure on stdout.
SYNOPSIS
--------
#include <nut-scan.h>
void nutscan_display_ups_conf(nutscan_device_t * device);
DESCRIPTION
-----------
The *nutscan_display_ups_conf()* function displays all NUT devices in 'device' to stdout. It displays them in a way that it can be directly copied into the ups.conf file.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,46 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_FREE_DEVICE" "3" "09/15/2011" "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"
nutscan_free_device \- Free a nutscan_device_t structure created by nutscan_new_device\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
void nutscan_free_device(nutscan_device_t * device);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_free_device()\fR function free a nutscan_device_type_t structure\&. Doing so, it free the whole linked list, not only the given device\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3)

View File

@ -0,0 +1,28 @@
NUTSCAN_FREE_DEVICE(3)
======================
NAME
----
nutscan_free_device - Free a nutscan_device_t structure created by nutscan_new_device.
SYNOPSIS
--------
#include <nut-scan.h>
void nutscan_free_device(nutscan_device_t * device);
DESCRIPTION
-----------
The *nutscan_free_device()* function free a `nutscan_device_type_t` structure. Doing so, it free the whole linked list, not only the given device.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_display_ups_conf[3], linkman:nutscan_display_parsable[3],
linkman:nutscan_new_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3]

View File

@ -0,0 +1,49 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_NEW_DEVICE" "3" "09/15/2011" "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"
nutscan_new_device \- Create a new nutscan_device_t structure\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_new_device();
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_new_device()\fR function allocates a new nutscan_device_type_t structure\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_new_device()\fR function returns the newly allocated nutscan_device_type_t structure
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_scan_snmp\fR(3) \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3) \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3) \fBnutscan_add_device_to_device\fR(3)

View File

@ -0,0 +1,33 @@
NUTSCAN_NEW_DEVICE(3)
======================
NAME
----
nutscan_new_device - Create a new nutscan_device_t structure.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_new_device();
DESCRIPTION
-----------
The *nutscan_new_device()* function allocates a new `nutscan_device_type_t` structure.
RETURN VALUE
------------
The *nutscan_new_device()* function returns the newly allocated `nutscan_device_type_t` structure
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_scan_snmp[3]
linkman:nutscan_display_ups_conf[3], linkman:nutscan_display_parsable[3]
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3]
linkman:nutscan_add_device_to_device[3]

View File

@ -0,0 +1,51 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_AVAHI" "3" "09/15/2011" "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"
nutscan_scan_avahi \- Scan network for NUT services via AVAHI\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_avahi(long usec_timeout);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_avahi()\fR function try to detect NUT service and its associated devcies\&. It uses the AVAHI library to do so\&.
.sp
This function waits up to \fIusec_timeout\fR microseconds before considering an IP address does not respond\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_avahi()\fR function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,35 @@
NUTSCAN_SCAN_AVAHI(3)
=====================
NAME
----
nutscan_scan_avahi - Scan network for NUT services via AVAHI.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_avahi(long usec_timeout);
DESCRIPTION
-----------
The *nutscan_scan_avahi()* function try to detect NUT service and its associated devcies. It uses the AVAHI library to do so.
This function waits up to 'usec_timeout' microseconds before considering an IP address does not respond.
RETURN VALUE
------------
The *nutscan_scan_avahi()* function returns a pointer to a `nutscan_device_t` structure containing all found devices or NULL if an error occurs or no device is found.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,49 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_IPMI" "3" "09/15/2011" "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"
nutscan_scan_ipmi \- Scan local IPMI devices\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_ipmi(void);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_ipmi()\fR function is not implemented yet\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_ipmi()\fR function is not implemented yet\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,33 @@
NUTSCAN_SCAN_IPMI(3)
====================
NAME
----
nutscan_scan_ipmi - Scan local IPMI devices.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_ipmi(void);
DESCRIPTION
-----------
The *nutscan_scan_ipmi()* function is not implemented yet.
RETURN VALUE
------------
The *nutscan_scan_ipmi()* function is not implemented yet.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_snmp[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,53 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_NUT" "3" "09/15/2011" "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"
nutscan_scan_nut \- Scan network for available NUT services\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_nut(const char * startIP, const char * stopIP, const char * port, long usec_timeout);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_nut()\fR function try to detect available NUT services and their associated devices\&. It issues a NUT request on every IP ranging from \fIstartIP\fR to \fIstopIP\fR\&. \fIstartIP\fR is mandatory, \fIstopIP\fR is optional\&. Those IP may be either IPv4 or IPv6 addresses or host names\&.
.sp
A specific \fIport\fR number may be passed, or NULL to use the default NUT port\&.
.sp
This function waits up to \fIusec_timeout\fR microseconds before considering an IP address does not respond to NUT queries\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_nut()\fR function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,37 @@
NUTSCAN_SCAN_NUT(3)
===================
NAME
----
nutscan_scan_nut - Scan network for available NUT services.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_nut(const char * startIP, const char * stopIP, const char * port, long usec_timeout);
DESCRIPTION
-----------
The *nutscan_scan_nut()* function try to detect available NUT services and their associated devices. It issues a NUT request on every IP ranging from 'startIP' to 'stopIP'. 'startIP' is mandatory, 'stopIP' is optional. Those IP may be either IPv4 or IPv6 addresses or host names.
A specific 'port' number may be passed, or NULL to use the default NUT port.
This function waits up to 'usec_timeout' microseconds before considering an IP address does not respond to NUT queries.
RETURN VALUE
------------
The *nutscan_scan_nut()* function returns a pointer to a `nutscan_device_t` structure containing all found devices or NULL if an error occurs or no device is found.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_snmp[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,87 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_SNMP" "3" "09/15/2011" "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"
nutscan_scan_snmp \- Scan network for SNMP devices\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_snmp(const char * start_ip,const char * stop_ip,long timeout, nutscan_snmp_t * sec);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_snmp()\fR function try to detect NUT compatible SNMP devices\&. It tries SNMP queries on every IP ranging from \fIstart_ip\fR to \fIstop_ip\fR\&. Those IP may be either IPv4 or IPv6 addresses or host names\&.
.sp
This function waits up to \fItimeout\fR microseconds before considering an IP address does not respond to SNMP queries\&.
.sp
A valid nutscan_snmp_t structure must be passed to this function\&.
.sp
The nutscan_snmp_t structure contains the following members which must be filled as described below:
.sp
.if n \{\
.RS 4
.\}
.nf
char * \*(Aqcommunity\*(Aq;
char * \*(AqsecLevel\*(Aq;
char * \*(AqsecName\*(Aq;
char * \*(AqauthPassword\*(Aq;
char * \*(AqprivPassword\*(Aq;
char * \*(AqauthProtocol\*(Aq;
char * \*(AqprivProtocol\*(Aq;
.fi
.if n \{\
.RE
.\}
.sp
If \fIcommunity\fR is not NULL, SNMP v1 request are sent using this \fIcommunity\fR\&.
.sp
If \fIcommunity\fR is NULL and \fIsecLevel\fR is NULL, SNMP v1 is selected and \fIcommunity\fR is set to "public"\&.
.sp
In the other cases, SNMP v3 is used\&. \fIsecLevel\fR may be one of SNMP_SEC_LEVEL_NOAUTH, SNMP_SEC_LEVEL_AUTHNOPRIV or SNMP_SEC_LEVEL_AUTHPRIV\&. \fIsecName\fR is the security name and must be non NULL\&.
.sp
If \fIsecLevel\fR is set to SNMP_SEC_LEVEL_AUTHNOPRIV, \fIauthPassword\fR must be non NULL\&.
.sp
If \fIsecLevel\fR is set to SNMP_SEC_LEVEL_AUTHPRIV, \fIauthPassword\fR and \fIprivPassword\fR must be non NULL\&.
.sp
If \fIauthProtocol\fR is NULL, MD5 protocol is used\&. Else you can set \fIauthProtocol\fR to either "MD5" or "SHA"\&.
.sp
If \fIprivProtocol\fR is NULL, DES protocol is used\&. Else you can set \fIprivProtocol\fR to either "AES" or "DES"\&.
.sp
\fIpeername\fR and \fIhandle\fR are used internally and do not need any initialization\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_snmp()\fR function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3), \fBnutscan_cidr_to_ip\fR(3)

View File

@ -0,0 +1,63 @@
NUTSCAN_SCAN_SNMP(3)
====================
NAME
----
nutscan_scan_snmp - Scan network for SNMP devices.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_snmp(const char * start_ip,const char * stop_ip,long timeout, nutscan_snmp_t * sec);
DESCRIPTION
-----------
The *nutscan_scan_snmp()* function try to detect NUT compatible SNMP devices. It tries SNMP queries on every IP ranging from 'start_ip' to 'stop_ip'. Those IP may be either IPv4 or IPv6 addresses or host names.
This function waits up to 'timeout' microseconds before considering an IP address does not respond to SNMP queries.
A valid `nutscan_snmp_t` structure must be passed to this function.
The `nutscan_snmp_t` structure contains the following members which must be filled as described below:
char * 'community';
char * 'secLevel';
char * 'secName';
char * 'authPassword';
char * 'privPassword';
char * 'authProtocol';
char * 'privProtocol';
If 'community' is not NULL, SNMP v1 request are sent using this 'community'.
If 'community' is NULL and 'secLevel' is NULL, SNMP v1 is selected and 'community' is set to "public".
In the other cases, SNMP v3 is used. 'secLevel' may be one of `SNMP_SEC_LEVEL_NOAUTH`, `SNMP_SEC_LEVEL_AUTHNOPRIV` or `SNMP_SEC_LEVEL_AUTHPRIV`. 'secName' is the security name and must be non NULL.
If 'secLevel' is set to `SNMP_SEC_LEVEL_AUTHNOPRIV`, 'authPassword' must be non NULL.
If 'secLevel' is set to `SNMP_SEC_LEVEL_AUTHPRIV`, 'authPassword' and 'privPassword' must be non NULL.
If 'authProtocol' is NULL, MD5 protocol is used. Else you can set 'authProtocol' to either "MD5" or "SHA".
If 'privProtocol' is NULL, DES protocol is used. Else you can set 'privProtocol' to either "AES" or "DES".
'peername' and 'handle' are used internally and do not need any initialization.
RETURN VALUE
------------
The *nutscan_scan_snmp()* function returns a pointer to a `nutscan_device_t` structure containing all found devices or NULL if an error occurs or no device is found.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3], linkman:nutscan_cidr_to_ip[3]

View File

@ -0,0 +1,49 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_USB" "3" "09/15/2011" "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"
nutscan_scan_usb \- Scan NUT compatible USB devices\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_usb();
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_usb()\fR function try to detect NUT compatible USB devices\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_usb()\fR function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_snmp\fR(3), \fBnutscan_scan_xml_http\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3)

View File

@ -0,0 +1,33 @@
NUTSCAN_SCAN_USB(3)
====================
NAME
----
nutscan_scan_usb - Scan NUT compatible USB devices.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_usb();
DESCRIPTION
-----------
The *nutscan_scan_usb()* function try to detect NUT compatible USB devices.
RETURN VALUE
------------
The *nutscan_scan_usb()* function returns a pointer to a `nutscan_device_t` structure containing all found devices or NULL if an error occurs or no device is found.
SEE ALSO
--------
linkman:nutscan_scan_snmp[3], linkman:nutscan_scan_xml_http[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3]

View File

@ -0,0 +1,49 @@
'\" t
.\" 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: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTSCAN_SCAN_XML_HTT" "3" "09/15/2011" "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"
nutscan_scan_xml_http \- Scan network for XML/HTTP devices\&.
.SH "SYNOPSIS"
.sp
.nf
#include <nut\-scan\&.h>
.fi
.sp
.nf
nutscan_device_t * nutscan_scan_xml_http(long usec_timeout);
.fi
.SH "DESCRIPTION"
.sp
The \fBnutscan_scan_xml_http()\fR function try to detect NUT compatible XML/HTTP devices\&. It does this by issuing a broadcast message on currently configured network interfaces\&. It waits up to \fIusec_timeout\fR microseconds for a response from potential devices\&.
.SH "RETURN VALUE"
.sp
The \fBnutscan_scan_xml_http()\fR function returns a pointer to a nutscan_device_t structure containing all found devices or NULL if an error occurs or no device is found\&.
.SH "SEE ALSO"
.sp
\fBnutscan_scan_usb\fR(3), \fBnutscan_scan_snmp\fR(3), \fBnutscan_scan_nut\fR(3), \fBnutscan_scan_avahi\fR(3), \fBnutscan_scan_ipmi\fR(3), \fBnutscan_display_ups_conf\fR(3), \fBnutscan_display_parsable\fR(3), \fBnutscan_new_device\fR(3), \fBnutscan_free_device\fR(3), \fBnutscan_add_option_to_device\fR(3), \fBnutscan_add_device_to_device\fR(3)

View File

@ -0,0 +1,33 @@
NUTSCAN_SCAN_XML_HTTP(3)
========================
NAME
----
nutscan_scan_xml_http - Scan network for XML/HTTP devices.
SYNOPSIS
--------
#include <nut-scan.h>
nutscan_device_t * nutscan_scan_xml_http(long usec_timeout);
DESCRIPTION
-----------
The *nutscan_scan_xml_http()* function try to detect NUT compatible XML/HTTP devices. It does this by issuing a broadcast message on currently configured network interfaces. It waits up to 'usec_timeout' microseconds for a response from potential devices.
RETURN VALUE
------------
The *nutscan_scan_xml_http()* function returns a pointer to a `nutscan_device_t` structure containing all found devices or NULL if an error occurs or no device is found.
SEE ALSO
--------
linkman:nutscan_scan_usb[3], linkman:nutscan_scan_snmp[3],
linkman:nutscan_scan_nut[3], linkman:nutscan_scan_avahi[3],
linkman:nutscan_scan_ipmi[3], linkman:nutscan_display_ups_conf[3],
linkman:nutscan_display_parsable[3], linkman:nutscan_new_device[3],
linkman:nutscan_free_device[3], linkman:nutscan_add_option_to_device[3],
linkman:nutscan_add_device_to_device[3]

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "NUTUPSDRV" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "NUTUPSDRV" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "ONEAC" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "ONEAC" "8" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "OPTIUPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "OPTIUPS" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERCOM" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERCOM" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERMAN\-PDU" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERMAN\-PDU" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "POWERPANEL" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "POWERPANEL" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "RHINO" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "RHINO" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "RICHCOMM_USB" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "RICHCOMM_USB" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "SAFENET" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "SAFENET" "8" "09/15/2011" "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: 05/31/2011
.\" Date: 09/15/2011
.\" Manual: NUT Manual
.\" Source: Network UPS Tools
.\" Language: English
.\"
.TH "SNMP\-UPS" "8" "05/31/2011" "Network UPS Tools" "NUT Manual"
.TH "SNMP\-UPS" "8" "09/15/2011" "Network UPS Tools" "NUT Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------

View File

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

View File

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

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