diff --git a/.drone.yml b/.drone.yml deleted file mode 100644 index eaf4170..0000000 --- a/.drone.yml +++ /dev/null @@ -1,38 +0,0 @@ -kind: pipeline -name: default - -steps: - - name: Build Bullseye - image: debian:bullseye - volumes: - - name: finished_files - path: /deb_files - commands: - - apt update - - apt -y upgrade - - apt -y install --no-install-recommends build-essential equivs devscripts git rename - - git clean -f -d -x - - mk-build-deps --install --tool='apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --yes' debian/control - - dpkg-buildpackage -b -uc - - rename 's/\.deb/_bullseye\.deb/' ../*.deb - - mkdir -p /deb_files/bullseye/ - - cp ../*.deb /deb_files/bullseye/ - - find /deb_files/ - - - name: gitea_release - image: plugins/gitea-release - volumes: - - name: finished_files - path: /deb_files - settings: - api_key: - from_secret: GITEA_KEY - base_url: https://git.neulandlabor.de/ - files: - - /deb_files/bullseye/* - when: - event: tag - -volumes: - - name: finished_files - temp: {} diff --git a/AUTHORS b/AUTHORS index c179b0c..949847d 100644 --- a/AUTHORS +++ b/AUTHORS @@ -96,6 +96,11 @@ N: Lars Balker Rasmussen E: lbr@mjolner.dk D: Solaris and minor patches +N: Carlos Rodrigues +E: carlos.efr@mail.telepac.pt +W: http://students.fct.unl.pt/~cer09566/ +D: author of the "megatec" driver + N: David Santinoli E: david@santinoli.com W: http://www.santinoli.com @@ -170,7 +175,3 @@ D: pwmib support for snmp-ups N: Kjell Claesson E: Kjell.claesson@epost.tidanet.se D: Author of bcmxcp driver, 3-phase work. - -N: Giuseppe Corbelli -E: giuseppe.corbelli@copanitalia.com -D: Author of asem driver diff --git a/COPYING b/COPYING index 883d3b1..606347e 100644 --- a/COPYING +++ b/COPYING @@ -5,7 +5,7 @@ The files in the scripts/python/ directory are released under GNU General Public License (GPL) version 3, or (at your option) any later version. See - "LICENSE-GPL3" in the root of this distribution. + "LICENSE.GPL3" in the root of this distribution. The Perl client module (scripts/perl/Nut.pm) is released under the same license as Perl itself. That is to say either GPL version 1 or (at your option) diff --git a/ChangeLog b/ChangeLog index 669274b..4bd5b6f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,23389 +1,1091 @@ -2022-04-04 Jim Klimov +2.4.3 - * configure.ac: configure.ac: cut the release of NUT v2.8.0 - * clients/Makefile.am, tools/nut-scanner/Makefile.am: tools/nut- - scanner/Makefile.am, clients/Makefile.am: bump "version-info" for - NUT v2.8.0 Development since 2.7.4 release included changes to - code structure, fought warnings, and might impact ABI/API by the - changes to arguments (specific integer types and size_t vs. - architecture-dependent choice). +2010-02-23 Arnaud Quette -2022-04-26 Jim Klimov + * [r2366] ChangeLog, configure.in, NEWS, UPGRADING: Final update for + 2.4.3 release - * docs/nut.dict: docs/nut.dict: update dict - * docs/download.txt: docs/download.txt: link to distro packaging wiki - page on NUT github - * docs/download.txt: docs/download.txt: update links to distro - packaging recipes and their results - * docs/download.txt: docs/download.txt: deprecate buildbot tarballs - * drivers/libusb0.c, drivers/libusb1.c: drivers/libusb{0,1}.c: report - why we could not open any HID devices Closes: #477 +2010-02-20 Arjen de Korte -2022-04-23 Jim Klimov - - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 750T/HID (USB) Closes: #774 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 2200 SH and 650 SHL (USB) Closes: #646 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 2200 SHL (USB) Closes: #756 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 650 SH (USB) Closes: #473 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - Basic VI 1000 SB (USB) Closes: #818 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 3000 SCL (USB) Closes: #971 - * data/driver.list.in: driver.list.in: Add HCL info for PowerWalker - VI 1200 SHL (USB) Closes: #1270 - * data/driver.list.in: driver.list.in: Add HCL info for UPS Phasak - model 9465, renamed as P6N (USB) Closes: #1187 - * data/driver.list.in: driver.list.in: Add HCL info for Online-UPS - Xanto S700 [#1279] - * data/driver.list.in: driver.list.in: Add HCL info for Santak - MT*-PRO / Castle C*K (Serial) Closes: #1039 - * data/driver.list.in: driver.list.in: Add HCL info for Digitus - DN-170040, DN-170041, and Voltronic Power GalleonX9-RT LCD-1-3K - (USB) Closes: #1251 - * data/driver.list.in: driver.list.in: Add HCL info for Kebo - UPS-650VA (USB) from DDL - * data/driver.list.in: driver.list.in: Add HCL info for Kebo - UPS-1000D (USB) Closes: #981 - * data/driver.list.in: driver.list.in: Add HCL info for Aviem Pro - 2000VA (USB) Closes: #827 - * data/driver.list.in: driver.list.in: Add HCL info for Digitus - DN-170076 (USB) Closes: #948 - * data/driver.list.in: driver.list.in: Add HCL info for Ippon Back - Basic 850 Euro (USB) Closes: #802 - * data/driver.list.in: driver.list.in: Add HCL info for Energy - Technologies DPK1/1-3 (Serial) Closes: #762 - * data/driver.list.in: driver.list.in: Add HCL info for V7 - UPS1RM2U1500-1E UPS 1500VA Rack Mount 2U (USB) Closes: #716 - * data/driver.list.in: driver.list.in: Add HCL info for Advice PRS850 - and PRV700 Pro (USB) from DDL - * data/driver.list.in: driver.list.in: Add HCL info for Advice Top V - Pro 6-10K (USB) Closes: #744 - * data/driver.list.in: driver.list.in: Add HCL info for Tecnoware UPS - ERA PLUS 1100 (USB) Closes: #747 - * data/driver.list.in: driver.list.in: Add HCL info for Elsist UPS - Nemo2.0 160 (USB) Closes: #719 - * data/driver.list.in: driver.list.in: Add HCL info for Powercom - Raptor 2000 and RPT-600AP (USB) Closes: #633 - * data/driver.list.in: driver.list.in: Add HCL info for Eaton 9PX - 2000 RT (USB) Closes: #540 - * data/driver.list.in: driver.list.in: Add HCL info for Salicru SPS - ONE (USB) Closes: #554 - * data/driver.list.in: driver.list.in: Add HCL info for APC - SMC2200BI-BR (USB) Closes: #557 - * data/driver.list.in: driver.list.in: Update comment for APC Back- - UPS Pro 1000, Model BX1000M (USB) [nut#139] - * data/driver.list.in: driver.list.in: Add HCL info for Liebert - PowerSure PSA 500 series (USB) Closes: #601 - * docs/man/usbhid-ups.txt: docs/man/usbhid-ups.txt: document some - caveats with CyberPower UPSes [issues #520, #1394] - * data/driver.list.in: driver.list.in: Update for CyberPower Systems - OR1500ERM1U [#1338] - * data/driver.list.in: driver.list.in: Update comment for CyberPower - Systems PR1500RT2U [#1191] - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems CP850PFCLCD (USB) Closes: #605 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems BL1250U (USB) Closes: #1012 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems RT650EI (USB) Closes: #453 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems CP1500PFCLCD (USB) Closes: #520 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems BR1000ELCD (USB) Closes: #552 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems UT2200E (USB) Closes: #556 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems OR500LCDRM1U (USB) Closes: #578 - * data/driver.list.in: driver.list.in: Add HCL info for CyberPower - Systems EC850LCD (USB) Closes: #622 - * data/driver.list.in: driver.list.in: Add HCL info for Guardian LCD - 1500 AP (IGA1500LCD) (Serial) Closes: #449 - * data/driver.list.in: driver.list.in: Add HCL info for Ablerex MARS - MS3000RT (Serial) Closes: #449 - * data/driver.list.in: driver.list.in: Add HCL info for APC AP9584 - Serial-to-USB kit Closes: #181 - * data/driver.list.in: driver.list.in: Update comment for Tripp_Lite - SMX500RT1U (USB) [#584] - * data/driver.list.in: driver.list.in: Add HCL info for Huawei - UPS2000 series (modbus) [#954 #1066 #1198 #1017] - * data/driver.list.in: driver.list.in: Add HCL info for DEXP MIX - 850VA (USB) Closes: #721 - * data/driver.list.in: driver.list.in: Add HCL info for CPC, ARES and - Powercool models with hunnox protocol (USB) Closes: #537 - * data/driver.list.in: driver.list.in: Add HCL info for Greencell - Micropower 600 (USB) Closes: #1080 - * data/driver.list.in: driver.list.in: Add HCL info for Crown CMU- - SP1200IEC (USB) Closes: #1014 - * data/driver.list.in: driver.list.in: Add HCL info for DigiTECH - 650VA (USB) Closes: #674 - * data/driver.list.in: driver.list.in: Add HCL info for Hunnox - devices (and new protocol subdriver) (USB) [#638] - * data/driver.list.in: driver.list.in: Add HCL info for nJoy Aten PRO - 3000 (SNMP) Closes: #1281 - -2022-04-25 Jim Klimov - - * docs/nut.dict: docs/nut.dict: add wc - * docs/nut.dict: docs/nut.dict: add uniq - -2022-04-25 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add a - CI_BUILDDIR=obj into docs scenario; name "out-of-tree builds" as - such - -2022-04-24 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: run some tests with - CI_BUILDDIR - * .gitignore, ci_build.sh: ci_build.sh: prepare for CI_BUILDDIR=obj - * ci_build.sh: ci_build.sh: introduce CI_BUILDDIR to handle out-of- - tree builds other than distcheck - * docs/man/Makefile.am, docs/man/index.txt, docs/man/nutupsdrv.txt, - docs/man/upsd.txt, docs/nut.dict: docs/man/nutupsdrv.txt + - index.txt + upsd.txt: use {builddir}/linkman-*.txt for included - data - * docs/man/Makefile.am: docs/man/Makefile.am: refactor - LINKMAN_INCLUDE_CONSUMERS - * docs/man/Makefile.am: docs/man/Makefile.am: introduce A2X_VERBOSE - * docs/nut-qa.txt, docs/nut.dict: docs/nut-qa.txt: mention "make - check-NIT-devel" helper target - * docs/man/victronups.txt: docs/man/victronups.txt: update link to - cable pinout Closes: #1371 - * configure.ac: configure.ac: fix enableval vs withval - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, - drivers/tripplite_usb.c, drivers/usb-common.c, drivers/usb- - common.h, drivers/usbhid-ups.c: drivers/usb-common.{h,c} and USB- - capable drivers: introduce warn_if_bad_usb_port_filename() Closes: - #1368 - * ci_build.sh: ci_build.sh: disable check-NIT by default in CI runs - for now - -2022-04-23 Jim Klimov - - * drivers/main.c: drivers/main.c: simplify detection of PROGNAME="lt- - DRIVERNAME" making it more reliable for some platforms - -2022-04-18 Jim Klimov - - * drivers/cyberpower-mib.c: drivers/cyberpower-mib.c: update - cyberpower_power_status[] with new values [#1377] - -2022-04-23 Jim Klimov - - * data/driver.list.in: Update driver.list.in - -2022-04-23 Jim Klimov - - * configure.ac: configure.ac: fix nut_enable_check_NIT - * ci_build.sh: ci_build.sh: "--enable-check-NIT" and "--enable- - maintainer-mode" for developer builds without a BUILD_TYPE - * ci_build.sh: ci_build.sh: "--enable-check-NIT" for CI builds - * tests/NIT/nit.sh: tests/NIT/nit.sh: fix renaming typo - * tests/NIT/nit.sh: tests/NIT/nit.sh: remove mktemp-ed TESTDIR when - we exit - * tests/NIT/nit.sh: tests/NIT/nit.sh: refactor with TESTDIR - * clients/upssched.c, common/common.c, drivers/clone-outlet.c, - drivers/clone.c, drivers/dstate.c, include/common.h, - server/sockdebug.c, server/sstate.c: check_unix_socket_filename() - to meaningfully abort when our paths are too long - * docs/man/clone.txt, docs/man/dummy-ups.txt: docs/man/clone.txt + - dummy-ups.txt: clarify the dependency caveats Clone drivers do not - require to run after upsd, but may need to start after the "real" - driver whose socket thay leech onto. - * tests/NIT/nit.sh: tests/NIT/nit.sh: limit how long we wait for - UPS1/UPS2 to begin responding - * configure.ac, docs/configure.txt, docs/nut-qa.txt, - tests/NIT/Makefile.am: tests/NIT/Makefile.am + configure.ac: - introduce --enable-check-NIT - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: re-wrap long lines - and reword - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: highlight that - upsrw can not define new variables - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: update notes for - dummy-once mode ability to re-read file only if it changes - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: update notes for - dummy-once mode - * docs/man/clone.txt, docs/man/dummy-ups.txt: docs/man/dummy-ups.txt - + clone.txt: cross-link two man pages to remind about similar use- - cases - -2022-04-23 Jim Klimov - - * data/driver.list.in: driver.list.in: Add HCL info for nJoy Keen 600 - (USB) Closes: #867 - -2022-04-22 Jim Klimov - - * tests/NIT/nit.sh: tests/NIT/nit.sh: - testcase_sandbox_upsc_query_timer(): do not waste time if we did - get the answer we want - * tests/NIT/nit.sh: tests/NIT/nit.sh: - testcase_sandbox_upsc_query_timer(): for slower testers out there, - wait one more cycle - * tests/NIT/nit.sh: tests/NIT/nit.sh: ignore message from NSS builds - Those tend to add lines like Init SSL without certificate database - so we should better grep for expected char sequence - -2022-04-22 Paweł Rapkiewicz - - * data/driver.list.in, drivers/ever-hid.c, scripts/upower/95-upower- - hid.hwdb: Confirm support for ECO Pro AVR CDS series EVER UPS This - commit confirms that EVER UPS line 'ECO Pro AVR CDS' is supported - by NUT, from nowon, nut-scanner will recognize EVER Ups as follows: - [nutdev1] driver = "usbhid-ups" port = "auto" vendorid = "2E51" - productid = "0000" product = "ECO PRO AVR CDS" serial = - "XXXXXXXXXXXXXXXXXXXXXXXXX" vendor = "EVER" bus = "003" - -2022-04-22 Jim Klimov - - * tests/NIT/nit.sh: tests/NIT/nit.sh: add - testgroup_sandbox_cppnit_simple_admin() to troubleshoot dummy-ups - data propagation - * tests/NIT/nit.sh: tests/NIT/nit.sh: - testcase_sandbox_start_drivers_after_upsd(): wait for UPS1 and UPS2 - to respond - * tests/cpputest-client.cpp: tests/cpputest-client.cpp: allow up to - 10 seconds for SET VAR to propagate into read-back value - * tests/.gitignore: GitIgnore tests/cppnit binary and logs - * docs/nut.dict: Update nut.dict - * tests/NIT/nit.sh: tests/NIT/nit.sh: refactor test cases into - smaller routines and groups, and allow to select NIT_CASE - optionally - * tests/NIT/nit.sh: tests/NIT/nit.sh: refactor stop_daemons() - * Makefile.am, tests/Makefile.am, tests/NIT/Makefile.am: - tests/NIT/Makefile.am: extend with check-NIT-devel for iterating - * drivers/dstate.c: drivers/dstate.c: log start of processing in - sock_arg() - * drivers/dstate.c: drivers/dstate.c: whitespace fix - * tests/NIT/nit.sh: tests/NIT/nit.sh: allow to tweak NUT_DEBUG_MIN - * tests/cpputest-client.cpp: tests/cpputest-client.cpp: trace values - read back after setting - * tests/cpputest-client.cpp: tests/cpputest-client.cpp: rename "s1" - original value reading - * scripts/python/Makefile.am: scripts/python/Makefile.am: clean *.pyc - and __pycache__/ if present - -2022-04-21 Jim Klimov - - * drivers/dummy-ups.c: drivers/dummy-ups.c: fix dummy-once mode for - relative path in port - * tests/NIT/nit.sh: tests/NIT/nit.sh: name the "dummy.seq" so it - loops by default - * drivers/main.c: drivers/main.c: better fix for handling of libtool- - named binaries - * tests/NIT/nit.sh: tests/NIT/nit.sh: if "Error: Driver not - connected" retry with UPSD started after drivers are running - * drivers/main.c: drivers/main.c: fix the handling of libtool-named - binaries - * tests/NIT/nit.sh: tests/NIT/nit.sh: "sed -i" requires an extension - (may be empty, in BSD must be a separate CLI token, in others must - be same token - not empty is ok for all) - * tests/NIT/nit.sh: tests/NIT/nit.sh: "sed -i" requires an extension - (may be empty, in BSD must be a separate CLI token) - * drivers/dummy-ups.c: drivers/dummy-ups.c: cover exhaustive - case(enum) with pragmas for diametral warnings - * tests/NIT/nit.sh: tests/NIT/nit.sh: extend with mode=... for dummy- - ups [#1385] - * NEWS, UPGRADING, docs/man/dummy-ups.txt, drivers/dummy-ups.c: - dummy-ups: do re-read a "dummy-once" file, though only if it - changes while the driver runs r the commit message for your - changes. Lines starting - * NEWS, UPGRADING, docs/man/dummy-ups.txt, drivers/dummy-ups.c: - dummy-ups: separate MODE_DUMMY_ONCE from MODE_DUMMY_LOOP Closes: - #1385 - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: small rewording - * drivers/dummy-ups.c: drivers/dummy-ups.c: refactor "mode" from - random defines to an enum - * common/str.c, include/str.h: include/str.h, common/str.c: add - str_ends_with() - * tests/NIT/nit.sh: tests/NIT/nit.sh: make sure ups.status is not - pre-defined empty in test sandbox - * tests/cpputest-client.cpp: tests/cpputest-client.cpp: - test_auth_user(): bail out if "ups.status" reply is empty - * tests/NIT/nit.sh: tests/NIT/nit.sh: report DEBUG_SLEEP mode more - usefully - * tests/NIT/nit.sh: tests/NIT/nit.sh: spell out 127.0.0.1 and ::1 if - detected supported on local system - do not rely on ping CLI alone - * tests/NIT/nit.sh: tests/NIT/nit.sh: spell out 127.0.0.1 and ::1 if - detected supported on local system - -2022-04-20 Jim Klimov - - * tests/NIT/nit.sh: tests/NIT/nit.sh: report issues more usefully for - troubleshooting CI - * tests/NIT/Makefile.am: tests/NIT/Makefile.am: use more portable - clumsier code - * drivers/main.c: drivers/main.c: accept "lt-PROGNAME" to run - libtool-wrapped builds during development - * tests/NIT/nit.sh: tests/NIT/nit.sh: Avoid dummies with TIMER flip- - flops for cppnit if we can - * tests/Makefile.am: tests/Makefile.am: do not run "cppnit" as part - of TESTS, only give a recipe to build it - * clients/nutclient.h, tests/Makefile.am, tests/NIT/nit.sh, - tests/cpputest-client.cpp: NutActiveClientTest: introduce C++ - NutActiveClientTest for NIT and similar uses - * tests/NIT/nit.sh: tests/NIT/nit.sh: log OVERALL results before - DEBUG_SLEEP - * tests/NIT/nit.sh: tests/NIT/nit.sh: refactor upsd.users passwords - as shell vars to ease reuse - * tests/NIT/nit.sh: tests/NIT/nit.sh: check that test_nutclient.py - was generated before running it; export NUT_PORT just once - * tests/NIT/nit.sh: tests/NIT/nit.sh: embed weak randomization of - NUT_PORT At least this little magic is better than a hardcoded - number: if several CI executors run `make check` at once on same - host, they now have a decent chance to not collide (not guaranteed - though) - * tests/NIT/nit.sh: tests/NIT/nit.sh: let caller customize NUT_PORT - * Makefile.am, configure.ac, tests/Makefile.am, tests/NIT/.gitignore, - tests/NIT/Makefile.am: Add tests/NIT/Makefile.am for - straightforward integration of the test suite - * configure.ac, tests/Makefile.am: configure.ac: fix detection of - cppunit on some platforms Note for posterity: CFLAGS go before - source, LDFLAGS+LIBS after source, in g++ cmdline - * Makefile.am: Makefile.am: fix "make check-docs" and siblings from - root dir - * Makefile.am: Makefile.am: let "make check-NIT" from root dir - * tests/NIT/README, tests/NIT/nit.sh: tests/NIT: warn in - docs/comments that starting pwd should be the BUILDDIR - * tests/Makefile.am: tests/Makefile.am: help check-NIT pass in - distcheck (cleaner) - * tests/NIT/README, tests/NIT/nit.sh: tests/NIT/README: update a bit - * tests/Makefile.am: tests/Makefile.am: help check-NIT pass in - distcheck - * docs/nut-qa.txt: docs/nut-qa.txt: mention NUT NIT and update links - to Ubuntu QART - * tests/NIT/nit.sh: tests/NIT/nit.sh: make some debug noise optional - * tests/NIT/nit.sh: tests/NIT/nit.sh: typo fix for SRCDIR - * tests/NIT/nit.sh: tests/NIT/nit.sh: sanity checks for BUILDDIR - * tests/NIT/nit.sh: tests/NIT/nit.sh: bail out quickly if got no - daemons to run - * tests/Makefile.am: tests/Makefile.am: call NIT suite - * tests/NIT/nit.sh: tests/NIT/nit.sh: document DEBUG_SLEEP a bit - -2022-04-19 Jim Klimov - - * tests/NIT/.gitignore, tests/NIT/README, tests/NIT/nit.sh: NIT: NUT - Integration Tests (usable PoC) [another take at issue #3] - * clients/upsrw.c, docs/man/upsrw.txt: upsrw: accept "-l" for listing - Closes: #1382 - * scripts/python/module/test_nutclient.py.in: test_nutclient.py.in: - allow to override NUT_PORT, NUT_USER, NUT_PASS - * conf/ups.conf.sample: conf/ups.conf.sample: update with info from - docs/man/ups.conf.txt - -2022-04-18 Jim Klimov - - * clients/nutclient.cpp: clients/nutclient.{cpp,h}: - deviceMaster()/devicePrimary(): add fallback handling with the - other keyword [#840, #1374] - * clients/nutclient.cpp, clients/nutclient.h, - clients/nutclientmem.cpp, clients/nutclientmem.h, - docs/man/libnutclient_misc.txt: clients/nutclient{mem}.{cpp,h} - docs/man/libnutclient_misc.txt: add PRIMARY handling [#840] - Closes: #1374 - * clients/nutclient.cpp, clients/nutclient.h, - docs/man/libnutclient_tcp.txt: clients/nutclient.{cpp,h} - docs/man/libnutclient_tcp.txt: fix timeout from long to time_t - Closes: #1376 - * clients/upsc.c, clients/upsclient.c, clients/upsclient.h, - clients/upscmd.c, clients/upsimage.c, clients/upslog.c, - clients/upsmon.h, clients/upsrw.c, clients/upsset.c, - clients/upsstats.c, docs/man/upscli_connect.txt, drivers/dummy- - ups.c: clients/upsclient.{c,h} and many clients + dummy-ups: fix - port from int to uint16_t Closes: #1379 - * docs/man/libnutclient_variables.txt: - docs/man/libnutclient_variables.txt: fix English - * clients/upsclient.h: clients/upsclient.h: fix whitespace - * clients/upsclient.c, clients/upsclient.h, - docs/man/upscli_readline.txt, docs/man/upscli_sendline.txt: - clients/upsclient.{c,h} docs/man/upscli_{read,send}line.txt: fix - timeout from long to time_t Closes: #1373 - * clients/nutclient.cpp, clients/nutclient.h, - docs/man/libnutclient_tcp.txt, docs/nut.dict: - clients/nutclient.{cpp,h}: fix port type from unsigned short to - uint16_t Closes: #1375 - * docs/man/Makefile.am: docs/man/Makefile.am: `$( - - * docs/man/Makefile.am: docs/man/Makefile.am: abstract filenames into - LINKMAN_INCLUDE_GENERATED macro - -2022-04-16 Jim Klimov - - * docs/man/Makefile.am: docs/man/Makefile.am: DOCBUILD_BEGIN: work - around older BSD make not seeing sources not present in builddir - It seems to resolve single-source documents well, but fails to find - the upsd.txt which depends on linkman*-names.txt and build a proper - relative path to it. - * docs/man/Makefile.am: docs/man/Makefile.am: ensure linkman- - drivertool*names.txt are in builddir - * docs/man/Makefile.am: docs/man/Makefile.am: ensure linkman- - drivertool*names.txt are in A2X_OUTDIR - * docs/man/Makefile.am: docs/man/Makefile.am: avoid spurious - regeneration of linkman-drivertool*names.txt whenever we reference - them - * docs/man/Makefile.am: docs/man/Makefile.am: generate linkman- - drivertool*names.txt independent of current dir being srcdir - * ci_build.sh: ci_build.sh: "cat" the "git diff" - -2022-04-15 Jim Klimov - - * docs/man/libnutclient_general.txt, docs/man/libnutclient_misc.txt, - docs/man/libnutclient_tcp.txt, docs/man/libnutclient_variables.txt, - docs/man/libupsclient-config.txt, docs/nut.dict: - docs/man/libnutclient*.txt: wrap long lines, minor rephrase, bullet - points - * docs/man/libnutclient_commands.txt, - docs/man/libnutclient_devices.txt: - docs/man/libnutclient_devices.txt, libnutclient_commands.txt: - synopsis for strarr - * docs/man/libnutclient_devices.txt: - docs/man/libnutclient_devices.txt: wrap long lines, minor rephrase, - bullet points - * docs/man/libnutclient_commands.txt: - docs/man/libnutclient_commands.txt: wrap long lines, minor - rephrase, bullet points; added optional param arg in API - * docs/man/upscli_strerror.txt: docs/man/upscli_strerror.txt: fix - return type modifier to const - * docs/man/upscli_add_host_cert.txt, docs/man/upscli_cleanup.txt, - docs/man/upscli_disconnect.txt, docs/man/upscli_fd.txt, - docs/man/upscli_get.txt, docs/man/upscli_init.txt, - docs/man/upscli_list_next.txt, docs/man/upscli_readline.txt, - docs/man/upscli_sendline.txt, docs/man/upscli_splitaddr.txt: - docs/man/upscli*.txt: wrap long lines, minor rephrase - * docs/man/nutscan_init.txt, docs/man/nutscan_new_device.txt, - docs/man/nutscan_scan_usb.txt: docs/man/nutscan*.txt: document - methods with (void) arg list as such - * docs/man/Makefile.am, docs/man/index.txt, docs/man/nutscan.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_get_serial_ports_list.txt, - docs/man/nutscan_init.txt, docs/man/nutscan_new_device.txt, - docs/man/nutscan_scan_avahi.txt, - docs/man/nutscan_scan_eaton_serial.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, - docs/man/nutscan_scan_xml_http_range.txt: - docs/man/nutscan_scan_xml_http_range.txt: document the method which - got extended from original nutscan_scan_xml_http() doing just a - local broadcast - * docs/man/nutscan_scan_ipmi.txt: docs/man/nutscan_scan_ipmi.txt: - document the method which now is implemented - * docs/man/nutscan.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_free_device.txt, - docs/man/nutscan_get_serial_ports_list.txt, - docs/man/nutscan_init.txt, docs/man/nutscan_new_device.txt, - docs/man/nutscan_scan_avahi.txt, - docs/man/nutscan_scan_eaton_serial.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: - docs/man/nutscan*.txt: wrap long lines, minor rephrase, fix - timeouts to useconds_t - * docs/nut.dict: docs/nut.dict: spellcheck drivertool - * docs/man/apcsmart-old.txt, docs/man/apcsmart.txt, - docs/man/asem.txt, docs/man/bcmxcp_usb.txt, docs/man/liebert- - esp2.txt, docs/man/macosx-ups.txt, docs/man/microsol-apc.txt, - docs/man/nut.conf.txt, docs/man/nutdrv_atcl_usb.txt, - docs/man/nutdrv_qx.txt, docs/man/nutdrv_siemens_sitop.txt, - docs/man/oneac.txt, docs/man/optiups.txt, docs/man/upscode2.txt, - docs/man/usbhid-ups.txt: docs/man/*.txt: reformat AUTHOR(S) and - INTERNET RESOURCES blocks to common style - * docs/man/upsdrvsvcctl.txt: docs/man/upsdrvsvcctl.txt: list Jim - Klimov as the AUTHOR - * docs/man/nut-driver-enumerator.txt: docs/man/nut-driver- - enumerator.txt: list Jim Klimov as the AUTHOR - * docs/man/snmp-ups.txt: docs/man/snmp-ups.txt: list AUTHORS as a - bulleted list and add Jim Klimov - * docs/man/snmp-ups.txt: docs/man/snmp-ups.txt: wrap long lines and - reword a bit - * docs/man/optiups.txt: docs/man/optiups.txt: wrap long lines - * docs/man/phoenixcontact_modbus.txt: - docs/man/phoenixcontact_modbus.txt: wrap long lines - * docs/man/belkinunv.txt: docs/man/belkinunv.txt: add link to - protocol description copy on NUT site - * docs/support.txt: docs/support.txt: mention github instead of - subversion - * docs/man/.gitignore, docs/man/Makefile.am, docs/man/index.txt, - docs/man/nutupsdrv.txt, docs/man/upsd.txt: docs/man/index.txt, - upsd.txt, nutupsdrv.txt: generate the up-to-date list of drivers, - current for each iteration - * docs/man/index.txt, docs/man/nutupsdrv.txt, docs/man/upsd.txt: - docs/man/upsd.txt, nutupsdrv.txt, index.txt: move common - nutupsdrv[8] from the bulk of driver list - * docs/man/nutupsdrv.txt, docs/man/upsd.txt: docs/man/upsd.txt, - nutupsdrv.txt: generate current list of drivers - * docs/man/index.txt: docs/man/index.txt: generate current list of - drivers, separate "Driver Control" title - * docs/man/nutupsdrv.txt, docs/man/upsd.txt: docs/man/upsd.txt, - nutupsdrv.txt: reformat lists of drivers and tools to bullet lists - * docs/Makefile.am: docs/Makefile.am: DOCBUILD_BEGIN: symlink images/ - ONLY for PDF generation - * ci_build.sh: ci_build.sh: add notes to Consider `--enable- - maintainer-mode` - * .gitignore: GitIgnore IDEA metadata files - * docs/.gitignore: GitIgnore more intermediate XML files from docs - generation - -2022-04-14 Jim Klimov - - * docs/man/nutscan_display_parsable.txt, - docs/man/nutscan_display_ups_conf.txt, - docs/man/nutscan_free_device.txt, - docs/man/nutscan_get_serial_ports_list.txt: docs/man/nutscan*.txt: - fix formatting and typos - * docs/man/upscli_get.txt, docs/man/upscli_init.txt, - docs/man/upscli_list_start.txt: docs/man/upscli*.txt: fix sample - source formatting - * docs/man/upsmon.txt: docs/man/upsmon.txt: reword a dangling - sentence - * docs/man/tripplite_usb.txt: docs/man/tripplite_usb.txt: fix - formatting - * docs/man/riello_ser.txt: docs/man/riello_ser.txt: fix formatting - * docs/man/riello_usb.txt: docs/man/riello_usb.txt: fix formatting - * docs/man/snmp-ups.txt: docs/man/snmp-ups.txt: fix sample source - formatting - * docs/man/socomec_jbus.txt: docs/man/socomec_jbus.txt: fix - formatting and typos - * docs/man/Makefile.am, docs/nut.dict: docs/man/Makefile.am: list the - socomec_jbus.txt - * docs/man/pijuice.txt: docs/man/pijuice.txt: fix formatting - * docs/man/nutdrv_qx.txt: docs/man/nutdrv_qx.txt: fix formatting - * docs/man/nutdrv_atcl_usb.txt: docs/man/nutdrv_atcl_usb.txt: fix - formatting - * docs/man/nut.conf.txt: docs/man/nut.conf.txt: fix sample source - formatting - * docs/man/mge-utalk.txt: docs/man/mge-utalk.txt: fix formatting - * docs/man/liebert-esp2.txt: docs/man/liebert-esp2.txt: fix - formatting - * docs/man/clone.txt: docs/man/clone.txt: fix sample source - formatting - * docs/man/bestups.txt, docs/man/blazer-common.txt, - docs/man/masterguard.txt: docs/man/blazer-common.txt, - masterguard.txt, bestups.txt: fix formatting [#1361] - * docs/man/adelsystem_cbi.txt: docs/man/adelsystem_cbi.txt: fix - formatting - * docs/sock-protocol.txt: docs/sock-protocol.txt: fix formatting - * docs/snmp-subdrivers.txt: docs/snmp-subdrivers.txt: small typo - * docs/packager-guide.txt: docs/packager-guide.txt: reshuffle known - names - * docs/nut-qa.txt: docs/nut-qa.txt: list a few more tools we use - * TODO, docs/nut-qa.txt: Fix remaining links to asciidoc.org - * docs/nut-names.txt: docs/nut-names.txt: fix table formatting - * docs/new-clients.txt: docs/new-clients.txt: fix sample source - formatting - * docs/net-protocol.txt: docs/net-protocol.txt: fix version table - formatting - * docs/FAQ.txt: docs/FAQ.txt: fix formatting, extend some notes - * docs/nut.dict: Update nut.dict - * docs/developers.txt: docs/developers.txt: fix formatting, extend - some notes - * docs/developer-guide.txt: docs/developer-guide.txt: fix formatting; - update URL to evolution500.seq - * docs/design.txt: docs/design.txt: fix formatting; note FIXMEs for - documenting TRACKING support - * docs/daisychain.txt: docs/daisychain.txt: fix formatting - * drivers/snmp-ups.h: drivers/snmp-ups.h: update comment to clarify - the meaning of SU_TYPE_DAISY_1 and SU_TYPE_DAISY_2 - * docs/configure.txt: docs/configure.txt: fix formatting, add titles, - extend some notes - * docs/configure.txt: docs/configure.txt: add a section on modbus - drivers - * docs/configure.txt: docs/configure.txt: link to powerman project - * docs/configure.txt: docs/configure.txt: fix formatting, add driver - type titles, extend some notes - * docs/config-prereqs.txt: docs/config-prereqs.txt: fix formatting, - extend some notes - -2022-04-14 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am: A2X_COMMON_OPTS: use "-- - attribute=..." consistently - * docs/Makefile.am: docs/Makefile.am: have "images/" in A2X_OUTDIR - (fallout of #1152) Closes: #1365 - -2022-04-14 Jim Klimov - - * docs/solaris-usb.txt: docs/solaris-usb.txt: drop suggestions about - building special libusb-1.0/0.1 branches - * docs/solaris-usb.txt: docs/solaris-usb.txt: fix formatting, extend - some notes - * docs/solaris-usb.txt: docs/solaris-usb.txt: add a NOTE for USB - drivers ignoring port option [#1368] - * docs/config-notes.txt: docs/config-notes.txt: fix formatting, - extend some notes and warnings, and service-driven life-cycle - * docs/config-notes.txt: docs/config-notes.txt: document - ALLOW_NO_DEVICE for upsd.conf [#766, #837] - * docs/config-notes.txt: docs/config-notes.txt: reformat and extend - the NOTE for USB drivers ignoring port option [#1368] - * ci_build.sh, docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci- - farm-lxc-setup.txt: fix formatting, extend on Jenkins agent setup - * ci_build.sh: ci_build.sh: use "gmake" for "./ci_build.sh - spellcheck" if available and no particular MAKE was requested - - fall back to "make" if "gmake" is not available - -2022-04-13 Jim Klimov - - * docs/asciidoc.txt: docs/asciidoc.txt: update link to the Asciidoc - Manual (and project now on github) - -2022-04-12 Jim Klimov - - * Makefile.am: Makefile.am: define dependencies between recipes for - dist* and package; tarball, sig and checksum filenames - -2022-04-10 Jim Klimov - - * docs/daisychain.txt, docs/man/adelsystem_cbi.txt, - docs/man/al175.txt, docs/man/apcsmart-old.txt, - docs/man/apcsmart.txt, docs/man/apcupsd-ups.txt, docs/man/asem.txt, - docs/man/bcmxcp.txt, docs/man/bcmxcp_usb.txt, docs/man/belkin.txt, - docs/man/belkinunv.txt, docs/man/bestfcom.txt, - docs/man/bestfortress.txt, docs/man/bestuferrups.txt, - docs/man/bestups.txt, docs/man/blazer-common.txt, - docs/man/clone.txt, docs/man/dummy-ups.txt, docs/man/etapro.txt, - docs/man/everups.txt, docs/man/gamatronic.txt, - docs/man/generic_modbus.txt, docs/man/genericups.txt, - docs/man/hosts.conf.txt, docs/man/huawei-ups2000.txt, - docs/man/isbmex.txt, docs/man/ivtscd.txt, - docs/man/libnutclient.txt, docs/man/libnutclient_commands.txt, - docs/man/libnutclient_devices.txt, - docs/man/libnutclient_general.txt, docs/man/libnutclient_misc.txt, - docs/man/libnutclient_tcp.txt, docs/man/libnutclient_variables.txt, - docs/man/libupsclient-config.txt, docs/man/liebert-esp2.txt, - docs/man/liebert.txt, docs/man/macosx-ups.txt, - docs/man/masterguard.txt, docs/man/metasys.txt, docs/man/mge- - shut.txt, docs/man/mge-utalk.txt, docs/man/microdowell.txt, - docs/man/microsol-apc.txt, docs/man/netxml-ups.txt, docs/man/nut- - driver-enumerator.txt, docs/man/nut-ipmipsu.txt, docs/man/nut- - recorder.txt, docs/man/nut-scanner.txt, docs/man/nut.conf.txt, - docs/man/nutdrv_atcl_usb.txt, docs/man/nutdrv_siemens_sitop.txt, - docs/man/nutscan.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_get_serial_ports_list.txt, - docs/man/nutscan_init.txt, docs/man/nutscan_new_device.txt, - docs/man/nutscan_scan_avahi.txt, - docs/man/nutscan_scan_eaton_serial.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, docs/man/nutupsdrv.txt, - docs/man/oneac.txt, docs/man/optiups.txt, - docs/man/phoenixcontact_modbus.txt, docs/man/pijuice.txt, - docs/man/powercom.txt, docs/man/powerman-pdu.txt, - docs/man/powerpanel.txt, docs/man/rhino.txt, - docs/man/richcomm_usb.txt, docs/man/riello_ser.txt, - docs/man/riello_usb.txt, docs/man/safenet.txt, docs/man/skel.txt, - docs/man/snmp-ups.txt, docs/man/socomec_jbus.txt, - docs/man/solis.txt, docs/man/tripplite.txt, - docs/man/tripplite_usb.txt, docs/man/tripplitesu.txt, - docs/man/ups.conf.txt, docs/man/upsc.txt, - docs/man/upscli_add_host_cert.txt, docs/man/upscli_cleanup.txt, - docs/man/upscli_connect.txt, docs/man/upscli_disconnect.txt, - docs/man/upscli_get.txt, docs/man/upscli_init.txt, - docs/man/upscli_list_next.txt, docs/man/upscli_list_start.txt, - docs/man/upscli_readline.txt, docs/man/upscli_sendline.txt, - docs/man/upscli_splitname.txt, docs/man/upsclient.txt, - docs/man/upscmd.txt, docs/man/upscode2.txt, docs/man/upsd.conf.txt, - docs/man/upsd.txt, docs/man/upsd.users.txt, docs/man/upsdrvctl.txt, - docs/man/upsdrvsvcctl.txt, docs/man/upsimage.cgi.txt, - docs/man/upslog.txt, docs/man/upsmon.conf.txt, docs/man/upsmon.txt, - docs/man/upsrw.txt, docs/man/upssched.conf.txt, - docs/man/upssched.txt, docs/man/upsset.cgi.txt, - docs/man/upsset.conf.txt, docs/man/upsstats.cgi.txt, - docs/man/upsstats.html.txt, docs/man/usbhid-ups.txt, - docs/man/victronups.txt, docs/nut-names.txt, docs/packager- - guide.txt: docs/man: be sure to keep a blank line after SYNOPSIS - and other titles [#1362] - * docs/FAQ.txt: docs/FAQ.txt: clarify about nutdrv_qx - * UPGRADING: UPGRADING: detail about "OBSOLETION WARNING" for - "Megatec Q*" - * docs/man/bestups.txt, docs/man/blazer-common.txt, - docs/man/masterguard.txt, drivers/bestups.c, drivers/blazer.c, - drivers/masterguard.c: Report deprecation messages when starting - older Qx drivers And document similarly in their man pages - (bestups, blazer, masterguard) - * docs/FAQ.txt, docs/nut.dict: docs/FAQ.txt: add more reasons and - symptoms that a running driver disappears - * docs/FAQ.txt, docs/nut.dict: docs/FAQ.txt: suggest checking Linux - USB HID Quirk [#630] - * ci_build.sh: ci_build.sh: use "gmake" for "./ci_build.sh - spellcheck" if available and no particular MAKE was requested - * docs/FAQ.txt, docs/nut.dict: docs/FAQ.txt: suggest how to pick - drivers for bogus vendor IDs - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: bump version for #1356 - and #1359 - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: bump version for - #584 - * drivers/mge-hid.c: drivers/mge-hid.c: bump version for #1357 - -2022-04-09 Stuart Henderson - - * drivers/usbhid-ups.c: reinstate handling for STATUS(ONLINE) in - usbhid-ups The recent onlinedischarge changes removed support for - some STATUS(ONLINE) cases, affecting at least CP1300EPFCLCD - this - brings them back. - -2022-04-08 Jim Klimov - - * NEWS: NEWS: note Liebert/Phoenixtec vs MGE HID handling of VendorID - 0x06da - * drivers/mge-hid.c: drivers/mge-hid.c: mge_claim(): test that - VendorID==PHOENIXTEC 0x06da has also Vendor or Product containing - "AEG" - * data/driver.list.in: data/driver.list.in: update for "PowerWalker - VFI 2000 TGS" via "usbhid-ups" [#564] - * docs/man/usbhid-ups.txt: docs/man/usbhid-ups.txt: update for "some - PowerWalker models" - -2022-04-08 Jim Klimov - - * NEWS: NEWS: tripplite_usb recognizes "3005" protocol for NUT v2.7.5 - -2022-04-08 Jim Klimov - - * NEWS, docs/nut.dict: NEWS: improve PowerWalker VFI 2000 TGS support - in NUT v2.7.5 - * drivers/liebert-hid.c, drivers/mge-hid.c: drivers/liebert-hid.c: - get PowerWalker VFI 2000 TGS working, read values correctly This - reverts commit c38b45a56a9d1283657d62a9fa1ed1af5daa1ba2 which added - such support into mge-hid.c (at risk to proper support of earlier - handled devices by various vendors), and transplants the new lines - into liebert-hid.c See issue #560 for a HID walk from the device - in question; data like that may help expand liebert-hid.c later - (its table seems to map a lot less field names than mge-hid.c, but - not sure if "true" Liebert/Phoenixtec HID devices support the - rest). - -2022-04-07 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: instcmd(): do not risk - NULL-dereference debugging about "using Path" with a NULL hidpath - (just in case) [#1346] - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: instcmd(): do not risk - NULL-dereference debugging about "using Path" too early [#1346] - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: instcmd(): wrap some - long lines - -2022-04-07 Jim Klimov - - * docs/nut.dict: docs/nut.dict: update spellchecker - * docs/nut.dict: docs/nut.dict: update spellchecker - -2022-04-05 Jim Klimov - - * docs/man/upsmon.conf.txt: docs/man/upsmon.conf.txt: fix markup - (pluses make emphasis and xmllint goes upset) - -2022-04-04 Jim Klimov - - * INSTALL.nut: INSTALL.nut: add another perspective on packages vs - source builds; refer to config-prereqs.txt - * INSTALL.nut: INSTALL.nut: trim trailing spaces - * README: README: trim trailing spaces - * README: README: clarify use of github - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - clarify pre-installation of python and perl - * docs/config-prereqs.txt: docs/config-prereqs.txt: clarify that non- - GNU makes should work well - -2022-04-02 Jim Klimov - - * scripts/python/app/NUT-Monitor: scripts/python/app/NUT-Monitor: fix - typo, thank CI - * UPGRADING: UPGRADING: detail the Py2/Py3 packages - * UPGRADING: UPGRADING: make note of systemd and Py2/3 changes on top - for packagers to see - * NEWS: NEWS: detail the split of NUT-Monitor and new wrapper script - * scripts/python/app/README: scripts/python/app/README: update with - sections; list Desktop menu integration and Kudos - * scripts/python/app/.gitignore, scripts/python/app/NUT-Monitor, - scripts/python/app/nut-monitor.desktop: Introduce new NUT-Monitor - name-holder as a wrapping script to pick usable implementation - * scripts/python/app/.gitignore: GitIgnore newly named variants of - NUT-Monitor-py2gtk2 and NUT-Monitor-py3qt5 - * scripts/python/app/README: scripts/python/app/README: document how - to get localized UI in dev/testing - * scripts/python/app/README: scripts/python/app/README: document how - to run UI app in-place - * m4/nut_check_python.m4: m4/nut_check_python.m4: extend list of some - python interpreter filenames - * configure.ac, scripts/python/Makefile.am, scripts/python/app/{NUT- - Monitor.in => NUT-Monitor-py2gtk2.in}, scripts/python/app/nut- - monitor-py2gtk2.desktop, scripts/python/app/nut-monitor.desktop, - scripts/python/app/{ => ui}/gui-1.3.glade, scripts/python/app/{ => - ui}/gui-1.3.glade.h: Rename NUT-Monitor UI app to NUT-Monitor- - py2gtk2 - * configure.ac, scripts/python/Makefile.am, scripts/python/app/{NUT- - Monitor.in => NUT-Monitor-py3qt5.in}, scripts/python/app/nut- - monitor-py3qt5.desktop, scripts/python/app/nut-monitor.desktop: - Rename modernized NUT-Monitor UI app to NUT-Monitor-py3qt5 - -2022-02-21 Luke Dashjr - - * scripts/python/Makefile.am, scripts/python/README, - scripts/python/app/NUT-Monitor.in, scripts/python/app/README, - scripts/python/app/gui-1.3.glade, - scripts/python/app/gui-1.3.glade.h, scripts/python/app/nut- - monitor.desktop, scripts/python/app/ui/aboutdialog1.ui, - scripts/python/app/ui/dialog1.ui, scripts/python/app/ui/dialog2.ui, - scripts/python/app/ui/window1.ui: NUT-Monitor: Port to - Python3+PyQt5 - -2022-02-13 Luke Dashjr - - * scripts/python/app/NUT-Monitor.in: NUT-Monitor: Run py2to3-3.10 - -2022-04-01 Jim Klimov - - * scripts/python/README: scripts/python/README: clarify that - `test_nutclient.py` requires an `upsd` running - * scripts/python/module/PyNUT.py.in: - scripts/python/module/PyNUT.py.in: fix typo (fallout of #840) - * docs/config-prereqs.txt: docs/config-prereqs.txt: fix typos in - OpenIndiana chapter - * NEWS, docs/net-protocol.txt, docs/nut.dict, server/netcmds.h: Add - "PROTVER" as alias to "NETVER" for NUT v2.8.0 Closes: #1347 - -2022-03-31 Jim Klimov - - * Makefile.am, docs/Makefile.am, docs/man/Makefile.am: - {.,docs,docs/man}/Makefile.am: add "all-man" target to build all - possible man pages (vs ones for enabled drivers), and weave this - and check targets to parent makefiles - * ci_build.sh: ci_build.sh: introduce shortcut for - BUILD_TYPE=fightwarn-all - * ci_build.sh: ci_build.sh: in BUILD_TYPE=default-all-errors report - visibly when no failures happened - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: treat - /usr/pkg/include as -isystem - * common/parseconf.c, common/str.c, drivers/apcsmart-old.c, - drivers/apcsmart.c, drivers/mge-utalk.c, drivers/serial.c, - drivers/snmp-ups.c, server/conf.c: Cast (size_t)(char) for - isprint(), isspace(), isdigit(), toupper(), etc. who may be macros - and use it as array subscript (due to sys/ctype_inline.h) - -2022-03-30 Jim Klimov - - * autogen.sh: autogen.sh: suggest to export PYTHON=python-x.y - * autogen.sh: autogen.sh: detect more python-x.y filenames - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - add chapter for NetBSD 9.2 builder setup - * docs/config-prereqs.txt: docs/config-prereqs.txt: drop bogus - command (copy-paste typo) - -2022-03-29 Jim Klimov - - * .github/pull_request_template.md: Update pull_request_template.md - -2022-03-28 Benjamin Berg - - * scripts/upower/95-upower-hid.hwdb, scripts/upower/95-upower- - hid.rules, tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: Use hwdb for - UPower rules - -2022-03-28 Jim Klimov - - * ci_build.sh: ci_build.sh: recognize more "*bsd" CI_OS_NAME values - * ci_build.sh: ci_build.sh: do not make noise about non-ubiquitous - options to "uname" program - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: set the onlinedischarge - variable based on flag presence - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: drop - DEFAULT_ONLINEDISCHARGE to match "VAR_FLAG" semantics - * docs/nut.dict: docs/nut.dict: add onlinedischarge - * NEWS: NEWS: clarify that NUT 2.8.0 is new name for old planned NUT - 2.7.5 - * NEWS: NEWS: added usbhid-ups onlinedischarge for NUT v2.7.5 - * docs/man/usbhid-ups.txt: docs/man/usbhid-ups.txt: document - onlinedischarge - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix var usage for - upsname - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix format string for - "onlinedischarge" help - -2022-03-26 Jim Klimov - - * ci_build.sh: ci_build.sh: default to clang if also available when - default gcc is too old - -2022-03-25 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: update openbsd - tools for man-page builds - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: avoid failure-prone - build toolkits for manpage tests - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: avoid - configure noise message - * m4/ax_check_compile_flag.m4: m4/ax_check_compile_flag.m4: extend to - check conftest.err log about unsupported flags - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: define - axisCombos_COMPILER_GCC_TOO_OLD near other compiler-related combos - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: fix scenarios with - "non-fatal warnings" that had BUILD_WARNFATAL=yes anyway (copy- - paste issue) - -2022-03-24 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: avoid even running - axisCombos_GCC_TOO_OLD where we require fatal warnings - * configure.ac: configure.ac: for very old GCC where we are not in - control of warnings, make them non-fatal always (for "auto" level) - * drivers/libhid.c: drivers/libhid.c: clang-3.4 does not know - "-Wtautological-type-limit-compare" either - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: make use of - dsbcStageTimeoutSettings - -2022-03-23 Jim Klimov - - * configure.ac: configure.ac: with nut_enable_warnings=auto, avoid - fatal warnings with GCC 4.3 or older (no support for diags pragmas) - * configure.ac: configure.ac: report initial nut_enable_warnings - (default or argument) - * configure.ac: configure.ac: pre-set nut_enable_warnings=auto by - default (not hardcoded "medium") - * ci_build.sh: ci_build.sh: set BUILD_WARNOPT and BUILD_WARNFATAL to - "auto" for BUILD_TYPE="fightwarn"* shortcuts (survive antique - compilers, default to medium/fatal normally) - * ci_build.sh: ci_build.sh: comment BUILD_WARNOPT setting for - BUILD_TYPE="fightwarn"* shortcuts - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: enable back - the "-isystem" tuning to not complain about packaged third-party - headers - * drivers/libhid.c: drivers/libhid.c: make use of - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TAUTOLOGICAL_TYPE_LIMIT_COMPARE - (clang-6.0.0 of OpenBSD 6.4) - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - [HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TAUTOLOGICAL_TYPE_LIMIT_COMPARE - * configure.ac: configure.ac: specify AC_PREREQ([2.64]) - * m4/nut_check_libgd.m4: m4/nut_check_libgd.m4: fix detection of - gdImagePng() with additional link requirements - * configure.ac: configure.ac: document practical requirement for - AC_PREREQ(2.64) - * NEWS, UPGRADING, docs/config-notes.txt, docs/man/upscmd.txt, - docs/man/upsrw.txt: docs, NEWS, UPGRADING: rename 2.7.5 to 2.8.0 in - text that appeared after 2.7.4 - * docs/net-protocol.txt: docs/net-protocol.txt: document "PRIMARY" as - alias to "MASTER" - * docs/net-protocol.txt: docs/net-protocol.txt: bump next release - from 2.7.5 to 2.8.0 - * configure.ac: configure.ac: bump NUT_NETVERSION to 1.3 to match - docs/net-protocol.txt - -2022-03-21 Jim Klimov - - * scripts/subdriver/gen-snmp-subdriver.sh: scripts/subdriver/gen- - snmp-subdriver.sh: fix back markup for mib2nut_info_t lines - Follow-up for #1327 Thanks to @aquette - -2022-03-19 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: qx_ups_walk(): log the - change of estimated remaining runtime - * NEWS: NEWS: nutdrv_qx: enhanced estimation of remaining battery - runtime for NUT v2.7.5 - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: comment about source and - data for estimated runtime corrections - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix trailing whitespace - * ci_build.sh: ci_build.sh: when parsing BUILD_TYPE=fightwarn, do not - default NUT_SSL_VARIANTS and NUT_USB_VARIANTS to "auto" - so - building just one variant at most, even if agent supports more - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: snr_command(): adapt to - usb_ctrl_charbuf - -2022-03-16 Jim Klimov - - * drivers/libhid.h, drivers/usbhid-ups.c: drivers/libhid.h, usbhid- - ups.c: define HID_DEV_HANDLE_CLOSED usable for both SHUT and USB - cases - -2022-03-15 Jim Klimov - - * drivers/libusb0.c, drivers/libusb1.c: drivers/libusb{0,1}.c: retry - getting Manufacturer/Product/Serial a few times if failed on the - first Kudos to Sam Varshavchik for proposing this code change in - discussion https://github.com/networkupstools/nut/issues/414 - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: try to close libusb - handle before reconnecting (from discussion of issue #414) - -2022-03-16 Jim Klimov - - * NEWS: NEWS: added driver adelsystem_cbi for NUT v2.7.5 - * drivers/adelsystem_cbi.h: drivers/adelsystem_cbi.h: functions - implemented in a header should be static - * drivers/adelsystem_cbi.c: drivers/adelsystem_cbi.c: extend pragmas - for covered/requred "default" case to work with clang-3.4 - -2022-03-15 Jim Klimov - - * ci_build.sh: ci_build.sh: if we only build USB variant(s), do not - shy away from testing some SSL and whatever drivers we can - -2022-03-15 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: currently refrain - from clang-13 in OI - * docs/config-prereqs.txt: docs/config-prereqs.txt: mark aspell as - recommended (it is not big) - * docs/config-prereqs.txt: docs/config-prereqs.txt: update - instructions for symlinks on OI - * docs/config-prereqs.txt: docs/config-prereqs.txt: fix typos in - instructions for OpenIndiana, and update for new toolkits available - in 2022 - -2022-03-12 Jim Klimov - - * ci_build.sh: ci_build.sh: add support for CI_CROSSBUILD_HOST and/or - CI_CROSSBUILD_TARGET settings [#1294, #1289, #1334] - * ci_build.sh: ci_build.sh: check for "gd" as one of names gdlib can - go by - * ci_build.sh: ci_build.sh: use PKG_CONFIG variable if provided (fall - back to pkg-config from PATH, but only for this script itself) - [#710] - * drivers/salicru-hid.c: Update salicru-hid.c Cosmetic fixes - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: improve - checks for actually present priv/auth protocols [#1289] Great - thanks to @eklinedi on GitHub for finding the issue and - investigating ways to fix it - * drivers/snmp-ups.h: drivers/snmp-ups.h: net-snmp after v5.9.1 does - not declare ONE_SEC that our code uses; stash the definiton - * configure.ac, m4/ax_c_pragmas.m4, m4/ax_run_or_link_ifelse.m4, - m4/nut_compiler_family.m4: Introduce m4/ax_run_or_link_ifelse.m4 to - facilitate cross-builds [#1289] - * ci_build.sh: ci_build.sh: report OS_* envvar values if passed by - caller - -2022-03-12 juantonio - - * drivers/salicru-hid.c: Add tested descriptors for Salicru Twin Pro - 2 - -2022-03-12 Jim Klimov - - * ci_build.sh: ci_build.sh: expand a bit CI_OS_HINT detection on - linux systems - -2022-03-11 Jim Klimov - - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: quiesce - -Wreserved-identifier (clang 13+) that acts up on system headers - * drivers/riello.c: drivers/riello.c: riello_parse_re(): assign - Pout#W and Pout#VA from pom_long not pom_word - * drivers/belkinunv.c: drivers/belkinunv.c: instcmd(): find use for - "r" to at least report failed cmds - -2022-03-11 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: rearrange - packages to not require heavy ones by default dependency footprint - (aspell, docs generation and libgd) - * server/netuser.c: server/netuser.c: copy-paste typo fix - * NEWS, UPGRADING: NEWS: rename pending NUT release from 2.7.5 to - 2.8.0 (config files using new keywords are not backwards- - compatible, not usable by old binaries) - * NEWS: NEWS: added battery.mfr.date APC HID UPS setting for NUT - v2.7.5 - * NEWS, docs/nut.dict: NEWS: added socomec_jbus driver for NUT v2.7.5 - * server/netuser.c: server/netuser.c: net_master(): provide more - details about client using deprecated commands - * docs/net-protocol.txt: docs/net-protocol.txt: update for "PRIMARY" - netcmd support (alias of "MASTER") [issue #840] - * NEWS: NEWS: update for "PRIMARY" netcmd support (alias of "MASTER") - [issue #840] - * scripts/python/module/PyNUT.py.in, server/netcmds.h, - server/netuser.c, server/netuser.h: netcmds.h, netuser.{c,h}, - PyNUT.py.in: deprecate protocol "MASTER" command in favor of - "PRIMARY" [issue #840] - * server/upsd.c: server/upsd.c: check_command(): instrument with - upsdebugx() - * server/netuser.c: server/netuser.c: net_login(): instrument with - upsdebugx() - * clients/upsmon.c: clients/upsmon.c: apply_for_primary(): request - elevation by PRIMARY, fall back to MASTER (for older upsd builds) - * NEWS, UPGRADING: NEWS: rename pending NUT release from 2.7.5 to - 2.8.0 (config files using new keywords are not backwards- - compatible, not usable by old binaries) - -2022-03-10 Jim Klimov - - * scripts/subdriver/gen-snmp-subdriver.sh: gen-snmp-subdriver.sh: put - back indented CFILE markup (fix here-docs, instead of - unmaintainable printf) - * scripts/subdriver/gen-snmp-subdriver.sh: gen-snmp-subdriver.sh: fix - valid chars HOSTNAME input (e.g. IP) - -2022-03-10 Jim Klimov - - * scripts/subdriver/gen-snmp-subdriver.sh: Update gen-snmp- - subdriver.sh Quote variable expansions; replace `echo -n` with a - more portable `printf` - -2022-03-10 Arnaud Quette - - * scripts/subdriver/gen-snmp-subdriver.sh: SNMP subdriver generation - script: minor reformatting - * scripts/subdriver/gen-snmp-subdriver.sh: SNMP subdriver generation - script: fixes and improvements - -2022-03-08 Jim Klimov - - * tests/getvaluetest.c: tests/getvaluetest.c: check different methods - to combine two "wire" bytes into a lenght word (follows up for - #1320), hopefully all work the same on all architectures - -2022-03-08 Thanos Chatziathanassiou - - * docs/man/socomec_jbus.txt: some documentatyion fixes - -2022-03-08 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: simplify back the bit- - maths to cast into uint8_t following discussion in #1320 - * drivers/libusb0.c, drivers/libusb1.c: drivers/libusb{0,1}.c: - simplify back the bit-maths to cast into uint8_t following - discussion in #1320 - -2022-03-07 Jim Klimov - - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: fix (commented- - away) hard_shutdown() to "unsigned char" and bit maths similar to - soft_shutdown() - * drivers/riello_usb.c: drivers/riello_usb.c: Get_USB_Packet(): cast - bit maths to (unsigned char) to err on safe side - * drivers/riello_usb.c: drivers/riello_usb.c: whitespace fix - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: upsdrv_initups(): cast - langid calculations to uint16_t (or wider) [similar to #1320] - * drivers/libusb0.c, drivers/libusb1.c: drivers/libusb{1,0}.c: - {nut_}libusb_open(): cast rdlen calculations to uint16_t (or wider) - [follow-up from #1320] - * drivers/libshut.c: drivers/libshut.c: shut_checksum(): address - (usb_ctrl_charbuf)buf as (unsigned char) in bit maths - * drivers/libshut.c: drivers/libshut.c: BYTESWAP(): cast "in" to - (uint16_t) for bit maths and use a full-width mask - * drivers/blazer_usb.c: drivers/blazer_usb.c: upsdrv_initups(): - address (usb_ctrl_charbuf)tbuf as (unsigned char) in bit maths - -2022-03-02 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: make sure - WITH_SNMP_LKP_FUN_DUMMY is defined - -2022-02-27 Nita Vesa - - * drivers/apc-hid.c, drivers/usbhid-ups.c: APC HID UPS: Add ability - to set battery battery.mfr.date Some APC UPSes allow for setting - battery.mfr.date, so it can be easily referenced later, even if - there were no stickers or papers left to refer to. This patch has - been tested to work with APC Back-UPS ES 550G. - -2022-03-02 Jim Klimov - - * drivers/mge-xml.c: drivers/mge-xml.c: mge_drycontact_info(): avoid - shadowing global variable - -2022-02-28 Nick Briggs - - * drivers/libusb0.c: Cast to unsigned type when interpreting HID - descriptor length bytes (libusb 0.1) The libusb 0.1 interface - definition declares a (signed) char type for control messages. The - HID descriptor length contained within a control message is - intended to be interpreted as a pair of unsigned bytes so we must - cast to uint8_t when doing the arithmetic rather than trip over the - sign bit. Closes #1261, closes #1312. - -2022-02-27 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: extend daisychain - initialization to use optional mapping function Note: ported sub- - set of "snmp-ups.[ch] : add support for extended fun/nuf l2s/s2l - conversions and use it for daisychain initialization" without the - actual 2x2 "fun/nuf l2s/s2l" support here. - -2022-02-27 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: daisychain_init(): add - debug trace - * drivers/eaton-pdu-marlin-helpers.c: drivers/eaton-pdu-marlin- - helpers.c: marlin_device_count_fun(): add debug trace - -2021-11-17 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_find_strval(): mark - NUT_UNUSED_VARIABLE(oid2info) when not WITH_SNMP_LKP_FUN - -2022-02-27 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: whitespace fix - -2017-10-11 Jim Klimov - - * drivers/snmp-ups.c: snmp-ups.c : publish device.count==1 too - -2021-10-13 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_find_strval() should - consider #if WITH_SNMP_LKP_FUN - -2019-09-25 Arnaud Quette - - * drivers/snmp-ups.c: Fix false positive when communication is lost - -2022-02-27 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - resync comments and use of SU_FLAG_SEMI_STATIC - -2022-02-25 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - break long lines - -2022-02-27 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: avoid stringop-truncation - warning: make sure string is finite - -2021-11-11 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: avoid stringop-truncation - warning - -2021-11-17 Jim Klimov - - * drivers/eaton-pdu-marlin-helpers.c: drivers/eaton-pdu-marlin- - helpers.c: include config.h first - -2021-11-25 Arnaud Quette - - * drivers/powerware-mib.c: Eaton SNMP: also publish ups.load for - 3phase Though there is output.Lx.power.percent, for 3phase, it's - desirable to also have the standard ups.load - -2022-01-12 Arnaud Quette - - * drivers/mge-xml.c: Eaton NMC: fix the non publication of real/power - with 3ph power and realpower for 3ph Lx were not publishing values - when they were 0 - -2021-11-22 Arnaud Quette - - * drivers/mge-xml.c: Eaton XML/PDC: add External Battery Module count - -2021-11-15 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c: Fix - regression on Eaton EMP002 temperature reading (SNMP) Following - the recent addition of the "String reformating function" - (su_find_strval()), a regression appeared on a corner case: when - flagging a data with ST_FLAG_STRING, while the SNMP OID is an int, - and when there is a fun_vp2s() conversion function, a double - conversion is applied, resulting in no value published. This was - limited to one data (temperature.unit) - -2021-06-14 Clappier, Eric - - * drivers/powerware-mib.c, drivers/snmp-ups.c: Add missing outlet - objects for master - -2021-02-01 Clappier, Eric - - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c: Fix dry - contacts status for EMP02 - -2022-02-27 Jim Klimov - - * drivers/snmp-ups-helpers.c, drivers/snmp-ups.c: Move - su_temperature_read_fun() from drivers/snmp-ups.c to snmp-ups- - helpers.c - -2021-01-26 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: fix regression on Eaton - ePDU Fix a regression that caused a mis-determination of the SNMP - base OID index (0 or 1, should be 1). This in turn caused a mis- - iteration over the outlets, from 0 to N-1 instead of 1 to N, which - resulted in the missing Nth outlet (last outlet of the PDU). This - also caused some data refresh issues - -2020-12-16 Clappier, Eric - - * drivers/eaton-pdu-marlin-mib.c, drivers/snmp-ups.c: Add - ambient.n.parent.serial for marlin epdu Regarding dropped code - from snmp-ups.c - per discussion in - https://github.com/42ity/nut/pull/117 this was not a typo: > It is - an intentional change for oid read value issue. > This allows to - actually retrieve an indirection value > (when an Oid points at an - Oid, like stood) - -2020-12-15 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: Restore legacy Eaton ePDU - switchability info Use a hack to also have switchability for both - the unit and its outlets on legacy Eaton G2 ePDU - -2020-12-15 Clappier, Eric - - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c: Change uid - and modbus address name according nut nomenclature - -2020-12-14 Clappier, Eric - - * drivers/powerware-mib.c: Add modbus_address and uuid in snmp-ups/pw - driver - -2019-11-07 Arnaud Quette - - * drivers/powerware-mib.c: SNMP Eaton Gb Network Card: various data - completion * fix reading of input.voltage, related to the ending - ".0", * fix existing commands handling, * add support for the load - segment (managed outlets), including status information and - commands - -2019-09-19 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c: SNMP Eaton - EMP002: handle sensor presence Sensor may not be present (or - connected). However, the values (temperature, humidity, ...) are - still available, but should not be considered - -2022-02-27 Jim Klimov - - * drivers/powerware-mib.c: drivers/powerware-mib.c: update comments - and implem for dummy - eaton_sensor_temperature_unit_fun()/su_temperature_read_fun() from - 42ity/nut - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - update comments and implem for dummy - eaton_sensor_temperature_unit_fun()/su_temperature_read_fun() from - 42ity/nut - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c, - drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups.{c,h}: - adjust su_temperature_read_fun() API to that used in NUT master - branch - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h: drivers/eaton-pdu-marlin-helpers.{c,h}: adjust - eaton_sensor_temperature_unit_fun() API to that used in NUT master - branch - -2019-09-19 Arnaud Quette - - * drivers/eaton-pdu-marlin-helpers.c: SNMP Eaton ePDU: always return - celsius for temperature since the value reading is always adapted - to celsius - -2016-05-25 Jim Klimov - - * drivers/powerware-mib.c: powerware-mib - renamed "ietf_*" and - "eaton_*" lookups to have "pw_*" prefix - -2019-09-12 Arnaud Quette - - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin-mib.c, - drivers/powerware-mib.c, drivers/snmp-ups.c, drivers/snmp-ups.h: - Typo fix: sorry Mr Fahrenheit And thanks to Jim Klimov for the - review! - * drivers/eaton-pdu-marlin-mib.c: Fix compilation warning - -2019-09-09 Arnaud Quette - - * drivers/powerware-mib.c: SNMP Eaton Gb Network Card: support for - EMPDT1H1C2 - -2022-02-27 Jim Klimov - - * drivers/eaton-pdu-marlin-helpers.c: drivers/eaton-pdu-marlin- - helpers.c: fix whitespace - -2017-10-11 Jim Klimov - - * drivers/eaton-pdu-marlin-helpers.c: eaton-pdu-marlin-helpers.c : in - device_count helper do not assume a trailing comma (as last char) - as an extra device - -2019-09-09 Arnaud Quette - - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h, drivers/eaton-pdu-marlin-mib.c: SNMP Eaton ePDU: support - for EMPDT1H1C2 - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: support for - daisychained ambient sensor - -2022-02-27 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - align comments around outlet.%i.name with FTY version - -2017-10-11 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : preferred - templated outlet.%i.name goes last in MIB - -2018-08-07 Jim Klimov - - * drivers/powerware-mib.c: powerware-mib.c : fix fallout from "snmp- - ups: support newer Genepi management cards" (unused variable - warning) - -2018-08-07 Arnaud Quette - - * drivers/powerware-mib.c: snmp-ups: support newer Genepi management - cards * duplicate some OIDs, with refinement to point at the first - index (i.e ".0" or ".1.0") since otherwise the agent doesn't - respond to queries. This could be fixed at the snmp-ups level later - * fixed "ups.type" (power topology of the UPS) which was pointing - at the output.source or ups.mode - -2022-02-27 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - align with "snmp-ups: Simplify the mapping structure" changes for - input.phases=>input.count - -2017-11-17 Arnaud Quette - - * drivers/eaton-ats16-nmc-mib.c, drivers/eaton-pdu-marlin-mib.c, - drivers/mge-mib.c, drivers/mge-xml.c, drivers/powerware-mib.c: - Modify "open" to "opened" for dry contacts status While "open" is - the best adjective for the opposite of "closed", and thus suitable - for GPI status, this may lead to confusion with the GPO actions - "open|close" Vs the GPI status "opened|closed". These last are also - not inapropriate, since they can refer to the fact that the GPI - state has change due to some external action or event - -2017-11-03 Arnaud Quette - - * drivers/eaton-ats16-nm2-mib.c, drivers/eaton-ats16-nmc-mib.c, - drivers/mge-mib.c, drivers/mge-xml.c, drivers/powerware-mib.c: Add - support for dry contacts to Eaton ATS16 and UPS Add support for - the 2 GPI accessible through EMP001 environmental sensor, connected - to a UPS or ATS16. The same is already available for Eaton ePDU. - This affect the snmp-ups driver (eaton_ats16 and pw/pxgx_ups MIBs), - and the netxml-ups driver - -2022-02-25 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: avoid "#if" with possibly - not-defined macro - -2018-08-02 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: Eaton feed color is semi - static - -2018-06-26 Arnaud Quette - - * docs/nut-names.txt, drivers/eaton-pdu-marlin-mib.c: snmp-ups: Eaton - ePDU input.power.nominal is realpower Fix data name, since the - published value is in Watts, so realpower, not power - -2017-10-30 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c/dmf: add - outlet timers Add support for shutdown and start timers - -2022-02-25 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - relocate outlet.%i.load.off.delay etc like in FTY - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - break long lines like in FTY - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - break long lines - -2017-10-17 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: fix Eaton ePDU group - phase handling Remove the not needed SU_FLAG_UNIQUE and the - erroneous value lookup structure index - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h, drivers/eaton-pdu-marlin-mib.c: snmp-ups: simplify Eaton - ePDU group phase handling - -2017-10-11 Jim Klimov - - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h: eaton-pdu-marlin-* : add support for extended fun/nuf - l2s/s2l conversions - -2017-10-13 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : updated - comments about input/feed relationship, and daisychain implications - -2017-10-13 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: Problem: Need to fix published feed - variables Solution: Attach 1 feed to the current input - -2017-10-13 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : fix OID - and raise questions on input.power.nominal - -2017-10-11 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : Revised - added OIDs with a single-group ePDU Also update line-breaks for - readability and 80-col standard - -2017-10-09 Jim Klimov - - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h, drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c / - drivers/eaton-pdu-marlin-helpers.[ch] : Implement conversion func - for "device.count" which returns a comma-separated list - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h, drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c / - drivers/eaton-pdu-marlin-helpers.[ch] : Implement conversion func - for "outlet.group.%i.phase" - * docs/nut-names.txt, drivers/eaton-pdu-marlin-mib.c: eaton-pdu- - marlin-mib.c : add basic listing of newly defined OIDs (not a full - solution - some mapping functions are needed and revision of MIB - data types) - -2017-08-30 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: Fix typo in OID, noticed by aquette - -2017-08-24 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c, drivers/snmp-ups.c, drivers/snmp- - ups.h: snmp-ups / eaton-marlin : introduce WITH_SNMP_LKP_FUN to - separate codebases that support these callbacks from those that - currently do not - * drivers/eaton-pdu-marlin-helpers.c, drivers/eaton-pdu-marlin- - helpers.h: eaton-pdu-marlin-helpers.c/h fix - * drivers/eaton-pdu-marlin-helpers.c: eaton-pdu-marlin-helpers.c : - update comments for marlin_outlet_group_phase_fun() - -2017-08-23 Jim Klimov - - * drivers/Makefile.am, drivers/eaton-pdu-marlin-helpers.c, - drivers/eaton-pdu-marlin-helpers.h: Expel the helper function that - interacts with dstate from eaton-pdu-marlin-mib.c to eaton-pdu- - marlin-helpers.c/.h - -2016-05-13 Jim Klimov - - * drivers/Makefile.am, drivers/apc-iem-mib.h, drivers/apc-mib.c, - drivers/apc-mib.h: drivers/apc-iem-mib.h: split some macro - definitions away from apc-mib.h and apc-mib.c and snmp-ups.c - -2017-10-11 Jim Klimov - - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups.[ch] : introduce - SU_FLAG_SEMI_STATIC - -2022-02-24 Jim Klimov - - * docs/nut.dict: Update nut.dict Update for Adelsystem CBI - -2022-02-24 Jim Klimov - - * NEWS: NEWS: Update synchronous=auto for NUT v2.7.5 - * drivers/dstate.c: drivers/dstate.c: send_to_all(): port - do_synchronous auto=>on fallback from send_to_one() - * drivers/dstate.c: drivers/dstate.c: send_to_one()/send_to_all(): - make the success-report less verbose (level 6) - * drivers/dstate.c: drivers/dstate.c: send_to_one()/send_to_all(): - make the reconnection WARNING more visible - * conf/ups.conf.sample, docs/man/ups.conf.txt, drivers/dstate.c, - drivers/main.c: driver/dstate.c, main.c: extend do_synchronous to - have an "auto" mode (now by default) so reconnections would be sync - * drivers/dstate.c: drivers/dstate.c: send_to_one(): log at level 0 - if write failed (twice maybe) and so driver is disconnecting - * drivers/dstate.c: drivers/dstate.c: send_to_one(): log more details - if throttling down, and if it helped - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): log - "walking device %d" at level 1 now, and without a dot-number (to - avoid confusion) - * drivers/dstate.c: drivers/dstate.c: send_to_one(): try to sleep and - resend failed posting; log the faults (and successes) at level 1 - -2022-02-23 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: send_to_all() send_to_one(): - clarify "disconnecting" when logging that write failed - * drivers/snmp-ups.c: drivers/snmp-ups.c: update comment for - snmp_ups_walk() for "single" device - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): for - "unitary" (non-daisychain member) devices, walk a ".1" device only - (should end up querying non-templated OIDs anyway) - avoid walking - .0 partially and .1 again for same data - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): log - walking an "unitary" device if not a daisy-chain, for balance - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): only log - "Skipping daisychain device.0" when in daisy-chain context (skip - anyway even for singular devices where we should also walk .1 - anyway) - * drivers/snmp-ups.c: drivers/snmp-ups.c: update heading comments for - daisychain related variables - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): only skip - "device.0" if in daisy-chain mode - * drivers/snmp-ups.c: drivers/snmp-ups.c: update comment for - current_device_number - -2022-02-22 Thanos Chatziathanassiou - - * docs/man/socomec_jbus.txt, drivers/Makefile.am, - drivers/socomec_jbus.c: Added socomec_jbus implementation - -2022-02-22 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): fix - taxonomy of "processing daisy-chain device" debug log - -2022-02-19 Jim Klimov - - * drivers/snmp-ups.c, server/upsd.c: drivers/snmp-ups.c - upsdrv_updateinfo(); server/upsd.c driver_free() mainloop(): trace - connection faults and reconnections better - * drivers/dstate.c: drivers/dstate.c: send_to_one(): consistently use - "buflen" - * drivers/dstate.c: drivers/dstate.c: send_to_all/send_to_one: extend - failed-send tracing - -2022-02-19 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: wrap long lines, add - comments - -2022-02-22 Jim Klimov - - * scripts/subdriver/gen-snmp-subdriver.sh: scripts/subdriver/gen- - snmp-subdriver.sh: generate "standard MIB items" into new MIB - mappings Kudos to @aquette for the catch in PR review - -2022-02-21 Luke Dashjr - - * scripts/python/Makefile.am, scripts/python/README, - scripts/python/app/NUT-Monitor.in, scripts/python/app/README, - scripts/python/app/gui-1.3.glade, - scripts/python/app/gui-1.3.glade.h, scripts/python/app/nut- - monitor.desktop, scripts/python/app/ui/aboutdialog1.ui, - scripts/python/app/ui/dialog1.ui, scripts/python/app/ui/dialog2.ui, - scripts/python/app/ui/window1.ui: NUT-Monitor: Port to - Python3+PyQt5 - -2022-02-19 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setOID(): uncomment the - fallback for "device.x.contact" not found as a "contact", and add - another to strip "device.1." => "device." to allow setting non- - templated values to daisy-chain master - * drivers/snmp-ups.c, server/upsd.c: drivers/snmp-ups.c - upsdrv_updateinfo(); server/upsd.c driver_free() mainloop(): trace - connection faults and reconnections better - * drivers/dstate.c: drivers/dstate.c: send_to_one(): consistently use - "buflen" - * drivers/dstate.c: drivers/dstate.c: send_to_all/send_to_one: extend - failed-send tracing - -2022-02-19 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: upsdrv_initups(): check - that there is no daisychain master entry before defining IETF-MIB - fallback defaults for contact/location/description - * drivers/snmp-ups.c: drivers/snmp-ups.c: upsdrv_initups(): comment - and log that IETF-MIB fallback defaults for - contact/location/description are only read once (not updated while - driver runs) - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_ups_get(): fake - current_device_number=1 to su_setinfo() when walking a daisy-chain - with non-templated OID - * drivers/snmp-ups.c: drivers/snmp-ups.c: get_and_process_data(), - su_ups_get(): add tracing logs to make sense of daisy-chain OID - adaptations - * drivers/snmp-ups.c: drivers/snmp-ups.c: wrap long lines, add - comments - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setinfo(): trace diags - for different code-paths about daisy-chained OID decisions - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setinfo(): this is not - the place to check for ".%i" after all - -2022-02-18 Jim Klimov - - * tools/nut-dumpdiff.sh: tools/nut-dumpdiff.sh: revise to also strip - frequency measurements - * tools/nut-dumpdiff.sh: tools/nut-dumpdiff.sh: revise to also strip - (load|temperature|humidity) measurements - * docs/documentation.txt: docs/documentation.txt: document tools/nut- - dumpdiff.sh helper - * tools/nut-dumpdiff.sh: tools/nut-dumpdiff.sh: revise to strip just - numeric measurements of (*.power|voltage|current) - * tools/nut-dumpdiff.sh: tools/nut-dumpdiff.sh: extend to not strip - ALL numeric values but ones that are likely measurements - * tools/Makefile.am, tools/nut-dumpdiff.sh: Add tools/nut-dumpdiff.sh - helper - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setOID(): handle e.g. - "device.contact" as either "device.0.contact" for "all devices" if - OID is templated or NULL, or "device.1.contact" for "master device" - in other cases - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setOID(): import - (commented away - not deemed necessary so far) fallback for e.g. - "device.x.contact" is not found as a "contact" - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setinfo(): fix comment - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix "device.varname" for - daisychain 'master' units * su_setinfo(): should not expose - master-specific data (like device.contact coming from IETF un- - templated data points not aware about daisy chains) as if it were - the data specific to every device in the chain; note that for - defaulted data (like device.type="pdu" hardcoded with NULL OID) we - still expose it across the board * su_setOID(): "upsrw ... - device.contact" should change the daisychain master device (for - IETF un-templated data; but in this commit - always) - -2022-02-17 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_setOID(): fix mis- - interpretation of "device*" as always a daisy-chain - * drivers/snmp-ups.c: drivers/snmp-ups.c: use "hard-coded" IETF MIB - for read-only access to sysDescr also (only if mib2nut does not yet - define a better value) - * drivers/snmp-ups.c: drivers/snmp-ups.c: use "hard-coded" IETF MIB - for read-only access to sysContact and sysLocation only if mib2nut - does not yet define a better value - * drivers/emerson-avocent-pdu-mib.c: drivers/emerson-avocent-pdu- - mib.c: whitespace fix - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - whitespace fix - * drivers/apc-mib.c: drivers/apc-mib: whitespace fix - * drivers/xppc-mib.c: drivers/xppc-mib.c: whitespace fix - * drivers/apc-ats-mib.c, drivers/apc-mib.c, drivers/baytech-mib.c, - drivers/bestpower-mib.c, drivers/compaq-mib.c, drivers/cyberpower- - mib.c, drivers/delta_ups-mib.c, drivers/eaton-ats16-nm2-mib.c, - drivers/eaton-ats16-nmc-mib.c, drivers/eaton-pdu-genesis2-mib.c, - drivers/eaton-pdu-marlin-mib.c, drivers/eaton-pdu-pulizzi-mib.c, - drivers/eaton-pdu-revelation-mib.c, drivers/emerson-avocent-pdu- - mib.c, drivers/hpe-pdu-mib.c, drivers/huawei-mib.c, drivers/ietf- - mib.c, drivers/mge-mib.c, drivers/netvision-mib.c, - drivers/powerware-mib.c, drivers/raritan-pdu-mib.c, - drivers/raritan-px2-mib.c, drivers/xppc-mib.c: drivers/*-mib.c: - define standard-MIB entries for device.description, contact, - location (RW STRING) - -2016-09-16 Arnaud Quette - - * drivers/snmp-ups.h: snmp-ups: update todo list The addition of - sysContact and sysLocation support is now addressed centrally - * drivers/snmp-ups.c: snmp-ups: add sysContact and sysLocation - support The generic MIB-2 provides system contact and location - information that are now publish respectively as device.contact and - device.location - -2022-02-18 Viktor Kuzmin - - * configure.ac: Fix individual drivers configuration - -2022-02-17 Dimitris Economou - - * drivers/adelsystem_cbi.c: handle covered-switch-default and switch- - enum warnings - * drivers/adelsystem_cbi.h: clean up, fix typos - * drivers/adelsystem_cbi.c: clean up, fix typos - * docs/man/Makefile.am, docs/man/adelsystem_cbi.txt: man page added - -2022-02-17 Jim Klimov - - * clients/upscmd.c, clients/upsrw.c: clients/upsrw.c, upscmd.c: fix - sanity-check of tracking_id length (forgot the nul-byte) - * scripts/systemd/nut-driver@.service.in: scripts/systemd/nut- - driver@.service.in: make sure drivers always try to start and - connect - how ever many attempts that takes - * scripts/systemd/nut-driver@.service.in: scripts/systemd/nut- - driver@.service.in: comment about "Before=nut-driver.target" - constraint - * scripts/systemd/nut-driver@.service.in: scripts/systemd/nut- - driver@.service.in: make sure drivers always try to start and - connect - -2022-02-16 Jim Klimov - - * drivers/libhid.c: drivers/libhid.c: string_to_path(): report - hid_lookup_usage() miss - * drivers/libhid.c: drivers/libhid.c: fix misfire of fightwarn commit - 58e5b49 (string_to_path(): range-check...) Closes: #1286 - * conf/upsd.conf.sample, conf/upsmon.conf.sample.in, - docs/man/upsd.conf.txt, docs/man/upsmon.conf.txt: upsd and upsmon - configuration sample files and man pages: add note about run-time - config reload with DEBUG_MIN setting in sight - -2022-02-16 Jim Klimov - - * clients/upsmon.c: clients/upsmon.c: restructure config reload for - debug_min to be more similar to that in upsd.c - * clients/upsmon.c: clients/upsmon.c: whitespace fix - -2022-02-16 Jim Klimov - - * clients/upsmon.c: clients/upsmon.c: allow upsmon to reload config - and apply its debug_min setting - * common/common.c: common/common.c: writepid(): debug-trace creation - of a PID file - -2022-02-16 Jim Klimov - - * scripts/systemd/nut-server.service.in: scripts/systemd/nut- - server.service.in: reload upsd without PID file [for #1299] - * server/conf.c: server/conf.c: allow upsd to reload config and apply - its debug_min setting - * clients/upsmon.c, docs/man/upsmon.txt: clients/upsmon.c: add "-P - pid" arg handling, and report result of sendsignal(), like in upsd - [for #1299, #123] - * docs/man/upsd.txt, scripts/systemd/nut-server.service.in, - server/upsd.c: upsd.c: add -FF option to stay foregrounded AND - write the PID file, use it in systemd/nut-server.service [for - #1299] - * docs/man/upsd.txt, server/upsd.c: server/upsd.c: add "-P PID" arg - for commands [for #1299] - * common/common.c, include/common.h: include/common.h, common.c: - refactor sendsignalfn() into parsepid() and sendsignalpid() - reusable methods - * server/upsd.c: server/upsd.c: warn about not saving a pid file - * server/upsd.c: server/upsd.c: handle extended return values from - sendsignalfn() to tell more about the error - * common/common.c: common/common.c: sendsignalfn(): if we use sig==0 - to probe that a process runs, no need to send that twice - * common/common.c, include/common.h: include/common.h, common.c: - extend sendsignalfn() return value for more error types - -2022-02-15 Jim Klimov - - * drivers/main.c: drivers/main.c: fix user:group separator in debug - message - * configure.ac: configure.ac: report default/detected - RUN_AS_USER/RUN_AS_GROUP values in help; check if "nobody" group is - not resolvable when "nogroup" us to use it as default RUN_AS_GROUP - instead - * drivers/main.c: drivers/main.c: report whether we succeeded or - failed chown/chmod for sockname - * docs/man/nutupsdrv.txt, docs/man/ups.conf.txt, drivers/main.c: - drivers/main.c: support setting group name for socket file - (ups.conf, CLI -g arg) Closes: #1296 - * drivers/dstate.c, drivers/dstate.h, drivers/main.c: drivers/main.c - + dstate.{c,h}: refactor dstate_init() to return a copy of the - "sockname" path used - * drivers/main.c: drivers/main.c: re-word debug message for "-u name" - overriding built-in or configured values - * drivers/main.c: drivers/main.c: trace do_global_args() and - main_arg() var/val stream - * docs/hid-subdrivers.txt: docs/hid-subdrivers.txt: describe tech for - "Fixing report descriptors" - * docs/hid-subdrivers.txt, docs/nut.dict, drivers/hidtypes.h: - docs/hid-subdrivers.txt: document where USAGE_POW_ and USAGE_BAT_ - macros come from - * drivers/apc-hid.c: drivers/apc-hid.c: apc_fix_report_desc(): - normalize indentations - -2022-02-14 Nick Briggs - - * drivers/apc-hid.c: Update APC HID driver version - * drivers/apc-hid.c: Only indicate report descriptor fixed if it was - actually changed. - -2022-02-14 Jim Klimov - - * docs/man/ups.conf.txt, drivers/main.c: drivers/main.c: allow to - specify a user for each driver via ups.conf Closes: #1288 - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: suggest "-d" when warning - about passing debugging through to actual drivers - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: only warn about passing - debugging through to actual drivers if (nut_debug_level_passthrough - == 0) - * docs/man/upsdrvctl.txt, drivers/upsdrvctl.c: drivers/upsdrvctl: add - "-d" option to pass debug level to drivers Closes: #1036 (Note: - that issue discusses other possible improvements around this - subject, which are synergetic with this one) - -2022-02-13 Luke Dashjr - - * scripts/python/app/NUT-Monitor.in: NUT-Monitor: Run py2to3-3.10 - -2022-02-13 Nick Briggs - - * drivers/apc-hid.c, drivers/cps-hid.c, drivers/hidparser.c, - drivers/hidparser.h, drivers/hidtypes.h: Fix incorrect limits for - input and config voltages in APC report descriptor The Back-UPS XS - 1400U has been observed to report input/config voltage limits that - are appropriate for the North American 120V region even though the - unit is operating in the European or other 220+V region. This - change diagnoses the the problem by checking if the logical maximum - values for UPS.Input.Voltage and UPS.Input.ConfigVoltage are - consistent with the UPS.Input.HighVoltageTransfer and if not, - increases them. A similar problem was reported for CPS units in - the EU region. - introduces #defines for all standard usages in - power system and battery device pages. - moves cps-hid.c - FindReport() to hidparser.c as FindObject_with_ID_Node(). - updates - cps-hid.c to account for new defines/function name - adds - apc_fix_report_desc() to implement change for APC UPS units - -2022-02-11 Jim Klimov - - * NEWS: NEWS: added usbhid-ups "ever-hid" subdriver for NUT v2.7.5 - * docs/man/upsd.conf.txt: docs/man/upsd.conf.txt: document - DISABLE_WEAK_SSL - * NEWS, docs/nut.dict: NEWS: announce "debug_min" options for daemons - in NUT v2.7.5 - * NEWS: NEWS: announce fore-/back-grounding options for daemons in - NUT v2.7.5 - * docs/man/upsd.conf.txt: docs/man/upsd.conf.txt: document optional - "DEBUG_MIN" setting - * conf/upsd.conf.sample: conf/upsd.conf.sample: document optional - "DEBUG_MIN" setting - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: document - optional "DEBUG_MIN" setting - * conf/ups.conf.sample: conf/ups.conf.sample: document optional - "debug_min" setting - * docs/man/upsmon.conf.txt: docs/man/upsmon.conf.txt: document - optional "DEBUG_MIN" setting - * docs/man/ups.conf.txt: docs/man/ups.conf.txt: document optional - "debug_min" setting - * server/conf.c, server/conf.h, server/upsd.c: server/upsd.c, conf.c: - support "debug_min" from upsd.conf - * clients/upsmon.c: clients/upsmon.c: support "debug_min" from - upsmon.conf - * drivers/main.c: drivers/main.c: comment typo fixes - * docs/man/upslog.txt: docs/man/upslog.txt: fix typo "upsmon" => - "upslog" - * clients/upslog.c: clients/upslog.c: align -F/-B options with - drivers/main.c - * scripts/systemd/nut-monitor.service.in: scripts/systemd/nut- - monitor.service.in: with daemon not backgrounding, "Type=forking" - no longer applies - * docs/man/upsd.txt: docs/man/upsd.txt: document -F/-B for fore/back- - ground enforcement, and that -D only defaults to foregrounding now - (can be overridden) - * server/upsd.c: server/upsd.c: align -F/-B options with - drivers/main.c - * docs/man/upsmon.txt: docs/man/upsmon.txt: document -F/-B for - fore/back-ground enforcement, and that -D only defaults to - foregrounding now (can be overridden) - * clients/upsmon.c: clients/upsmon.c: align -F/-B options with - drivers/main.c - * docs/man/nutupsdrv.txt: docs/man/nutupsdrv.txt: document -F/-B for - fore/back-ground enforcement, and that -D/-d only default to - foregrounding now (can be overridden) - * drivers/main.c: drivers/main.c: update comments - -2019-03-19 Jim Klimov - - * drivers/main.c: drivers/main.c : rearrange handling of configured - nut_debug_level_global vs nut_debug_level_driver vs ultimately used - nut_debug_level - * drivers/main.c: driver/main.c : separate toggles for driver - debugging and backgrounding - -2019-03-18 Jim Klimov - - * drivers/main.c: drivers/main.c : allow to configure debug_min=NUM - to ease service debugging - -2022-02-11 Dimitris Economou - - * drivers/adelsystem_cbi.c, drivers/adelsystem_cbi.h: coding style - changes - -2022-02-10 Jim Klimov - - * .github/pull_request_template.md: .github/pull_request_template.md: - remind to update recipes for new man pages - -2022-02-11 Dimitris Economou - - * drivers/adelsystem_cbi.c: fix parameter hiding global variable - -2022-02-10 Jim Klimov - - * configure.ac: configure.ac: avoid noise about pkg-config not - finding (lib)systemd.pc on systems where it is not installed - * configure.ac: configure.ac: default to detection of - systemdsystemunitdir (and systemdshutdowndir) - "auto" is not a - final option - * configure.ac, docs/configure.txt: configure.ac: default to - detection of systemdsystemunitdir (and systemdshutdowndir), non- - fatal if not found - * configure.ac: configure.ac: fall back from pkg-config queries for - "systemd" to try also "libsystemd" - fix calling "test" - -2022-02-10 Nick Geoghegan - - * drivers/riello_usb.c: Fixes formatting in riello_usb - * drivers/riello_ser.c: Updates riello_ser to version 0.07 - -2022-02-10 Jim Klimov - - * configure.ac: configure.ac: fall back from pkg-config queries for - "systemd" to try also "libsystemd" - * docs/man/Makefile.am: docs/man/Makefile.am: build and install - nutdrv_siemens_sitop man pages - -2022-02-09 Nick Geoghegan - - * drivers/riello_usb.c: Fixes 530 - -2022-02-09 Jim Klimov - - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - rename non-standard dstate variables to "experimental.*" namespace - Closes: NUT issue #1045 - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - fix "ups.delay.return" => "ups.delay.start" - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - whitespace fixes (some long lines) - * docs/packager-guide.txt: docs/packager-guide.txt: update for nut- - linux-i2c and nut-macosx-ups platform-dependent package groups - * docs/packager-guide.txt: docs/packager-guide.txt: fix title for - pkg-nut-modbus - * drivers/ever-hid.c: drivers/ever-hid.c: tag non-standard NUT - variable/command names as "experimental.*" to help identify lacking - mappings and rename some into standard data points - * drivers/ever-hid.c, drivers/ever-hid.h: drivers/ever-hid.{c,h}: - update (C) heading - * drivers/ever-hid.c: drivers/ever-hid.c: print unsigned int as %u - * drivers/ever-hid.c: drivers/ever-hid.c: mark - NUT_UNUSED_VARIABLE(double value) where appropriate - * drivers/ever-hid.c: drivers/ever-hid.c: use complete struct - initializers for info_lkp_t tables; use sentinels; mark static - * drivers/ever-hid.c: drivers/ever-hid.c: ever_alarms_fun(), - ever_workmode_fun(): define "workmode" on top of function - * drivers/ever-hid.c: drivers/ever-hid.c: fix switch/case whitespaces - * drivers/ever-hid.c: drivers/ever-hid.c: fix trailing whitespaces - * drivers/ever-hid.c: drivers/ever-hid.c: wrap some long lines for - readability - * drivers/ever-hid.c: drivers/ever-hid.c: adjust to upstream changes: - config.h goes first, PID/VID are unsigned, got a fix_report_desc() - default - * drivers/everups.c: drivers/everups.c: whitespace fixes; clarify - this is a serial driver (as opposed to ever-hid.c for USB devices) - -2022-02-08 Dimitris Economou - - * drivers/adelsystem_cbi.h: check ifndef READALL_REGS - * drivers/adelsystem_cbi.c: minor fix in upsdrv_updateinfo - * drivers/adelsystem_cbi.c, drivers/adelsystem_cbi.h: fix warning for - initializing structure with flexible array member - -2022-02-08 Jim Klimov - - * configure.ac: configure.ac: error out for unhandled --with- - drivers=xxx names - * configure.ac: configure.ac: improve handling of platform-dependent - (linux-i2c, macosx) drivers - do not default to require them - everywhere - * configure.ac: configure.ac: move --with-drivers=... handling to - before --with-all, and consult drivers/Makefile.am for list names - to require certain dependencies - * drivers/Makefile.am: drivers/Makefile.am: parameterize - POWERMAN_DRIVERLIST and IPMI_DRIVERLIST like others - * configure.ac: configure.ac: move "--with-drivers=name[,name...]" - handling to before we check for third-party dependencies - * clients/upssched.c: clients/upssched.c: sendcmd(): rectify - enclen/buflen sanity checks and usage - * clients/upssched.c: clients/upssched.c: whitespace and comment - fixes - -2022-02-07 Dimitris Economou - - * clients/upssched.c: fix code alignemnt, casting sizeof with ssize_t - -2022-02-07 Jim Klimov - - * scripts/subdriver/gen-usbhid-subdriver.sh: gen-usbhid-subdriver.sh: - suggest "fix_report_desc" in subdriver_t (follow-up to PR #1245) - -2022-02-06 Jim Klimov - - * docs/packager-guide.txt: docs/packager-guide.txt: mention ipmi and - modbus drivers as separate packaging goals - -2022-02-06 Dimitris Economou - - * clients/upssched.c: check zero bytes read from O_NDELAY socket - * clients/upssched.c: fix enc size write on pipeifd, fix parent - select on child's pipefd - * drivers/Makefile.am: adelsystem_cbi header filename fix - -2022-02-05 Jim Klimov - - * docs/nut.dict, docs/support.txt: docs/support.txt: detail abot - GitHub issues and PRs, and IRC channel - * drivers/al175.c, drivers/apc-ats-mib.c, drivers/apc-hid.c, - drivers/apc-mib.c, drivers/apc-pdu-mib.c, drivers/apcsmart-old.c, - drivers/apcsmart.h, drivers/apcupsd-ups.c, drivers/arduino-hid.c, - drivers/asem.c, drivers/baytech-mib.c, drivers/bcmxcp.c, - drivers/bcmxcp_ser.c, drivers/bcmxcp_usb.c, drivers/belkin-hid.c, - drivers/belkin.c, drivers/belkinunv.c, drivers/bestfcom.c, - drivers/bestfortress.c, drivers/bestpower-mib.c, - drivers/bestuferrups.c, drivers/bestups.c, drivers/blazer_ser.c, - drivers/blazer_usb.c, drivers/clone-outlet.c, drivers/clone.c, - drivers/compaq-mib.c, drivers/cps-hid.c, drivers/cyberpower-mib.c, - drivers/delta_ups-hid.c, drivers/delta_ups-mib.c, drivers/dummy- - ups.c, drivers/eaton-ats16-nm2-mib.c, drivers/eaton-ats16-nmc- - mib.c, drivers/eaton-ats30-mib.c, drivers/eaton-pdu-genesis2-mib.c, - drivers/eaton-pdu-marlin-mib.c, drivers/eaton-pdu-pulizzi-mib.c, - drivers/eaton-pdu-revelation-mib.c, drivers/emerson-avocent-pdu- - mib.c, drivers/etapro.c, drivers/everups.c, drivers/explore-hid.c, - drivers/gamatronic.c, drivers/generic_modbus.c, - drivers/genericups.c, drivers/hpe-pdu-mib.c, drivers/huawei-mib.c, - drivers/huawei-ups2000.c, drivers/idowell-hid.c, drivers/ietf- - mib.c, drivers/isbmex.c, drivers/ivtscd.c, drivers/legrand-hid.c, - drivers/libshut.c, drivers/libusb0.c, drivers/libusb1.c, - drivers/liebert-esp2.c, drivers/liebert-hid.c, drivers/liebert.c, - drivers/macosx-ups.c, drivers/masterguard.c, drivers/metasys.c, - drivers/mge-hid.c, drivers/mge-mib.c, drivers/mge-utalk.c, - drivers/microdowell.c, drivers/microsol-apc.c, drivers/netvision- - mib.c, drivers/netxml-ups.c, drivers/nut-ipmipsu.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/nutdrv_siemens_sitop.c, drivers/oneac.c, drivers/openups- - hid.c, drivers/optiups.c, drivers/phoenixcontact_modbus.c, - drivers/pijuice.c, drivers/powercom-hid.c, drivers/powercom.c, - drivers/powerman-pdu.c, drivers/powerpanel.c, drivers/powervar- - hid.c, drivers/powerware-mib.c, drivers/raritan-pdu-mib.c, - drivers/raritan-px2-mib.c, drivers/rhino.c, drivers/richcomm_usb.c, - drivers/riello_ser.c, drivers/riello_usb.c, drivers/safenet.c, - drivers/salicru-hid.c, drivers/skel.c, drivers/snmp-ups.c, - drivers/solis.c, drivers/tripplite-hid.c, drivers/tripplite.c, - drivers/tripplite_usb.c, drivers/tripplitesu.c, drivers/upscode2.c, - drivers/usbhid-ups.c, drivers/victronups.c, drivers/xppc-mib.c: - drivers: bump versions for all drivers, they could have been - refactored during fightwarn (so might add regressions) without - regard to versioning - * UPGRADING: NEWS: plea to package maintainers to share their - customizations into common uptream - * docs/documentation.txt, docs/nut.dict: documentation.txt: add a - blog by James Ridgway - * docs/documentation.txt: documentation.txt: update with a link to - video by Techno Tim - * docs/documentation.txt: developers.txt: "trac" is AWOL, update the - link to github wiki copy - * docs/developers.txt: developers.txt: "alioth" is AWOL, update the - text - * docs/download.txt: download.txt: "trac" and "alioth" are AWOL, - update the links - -2022-02-05 Dimitris Economou - - * drivers/adelsystem_cbi.c: apply Jim's modbus changes on PR #1239 - -2022-01-23 Jim Klimov - - * ci_build.sh: ci_build.sh: fix CI_FAILFAST to abort after failed - configure scripts - -2022-01-27 Jim Klimov - - * drivers/snmp-ups.c: Revert "drivers/snmp-ups.c: replace - strcmp("short string") with strncmp() (clang-3.4 warns about array - out of bounds)" This reverts commit - d2f7193af42e987f7948e072a963dc7bb1e25dc1. Currently the configure - script should properly avoid the built-in strcmp() versions which - upset current build compiler. Using the range-limited strncmp() has - a downside of matching start-of-string. - * drivers/snmp-ups.c: Revert "drivers/snmp-ups.c: fix strncmp() - limits for "v1" and "v3" checks (copy-pasting typo)" This reverts - commit d0d02d3a70c6544c8ea7868dd63738595f2ae657. Currently the - configure script should properly avoid the built-in strcmp() - versions which upset current build compiler. Using the range- - limited strncmp() has a downside of matching start-of-string. - * clients/upsclient.c, clients/upslog.c, clients/upsmon.c, - clients/upsrw.c, clients/upssched.c, clients/upsset.c, - common/state.c, common/upsconf.c, docs/developers.txt, - docs/nut.dict, drivers/apcsmart-old.c, drivers/apcsmart.c, - drivers/apcupsd-ups.c, drivers/belkin.c, drivers/belkinunv.c, - drivers/bestups.c, drivers/clone-outlet.c, drivers/clone.c, - drivers/dstate.c, drivers/gamatronic.c, drivers/huawei-ups2000.c, - drivers/main.c, drivers/masterguard.c, drivers/mge-utalk.c, - drivers/mge-xml.c, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_bestups.c, drivers/nutdrv_qx_blazer-common.c, - drivers/nutdrv_qx_voltronic-qs-hex.c, drivers/nutdrv_qx_voltronic- - qs.c, drivers/nutdrv_qx_voltronic.c, drivers/oneac.c, - drivers/powercom.c, drivers/powerman-pdu.c, drivers/powerp-txt.c, - drivers/snmp-ups.c, drivers/tripplite_usb.c, drivers/upscode2.c, - drivers/victronups.c, server/conf.c, server/netget.c, - server/netlist.c, server/netset.c, server/user.c, - tests/cpputest.cpp, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/scan_snmp.c: Revert "Replace strcmp() and strcasecmp() use- - cases for short fixed string args by strncmp() and strncasecmp() - respectively" This reverts commit - a0d5ad57956ebcb5878744acb7657e1356ba0ea8. Currently the configure - script should properly avoid the built-in strcmp() versions which - upset current build compiler. Using the range-limited strncmp() has - a downside of matching start-of-string. - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: Revert - "tools/nut-scanner/scan_snmp.c, drivers/snmp-ups.c: strcmp() - shorter "SHA" and "AES" and check this is all of the string length" - This reverts commit 57182d51b2954e6b7bb5199f658f38a89ce93648. - Currently the configure script should properly avoid the built-in - strcmp() versions which upset current build compiler. Using the - range-limited strncmp() has a downside of matching start-of-string. - -2022-01-23 Jim Klimov - - * NEWS, UPGRADING: NEWS, UPGRADING: snmp-ups.h flags (bit-mask - macros) changed for NUT v2.7.5 - * drivers/snmp-ups.h: drivers/snmp-ups.h: mib2nut mappings with - "zero" flag value are not illegal - -2022-01-18 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: mib2nut mappings with - "zero" flag value are not illegal Do not yell about them like it's - a bug, after all. - -2022-01-23 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: redefine bit-flags macros - so they do not overlap (and update some helper-masking macros) - follows up on issue from PR #1177 and aligns with ultimately DMF - (42ity fork) tested changes to help merge that later with less - effort - -2021-11-22 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: update mask for - SU_TYPE_DAISY() and comments for it and SU_DAISY - -2021-11-13 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: report if an snmp_info[] - entry flag was not defined (is 0) - * drivers/snmp-ups.h: drivers/snmp-ups.h: redefine bit-flags macros - so they do not overlap (and some helper-masking macros) [follow up - on issue from PR #1177] - -2022-01-22 Jim Klimov - - * NEWS: NEWS: drop chapters for "PLANNED NEWS" for releases after - v2.7.5 - * UPGRADING: UPGRADING: highlight libusb-1.0 in NUT v2.7.5 - -2022-01-21 Jim Klimov - - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - "libssl-dev" name is more popular nowadays than "openssl-dev" - (Debian and family) - * docs/nut.dict: docs/nut.dict: update for Armac subdriver NEWS - * data/driver.list.in: data/driver.list.in: add PiJuice HAT (big) and - pHAT (Zero) - -2022-01-20 Jim Klimov - - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: tools/nut- - scanner/scan_snmp.c, drivers/snmp-ups.c: strcmp() shorter "SHA" and - "AES" and check this is all of the string length Alternative: move - matching to end of stack - * NEWS: NEWS: prepare for nutdrv-qx armac merge in 2.7.5 timeline - * NEWS: NEWS: added usbhid-ups fix_report_desc() for NUT v2.7.5 - * NEWS: NEWS: added powercom "nobt" option for NUT v2.7.5 - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): - accomodate "usb_ctrl_charbuf" and formatting changes for libusb-1.0 - support - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): mark as - static method - * drivers/nutdrv_qx_ablerex.c: drivers/nutdrv_qx_ablerex.c: - ablerex_process_status_bits(): mark as static method - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: ablerex_command(): - accomodate "usb_ctrl_charbuf" and formatting changes for libusb-1.0 - support - * ci_build.sh: ci_build.sh: make distcheck (pun intended) less noisy - * ci_build.sh: ci_build.sh: comment a suggestion how to use - BUILD_TYPE=fightwarn typically - * ci_build.sh: ci_build.sh: make distcheck (pun intended) less noisy - * ci_build.sh: ci_build.sh: comment a suggestion how to use - BUILD_TYPE=fightwarn typically - -2022-01-20 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): use - nut_usb_strerror(ret) Match updated libusb-1.0/0.1 API in NUT - master - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Fix nut_usb_strerror(ret) - for new libusb-1.0/0.1 support in master branch - -2022-01-19 Jim Klimov - - * drivers/legrand-hid.c: Update legrand-hid.c Initialize - "fix_report_desc", this file appeared from another PR merged before - #1245 - -2022-01-19 Jim Klimov - - * ci_build.sh: ci_build.sh: provision check_gitignore() calls for DMF - branch build products - * ci_build.sh: ci_build.sh: check_gitignore(): wrap long lines - * ci_build.sh: ci_build.sh: check_gitignore(): add a FILE_GLOB - support - * ci_build.sh: ci_build.sh: optional_dist_clean_check(): copypasta - error, GIT_ARGS not needed in this one - * ci_build.sh: ci_build.sh: fix "MAKE distclean" operations back to - not-quiet, they look weird as a half-muted wall of text - * ci_build.sh: ci_build.sh: fix use of git status $GIT_ARGS - consistently - * drivers/snmp-ups.c: drivers/snmp-ups.c: match_sysoid(): test for - NULL mib2nut[i]->snmp_info (and skip if so) - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): imply that - skipped value is not a "valid" name in the mapping table (name may - be known, but with no snmp_info attached) - -2022-01-18 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: handle not-loaded snmp_info - without segfaulting - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): better - tracing of mib_name comparisons - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): test for - NULL mib2nut[i]->snmp_info (and skip if so) before accounting - mibSeen=TRUE and trying to match_model_OID() - -2022-01-18 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: delete duplicates after - rebase - * drivers/{adele_cbi.c => adelsystem_cbi.c}, drivers/{adele_cbi.h => - adelsystem_cbi.h}: rename after rebase - * drivers/{adelsystem_cbi.c => adele_cbi.c}, - drivers/{adelsystem_cbi.h => adele_cbi.h}: rename for rebase - -2022-01-13 Dimitris Economou - - * drivers/adelsystem_cbi.c: try to reconnect on IVALID DATA and - INVALID CRC from read_all_regs - * drivers/adelsystem_cbi.c: try to reconnect on INVALID DATA and - INVALID CRC errors - * drivers/adele_cbi.c, drivers/adele_cbi.h, - drivers/adelsystems_cbi.c, drivers/adelsystems_cbi.h: delete - renamed driver files - * drivers/Makefile.am, drivers/adelsystem_cbi.c, - drivers/adelsystem_cbi.h: filename fixes - * drivers/Makefile.am, drivers/adelsystems_cbi.c, - drivers/adelsystems_cbi.h: adele changed to adelsystems - * drivers/adele_cbi.c, drivers/adele_cbi.h: macro name changes - * drivers/adele_cbi.c, drivers/adele_cbi.h: minor bug fixes - * drivers/adele_cbi.h: modify regs_data memory, devreg enum - rearrangement - -2022-01-12 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: some fixes in - read_all_regs approach - * drivers/adele_cbi.c, drivers/adele_cbi.h: read_all_regs aproach - integrated - -2022-01-11 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: ghost alarms bug fix, - other bug fixes - -2022-01-10 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: first testing release - -2022-01-09 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: alrm_t, alrm_ar_t data - structures, construction of upsdrv_updateinfo in progress - -2022-01-08 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: structure device data, - code get_dev_state, in progress - -2022-01-07 Dimitris Economou - - * drivers/adele_cbi.h: register status values and masks added - -2022-01-06 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: under construction - -2022-01-11 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: ghost alarms bug fix, - other bug fixes - -2022-01-10 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: first testing release - -2022-01-09 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: alrm_t, alrm_ar_t data - structures, construction of upsdrv_updateinfo in progress - -2022-01-08 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: structure device data, - code get_dev_state, in progress - -2022-01-07 Dimitris Economou - - * drivers/adele_cbi.h: register status values and masks added - -2022-01-06 Dimitris Economou - - * drivers/Makefile.am: Makefile.am modifications - * drivers/adele_cbi.c, drivers/adele_cbi.h: under construction - -2022-01-18 Dimitris Economou - - * drivers/{adelsystem_cbi.c => adele_cbi.c}, - drivers/{adelsystem_cbi.h => adele_cbi.h}: rename for rebase - -2022-01-18 Jim Klimov - - * drivers/usbhid-ups.h: drivers/usbhid-ups.h: rename pDesc arg to - match wording in usbhid-ups.c - * drivers/hidparser.c, drivers/hidparser.h: drivers/hidparser.{c,h}: - rename pDesc arg/var to avoid shadowing a global variable Pre- - emptively: `extern pDesc` is defined in libhid.h which does not - seem to be used in/along-with hidparser.{c,h} currently - but this - collision may happen later (especially with code-copying around). - * drivers/cps-hid.c: drivers/cps-hid.c: clean up trailing whitespaces - * drivers/cps-hid.c: drivers/cps-hid.c: FindReport() - cps_fix_report_desc(): rename pDesc arg to avoid shadowing a global - variable - * drivers/cps-hid.c: drivers/cps-hid.c: mark non-exported - FindReport() as static - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: enhance - NUT_CHECK_COMPILE_FLAG() to run the whole toolchain for "build and - run" when checking CLI option support - * ci_build.sh: ci_build.sh: build_to_only_catch_errors_target(): - CI_PARMAKE_VERBOSITY=silent should not hide warnings - * ci_build.sh: ci_build.sh: do not silent-make initial clean-up (it - is chatty anyway, so let us see the dirs processed) - * ci_build.sh: ci_build.sh: comment verbosity (non-)tweaks for builds - without a BUILD_TYPE - * ci_build.sh: ci_build.sh: report around initial clean-up for - clearer log reading - * ci_build.sh: ci_build.sh: refactor with check_gitignore() - * ci_build.sh: ci_build.sh: refactor ccache_stats() - * ci_build.sh: ci_build.sh: refactor make-verbosity settings and - adjust some for default builds to store less log - -2022-01-18 Jim Klimov - - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: avoid - SIGSEGV in libusb-1.0 when running as non-root and device fails to - open (e.g. perms error) - -2022-01-17 Jim Klimov - - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - report in usage() if "library not detected" for a scan option - -2022-01-17 Jim Klimov - - * drivers/generic_modbus.c: drivers/generic_modbus.c: address - -Wmissing-field-initializers complaints for timeval with timeouts - (memset to 0 instead) - * drivers/generic_modbus.c: drivers/generic_modbus.c: address - -Wstrict-prototypes complaints - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: raise the bar for - code quality non-regression, to fail on any (new) warnings in - master branch and PRs to it - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: shut back the - cppcheck-by-default - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: do not allow to - disable delayedIssueAnalysis on "stable branches" - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: enable cppcheck - slowBuild stages generally, not just for "fightwarn" branches - -2022-01-16 Jim Klimov - - * configure.ac: configure.ac: adjust test structure for both built-in - ntohl/htonl and string built-ins (using explicit -Werror -Wno-... - checks) - * configure.ac: configure.ac: adjust test structure for built-in - ntohl/htonl to be similar to that for string built-ins (using - explicit -Werror) - * ci_build.sh: ci_build.sh: do not lose original LDFLAGS - -2022-01-15 Jim Klimov - - * configure.ac: configure.ac: tweak LIBLTDL_CFLAGS same as - LIBNETSNMP_CFLAGS for -Wno-shadow if needed for string methods or - htonl() etc In some builds of the NUT CI farm dynamatrix (possibly - ones without SNMP support), the nutscan-ip.c complains about - "declaration shadows a local variable" -- investigation of which - leads into the macros expanded for common method names on those - systems and/or compiler toolkit versions. This PR hopes to avoid - that situation more extensively. - -2022-01-14 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: treat DISABLE_MIB_LOADING - more safely - -2022-01-14 Jim Klimov - - * tests/cpputest.cpp, tests/example.cpp, tests/nutclienttest.cpp: - tests/*.cpp: mark overridden class methods as such - * clients/nutclient.h, clients/nutclientmem.h: clients/nutclient.h + - nutclientmem.h: mark overridden class methods as such - -2022-01-13 Jim Klimov - - * configure.ac: configure.ac: adjust test for built-in string - functions (problematic on clang-3.4) to see any warnings and - specifically for unreachable code there - * ci_build.sh: ci_build.sh: relay more build-influencing envvars in - the (Jenkins-logged) printout - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: fix the - range-check and message/comment it better - * drivers/asem.c: drivers/asem.c: macro ACCESS_DEVICE() ends with a - brace; we HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_EXTRA_SEMI_STMT to - keep the useless trailing ";" for readability - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: add - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_EXTRA_SEMI_STMT(_BESIDEFUNC) - * drivers/asem.c: drivers/asem.c: declare upsdrv_shutdown() as - noreturn - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: avoid including usb- - common.h twice - -2022-01-13 Dimitris Economou - - * drivers/adelsystem_cbi.c: try to reconnect on IVALID DATA and - INVALID CRC from read_all_regs - * drivers/adelsystem_cbi.c: try to reconnect on INVALID DATA and - INVALID CRC errors - -2022-01-13 Jim Klimov - - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: ask CLANG to reject unknown - pragmas when checking for them - * common/common.c: common/common.c: check for - HAVE_PRAGMA_CLANG_DIAGNOSTIC_IGNORED_UNREACHABLE_CODE_RETURN - support before use - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: test specifically for HAVE_ - PRAGMA_CLANG_DIAGNOSTIC_IGNORED_UNREACHABLE_CODE_RETURN(_BESIDEFUNC - ) support - -2022-01-13 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h, - drivers/adelsystems_cbi.c, drivers/adelsystems_cbi.h: delete - renamed driver files - * drivers/Makefile.am, drivers/adelsystem_cbi.c, - drivers/adelsystem_cbi.h: filename fixes - * drivers/Makefile.am, drivers/adelsystems_cbi.c, - drivers/adelsystems_cbi.h: adele changed to adelsystems - * drivers/adele_cbi.c, drivers/adele_cbi.h: macro name changes - * drivers/adele_cbi.c, drivers/adele_cbi.h: minor bug fixes - * drivers/adele_cbi.h: modify regs_data memory, devreg enum - rearrangement - -2022-01-12 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: some fixes in - read_all_regs approach - * drivers/adele_cbi.c, drivers/adele_cbi.h: read_all_regs aproach - integrated - -2022-01-12 Jim Klimov - - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: set default - C/C++ standards to GNU dialects for GCC/CLANG - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: set default - C/C++ standards to avoid C90-non-compliance warnings noise (on - compilers that can do better than that) - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: fix a test - from shell to autoscript - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - only evaluate if NUT_HAVE_LIBNETSNMP_* when we build WITH_SNMP - * common/common.c: common/common.c: use - HAVE_PRAGMAS_FOR_GCC_DIAGNOSTIC_IGNORED_UNREACHABLE_CODE_RETURN - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: add HAVE_PRAGMA_GCC_DIAGNOS - TIC_IGNORED_UNREACHABLE_CODE_RETURN(_BESIDEFUNC) - * configure.ac, m4/nut_compiler_family.m4: m4/nut_compiler_family.m4 - + configure.ac: refactor NUT_COMPILER_FAMILY_FLAGS_DEFAULT_STANDARD - as a separate method to apply just before we set up warning-level - support - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - update dependency package naming for libusb-1.0 on Debian family - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: set default - C/C++ standards to GNU dialects for GCC/CLANG - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: set default - C/C++ standards to avoid C90-non-compliance warnings noise (on - compilers that can do better than that) - * ci_build.sh: ci_build.sh: comment why ./configure is not without - args - -2022-01-11 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: ghost alarms bug fix, - other bug fixes - -2022-01-10 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: first testing release - -2022-01-09 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: alrm_t, alrm_ar_t data - structures, construction of upsdrv_updateinfo in progress - -2022-01-08 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: structure device data, - code get_dev_state, in progress - -2022-01-07 Dimitris Economou - - * drivers/adele_cbi.h: register status values and masks added - -2022-01-06 Dimitris Economou - - * drivers/Makefile.am: Makefile.am modifications - * drivers/adele_cbi.c, drivers/adele_cbi.h: under construction - -2021-09-23 Jim Klimov - - * drivers/generic_modbus.c: drivers/generic_modbus.{c,h}: fix - whitespace style (original fix from master branch) - -2022-01-12 Jim Klimov - - * drivers/generic_modbus.c: drivers/generic_modbus.c: fix whitespace - style (in PR-1239) - -2022-01-12 Arnaud Quette - - * drivers/mge-xml.c: Eaton NMC: fix the non publication of real/power - with 3ph power and realpower for 3ph Lx were not publishing values - when they were 0 - -2022-01-11 Dave Williams - - * drivers/cps-hid.c: New HID fix strategy after consultation with CPS - It appears both input and output LogMin and LogMax values are - incorrect as the rated voltage (for EU models) is 170v to 270v - which is outside the logical limits reported by the HID. The fix - checks for the error (loosely) and then applies reasonable values - (0v and 511v) to allow the actual input and output voltages to be - reported rather than be constrained to the limits. - -2022-01-11 Jim Klimov - - * drivers/arduino-hid.c, drivers/delta_ups-hid.c, - drivers/hidparser.c, drivers/idowell-hid.c, drivers/powervar-hid.c, - drivers/salicru-hid.c: drivers/hidparser.c + *-hid.c: include - "config.h" first - -2022-01-11 Jim Klimov - - * docs/nut.dict: Update nut.dict Updated for PR - https://github.com/networkupstools/nut/pull/1256 - -2022-01-11 Jim Klimov - - * drivers/generic_modbus.c: drivers/generic_modbus.c: handle the two - APIs for libmodbus timeout setting - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: in tests for - API, the AC_DEFINE must be used with exact macro names (not - m4/shell variables) - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: in tests for - API, clarify if old API (timeval) can be used with variables from - new API (uint32) set into the struct - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: in tests for - API, "new/old" comments were confused - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: in tests for - API, initialize modbus_t *ctx differently - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: test actively - for the modbus timeout API (count and type of args used) - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: convert a - code block from plain shell to autoscript - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: test for - presence of modbus_set_byte_timeout() and - modbus_set_response_timeout() - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: detect support for - (ignoring) "-Wsign-conversion" - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: add guards to call - AX_C_PRINTF_STRING_NULL and AX_C_PRAGMAS logic only once - * drivers/generic_modbus.c: drivers/generic_modbus.c: bump - DRIVER_VERSION for feature change (connection timeout handling) - -2022-01-10 Ablerexsoftware - - * data/driver.list.in: update the driver.list.in - -2022-01-11 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: ghost alarms bug fix, - other bug fixes - -2022-01-10 Jim Klimov - - * docs/man/powercom.txt: Update powercom.txt Sentence restructure - -2022-01-10 Jim Klimov - - * .github/pull_request_template.md: pull_request_template.md: update - and reshuffle check-list items - * .../{PULL_REQUEST_TEMPLATE/nut-driver-PR.md => - pull_request_template.md}: Move fancy-named PR template to plain - .github/pull_request_template.md - * drivers/salicru-hid.c, scripts/upower/95-upower-hid.rules: - drivers/salicru-hid.c: add known compatibility for Salicru SLC TWIN - (PRO2, PRO3, RT3) per reports in issue #1142 - * data/driver.list.in: data/driver.list.in: add known compatibility - for Salicru TWIN (PRO2, PRO3, RT3) per reports in issues #450 and - #1142 - * .github/PULL_REQUEST_TEMPLATE/nut-driver-PR.md: Add - .github/PULL_REQUEST_TEMPLATE/nut-driver-PR.md template - -2022-01-10 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: first testing release - -2022-01-10 Jim Klimov - - * data/driver.list.in: data/driver.list.in: fix English typos in - comment - * docs/developers.txt: docs/developers.txt: remind to update - docs/acknowledgements.txt when adding vendor-backed support - * docs/man/usbhid-ups.txt: docs/man/usbhid-ups.txt: fix reference to - data/driver.list (typo in filename) - -2022-01-09 Rouben Tchakhmakhtchian - - * docs/man/powercom.txt, drivers/powercom.c: Powercom driver - (drivers/powercom.c) version bump from 0.17 to 0.18: * Implement - configuration flag "nobt" to skip battery test during - initialization * Cleanup old code to use testvar() for config - parameter checks in upsdrv_initups() * Add nobt flag to sample - config file in built-in doc Powercom driver man page - (docs/man/powercom.txt) update to explain nobt flag - -2022-01-09 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: alrm_t, alrm_ar_t data - structures, construction of upsdrv_updateinfo in progress - -2022-01-08 Dimitris Economou - - * drivers/adele_cbi.c, drivers/adele_cbi.h: structure device data, - code get_dev_state, in progress - -2022-01-07 Jim Klimov - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: be sure to have - PATH_MAX defined (for usb.h that did not bother by itself) - * drivers/usb-common.h: drivers/usb-common.h: be sure to have - PATH_MAX defined (for usb.h that did not bother by itself) - -2022-01-07 Dimitris Economou - - * drivers/adele_cbi.h: register status values and masks added - -2022-01-06 Jim Klimov - - * Jenkinsfile-dynamatrix: Revert "Jenkinsfile-dynamatrix: be sure to - reset slowBuild configs over dynacfgBase" This reverts commit - 18cf19ebc7e01f30c3d84c7b3b8f69e961429ebb as the "design flaw" which - that change worked around should now be (hopefully) fixed in the - jenkins-fynamatrix library itselg. - -2022-01-06 Dimitris Economou - - * drivers/Makefile.am: Makefile.am modifications - * drivers/adele_cbi.c, drivers/adele_cbi.h: under construction - -2022-01-05 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: fix - dynamatrixAxesCommonEnvCartesian cases to group the variables we - apply as one bunch, not as several separate hits - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: define - dynacfgPipeline.excludeCombos_DEFAULT (mismatched ARCHes only) - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - avoid implicit case fallthrough - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: be sure to reset - slowBuild configs over dynacfgBase - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: avoid running - "cppcheck" several times per host - -2022-01-04 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: reinstate - excludeCombos for autotools-only builds (fightwarn) to avoid - unsupported ARCH-bits mix builds - -2022-01-02 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: fix "Default - autotools driven build with default warning levels (gnu99/gnu++11)" - dynamatrixAxesVirtualLabelsMap mergeMode from "merge" to "replace" - (want to only build listed scenarios, not everything possible in - the matrix) - -2021-12-30 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: avoid using - undefined (null) excludeCombos_DEFAULT - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: fix references to - excludeCombos: ... axisCombos_COMPILER_(NOT_)GCC - -2022-01-05 Jim Klimov - - * m4/nut_check_cppcheck.m4: m4/nut_check_cppcheck.m4: relax required - tool version for cppcheck*.xml generation - * Makefile.am: Makefile.am: fix dependencies for cppcheck*.xml - generation - -2022-01-04 Dimitris Economou - - * drivers/generic_modbus.c: comment and code alignment fixes - -2022-01-03 Jim Klimov - - * ci_build.sh: ci_build.sh: set DO_CLEAN_CHECK=no for default- - tgt:cppcheck or docs-building scenarios by default, so we can - get/archive those costly media files - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: set - DO_CLEAN_CHECK=no for default-tgt:cppcheck scenarios, so we can get - that analysis data - -2021-12-30 Jim Klimov - - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - include config.h first - -2021-12-30 Jim Klimov - - * docs/developers.txt, docs/nut.dict: docs/developers.txt: update - about C89/GNU89 support (with GCC toolkit) - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: separate - C89/C90/ANSI builds with GCC (can actually pass strict and GNU - modes) and CLANG (more pedantic) - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: typo fix for - disableSlowBuildCIBuildExperimentalANSI - -2021-12-30 Jim Klimov - - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: do not test - for "-fcolor-diagnostics" - redundant for clang, and sometimes - toxic for gcc - * drivers/Makefile.am: drivers/Makefile.am: snmp-ups uses fabsf() so - needs libm - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: include - config.h first - * drivers/microsol-apc.c: drivers/microsol-apc.c: include config.h - first - * drivers/genericups.c: drivers/genericups.c: include config.h first - * include/nut_stdint.h: include/nut_stdint.h: define SSIZE_MAX if - missing - * drivers/serial.h: drivers/serial.h: pull more includes - -2021-12-30 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am: metasys uses fabsf() so - needs libm - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix comments to C-style - * drivers/powercom.c: drivers/powercom.c: fix comments to C-style - * drivers/microdowell.h: drivers/microdowell.h: fix comments to - C-style - * drivers/solis.h: drivers/solis.h: fix comments to C-style - * drivers/libshut.c: drivers/libshut.c: fix comments to C-style - * drivers/openups-hid.c: drivers/openups-hid.c: include config.h - first - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix comments to C-style - * drivers/riello_usb.c: drivers/riello_usb.c: fix comments to C-style - * drivers/generic_modbus.h: drivers/generic_modbus.h: fix comments to - C-style - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix comments to C-style - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - fix comments to C-style - * tools/nut-scanner/nutscan-init.c: tools/nut-scanner/nutscan-init.c: - fix comments to C-style - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: fix comments to C-style - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - comments to C-style - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: fix - comments to C-style - * server/upsd.c: server/upsd.c: fix comments to C-style - * server/conf.c: server/conf.c: fix comments to C-style - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix comments to C-style - * drivers/main.c: drivers/main.c: fix comments to C-style - * common/upsconf.c: common/upsconf.c: include config.h first - * common/str.c: common/str.c: fix comments to C-style - * server/user.c: server/user.c: include config.h first - * server/desc.c: server/desc.c: include config.h first - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: include config.h first - * drivers/riello_usb.c: drivers/riello_usb.c: include config.h first - * drivers/riello_ser.c: drivers/riello_ser.c: include config.h first - * drivers/rhino.c: drivers/rhino.c: include config.h first - * drivers/mge-utalk.c: drivers/mge-utalk.c: include config.h first - * drivers/libhid.c: drivers/libhid.c: include config.h first, and try - to get strings.h explicitly - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: include - config.h first - * drivers/dummy-ups.c: drivers/dummy-ups.c: include config.h first - * drivers/dstate.c: drivers/dstate.c: include config.h first - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: try to include explicitly both of - (sys/)signal.h - * server/upsd.c: server/upsd.c: try to include explicitly both of - (sys/)signal.h - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: include config.h first - * tools/nut-scanner/nutscan-device.c: tools/nut-scanner/nutscan- - device.c: include config.h first - * drivers/mge-xml.c: drivers/mge-xml.c: include config.h first - * drivers/libshut.c: drivers/libshut.c: include config.h first - * common/state.c: common/state.c: include config.h first - * common/str.c: common/str.c: include config.h first, and try to get - strings.h explicitly - * include/common.h: include/common.h: try to include explicitly - string(s).h and (sys/)signal.h - * configure.ac: configure.ac: test more actively for strcasecmp, - strncasecmp, strdup and usleep methods that are problematic for - strict C99+ builds - * configure.ac: configure.ac: detect explicitly string(s).h and - (sys/)signal.h - -2021-12-29 Jim Klimov - - * configure.ac: configure.ac: zero-init struct in ntohl/htonl - warning-tweaks test code - -2021-12-29 Jim Klimov - - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: be pragmatic - about possibly unreachable error handling in arch-dependent range - check - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: mark local - vars as static - * configure.ac: configure.ac: constrain warning-tweaks against macro - str*() and ntohl/htonl to LIBNETSNMP_CFLAGS (empirically) - * configure.ac: configure.ac: detect if compiler (e.g. older - clang-3.4) has a problem with built-in/macro variants of system - str*() and htonl/ntohl functions at our higher warning levels, and - mitigate that - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: rearrange - detection order of compiler flags - * drivers/generic_modbus.c: drivers/generic_modbus.c: quiesce - warnings about unreachable-code (default after full enum-case - handling) with older clang - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: ignore potentially - unreachable code in assert() - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: quiesce warnings about - unreachable-code (default after full enum-case handling) with older - clang - * drivers/upscode2.c: drivers/upscode2.c: quiesce warnings about - unreachable-code (default after full enum-case handling) with older - clang - * drivers/hidparser.c: drivers/hidparser.c: ignore potentially - unreachable code in platforms-dependent range checks - * drivers/libhid.c: drivers/libhid.c: ignore potentially unreachable - code in platforms-dependent range checks - * drivers/libshut.c: drivers/libshut.c: tell compiler that we do want - to treat a char array (managed by comms code) as the aligned - pointer to struct - * drivers/libshut.c: drivers/libshut.c: adjust data_size usage to - usb_ctrl_charbufsize typedef - fix pragmas for range-checks - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: quiesce warnings about - unreachable-code (default after full enum-case handling) with older - clang - * drivers/genericups.c: drivers/genericups.c: ignore potentially - unreachable code in platforms-dependent range checks - * drivers/bestuferrups.c: drivers/bestuferrups.c: ignore potentially - unreachable code in assert(0) - * drivers/bestfcom.c: drivers/bestfcom.c: ignore potentially - unreachable code in assert(0) - * clients/upsmon.c: clients/upsmon.c: ignore potentially unreachable - code in platforms-dependent range checks - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: ignore - potentially unreachable code in platforms-dependent range checks - * tools/nut-scanner/nutscan-init.c: tools/nut-scanner/nutscan-init.c: - ignore potentially unreachable code in platforms-dependent range - checks - * server/upsd.c: server/upsd.c: quiesce warnings about unreachable- - code (default after full enum-case handling) with older clang - * configure.ac: configure.ac: update "clang-medium" warnings level - with "-Wno-conversion" for older clang releases - * ci_build.sh: ci_build.sh: introduce CI_FAILFAST for - BUILD_TYPE=default-all-errors - * ci_build.sh: ci_build.sh: use configurable --enable-Wcolor for - compiler warnings in default quick build - * ci_build.sh: ci_build.sh: use configurable --enable-Wcolor for - compiler warnings in all BUILD_TYPEs - * configure.ac, m4/nut_compiler_family.m4: configure.ac + - m4/nut_compiler_family.m4: allow configurable --enable-Wcolor for - compiler warnings - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: add - diagnostics-color support for GCC - * configure.ac, m4/ax_check_compile_flag.m4, - m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: use - AX_CHECK_COMPILE_FLAG to detect generic options supported by - compilers - -2021-12-28 Jim Klimov - - * configure.ac: configure.ac: pass "-Wno-disabled-macro-expansion" in - clang-medium and clang-hard modes, to avoid choking on systems- - provided strncmp() etc. - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: pw_comm_setup(): ignore - potentially unreachable code in platforms-dependent range checks - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - ignore potentially unreachable code in platforms-dependent range - checks - * common/common.c: common/common.c: get_user_pwent(): ignore - "-Wunreachable-code" where we were required to have a return - * common/common.c: common/common.c: get_max_pid_t(): avoid warnings - in C89/C90/ANSI builds *because* we check for LLONG_MAX macro - * common/common.c: common/common.c: get_max_pid_t(): ignore - "-Wunreachable-code" - * common/common.c: common/common.c: vupslog(): ignore "-Wformat- - nonliteral" with older clang too - * configure.ac: configure.ac: with (older) clang, ignore "unused- - arguments" (of clang program) - * server/upsd.c: server/upsd.c: mainloop(): ignore "-Wcovered-switch- - default" with older clang too - * clients/upsclient.c: clients/upsclient.c: upscli_init(): fix "ret" - to "long", to match some versions of SSL_CTX_ctrl() (from - openssl/ssl.h e.g. in FreeBSD) - * drivers/riello_usb.c: drivers/riello_usb.c: riello_command(): - handle possibly undefined ETIME - * drivers/blazer_usb.c: drivers/blazer_usb.c: blazer_command(): - handle possibly undefined ETIME - * drivers/blazer_usb.c: drivers/blazer_usb.c: phoenix_command(): - avoid fall-through in a case - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: qx_command(): handle - possibly undefined ETIME - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: phoenix_command(): avoid - fall-through in a case - * drivers/mge-hid.c: drivers/mge-hid.c: nominal_output_voltage_fun(): - explicitly fall-through in a case - * drivers/libshut.c: drivers/libshut.c: shut_control_msg(): - explicitly fall-through in a case, and finish the default with a - break - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: comment away - setting "-isystem ..." common paths early in CFLAGS - * configure.ac: configure.ac: set "-Wno-system-headers" early in - gcc/clang medium and hard warning levels - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: set "-isystem - ..." paths early in CFLAGS - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: expel other - C89/C90/ANSI builds to only happen if not - disableSlowBuildCIBuildExperimentalANSI and only in branches (or - PRs to) matching ~/fightwarn.*89.*/ currently - * configure.ac: configure.ac: try to handle warnings in system - headers at our medium and hard levels - -2021-12-28 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix_report_desc(): - avoid shadowing global var with method arg name - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix_report_desc(): mark - NUT_UNUSED_VARIABLEs - -2021-12-28 Jim Klimov - - * docs/man/nutdrv_qx.txt: docs/man/nutdrv_qx.txt: mention Armac in - SUPPORTED HARDWARE section, and wrap long lines there - * docs/man/nutdrv_qx.txt, docs/nut.dict: docs/man/nutdrv_qx.txt: port - notes for "armac" subdriver from source code - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): move - variable declarations to top of scope - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): fix - varied int types to size_t, and move equation sides around to avoid - signedness - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: armac_command(): zero out - whole tmpbuf[], not one element - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: normalize whitespace for - "armac" code addition - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: add (C) for "armac" code - addition - -2021-12-25 Tomasz Fortuna - - * data/driver.list.in, docs/man/nutdrv_qx.txt, docs/nut.dict, - drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: add support for Armac UPS - (or maybe other richcomm_usb like) Based on Armac R/2000I/PSW, but - should support other UPSes that work with "PowerManagerII" software - from Richcomm Technologies from around 2004-2005. - -2021-12-28 Jim Klimov - - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: add a troubleshooting section, with entry for - cgroupsv1-only guests on a cgroupsv2-only host - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - add a chapter for CentOS 7 agent preparation - * docs/config-prereqs.txt: docs/config-prereqs.txt: clarify that - OpenBSD multitude of autotools versions is a blessing, not a pain - ;) - * docs/config-prereqs.txt: docs/config-prereqs.txt: clarify that JDK - installation in Debian guests may need /proc submounted - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: move "sudo" - installation away from useradd example (so "apt-get" does not - pollute non-debian guest examples) - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: change - CentOS7 example guest name from ...-x86_64 to ...-x86-64 (or - -amd64) to avoid loss of character - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: avoid - "AltArch" CentOS i686, use just x86_64 as something easier to get - hands on - -2021-12-27 hunter86bg - - * data/driver.list.in: Add Cyber Power PR1500RT2U, fixes - networkupstools/nut#1191 - -2021-12-27 Jim Klimov - - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: remind to - revise container MAC addresses - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: clarify - that "third-party distro" LXC helpers may need chiseling - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: hint at needed "pacman" for Arch Linux container - installation - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: add installation of RPM based distros as guests on non- - RPM (DEB) hosts - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: clarify how - to find defined LXC templates, and get usage details about them - -2021-12-25 Jim Klimov - - * drivers/riello_ser.c: drivers/riello_ser.c: do not include - hidparser.h (hiccups in usb-common.h due to lack of - WITH_LIBUSB_x_y) - * drivers/riello_ser.c: drivers/riello_ser.c: do not include - hidparser.h (hiccups in usb-common.h due to lack of - WITH_LIBUSB_x_y) - * drivers/libshut.c: drivers/libshut.c: adjust data_size usage to - usb_ctrl_charbufsize typedef - -2021-12-21 Jim Klimov - - * configure.ac: configure.ac: switch default warnings level to - "medium" - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: range-check quiesced by - pragmas (GCC) - * drivers/libusb0.c: drivers/libusb0.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/libusb1.c: drivers/libusb1.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/libshut.c: drivers/libshut.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/hidparser.c: drivers/hidparser.c: do not separate if-clause - parenthesis by pragmas (GCC) - -2021-12-20 Jim Klimov - - * drivers/libusb1.c: drivers/libusb1.c: fix whitespace (break long - lines) - * drivers/libshut.h: drivers/libshut.h: define ERROR_ACCESS etc. used - for USB(-like) result states - -2021-12-19 Jim Klimov - - * drivers/hidparser.c, drivers/hidparser.h, drivers/libhid.c, - drivers/libhid.h, drivers/libshut.c, drivers/libshut.h, - drivers/libusb0.c, drivers/libusb1.c, drivers/nut_libusb.h, - drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, - drivers/riello_usb.c, drivers/tripplite_usb.c, drivers/usb- - common.h, drivers/usbhid-ups.c: drivers (c,h) USB, HID and SHUT: - converge parameter usage from strict int types to backend API - dependent "usb_ctrl_*" and "usb_dev_handle" typedefs, then range- - check and cast the numbers, and avoid build warnings - -2021-12-25 Jim Klimov - - * drivers/libshut.c: drivers/libshut.c: adjust data_size usage to - usb_ctrl_charbufsize typedef - -2021-12-21 Jim Klimov - - * configure.ac: configure.ac: switch default warnings level to - "medium" - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: range-check quiesced by - pragmas (GCC) - * drivers/libusb0.c: drivers/libusb0.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/libusb1.c: drivers/libusb1.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/libshut.c: drivers/libshut.c: do not separate if-clause - parenthesis by pragmas (GCC) - * drivers/hidparser.c: drivers/hidparser.c: do not separate if-clause - parenthesis by pragmas (GCC) - -2021-12-20 Jim Klimov - - * drivers/libusb1.c: drivers/libusb1.c: fix whitespace (break long - lines) - * drivers/libshut.h: drivers/libshut.h: define ERROR_ACCESS etc. used - for USB(-like) result states - -2021-12-19 Jim Klimov - - * drivers/hidparser.c, drivers/hidparser.h, drivers/libhid.c, - drivers/libhid.h, drivers/libshut.c, drivers/libshut.h, - drivers/libusb0.c, drivers/libusb1.c, drivers/nut_libusb.h, - drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, - drivers/riello_usb.c, drivers/tripplite_usb.c, drivers/usb- - common.h, drivers/usbhid-ups.c: drivers (c,h) USB, HID and SHUT: - converge parameter usage from strict int types to backend API - dependent "usb_ctrl_*" and "usb_dev_handle" typedefs, then range- - check and cast the numbers, and avoid build warnings - -2021-12-25 Jim Klimov - - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, drivers/usb- - common.h, m4/nut_check_libusb.m4: m4/nut_check_libusb.m4, - drivers/usb-common.h + nutdrv_atcl_usb.c + richcomm_usb.c: only - apply usb_detach_kernel_driver_np to libusb-0.1 builds (no alias - tricks) - * drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c, m4/nut_check_libusb.m4: - m4/nut_check_libusb.m4, drivers/libusb1.c + nutdrv_atcl_usb.c + - richcomm_usb.c: honor that libusb-1.0 may - HAVE_LIBUSB_DETACH_KERNEL_DRIVER_NP - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, drivers/usb- - common.h, m4/nut_check_libusb.m4: m4/nut_check_libusb.m4, - drivers/usb-common.h + nutdrv_atcl_usb.c + richcomm_usb.c: only - apply usb_detach_kernel_driver_np to libusb-0.1 builds (no alias - tricks) - * drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c, m4/nut_check_libusb.m4: - m4/nut_check_libusb.m4, drivers/libusb1.c + nutdrv_atcl_usb.c + - richcomm_usb.c: honor that libusb-1.0 may - HAVE_LIBUSB_DETACH_KERNEL_DRIVER_NP - -2021-12-24 Jim Klimov - - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, - drivers/riello_usb.c: drivers/riello_usb.c, richcomm_usb.c, - nutdrv_atcl_usb.c: fix remaining uses of (lib)usb_strerror with - nut_usb_strerror() - -2021-12-25 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: map - libusb_detach_kernel_driver_np (1.0) as usb_detach_kernel_driver_np - (0.1) - * drivers/usb-common.h: drivers/usb-common.h: map - libusb_detach_kernel_driver_np (1.0) as usb_detach_kernel_driver_np - (0.1) - -2021-12-24 Jim Klimov - - * configure.ac: configure.ac: update "clang-medium" warnings pre-set - with -Wno-incompatible-pointer-types-discards-qualifiers - * drivers/libusb1.c: drivers/libusb1.c: some more whitespace and - comment fixes - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, - drivers/riello_usb.c: drivers/riello_usb.c, richcomm_usb.c, - nutdrv_atcl_usb.c: fix remaining uses of (lib)usb_strerror with - nut_usb_strerror() - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: missed - whitespace fixes - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: comment - "#else WITH_LIBUSB_..." in long blocks - -2021-12-20 Jim Klimov - - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - whitespace (indentation etc) - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: drop local - libusb-0.1 vs 1.0 definitions now provided by usb-common.h - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: update comments - -2021-12-19 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: make sure (missing) - methods from another API are defined in config.h (so "#if HAVE_..." - is valid and not guessed as 0) - -2021-12-20 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: whitespace-separate - definitions of ERROR_ACCESS etc., nut_usb_strerror() and similar - macros - -2021-12-21 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: include "common.h" - -2021-12-16 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: define - PRI_NUT_USB_CTRL_CHARBUFSIZE, usb_ctrl_msgvalue and - usb_ctrl_strindex - * drivers/usb-common.h: drivers/usb-common.h: clarify that libusb - timeouts are in milliseconds (with variouts int types per API - version) - * drivers/usb-common.h: drivers/usb-common.h: update comment about - mapping from libusb-0.1 to libusb-1.0 API - * drivers/nut_libusb.h: drivers/nut_libusb.h: comment the practical - mess around hid_rep_index - * drivers/usb-common.h: drivers/usb-common.h: comment which API - version each endif is for - * drivers/usb-common.h: drivers/usb-common.h: note the arg type for - libusb_strerror() in comments to our macro wrapper - nut_usb_strerror() - * drivers/usb-common.h: drivers/usb-common.h: update heading comment - with references to different API docs - * drivers/usb-common.h: drivers/usb-common.h: update heading comment - and (C) for libusb-1.0 related changes - -2021-12-24 Jim Klimov - - * drivers/libshut.c: drivers/libshut.c: shut_control_msg(): data_size - is a "short int" (not size_t) in this branch - -2021-12-15 Jim Klimov - - * drivers/libshut.c: drivers/libshut.c: shut_control_msg(): range- - check data_size before stuffing the number into a char - * drivers/libshut.c: drivers/libshut.c: range-check and cast ints to - struct members and library args - * drivers/libshut.c: drivers/libshut.c: braces fix - * drivers/nut_libusb.h, drivers/usb-common.h: drivers/usb-common.h + - nut_libusb.h: typedef more usb_ctrl_* tokens to match libusb-0.1 vs - 1.0 API - -2021-12-20 Jim Klimov - - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: comment FIXME for - possible uses of usb_ctrl_* typedefs - -2021-12-13 Jim Klimov - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, drivers/usb-common.h: - USB: Rename typedef usb_ctrl_char to usb_ctrl_charbuf to avoid - confsion (it is a char* sibling, not plain char) - * drivers/libshut.h, drivers/nut_libusb.h: drivers/nut_libusb.h, - libshut.h: whitespace fixes (align "version") - -2021-12-10 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: current use of - SHUT_MODE relies on defined/not-defined, not on value for plain #if - macro - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: adapt to usb-common.h and - (usb_ctrl_char) casting - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: adapt to usb-common.h - and (usb_ctrl_char) casting - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: adapt to usb- - common.h and (usb_ctrl_char) casting - -2021-12-20 Jim Klimov - - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: fix whitespace - (break long lines) - * drivers/riello_usb.c: drivers/riello_usb.c: fix whitespace (break - long lines) - -2021-12-10 Jim Klimov - - * drivers/riello_usb.c: drivers/riello_usb.c: adapt to usb-common.h - and (usb_ctrl_char) casting - * drivers/riello.h: drivers/riello.h: do not define duplicate - USB_ENDPOINT_IN/USB_ENDPOINT_OUT - * drivers/usb-common.h: drivers/usb-common.h: convert - usb_get_string{_simple}() from macro aliases to real mappings with - range-checks for libusb-1.0 API - * drivers/usb-common.h: drivers/usb-common.h: mark "static inline" - functions with - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TYPE_LIMITS_BESIDEFUNC since not - all C files call them - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/libhid.h, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, - drivers/tripplite_usb.c, drivers/usb-common.h: drivers/usb- - common.h: consolidate libusb-0.1 vs 1.0 data/func mappings from - *usb.c files - * drivers/nut_libusb.h, drivers/usb-common.h: drivers/nut_libusb.h - already includes "usb-common.h" so no need to pull LibUSB headers - again - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: range-check and cast - args for usb_control_msg() => libusb_control_transfer() and - usb_interrupt_read() => libusb_interrupt_transfer() for libusb-1.0 + * [r2365] m4/nut_check_ipv6.m4: Fix broken logic to enable IPv6 support -2021-12-09 Jim Klimov - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - * drivers/usb-common.h: drivers/usb-common.h: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - -2021-12-08 Jim Klimov - - * drivers/nut_libusb.h: drivers/nut_libusb.h: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - -2021-12-24 Jim Klimov - - * drivers/libusb1.c: drivers/libusb1.c: - HAVE_LIBUSB_DETACH_KERNEL_DRIVER needs "#ifdef" not "#if" - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, tools/nut- - scanner/scan_usb.c: Convert C code from "#ifdef WITH_LIBUSB_x_y" to - "#if" tests for defined value - merging missed a few in - libusb-1.0+0.1 branch - -2021-12-08 Jim Klimov - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/nut_libusb.h, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, - drivers/tripplite_usb.c, drivers/usb-common.h, tools/nut- - scanner/nutscan-init.c, tools/nut-scanner/scan_usb.c, tools/nut- - usbinfo.pl: Convert C code from "#ifdef WITH_LIBUSB_x_y" to "#if" - tests for defined value - -2021-12-24 Jim Klimov - - * configure.ac: configure.ac: update "clang-medium" warnings pre-set - with -Wno-incompatible-pointer-types-discards-qualifiers - -2021-12-20 Jim Klimov - - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - whitespace (indentation etc) - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: drop local - libusb-0.1 vs 1.0 definitions now provided by usb-common.h - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: update comments - -2021-12-19 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: make sure (missing) - methods from another API are defined in config.h (so "#if HAVE_..." - is valid and not guessed as 0) - -2021-12-20 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: whitespace-separate - definitions of ERROR_ACCESS etc., nut_usb_strerror() and similar - macros - -2021-12-21 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: include "common.h" - -2021-12-16 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: define - PRI_NUT_USB_CTRL_CHARBUFSIZE, usb_ctrl_msgvalue and - usb_ctrl_strindex - * drivers/usb-common.h: drivers/usb-common.h: clarify that libusb - timeouts are in milliseconds (with variouts int types per API - version) - * drivers/usb-common.h: drivers/usb-common.h: update comment about - mapping from libusb-0.1 to libusb-1.0 API - * drivers/nut_libusb.h: drivers/nut_libusb.h: comment the practical - mess around hid_rep_index - * drivers/usb-common.h: drivers/usb-common.h: comment which API - version each endif is for - * drivers/usb-common.h: drivers/usb-common.h: note the arg type for - libusb_strerror() in comments to our macro wrapper - nut_usb_strerror() - * drivers/usb-common.h: drivers/usb-common.h: update heading comment - with references to different API docs - * drivers/usb-common.h: drivers/usb-common.h: update heading comment - and (C) for libusb-1.0 related changes - -2021-12-24 Jim Klimov - - * drivers/libshut.c: drivers/libshut.c: shut_control_msg(): data_size - is a "short int" (not size_t) in this branch - -2021-12-15 Jim Klimov - - * drivers/libshut.c: drivers/libshut.c: shut_control_msg(): range- - check data_size before stuffing the number into a char - * drivers/libshut.c: drivers/libshut.c: range-check and cast ints to - struct members and library args - * drivers/libshut.c: drivers/libshut.c: braces fix - * drivers/nut_libusb.h, drivers/usb-common.h: drivers/usb-common.h + - nut_libusb.h: typedef more usb_ctrl_* tokens to match libusb-0.1 vs - 1.0 API - -2021-12-20 Jim Klimov - - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: comment FIXME for - possible uses of usb_ctrl_* typedefs - -2021-12-13 Jim Klimov - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, drivers/usb-common.h: - USB: Rename typedef usb_ctrl_char to usb_ctrl_charbuf to avoid - confsion (it is a char* sibling, not plain char) - * drivers/libshut.h, drivers/nut_libusb.h: drivers/nut_libusb.h, - libshut.h: whitespace fixes (align "version") - -2021-12-10 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: current use of - SHUT_MODE relies on defined/not-defined, not on value for plain #if - macro - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: adapt to usb-common.h and - (usb_ctrl_char) casting - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: adapt to usb-common.h - and (usb_ctrl_char) casting - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: adapt to usb- - common.h and (usb_ctrl_char) casting - -2021-12-20 Jim Klimov - - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: fix whitespace - (break long lines) - * drivers/riello_usb.c: drivers/riello_usb.c: fix whitespace (break - long lines) - -2021-12-10 Jim Klimov - - * drivers/riello_usb.c: drivers/riello_usb.c: adapt to usb-common.h - and (usb_ctrl_char) casting - * drivers/riello.h: drivers/riello.h: do not define duplicate - USB_ENDPOINT_IN/USB_ENDPOINT_OUT - * drivers/usb-common.h: drivers/usb-common.h: convert - usb_get_string{_simple}() from macro aliases to real mappings with - range-checks for libusb-1.0 API - * drivers/usb-common.h: drivers/usb-common.h: mark "static inline" - functions with - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TYPE_LIMITS_BESIDEFUNC since not - all C files call them - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/libhid.h, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, - drivers/tripplite_usb.c, drivers/usb-common.h: drivers/usb- - common.h: consolidate libusb-0.1 vs 1.0 data/func mappings from - *usb.c files - * drivers/nut_libusb.h, drivers/usb-common.h: drivers/nut_libusb.h - already includes "usb-common.h" so no need to pull LibUSB headers - again - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: range-check and cast - args for usb_control_msg() => libusb_control_transfer() and - usb_interrupt_read() => libusb_interrupt_transfer() for libusb-1.0 - support - -2021-12-09 Jim Klimov - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - * drivers/usb-common.h: drivers/usb-common.h: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - -2021-12-08 Jim Klimov - - * drivers/nut_libusb.h: drivers/nut_libusb.h: sanity check that - exactly one version of WITH_LIBUSB_x_y is set (defined and has - value 1) - -2021-12-24 Jim Klimov - - * drivers/libusb1.c: drivers/libusb1.c: - HAVE_LIBUSB_DETACH_KERNEL_DRIVER needs "#ifdef" not "#if" - -2021-12-08 Jim Klimov - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/nut_libusb.h, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c, - drivers/tripplite_usb.c, drivers/usb-common.h, tools/nut- - scanner/nutscan-init.c, tools/nut-scanner/scan_usb.c, tools/nut- - usbinfo.pl: Convert C code from "#ifdef WITH_LIBUSB_x_y" to "#if" - tests for defined value - -2021-12-18 Dave Williams - - * drivers/apc-hid.c, drivers/arduino-hid.c, drivers/belkin-hid.c, - drivers/cps-hid.c, drivers/delta_ups-hid.c, drivers/explore-hid.c, - drivers/hidtypes.h, drivers/idowell-hid.c, drivers/liebert-hid.c, - drivers/mge-hid.c, drivers/openups-hid.c, drivers/powercom-hid.c, - drivers/powervar-hid.c, drivers/salicru-hid.c, drivers/tripplite- - hid.c, drivers/usbhid-ups.c, drivers/usbhid-ups.h: Fix #439 - Incorrect Output Voltage on CPS*EFPCLCD - -2021-12-08 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am: define SHUT_MODE=1 (with - a value) so #if is predictable - -2021-12-09 Jim Klimov - - * configure.ac, m4/nut_check_libusb.m4: configure.ac + - m4/nut_check_libusb.m4: rectify WITH_LIBUSB_x_y definitions - -2021-12-08 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: (hidden) debug - before AC_DEFINE - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: always AC_DEFINE - the WITH_LIBUSB_1_0 and WITH_LIBUSB_0_1 macros with a 0 or 1 value - -2021-12-07 Jim Klimov - - * docs/configure.txt: configure.ac et al: drop the extra --with- - libusb-version and handle its goals via --with-usb=VERSION - -2021-12-24 Jim Klimov - - * configure.ac, m4/nut_check_libusb.m4: m4/nut_check_libusb.m4 + - configure.ac: port newer solution for libusb version selection from - libusb-1.0 branch - -2021-12-07 Jim Klimov - - * configure.ac: configure.ac: drop duplicate NUT_CHECK_LIBNETSNMP - * configure.ac: configure.ac: regroup some NUT_ARG_WITH() closer to - their NUT_CHECK_*() so help for detailed options is near - -2021-11-15 Jim Klimov - - * m4/nut_check_libusb.m4: Move "additional USB-related checks" from - configure.ac to m4/nut_check_libusb.m4 - -2021-12-08 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am: define SHUT_MODE=1 (with - a value) so #if is predictable - -2021-12-09 Jim Klimov - - * configure.ac, m4/nut_check_libusb.m4: configure.ac + - m4/nut_check_libusb.m4: rectify WITH_LIBUSB_x_y definitions - -2021-12-08 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: (hidden) debug - before AC_DEFINE - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: always AC_DEFINE - the WITH_LIBUSB_1_0 and WITH_LIBUSB_0_1 macros with a 0 or 1 value - -2021-12-24 Dimitris Economou - - * drivers/generic_modbus.c: fix in modbus response value check - -2021-12-23 dtsecon - - * drivers/generic_modbus.c, drivers/generic_modbus.h: handle broken - pine error in modbus TCP connections, configurable modbus response - timeouts between requests and frame bytes - -2021-12-23 Jim Klimov - - * ci_build.sh: ci_build.sh: separate the "RES" vars used for - configure_nut() and default-all-errors processing (extend to - libusb-1.0* branches) - * tests/getvaluetest.c: tests/getvaluetest.c: include "config.h" - first - * tests/Makefile.am: tests/Makefile.am: only TEST getvaluetest "if - WITH_USB" - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: do not report - misleading "none (libusb-0.1-config)" as the detected libusb - version Seems this confused not only human readers, but also the - verdict - whether we build WITH_USB - * ci_build.sh: ci_build.sh: separate the "RES" vars used for - configure_nut() and default-all-errors processing (extend to - libusb-1.0* branches - * tests/getvaluetest.c: tests/getvaluetest.c: include "config.h" - first - * tests/Makefile.am: tests/Makefile.am: only TEST getvaluetest "if - WITH_USB" - -2021-12-22 Jim Klimov - - * clients/upsclient.c: clients/upsclient.c: upscli_tryconnect(): in - logged messages, clarity "connect to NUT server %s" Otherwise nut- - scanner output looks awkward when looking at large subnets with - many protocols (including "Old NUT") - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - convert logging in the main loop from a lot of fprintf() to - manageable upsdebugx() - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: - convert logging in the main loop from a lot of fprintf() to - manageable upsdebugx() - * ci_build.sh: ci_build.sh: fix a typo, copypasted around - * tests/Makefile.am: tests/Makefile.am: only build getvaluetest "if - WITH_USB" - * drivers/blazer_usb.c: drivers/blazer_usb.c: forget - libusb_device_handle - * drivers/libhid.h: drivers/libhid.h: forget libusb_device_handle - -2021-12-19 Jim Klimov - - * ci_build.sh: ci_build.sh: allow to build custom - NUT_USB_VARIANTS=libusb-x.y (not plain "x.y") - * ci_build.sh: ci_build.sh: allow to build custom NUT_USB_VARIANTS - and skip building a separate NUT_SSL_VARIANTS=auto - -2021-12-22 Jim Klimov - - * ci_build.sh: ci_build.sh: fix a typo, copypasted around - * tests/Makefile.am: tests/Makefile.am: only build getvaluetest "if - WITH_USB" - * drivers/blazer_usb.c: drivers/blazer_usb.c: forget - libusb_device_handle - * drivers/libhid.h: drivers/libhid.h: forget libusb_device_handle - -2021-12-21 Jim Klimov - - * docs/nut.dict: docs/nut.dict: update for recent NEWS - * NEWS: NEWS: prepare for nutdrv-qx legrand merge in 2.7.5 timeline - * NEWS: NEWS: prepare for nutdrv-qx ablerex merge in 2.7.5 timeline - * NEWS: NEWS: know about usbhid-ups Delta Minuteman support for NUT - v2.7.5 - * NEWS: NEWS: fix USB LogMin/LogMax mismatch reporting (just once!) - for NUT v2.7.5 - * NEWS: NEWS: add a little delay between multicommands [PR #1228] for - NUT v2.7.5 - * NEWS: NEWS: prepare for libusb-1.0 merge in 2.7.5 timeline - -2021-05-25 Jim Klimov - - * NEWS: NEWS: added nutdrv_qx "phoenixtec" subdriver in NUT-2.7.5 - -2021-04-23 Jim Klimov - - * docs/nut.dict: docs/nut.dict + NEWS: fix both to pass spellcheck - -2019-03-13 Arnaud Quette - - * docs/nut.dict: Update spelling dictionary - -2021-12-19 Jim Klimov - - * ci_build.sh: ci_build.sh: allow to build custom - NUT_USB_VARIANTS=libusb-x.y (not plain "x.y") - * ci_build.sh: ci_build.sh: allow to build custom NUT_USB_VARIANTS - and skip building a separate NUT_SSL_VARIANTS=auto - * ci_build.sh: ci_build.sh: allow to build custom - NUT_USB_VARIANTS=libusb-x.y (not plain "x.y") - * ci_build.sh: ci_build.sh: allow to build custom NUT_USB_VARIANTS - and skip building a separate NUT_SSL_VARIANTS=auto - -2021-12-21 Jim Klimov - - * drivers/legrand-hid.c: drivers/legrand-hid.c: fix type of - usb_device_id_t vendorID/productID to uint16_t * *{usb,hid}.c: - sentinel in a table of uint16_t can not be -1 - -2021-12-21 Jim Klimov - - * ci_build.sh: ci_build.sh: separate the "RES" vars used for - configure_nut() and default-all-errors processing - -2021-12-15 Jim Klimov - - * drivers/libshut.h: drivers/libshut.h: whitespace fixes (make func - ptrs more visible) - -2021-12-13 Jim Klimov - - * drivers/libusb.h: drivers/libusb.h: whitespace fixes (make func - ptrs more visible) - -2021-12-10 Jim Klimov - - * ci_build.sh: ci_build.sh: comment the rationale reminder for - "default-all-errors" mode - * ci_build.sh: ci_build.sh: try more options for non-verbose MAKE - runs - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: update - suggestions and envvar list for NOTIFYCMD callouts - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_UNUSED_FUNCTION - -2021-12-19 Jim Klimov - - * drivers/hidparser.c, drivers/hidparser.h: drivers/hidparser.{c,h}: - fix ReportDescSize from int to size_t - -2021-12-15 Jim Klimov - - * drivers/libhid.c, drivers/libhid.h: drivers/libhid.{c,h}: - HIDGetDataValue(), refresh_report_buffer(), get_item_buffered(): - fix "age" from int to time_t, to match time() operations - -2021-12-21 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: date_conversion_fun(): - hush a string overflow warning (overkill the buffer size a bit) - -2021-12-15 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: date_conversion_fun(): - comment and cast numeric type conversions - -2021-12-16 Jim Klimov - - * include/nut_stdint.h: include/nut_stdint.h: make sure we know - PRIsize and PRIssize - -2021-12-21 Jim Klimov - - * docs/developers.txt, docs/nut.dict: docs/developers.txt: note that - we define "gcc-medium|gcc-hard" warnings without "pedantic" for - C89/C90/ANSI builds (flaws in OS headers are out of our control) - * configure.ac: configure.ac: define "gcc-medium|gcc-hard" warnings - with "extra" always, but without "pedantic" for C89/C90/ANSI builds - (flaws in OS headers are out of our control) - * tests/Makefile.am: tests/Makefile.am: consider LIBUSB_CFLAGS when - building parser test - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: separate (and - disable by default) ANSI C build scenarios, they are too noisy in - fightwarn for no real good - * common/common.c: common/common.c: s_upsdebug*(): move fmt2[] - declarations to top from code - * common/common.c: common/common.c: fix comments from // to /* */ - * drivers/hidparser.h: drivers/hidparser.h: include "config.h" - * server/upsd.c: server/upsd.c: #include config.h first - -2021-12-21 Jim Klimov - - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Fix this on some of the CI - platforms: ```` [2021-12-21T09:21:47.623Z] nutdrv_qx.c:1665:2: - error: initialization from incompatible pointer type [-Werror] - [2021-12-21T09:21:47.623Z] { USB_DEVICE(0xffff, 0x0000), NULL, - NULL, &ablerex_subdriver }, /* Ablerex 625L USB */ - [2021-12-21T09:21:47.623Z] ^ [2021-12-21T09:21:47.623Z] - nutdrv_qx.c:1665:2: error: (near initialization for - 'qx_usb_id[1].fun') [-Werror] ```` - -2021-12-21 Jim Klimov - - * scripts/upower/95-upower-hid.rules: Update 95-upower-hid.rules Add - VID/PID for Minuteman UPS - * drivers/blazer_usb.c: drivers/blazer_usb.c: cast tmp as char* - Older compilers complain that we are: passing argument 3 of - 'usb_interrupt_read' from incompatible pointer type expected 'char - *' but argument is of type 'char (*)[512]' - -2021-12-21 Jim Klimov - - * docs/nut.dict: Update nut.dict Update for PR #1135 - -2021-12-20 Jim Klimov - - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Whitespace fix - -2021-12-20 hunter86bg - - * data/driver.list.in: Add Powerwalker VFI 3000 TG Online UPS to - driver.list.in (#1224) - -2021-12-20 Jim Klimov - - * drivers/hidparser.c: Update hidparser.c Fix whitespace in recent - changes for LogMin/LogMax rectification - -2021-12-20 Jim Klimov - - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - whitespace (indentation etc) - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix whitespace (break - long lines) - * drivers/riello_usb.c: drivers/riello_usb.c: fix whitespace (break - long lines) - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: fix whitespace - (break long lines) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix whitespace (break - long lines) - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix whitespace (break - long lines) - -2021-12-19 Scott Colby - - * drivers/usbhid-ups.c: Add a short sleep between fallback instcmds - in usbhid-ups. For some devices, missing instcmds are emulated by - calling two instcmds that do exist in sequence. For some devices, - when these commands arrive too quickly, they are not properly - processed. (One, both, or neither of the commands are acted upon.) - Adding a 1/8th-second delay (125,000 microseconds) between the two - instcmds that make up the fallback command has worked to make the - TrippLite AVR750U (new version with the 3024 productId/protocol) - behave consistently when using the fallback commands - (shutdown.return and shutdown.stayoff). This delay is also short - enough that it seems unlikely to cause a problem for any devices - which don't exhibit this issue. - -2021-12-16 Ablerexsoftware - - * docs/acknowledgements.txt, docs/man/nutdrv_qx.txt, docs/nutdrv_qx- - subdrivers.txt, drivers/Makefile.am, drivers/nutdrv_qx.c: modify CI - warnings and Replace the new sub driver - -2021-12-15 Nick Briggs - - * drivers/hidparser.c: Move check for LogMax encoding error to - parsing of report description At least one UPS [APC Back-UPS - BX1600MI FW:294201G -302201G] is known to have encoding errors in - its USB HID report description such that a conforming - interpretation of the encoded LogicalMaximum value indicates that - it is -1 and the resulting LogicalMin..LogicalMax range is 0..-1. - The actual report values read are correctly encoded. Rather than - log a range error each time a value is read we can detect the - encoding error when the report description is read (once, at - startup) and adjust for the encoding error at that time. - -2021-12-09 Jim Klimov - - * ci_build.sh: Refactor `./ci_build.sh spellcheck` to be more useful - * ci_build.sh: ci_build.sh: refactor - build_to_only_catch_errors_target() out of - build_to_only_catch_errors() - * ci_build.sh, docs/developers.txt: ci_build.sh: introduce support - for CI_SHELL_IS_FLAKY=true - * docs/developers.txt: docs/developers.txt: when introducing - ci_build.sh, mention that NUT CI farm tells how to reproduce builds - -2021-12-08 Jim Klimov - - * docs/man/nut-scanner.txt: Update nut-scanner.txt Clarify SNMP - auth/priv proto support depends on Net-SNMP lib - * docs/man/snmp-ups.txt: Update snmp-ups.txt Clarify SNMP auth/priv - proto support depends on Net-SNMP lib - -2021-12-08 Mauro Guerrera - - * docs/man/snmp-ups.txt: Update snmp-ups docs - * docs/man/nut-scanner.txt: Update docs to list new auth and privacy - encryption options - -2021-12-07 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: refactor shell - if/case to m4 (tracking down missed parentheses) - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: port more function - probes from libusb-1.0+0.1 branch - * ci_build.sh, configure.ac, docs/configure.txt, - m4/nut_check_libusb.m4: configure.ac et al: drop the extra --with- - libusb-version and handle its goals via --with-usb=VERSION - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: port comments and - m4 markup from libusb-1.0+0.1 branch - * configure.ac, m4/nut_check_libusb.m4: configure.ac: move remaining - libusb sanity checks into the m4/nut_check_libusb.m4 file - * configure.ac: configure.ac: drop duplicate NUT_CHECK_LIBNETSNMP - * configure.ac: configure.ac: regroup some NUT_ARG_WITH() closer to - their NUT_CHECK_*() so help for detailed options is near - * drivers/libusb1.c: drivers/libusb1.c: nut_libusb_open(): range- - check and cast libusb_control_transfer() arg rdlen - * drivers/libusb1.c: drivers/libusb1.c: nut_libusb_open(): range- - check and cast libusb_control_transfer() arg rdlen - * Makefile.am: Makefile.am: do not let (parallel) "make maintainer- - clean" remove the files that cleanup recipe needs - * ci_build.sh: Revert "ci_build.sh: fix bogus expression for - BUILDSTODO" This reverts commit - e57eec425da5c2020656fd48ec3f8bb9bbf55c52 and adds comments and - handling why that weird construct was not bogus ;) - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: reword notes for default QEMU container memory settings - * ci_build.sh: Add a shortcut hack to "./ci_build.sh spellcheck" - easily - * common/Makefile.am: common/Makefile.am: some "make" implems dislike - DRY multi-entry definition of same target (common.c) - * ci_build.sh: Add a shortcut hack to "./ci_build.sh spellcheck" - easily - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: drivers/snmp- - ups.c + tools/nut-scanner/scan_snmp.c: hide sanity checks before - generate_Ku() into pragmas to not warn about type-limits - ("comparison is always false due to limited range of data type" on - some architectures) - * drivers/solis.c: drivers/solis.c: make sure nut_stdint.h is - included early and defines size_t - -2021-12-06 Jim Klimov - - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: drivers/snmp- - ups.c + tools/nut-scanner/scan_snmp.c: align (cast) arg type of - generate_Ku() with net-snmp headers, and document the inconsistency - of size_t vs u_int in the same API - * drivers/snmp-ups.c: drivers/snmp-ups.c: align (cast) arg type of - malloc()/realloc() - * drivers/snmp-ups.c: drivers/snmp-ups.c: align (cast) arg type of - snmp_errstring() vs response->errstat (int vs long), and document - the inconsistency with net-snmp headers - * drivers/snmp-ups.c: drivers/snmp-ups.c: upsdrv_makevartable(): fix - maths with size_t vs int - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: setvar(): cast - placing of new_unit_id into wire protocol (FIXME? Does that code - assume CPU endianness?) - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: - upsdrv_initinfo(): fix receiver of strtol() - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: whitespace fixes - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: setvar(): fix - determination of outlet index number - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: debug_message(): - fix len from int to size_t - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: soft_shutdown(): - cast placing of offdelay into wire protocol (FIXME? Does that code - assume CPU endianness?) - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: fix reading and - printing of offdelay (unsigned int in this driver) - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: fix hex2d() to - long as a consumer of strtol() - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: fix toprint_str() - length to size_t and toprint(x) to char - * drivers/netxml-ups.c: drivers/netxml-ups.c: fix type of "ret" for - ne_read_response_block() and ne_sock_read() to ssize_t (as in - libneon headers) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix qx_command() to - return ssize_t like ser_send() at least - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - "u_langid_fix" in upsdrv_initups() - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - length of "cmdlen" in phoenixtec_command() - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - bytes in phoenixtec_command() - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - bytes in fuji_command() - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - bytes in repetitive "Simple unicode -> ASCII inplace conversion" - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast int - vs size_t in subdriver handlers (buflen, ret, i++) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: initialize ret=0 before - we potentially use it in loop i+=ret (should not happen in current - code, but...) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: cast upsdebug_hex() - logging with non-size_t args - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: range-check and cast - receivers of strtol() - * drivers/nutdrv_qx.c, drivers/nutdrv_qx.h: drivers/nutdrv_qx.{c,h}: - qx_process(), item_t.answer_len: fix lengths from int to size_t - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: qx_command(): indent - ifdefs for TESTING/QX_USB/QX_SERIAL for easier navigation - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: qx_command() complains - about unused parameters (not sure why); mark with - NUT_UNUSED_VARIABLE just in case - * drivers/nutdrv_qx.c, drivers/nutdrv_qx.h: drivers/nutdrv_qx.{c,h}: - fix STATUS() macro, qx_status(), status_lkp_t.status_mask field and - ups_status var to all be "unsigned int" - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: - range-check and cast receivers of strtol(); wrap a few long lines - * drivers/nutdrv_qx_mecer.c: drivers/nutdrv_qx_mecer.c: fix receivers - of strtol() - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - masterguard_test_battery(): fix receivers of strtol() - duration - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - masterguard_shutdown(): fix receivers of strtol() - - ondelay/offdelay - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - masterguard_new_slaveaddr(): range-check and cast - "masterguard_next_slaveaddr" - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - fix receivers of strtol() - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - masterguard_output_voltages(): fix type for sizeof() maths - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - masterguard_model(): fix type of min_bp/max_bp - -2021-12-04 Jim Klimov - - * drivers/nutdrv_qx_blazer-common.c: drivers/nutdrv_qx_blazer- - common.c: fix and range-check receivers of strtol() - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: fix - receivers of strtol() - * drivers/nutdrv_qx_voltronic-qs-hex.c: drivers/nutdrv_qx_voltronic- - qs-hex.c: fix receivers of strtol() - * drivers/solis.c: drivers/solis.c: fix packet_size from int to - size_t - * drivers/apcsmart.c: drivers/apcsmart.c: bit-wise &= ~() insists it - is for unsigned (int) types - vt->flags - * drivers/apcsmart.c: drivers/apcsmart.c: bit-wise &= ~() insists it - is for unsigned (int) types - termios struct - * drivers/apcsmart.c: drivers/apcsmart.c: sdcmd_CS: fix cshd from int - to useconds_t - * drivers/apcsmart.c: drivers/apcsmart.c: whitespace fix - * drivers/apcsmart.c: drivers/apcsmart.c: apc_getcaps(): fix i, - nument, entlen from int to size_t - * drivers/apcsmart.c: drivers/apcsmart.c: cast prtchr() args from - (unsigned char) to (char) - * drivers/apcsmart.c: drivers/apcsmart.c: fix receivers of strtol() - * drivers/apcsmart.c: drivers/apcsmart.c: cast - apc_read*()/apc_write*() from ((const) char) to (const unsigned - char) - * drivers/apcsmart.c: drivers/apcsmart.c: fix receivers of strlen() - from int to ssize_t - * drivers/apcsmart.c, drivers/apcsmart.h: drivers/apcsmart.{c,h}: fix - ups_status and APC_STAT_* from int to long (to match strtol() used) - * drivers/apcsmart.c: drivers/apcsmart.c: fix receivers of strlen() - from int to ssize_t - * drivers/apcsmart.c: drivers/apcsmart.c: fix - apc_read*()/apc_write*() from int to ssize_t to match select_read() - et al - * drivers/apcsmart.c: drivers/apcsmart.c: include main.h => config.h - first - * drivers/apcsmart.c: drivers/apcsmart.c: convert_data(): fix - receivers of strtol() - * drivers/apcsmart-old.c, drivers/apcsmart-old.h: drivers/apcsmart- - old.c: fix const/unsigned/char usages - * drivers/apcsmart-old.c: drivers/apcsmart-old.c: do_capabilities(): - fix i, nument, entlen from int to size_t - * drivers/apcsmart-old.c, drivers/apcsmart-old.h: drivers/apcsmart- - old.c: fix receivers of strtol() - * drivers/solis.h: drivers/solis.h: fix packet_size from into to - size_t - * drivers/apcsmart-old.c: drivers/apcsmart-old.c: fix handling of - ser_*() retval from int to ssize_t - * drivers/clone.c: drivers/clone.c: fix ondelay/offdelay handling - from int to long (to match strtol() used) - * drivers/clone-outlet.c: drivers/clone-outlet.c: fix handling of - read()/write() retval from int to ssize_t - * drivers/clone.c: drivers/clone.c: fix handling of read()/write() - retval from int to ssize_t - * drivers/blazer.h, drivers/blazer_ser.c, drivers/blazer_usb.c: - drivers/blazer.h + blazer_{ser,usb}.c: blazer_command(): fix - handling of ser_get_buf() retval from int to ssize_t - * drivers/blazer.c: drivers/blazer.c: fix ondelay/offdelay handling - from int to long (to match strtol() used) - * drivers/blazer.c: drivers/blazer.c: fix receivers of strtol() - - delay tmp var - * drivers/powerp-txt.c: drivers/powerp-txt.c: fix ondelay/offdelay - handling from int to long (to match strtol() used) - * drivers/victronups.c: drivers/victronups.c: fix receivers of - strtol() - * drivers/victronups.c: drivers/victronups.c: fix handling of - ser_get_line() retval from int to ssize_t - * drivers/tripplite.c: drivers/tripplite.c: fix receivers of strtol() - => hex2d() - * drivers/tripplite.c: drivers/tripplite.c: fix handling of - ser_get_char() retval from int to ssize_t - * drivers/solis.c, drivers/solis.h: drivers/solis.{c,h}: fix - comm_receive() from int to size_t, and match ser_get_buf_len() len- - or-error returns - * drivers/solis.c, drivers/solis.h: drivers/solis.{c,h}: fix byte- - sized maths of str2bin() and day counts to uint8_t - * drivers/solis.c: drivers/solis.c: include main.h => config.h first - * drivers/solis.c, drivers/solis.h: drivers/solis.c: - save_ups_config(): fix casting of ConfigPack[] entries to (unsigned - char) from original types - * drivers/nutdrv_siemens_sitop.c: drivers/nutdrv_siemens_sitop.c: fix - handling of ser_get_line() retval from int to ssize_t - * drivers/safenet.c: drivers/safenet.c: fix ondelay/offdelay handling - from int to long (to match strtol() used) - * drivers/safenet.c: drivers/safenet.c: fix array loop iterator from - int to size_t - * drivers/safenet.c: drivers/safenet.c: fix handling of - ser_get_line() retval from int to ssize_t - * drivers/rhino.c: drivers/rhino.c: fix handling of ser_get_line() - retval from int to ssize_t - * drivers/powercom.h: drivers/powercom.h: fix whitespace - (indentations) - * drivers/powercom.c: drivers/powercom.c: fix array loop iterator - from int to size_t - * drivers/powercom.c: drivers/powercom.c: fix handling of - ser_get_line() retval from int to ssize_t - * drivers/optiups.c: drivers/optiups.c: a few whitespace nits - * drivers/optiups.c: drivers/optiups.c: fix OPTISBIT_* handling from - int to long (to match strtol() used) - * drivers/optiups.c: drivers/optiups.c: fix optifill() len from int - to size_t - * drivers/optiups.c: drivers/optiups.c: fix handling of - ser_get_line() retval from int to ssize_t - * drivers/oneac.c: drivers/oneac.c: fix handling of ser_get_line() - retval from int to ssize_t - * scripts/subdriver/gen-usbhid-subdriver.sh: scripts/subdriver/gen- - usbhid-subdriver.sh: update generated C heading comment with "TODO" - and update generated code whitespace markup - * drivers/arduino-hid.c, drivers/salicru-hid.c: drivers/usb- - common.{c,h} drivers/*{usb,hid}.c: fix type of usb_device_id_t - vendorID/productID to uint16_t Catch up to earlier change for - recently merged USB HID drivers; specifically * *{usb,hid}.c: - sentinel in a table of uint16_t can not be -1 for: * - drivers/salicru-hid.c * drivers/arduino-hid.c * - scripts/subdriver/gen-usbhid-subdriver.sh creating the boilerplates - -2021-12-03 Jim Klimov - - * drivers/microsol-common.c: drivers/microsol-common.c: fix - setup_poweroff_schedule() vars from int to bool_t to match - set_schedule_time() - * drivers/microsol-common.c: drivers/microsol-common.c: fix - get_base_info(), get_updated_info() buf sizes from unsigned int to - ssize_t (to match ser_get_buf_len() len-or-error returns) - * drivers/microsol-common.c: drivers/microsol-common.c: fix - comm_receive() from int to size_t - * drivers/microsol-common.c: drivers/microsol-common.c: - save_ups_config(): fix casting of configuration_packet[] entries to - (unsigned char) from original types - * drivers/microsol-common.c: drivers/microsol-common.c: fix byte- - sized maths of bitstring_to_binary() and day counts to uint8_t - -2021-12-06 Jim Klimov - - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: instcmd(): - range-check and cast for ups2000_write_register() and - handler_func() - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_update_alarm(): range-check and cast all_alarms_len from - snprintf() retval - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_update_info(): pragma disable warnings for non-fixed format - string - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_update_info(): cast uint32_t for reg-idx - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_read_serial(): range-check and cast ssize_t vs size_t - increments - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_update_info(): cast uint8_t calculations of reg_id parts - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_device_identification(): cast uint32_t calculations of - ups2000_ident - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_device_identification(): range-check and cast crc16 - calculations - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_write_registers(), ups2000_read_registers(), - ups2000_device_identification(): initialize variables that clang-9 - is not sure about Seems like a clang analyzer bug frankly: code - starts with a retrying loop that would initialize these variables. - But still, adding determinism into code never hurts ;) - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: crc16(): fix - casting to uint16_t when bit-shifting - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: ups2000_alarm[] - sentinel: fix uint16_t reg from -1 to 0 - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: - ups2000_device_identification(): fix r from int to size_t, to match - ser_send_buf() - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: fix - ups2000_read_serial() from int to size_t, to match ser_get_buf() - * drivers/huawei-ups2000.c: drivers/huawei-ups2000.c: mark local - variables static - -2021-12-03 Jim Klimov - - * drivers/microsol-common.c: drivers/microsol-common.c: fix (and - range-check) casting for memcpy - * drivers/microsol-common.c: drivers/microsol-common.c: wrap some - long comments - * drivers/microsol-common.c: drivers/microsol-common.c: include - main.h => config.h first - * common/Makefile.am: common/Makefile.am: limit the use of common.c - symlinking from srcdir to builddir only to cases when not - BUILDING_IN_TREE - * tools/nut-scanner/nutscan-init.c: tools/nut-scanner/nutscan-init.c: - comment that semaphore gets re-initialized by nut-scanner.c program - and why - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nutscan-init.c: - tools/nut-scanner/nutscan-init.c + nut-scan.h: hide "semaphore" - library variable - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - #include "config.h" first - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, - tools/nut-scanner/nutscan-init.c, tools/nut-scanner/scan_nut.c, - tools/nut-scanner/scan_snmp.c, tools/nut-scanner/scan_xml_http.c: - tools/nut-scanner/*.c: fix use of size_t max_threads(_scantype) vs - (unsigned int) in sem_init() args - * tools/nut-scanner/nut-scan.h: tools/nut-scanner/nut-scan.h: fix - declaration of nutscan_semaphore(void) - * drivers/snmp-ups.c, m4/nut_check_libnetsnmp.m4, tools/nut- - scanner/nut-scanner.c, tools/nut-scanner/scan_snmp.c: - nut_check_libnetsnmp.m4, nut-scanner.c, scan_snmp.c, snmp-ups.c: - transition from NETSNMP_DRAFT_BLUMENTHAL_AES_04 (that may be not- - defined so #if is invalid) to - NUT_HAVE_LIBNETSNMP_DRAFT_BLUMENTHAL_AES_04 - * ci_build.sh: ci_build.sh: in default-all-errors mode, avoid last- - loop cleanup if DO_CLEAN_CHECK==no - * ci_build.sh: ci_build.sh: fix bogus expression for BUILDSTODO - * ci_build.sh: ci_build.sh: only score *_clean_check as SUCCEEDED if - they were not skipped, and report a bit more - -2021-11-30 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): import - tracing messages and points from 42ITy/DMF fork - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): clarify the - "trying the new match_sysoid() method" message - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): fix - upsdebugx() levels verbosity to make more sense - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): reformat - some debugs, use __func__ - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): report - device name (section) and host/IP in progress and errors - -2021-11-28 Jim Klimov - - * m4/nut_check_libpowerman.m4: m4/nut_check_libpowerman.m4: if - (lib)powerman.pc is missing, but header is present, check - -lpowerman directly - * m4/nut_check_libpowerman.m4: m4/nut_check_libpowerman.m4: they - deliver an empty version string, so we should not error out on that - -2021-11-27 Jim Klimov - - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: if libusb-config - and libusb.pc are missing, but header is present, check -lusb - directly - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: detect - NET_SNMP_CONFIG with AC_PATH_PROGS and/or configure option (and - handle if it is missing) - * docs/configure.txt: docs/configure.txt: document --with-net-snmp- - config configure option better - * docs/configure.txt: docs/configure.txt: rephrase comments about - --with-*-libs and --with-*-include - * docs/configure.txt, m4/nut_check_pkgconfig.m4: - m4/nut_check_pkgconfig.m4 + docs/configure.txt: detect - (dummy_)PKG_CONFIG with AC_PATH_PROGS and/or configure option (and - handle if it is missing) - * m4/nut_check_libgd.m4: m4/nut_check_libgd.m4: initialize empty - CFLAGS LIBS LDFLAGS - * m4/nut_check_libgd.m4: m4/nut_check_libgd.m4: detect GDLIB_CONFIG - with AC_PATH_PROGS and/or configure option (and handle if it is - missing) - * docs/configure.txt, m4/nut_check_libusb.m4: m4/nut_check_libusb.m4 - + docs/configure.txt: detect LIBUSB_CONFIG with AC_PATH_PROGS - and/or configure option (and handle if it is missing) - * m4/nut_check_libpowerman.m4: m4/nut_check_libpowerman.m4: consider - have_PKG_CONFIG - * m4/nut_check_libwrap.m4: *.m4: AC_LANG_PUSH before AC_LINK_IFELSE - and similar tests - -2021-11-27 Jim Klimov - - * m4/ax_c___attribute__.m4, m4/nut_check_headers_windows.m4, - m4/nut_check_libnetsnmp.m4, m4/nut_func_getnameinfo_argtypes.m4, - m4/nut_type_socklen_t.m4: *.m4: AC_LANG_PUSH before - AC_COMPILE_IFELSE and similar tests - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: try to report - toStringStageCountDump() in ircNotify() - * configure.ac: configure.ac: AC_LANG_PUSH before AC_COMPILE_IFELSE - and similar tests - * clients/upsclient.c, clients/upslog.c, clients/upsmon.c, - clients/upsrw.c, clients/upssched.c, clients/upsset.c, - common/state.c, common/upsconf.c, docs/developers.txt, - docs/nut.dict, drivers/apcsmart-old.c, drivers/apcsmart.c, - drivers/apcupsd-ups.c, drivers/belkin.c, drivers/belkinunv.c, - drivers/bestups.c, drivers/clone-outlet.c, drivers/clone.c, - drivers/dstate.c, drivers/gamatronic.c, drivers/huawei-ups2000.c, - drivers/main.c, drivers/masterguard.c, drivers/mge-utalk.c, - drivers/mge-xml.c, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_bestups.c, drivers/nutdrv_qx_blazer-common.c, - drivers/nutdrv_qx_voltronic-qs-hex.c, drivers/nutdrv_qx_voltronic- - qs.c, drivers/nutdrv_qx_voltronic.c, drivers/oneac.c, - drivers/powercom.c, drivers/powerman-pdu.c, drivers/powerp-txt.c, - drivers/snmp-ups.c, drivers/tripplite_usb.c, drivers/upscode2.c, - drivers/victronups.c, server/conf.c, server/netget.c, - server/netlist.c, server/netset.c, server/user.c, - tests/cpputest.cpp, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/scan_snmp.c: Replace strcmp() and strcasecmp() use-cases - for short fixed string args by strncmp() and strncasecmp() - respectively Some compilers on some OSes complain due to implem - nuances. Updated docs/developers.txt to make note for posterity. - * drivers/microdowell.c: drivers/microdowell.c: some more pragmatic - ignorance for CLAMP() macro uses (older clang-3.4 et al) - -2021-11-22 Yifeng Li - - * drivers/huawei-ups2000.c: huawei-ups2000.c: rework logic for - "load.on". Currently the driver prevents the user from executing - "load.on" when the UPS is already on, and reports a - STAT_INSTCMD_FAILED with error logs. We need to do this if the UPS - is in bypass mode, because the UPS would otherwise enter normal - mode - "load.on" is not supposed to do that. On the other hand, - executing "load.on" when the UPS is already in "normal-mode on" has - no effect, it's still a legal command and should not be rejected - arbitrarily, which can potentially confuse downstream applications - and users. It also contains two misleading typos in the error - logs: (1) it incorrectly suggests "bypass.off" instead of - "bypass.stop", and (2) reports "failed: reason unknown." when the - reason is simply an already-on UPS. This commit allows "load.on" - to execute when it's in normal mode and already on, and changes the - log messages from errors to warnings. Typos in the log messages are - also fixed. The "load.on" command is only rejected in bypass mode, - with error logs. Finally, the logic for the off test is reworked - to improve readability. The original code checks whether the UPS is - on by testing the negative "not OFF" condition, which is not easy - to understand - the reader must have intimate knowledge on the code - to know its correctness. Namely, When the UPS power status is - updated, 1 of the 5 mutually exclusive flags, OL, OB, OL ECO, - BYPASS, or OFF is always set, thus the absence of the OFF flag - always reliably indicates an ON status. This commits converts the - single negative "not OFF" test to three positive tests for "OL", - "OB" and "OFF", with additional comments added on reachable and - unreachable conditions. Thus, previous uncertainty is eliminated. - -2021-11-26 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix dummy nutscan_scan_xml_http_range() - (WITHOUT_NEON) arg type for useconds_t usec_timeout - * drivers/libhid.c: drivers/libhid.c: fix debug-printing of byte- - counts as size_t - * drivers/microdowell.c: drivers/microdowell.c: some more pragmatic - ignorance for CLAMP() macro uses - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: - whitespace fix - * tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, tools/nut- - scanner/scan_xml_http.c: tools/nut-scanner/scan_*.c: fix debug- - printing of thread accounting as size_t - -2021-10-26 Jim Klimov - - * drivers/hidparser.c: drivers/hidparser.c: Parse_ReportDesc(): fix - "max" to size_t and "id" to uint8_t, to match struct fields - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix cast of range- - checked u_langid_fix - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix cast of return - types to size_t vs int - * drivers/libhid.c: drivers/libhid.c: string_to_path(): range-check - and cast converted values for path->Node[] - * drivers/libhid.c: drivers/libhid.c: hid_lookup_usage(): fix cast of - usage_code for printing and returning - * drivers/libhid.c: drivers/libhid.c: string_to_path(): check for - type overflow, and cast - * drivers/libhid.c: drivers/libhid.c: fix types for iterating vs - rbuflen from int to size_t - * drivers/libhid.c, drivers/libhid.h: drivers/libhid.{c,h}: fix - interrupt_size from int to size_t - * drivers/libhid.c: drivers/libhid.c: fix types for iterating vs - rbuflen from int to size_t - * drivers/libhid.c, drivers/libhid.h: drivers/libhid.{c,h}: fix - max_report_size from int to size_t - * drivers/libhid.c: drivers/libhid.c: file_report_buffer(): fix - buflen from int to size_t - * drivers/hidtypes.h: drivers/hidtypes.h: change HIDDesc_t.replen[] - from (array of) int to size_t - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: cast for - bit math for qx_status() result - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: cast - for bit math for qx_status() result, and line-wrap a long message - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: cast arg for - upsdebug_hex() to size_t - * drivers/nutdrv_qx_voltronic-qs-hex.c: drivers/nutdrv_qx_voltronic- - qs-hex.c: cast arg for upsdebug_hex() to size_t - * drivers/libusb.c: drivers/libusb.c: libusb_open(): cast rdlen to - unsigned to match usb_control_msg() where it is safe to do so - * drivers/libhid.h: drivers/libusb.h: change reportbuf_t.len[] from - (array of) int to size_t - * drivers/hidparser.c, drivers/hidtypes.h: drivers/hidtypes.h + - hidparser.c: change HIDDesc_t.nitems from int to size_t - * drivers/hidparser.c: drivers/hidparser.c: cast int types to - explicit conversions where safe - -2021-10-04 Jim Klimov - - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: process(): fix int - types - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: upsdrv_initups(): fix - type of port - * drivers/nutdrv_qx.h: drivers/nutdrv_qx.h: define QX_FLAG_* macros - as typed numbers (UL) to match item_t->qxflags - * drivers/powercom-hid.c: drivers/powercom-hid.c: range-check and - cast uint16_t values for ups delays - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: align return - type of usb_interrupt_read() and our upsdebug_hex() args - * drivers/upscode2.c: drivers/upscode2.c: align types of two statuses - * drivers/upscode2.c: drivers/upscode2.c: fix useconds_t - output_pace_usec - * drivers/upscode2.c: drivers/upscode2.c: fix speed_t baud var - * drivers/upscode2.c: drivers/upscode2.c: fix ssize_t ret for ser*() - routines - * drivers/powerp-txt.c: drivers/powerp-txt.c: fix ssize_t ret for - ser*() routines - * drivers/powerp-bin.c: drivers/powerp-bin.c: fix ssize_t ret for - ser*() routines, and cmd len - * drivers/powerpanel.h: drivers/powerpanel.h: adjust powerpanel - subdriver_t funcptr type for initups() - * drivers/ivtscd.c: drivers/ivtscd.c: fix ssize_t for ivt_status() - and ser_*() involved - * drivers/riello_ser.c: drivers/riello_ser.c: riello_instcmd(): fix - int type of delay vs atoi() - * drivers/riello_ser.c: drivers/riello_ser.c: fix ssize_t ret for - read() routines - * drivers/riello_usb.c: drivers/riello_usb.c: ussleep(): fix - useconds_t type - * drivers/riello_usb.c: drivers/riello_usb.c: riello_instcmd(): fix - int type of delay vs atoi() - * drivers/riello_usb.c: drivers/riello_usb.c: Get_USB_Packet(): fix - int type of size - * drivers/riello.c: drivers/riello.c: riello_parse_rc(): cast uint8_t - into char - * drivers/riello.c: drivers/riello.c: riello_prepare*(): cast - delay%256 into uint8_t - * drivers/riello.c: drivers/riello.c: riello_parse_sentr(): cast pom - maths into uint16_t explicitly... range-check missing though - * drivers/riello.c: drivers/riello.c: riello_parse_sentr(): cast - uint8_t => char to construct Version byte by byte - * drivers/riello.c: drivers/riello.c: riello_parse_gn(): range-check - and cast the NomPowerKVA / NomPowerKW - * drivers/riello.c: drivers/riello.c: riello_calc_CRC(): clarify and - cast the bitness magic as needed - * drivers/powercom.c: drivers/powercom.c: fix int type of model vars - to match OPTImodels/BNTmodels/KINmodels/IMPmodels arrays - * drivers/powercom.c: drivers/powercom.c: avoid casting via wrong int - type for termios fields - * drivers/powercom.c, drivers/powercom.h: drivers/powercom.{c,h}: - align int size for delay (min, sec) and ser_send_char() sending a - char - * drivers/tripplite.c: drivers/tripplite.c: fix casting of unsigned - delays from atoi() - * drivers/tripplite.c: drivers/tripplite.c: fix casting of ints in - send_cmd() - * drivers/tripplitesu.c: drivers/tripplitesu.c: fix casting of ints - into unsigned min/max high/low transfer values - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - hide warnings for intentional variable format string use - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - avoid a few potential uninitialized uses - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - fix a case of shadowed vars in a clause - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - declare local vars and funcs as static - * drivers/netxml-ups.c: drivers/netxml-ups.c: fix casting ssize_t - value up to size_t for ne_buffer_append() args - * drivers/netxml-ups.c: drivers/netxml-ups.c: fix int type of port - for ne_sock_connect() args - -2021-09-28 Jim Klimov - - * drivers/microdowell.c: drivers/microdowell.c: shuffle include-file - order - * drivers/microdowell.c: drivers/microdowell.c: instcmd(): casting - and (pragma-hushed) range checks for "delay" - * drivers/solis.c: drivers/solis.c: convert_days(): limit the range - for safe casting to size_t for memcpy() - * drivers/rhino.c: drivers/rhino.c: align int types in send_command() - * drivers/microsol-common.c, drivers/microsol-common.h: - drivers/microsol-common.{c,h}: mark local variables as static; - expose a few reasonable ones as extern - * drivers/microdowell.c, drivers/microdowell.h: - drivers/microdowell.{c,h}: fix size_t lengths and uint16_t/uint32_t - status bitmasks - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - declare upsdrv_shutdown() as noreturn - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - declare file-local variables static - * drivers/hidparser.c: drivers/hidparser.c: avoid shadowed local - variables in HIDParse() - * drivers/hidparser.c: drivers/hidparser.c: fix Value cast in - FormatValue() - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix status_mask to - unsigned int for STATUS() and bitmask maths - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: fix parsing of - interrupt_size from args, and error out on invalid inputs - * drivers/nutdrv_siemens_sitop.c: drivers/nutdrv_siemens_sitop.c: fix - counters to unsigned int - * drivers/mge-hid.c, drivers/usbhid-ups.c, drivers/usbhid-ups.h: - drivers/usbhid-ups.{c,h} + mge-hid.c: fix ups_status from int to - "unsigned" to match the STATUS() macro and bitmask maths - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - type for snmp_sess.timeout assignment - * drivers/microsol-apc.h: drivers/microsol-apc.h: align type of - NOMINAL_POWER[] to int, like nominal_power var in microsol-common.h - * drivers/oneac.c: drivers/oneac.c: fix buf sizes to size_t - * drivers/main.c, drivers/main.h, drivers/mge-utalk.c, - drivers/nutdrv_siemens_sitop.c, drivers/usbhid-ups.c: - drivers/main.{c,h} et al: fix poll_interval to be time_t like the - time() it has maths with - * drivers/main.c: drivers/main.c: allow only positive pollinterval - settings (avoid DoS by crazy loop) - * drivers/main.c: drivers/main.c: report and fail with invalid - pollinterval settings - * drivers/serial.c: drivers/serial.c: after some investigation of - standards, we may cast useconds_t=>suseconds_t - * server/netset.c: server/netset.c: log tracking_disable() result to - find a use for it (warning fix) - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: - execute_and_retrieve_query(): fix int casting and add diags pragmas - for range checks - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: get_answer(): fix int - casting for tail; fix redundant comparison - * drivers/bestfortress.c: drivers/bestfortress.c: simplify - usleep(d_usec) to no casting - * drivers/belkin.c: drivers/belkin.c: comment why casting usleep(cnt) - is okay - -2021-09-27 Jim Klimov - - * clients/upsclient.c, common/common.c, docs/new-drivers.txt, - drivers/serial.c, drivers/serial.h, include/common.h: - include/common.h, drivers/serial.{c,h}, docs/new-drivers.txt, - common/common.c, clients/upsclient.c: fix d_sec long => time_t to - match timeval struct fields - * clients/upsclient.c, common/common.c, include/common.h: - include/common.h, common/common.c, clients/upsclient.c: fix - select_read()/select_write(): long d_usec => suseconds_t - * docs/nut.dict: docs/nut.dict: update for new-drivers.txt revision - * docs/new-drivers.txt: docs/new-drivers.txt: align USB-common - structure and method signature descriptions with current - drivers/*usb*.h - * docs/man/upscli_readline.txt, docs/man/upscli_sendline.txt: - docs/man/upscli_readline.txt + upscli_sendline.txt: update method - arguments to match code (timeout unsigned int => const long) - * docs/man/upscli_list_next.txt, docs/man/upscli_list_start.txt: - docs/man/upscli_list_start.txt + upscli_list_next.txt: update - method arguments to match code (numa/numq unsigned int => size_t) - -2021-09-26 Jim Klimov - - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: fix data types for - alarm() and sleep() - * drivers/mge-utalk.c: drivers/mge-utalk.c: fix int casting to - snprintf() (size_t/ssize_t) - * drivers/mge-utalk.c: drivers/mge-utalk.c: fix int casting to - ser_get*()/ser_send_*() (size_t/ssize_t) - * drivers/metasys.c: drivers/metasys.c: fix int casting to - ser_get*()/ser_send_*() (size_t/ssize_t) - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: fix int casting to - ser_get*() (size_t/ssize_t) - * drivers/gamatronic.c: drivers/gamatronic.c: fix int casting to - ser_get*() (size_t/ssize_t) and unify naming of msg(_)len - * drivers/bestups.c: drivers/bestups.c: fix int casting to ser_get*() - (size_t/ssize_t) - * drivers/bestuferrups.c: drivers/bestuferrups.c: fix int casting to - ser_get*() (size_t/ssize_t) - * drivers/bestfortress.c: drivers/bestfortress.c: fix int casting to - ser_get*() (size_t/ssize_t) - * drivers/bestfcom.c: drivers/bestfcom.c: fix int casting to - ser_get*() (size_t/ssize_t) - * drivers/belkinunv.c: drivers/belkinunv.c: fix int casting to - ser_get*(), read() and write() (size_t/ssize_t) - * drivers/belkin.c: drivers/belkin.c: fix int casting to ser_get*() - (size_t/ssize_t) - * drivers/al175.c: drivers/al175.c: fix raw_data_t::buf_size and - io_head_t::addr,len to size_t - * drivers/al175.c: drivers/al175.c: fix int casting to ser_get*() - (size_t/ssize_t) - * drivers/dstate.c: drivers/dstate.c: augment range check when using - size_t as int - * drivers/dstate.c: drivers/dstate.c: fix int casting to read() and - write(), add range checks for bytes written (size_t/ssize_t) - -2021-09-23 Jim Klimov - - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: fix elapsed_time type - and casting - * drivers/bcmxcp.c, drivers/bcmxcp_io.h, drivers/bcmxcp_ser.c, - drivers/bcmxcp_usb.c: drivers/bcmxcp*.{c,h}: fix types involved - with read() and write() to ssize_t - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: fix count to size_t - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: fix - buf_size to size_t - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: fix types involved with read() and - write() to ssize_t - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: fix size_t thread_count and its - iterator - * drivers/serial.c, drivers/serial.h: drivers/serial.[h,c]: fix - d_usec from long to useconds_t - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, - tools/nut-scanner/scan_avahi.c, tools/nut-scanner/scan_nut.c, - tools/nut-scanner/scan_snmp.c, tools/nut-scanner/scan_xml_http.c: - tools/nut-scanner/*.[h,c]: fix usec_timeout from long to useconds_t - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix size_t thread_count and its iterator - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix recv_size use as size_t parameter - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/scan_xml_http.c: - tools/nut-scanner/nut-scan.h + scan_xml_http.c: fix port type to - uint16_t - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - arg type for generate_Ku() - * drivers/apc-hid.c, drivers/bcmxcp_usb.c, drivers/belkin-hid.c, - drivers/blazer_usb.c, drivers/cps-hid.c, drivers/delta_ups-hid.c, - drivers/idowell-hid.c, drivers/liebert-hid.c, drivers/mge-hid.c, - drivers/nutdrv_atcl_usb.c, drivers/openups-hid.c, drivers/powercom- - hid.c, drivers/powervar-hid.c, drivers/richcomm_usb.c, - drivers/riello_usb.c, drivers/tripplite-hid.c, - drivers/tripplite_usb.c, drivers/usb-common.c, drivers/usb- - common.h: drivers/usb-common.{c,h} drivers/*{usb,hid}.c: fix type - of usb_device_id_t vendorID/productID to uint16_t * usb-common.h: - fix the definition * *{usb,hid}.c: sentinel in a table of uint16_t - can not be -1 * usb-common.c: uint16_t for vendor and product -- - change sentinel matcher for full (0,0,NULL) hits - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/scan_xml_http.c: - 32-bit IPv4 addr mask should be uint32_t not int - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/scan_xml_http.c: - 32-bit IPv4 addr should be uint32_t not int - -2021-10-12 Jim Klimov - - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - safety-check and cast use of small mask_byte values - -2021-09-23 Jim Klimov - - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: use - platform-dependent getnameinfo() argument types - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - size_t thread_count and its iterator - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: fix - size_t thread_count and its iterator - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: fix - size_t buf_size - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: align - upscli_*() numa and numq args from "unsigned int" to "size_t", to - match PCONF_CTX_t fields - * server/upsd.c: server/upsd.c: fix comparisons of nfds_t maxconn, - long sysconf() and size_t malloc() - * server/upsd.c: server/upsd.c: check if maxconn<1 to avoid - signedness issues and because zero connections are also useless - * server/upsd.c: server/upsd.c: align use of nfds_t vs. long - (maxconn) for GCC "-Wtype-limits" - -2021-09-22 Jim Klimov - - * server/sstate.c: server/sstate.c: fix missed include - * server/conf.c, server/upsd.c, server/upsd.h: server/upsd.c + - conf.c: align use of nfds_t vs. long (maxconn) - * server/upsd.c: server/upsd.c: align use of uint8_t when - constructing an UUID - * clients/upsclient.c, server/netssl.c: server/netssl.c + - clients/upsclient.c: fix ssl_error() to use ssize_t "ret" - * server/sstate.c: server/sstate.c: fix int casting to read() and - write(), add range checks for bytes written (size_t/ssize_t) - * clients/upsc.c, clients/upsclient.c, clients/upsclient.h, - clients/upscmd.c, clients/upsimage.c, clients/upslog.c, - clients/upsmon.c, clients/upsrw.c, clients/upsset.c, - clients/upsstats.c, docs/man/upscli_get.txt, drivers/dummy-ups.c: - clients/upsclient.h and numerous *.c: align upscli_get(), - upscli_list_start(), upscli_list_next() numa and numq args from - "unsigned int" to "size_t", to match PCONF_CTX_t fields - * clients/upsmon.c: clients/upsmon.c: fix int casting to read() and - write(), add separate retval processing from system() - * clients/upssched.c: clients/upssched.c: fix int casting to read() - and write(), add range checks for bytes written (size_t/ssize_t) - * clients/upsclient.c: clients/upsclient.c: fix receiver of strtol(), - and log a FIXME for sanity checks - * clients/upsmon.c: clients/upsmon.c: fix receiver of strtol() - * clients/upssched.c: clients/upssched.c: fix receiver of strtol() - * clients/upsmon.c: clients/upsmon.c: fix int type for use of - upscli_readline() - * clients/upscmd.c: clients/upscmd.c: fix int type for use of - upscli_readline() - * clients/upsimage.c: clients/upsimage.c: fix int casting - * clients/upsrw.c: clients/upsrw.c: fix receiver of strtol() - * drivers/nutdrv_qx.c, server/netset.c: server/netset.c + - drivers/nutdrv_qx.c: fix consumers of "long" getaux() - * common/str.c: common/str.c: fix buffer int length in str_to_*int*() - methods - * common/state.c, include/state.h, server/sstate.c, server/sstate.h: - common/state.c + server/sstate.c + *.h: aux field is a "long" so - getaux() should return long - * common/common.c, include/common.h: common/common.c: fix use of a - pid_t value - -2021-11-25 Jim Klimov - - * configure.ac: configure.ac: typo fix for ABS_TOP_* determination - -2021-11-25 Jim Klimov - - * docs/FAQ.txt: Update FAQ.txt Update rationale (reasonable use- - cases) for "clone" driver - -2021-11-25 Jim Klimov - - * common/Makefile.am, configure.ac: configure.ac + - common/Makefile.am: detect if building in-tree and differentiate - the recipe involving common.c based on that - * common/Makefile.am: common/Makefile.am: let OpenBSD 6.4 make cope - with common.c recipe - * docs/config-prereqs.txt: docs/config-prereqs.txt: add libusb1 for - OpenBSD - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - concerns about OpenBSD 6.4 freeipmi vs. "-largp" - -2021-11-25 Jim Klimov - - * NEWS, docs/nut.dict: NEWS: added new salicru-hid subdriver in - usbhid-ups for NUT v2.7.5 - -2021-11-25 xbgmsharp - - * drivers/salicru-hid.c: Rename unmapped.* to experimental.* data - points Add untested instant commands - -2021-11-24 xbgmsharp - - * drivers/salicru-hid.c: Update mapping - -2021-11-23 Jim Klimov - - * docs/FAQ.txt: docs/FAQ.txt: extend Q&A on "NUT proxying" with - mention of "clone" driver - -2021-11-22 xbgmsharp - - * data/driver.list.in, drivers/Makefile.am, drivers/salicru-hid.c, - drivers/salicru-hid.h, drivers/usbhid-ups.c, - scripts/upower/95-upower-hid.rules: Initial release for Salicru - driver - * data/driver.list.in, drivers/Makefile.am, drivers/salicru-hid.c, - drivers/salicru-hid.h, drivers/usbhid-ups.c, - scripts/upower/95-upower-hid.rules: Initial release for Salicru - driver - -2021-11-22 Yifeng Li - - * docs/nut.dict: docs/nut.dict: add model name "KRTS". - * docs/man/huawei-ups2000.txt: huawei-ups2000.txt: update tested - models and user report suggestions. - * docs/man/huawei-ups2000.txt: huawei-ups2000.txt: minor typo fixes - -2021-11-22 Jim Klimov - - * docs/FAQ.txt: Update docs/FAQ.txt Add example of dummy-ups (relay - mode) configuration section Co-authored-by: Helmut K. C. Tessarek - - -2021-11-18 Jim Klimov - - * drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups.{c,h}: - typedef snmp_info_t::flags and define its PRI_SU_FLAGS format to - ease type changes later Also adds a "default:" to case for - template flag handling (from FTY fork) - -2021-11-22 Jim Klimov - - * docs/FAQ.txt: docs/FAQ.txt: update for interactions via github - (issues, PRs, ...) - * docs/FAQ.txt: docs/FAQ.txt: update for use-cases of dummy-ups in - relay mode - -2021-11-20 Jim Klimov - - * ci_build.sh: ci_build.sh: Make end of log useful for spellcheck - failure handling - -2021-11-20 Jim Klimov - - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - add a chapter on OpenBSD build agent setup - * configure.ac: configure.ac: require at least autoconf-2.61 (macros - are used that are missing in 2.60 and before) - * autogen.sh: autogen.sh: comment that libtool is also needed - * autogen.sh: autogen.sh: comment about envs that want - AUTOCONF_VERSION or AUTOMAKE_VERSION - * autogen.sh, configure.ac, scripts/augeas/.gitignore, - scripts/devd/Makefile.am, scripts/udev/.gitignore, - scripts/udev/Makefile.am: autogen.sh + configure.ac: try to support - building on systems without Python or Perl - -2021-11-22 Arnaud Quette - - * drivers/mge-xml.c: Eaton XML/PDC: add External Battery Module count - -2021-11-16 Jim Klimov - - * drivers/snmp-ups-helpers.c: drivers/snmp-ups-helpers.c: reshuffle - includes - * drivers/snmp-ups.c: drivers/snmp-ups.c: include main.h => common.h - => config.h first - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix strncmp() limits for - "v1" and "v3" checks (copy-pasting typo) - * drivers/snmp-ups.c: drivers/snmp-ups.c: mention in help that SNMP - version may be "v3" - * drivers/libusb1.c: drivers/libusb1.c: fix devcount and devnum from - ssize_t to size_t - -2021-11-15 Jim Klimov - - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - printf() assumes floating-point numbers are doubles, satisfy its - warnings - * drivers/libusb1.c: drivers/libusb1.c: drop extra "int i" definition - * ci_build.sh: ci_build.sh: NUT_USB_VARIANT= => --with- - usb=libusb [libusb-1.0+0.1 branch] - * ci_build.sh: ci_build.sh: NUT_USB_VARIANT=no => --without-usb - explicitly - * ci_build.sh: ci_build.sh: default-all-errors: report - BUILDSTODO_INITIAL at the end of log, and if non-zero BUILDSTODO - remained unaccounted - * ci_build.sh: ci_build.sh: report which SSL/USB variants will be - looped - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - use a longer global var name for modbus_ctx (nee ctx) - * drivers/bcmxcp_ser.c, drivers/bcmxcp_ser.h, tools/nut- - scanner/scan_eaton_serial.c: drivers/bcmxcp_ser.{c,h} + tools/nut- - scanner/scan_eaton_serial.c: use longer global var name (AUT => - BCMXCP_AUTHCMD) - * drivers/bestfortress.c: drivers/bestfortress.c: comment an - analyzer-check complaint - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: avoid useless - comparison (warning) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: only define - "Compatibility layer between libusb 0.1 and 1.0" if we build with - QX_USB at all (no required headers are in context otherwise) - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts for SSL+USB are planned same as executed - and - handle explicit NUT_USB_VARIANTS=no - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts for SSL+USB are planned same as executed - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts are decremented when configuration failed - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": between - configure and build, report the Configured NUT_USB_VARIANT - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": between - configure and build, report the Configured NUT_SSL_VARIANT - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": support - looping over NUT_USB_VARIANTS as well - * drivers/libhid.c: drivers/libhid.c: HIDDumpTree(): mark that arg - "hd" is not used in SHUT_MODE - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: the "additional - USB-related checks" should now manipulate "LIBS" not "LIBUSB_LIBS" - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: comment on - "additional USB-related checks" - * m4/nut_check_libusb.m4: Move "additional USB-related checks" from - configure.ac to m4/nut_check_libusb.m4 - * drivers/nutdrv_qx.c: [libusb-1.0] Realign buffer casting to - (usb_ctrl_char) after merge from master - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - merge conflict [libusb-1.0+0.1] - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: complete the merge - from master to libusb-1.0+0.1 - * ci_build.sh: ci_build.sh: NUT_USB_VARIANT=no => --without-usb - explicitly - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: fix definition of - curDevice (libusb-1.0) - * ci_build.sh: ci_build.sh: default-all-errors: report - BUILDSTODO_INITIAL at the end of log, and if non-zero BUILDSTODO - remained unaccounted - * ci_build.sh: ci_build.sh: default-all-errors: report - BUILDSTODO_INITIAL at the end of log, and if non-zero BUILDSTODO - remained unaccounted - * ci_build.sh: ci_build.sh: report which SSL/USB variants will be - looped - -2018-03-14 Daniele Pezzini - - * data/cmdvartab, docs/nut-names.txt: libusb: update example of - driver.version.usb and add it to cmdvartab - -2021-11-15 François-Régis Degott - - * drivers/eaton-ats16-nm2-mib.c: eaton-ats16-nm2-mib.c: fix mul coef. - for ambient.temperature and humidity (#1173) * eaton- - ats16-nm2-mib.c: fix mul coef. for ambient.temperature and - ambient.humidity * Update eaton-ats16-nm2-mib.c Co-authored-by: - Arnaud Quette - -2021-11-15 Jim Klimov - - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": between - configure and build, report the Configured NUT_SSL_VARIANT - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts are decremented when configuration failed - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: avoid useless - comparison (warning) - * drivers/bestfortress.c: drivers/bestfortress.c: comment an - analyzer-check complaint - * drivers/bcmxcp_ser.c, drivers/bcmxcp_ser.h, tools/nut- - scanner/scan_eaton_serial.c: drivers/bcmxcp_ser.{c,h} + tools/nut- - scanner/scan_eaton_serial.c: use longer global var name (AUT => - BCMXCP_AUTHCMD) - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - use a longer global var name for modbus_ctx (nee ctx) - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - use a longer global var name for modbus_ctx (nee ctx) - * drivers/bcmxcp_ser.c, drivers/bcmxcp_ser.h, tools/nut- - scanner/scan_eaton_serial.c: drivers/bcmxcp_ser.{c,h} + tools/nut- - scanner/scan_eaton_serial.c: use longer global var name (AUT => - BCMXCP_AUTHCMD) - * drivers/bestfortress.c: drivers/bestfortress.c: comment an - analyzer-check complaint - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: avoid useless - comparison (warning) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: only define - "Compatibility layer between libusb 0.1 and 1.0" if we build with - QX_USB at all (no required headers are in context otherwise) - * configure.ac: configure.ac: neuter "nut_usb_lib" if building - --without-usb - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts for SSL+USB are planned same as executed - and - handle explicit NUT_USB_VARIANTS=no - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts for SSL+USB are planned same as executed - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": ensure - BUILDSTODO counts are decremented when configuration failed - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": between - configure and build, report the Configured NUT_USB_VARIANT - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": between - configure and build, report the Configured NUT_SSL_VARIANT - * ci_build.sh: ci_build.sh: BUILD_TYPE="default-all-errors": support - looping over NUT_USB_VARIANTS as well - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: report a NOTICE if - libusb-1.0 support was detected, but another was chosen - * drivers/libhid.c: drivers/libhid.c: HIDDumpTree(): mark that arg - "hd" is not used in SHUT_MODE - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: the "additional - USB-related checks" should now manipulate "LIBS" not "LIBUSB_LIBS" - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: comment on - "additional USB-related checks" - * configure.ac, m4/nut_check_libusb.m4: Move "additional USB-related - checks" from configure.ac to m4/nut_check_libusb.m4 - * configure.ac, docs/configure.txt, m4/nut_check_libusb.m4: - m4/nut_check_libusb.m4 et al: add support for --with-libusb- - version=(auto|0.1|1.0) - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: restore "ret" lost in - merging - * drivers/riello_usb.c: drivers/riello_usb.c: properly export - variables shared between driver subtypes (reapply to libusb-1.0 - branch) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: add a bit more of - "Compatibility layer between libusb 0.1 and 1.0" - * drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c: [libusb-1.0] Realign use of - nut_usb_strerror() after merge from master - * drivers/libusb1.c, drivers/nutdrv_qx.c: [libusb-1.0] Realign buffer - casting to (usb_ctrl_char) after merge from master - -2021-11-13 Dan Benton - - * data/driver.list.in: Add CyberPower RMCARD205 which is supported - -2021-11-13 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: hide clang-3.4 warnings - about str{n}cmp() args into pragmas - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: detect general "-Warray- - bounds" support - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: detect general - "-Wtautological-compare" - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: detect "pragma clang - diagnostic push/pop" support (needed with older clang versions not - on par with GCC) - * drivers/snmp-ups-helpers.c: drivers/snmp-ups-helpers.c: include - "config.h" before any system headers (such as time.h indirectly) - * configure.ac: configure.ac: be sure to detect "time.h" - * ci_build.sh: ci_build.sh: support a common DO_CLEAN_CHECK=no - -2021-11-13 Jim Klimov - - * drivers/snmp-ups-helpers.c: drivers/snmp-ups-helpers.c: include a - header, avoid a warning - * UPGRADING, docs/nut.dict: NEWS: updated build against various - generations of Net-SNMP for NUT v2.7.5 - * docs/configure.txt, m4/nut_check_libnetsnmp.m4: - m4/nut_check_libnetsnmp.m4: allow --with-netsnmp-config(=yes) to - mean prefer_NET_SNMP_CONFIG=true - * NEWS: NEWS: updated build against various generations of FreeIPMI - for NUT v2.7.5 - * drivers/snmp-ups.c: drivers/snmp-ups.c: replace strcmp("short - string") with strncmp() (clang-3.4 warns about array out of bounds) - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: resolve a "tautological - compare" when building on older agents - * drivers/nut-ipmi.h, drivers/nut-ipmipsu.c, drivers/nut- - libfreeipmi.c: drivers/nut-libfreeipmi.c nut-ipmipsu.c nut-ipmi.h: - adjust input_voltage_range_t (args of - ipmi_fru_multirecord_power_supply_information() vs. - ipmi_fru_parse_multirecord_power_supply_information() in different - FreeIPMI releases) [issue #1175] - * drivers/Makefile.am: drivers/Makefile.am: disable quick-hack of - nut_ipmipsu_CFLAGS+="-Wno-pointer-sign" [issue #1175] - * m4/nut_check_libusb.m4: m4/nut_check_libusb.m4: consider - have_PKG_CONFIG - * m4/nut_check_libopenssl.m4: m4/nut_check_libopenssl.m4: consider - have_PKG_CONFIG - * m4/nut_check_libnss.m4: m4/nut_check_libnss.m4: consider - have_PKG_CONFIG - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: consider - have_PKG_CONFIG - * m4/nut_check_libneon.m4: m4/nut_check_libneon.m4: consider - have_PKG_CONFIG - * m4/nut_check_libmodbus.m4: m4/nut_check_libmodbus.m4: consider - have_PKG_CONFIG - * m4/nut_check_libgd.m4: m4/nut_check_libgd.m4: consider - have_PKG_CONFIG - * m4/nut_check_libfreeipmi.m4: m4/nut_check_libfreeipmi.m4: consider - have_PKG_CONFIG - * m4/nut_check_libavahi.m4: m4/nut_check_libavahi.m4: consider - have_PKG_CONFIG - * m4/nut_check_pkgconfig.m4: m4/nut_check_pkgconfig.m4: separate - detection of support for have_PKG_CONFIG vs have_PKG_CONFIG_MACROS - * configure.ac: configure.ac: call PKG_CONFIG for systemd settings - query only if we have_PKG_CONFIG, and die if "yes" was required but - query is not possible - * m4/nut_check_pkgconfig.m4: m4/nut_check_pkgconfig.m4: extend to - consider PKG_CONFIG possibly detected by autoconf - * configure.ac, m4/nut_check_pkgconfig.m4: configure.ac: evict - NUT_CHECK_PKGCONFIG into m4/nut_check_pkgconfig.m4 - * clients/upsmon.c, drivers/mge-utalk.c, drivers/snmp-ups.c, - tools/nut-scanner/scan_snmp.c: clients/upsmon.c tools/nut- - scanner/scan_snmp.c drivers/snmp-ups.c mge-utalk.c: avoid - strcmp("") as the implementation may be invalid (reaches out of - one-element array for "") - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: whitespace - fix (indent if-clause content) - -2021-11-12 Jim Klimov - - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: support - (and prefer) pkg-config info to net-snmp-config script(s) - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: separate - "distcheck-valgrind" from "default-nodoc", to filter away - "NUT_BUILD_CAPS=valgrind=no" agents - -2021-11-13 Jim Klimov - - * ci_build.sh: ci_build.sh: update guessing SYS_PKG_CONFIG_PATH for - *openindiana*|*omnios*|*solaris*|*illumos*|*sunos* - * ci_build.sh: ci_build.sh: for optional_maintainer_clean_check(), - ignore ".ci*.log*" files if present - -2021-11-12 Jim Klimov - - * ci_build.sh: ci_build.sh: report which PWD failed a "git status" - query - * ci_build.sh: ci_build.sh: report if ".git" disappeared during - *clean check [issue #1167] - -2021-11-11 Jim Klimov - - * drivers/snmp-ups.h: drivers/snmp-ups.h: fix remaining SU_* flag - bits to (unsigned long), to match snmp_info_t->flags type - * drivers/snmp-ups.h: drivers/snmp-ups.h: comment SU_* bit usage by - bit-shifting macros - * drivers/snmp-ups.h: drivers/snmp-ups.h: wrap long comments, and - detail where flag-field bits come from - * drivers/snmp-ups.h: drivers/snmp-ups.h: comment typical use of - SU_TYPE(t) macro - * drivers/snmp-ups.h: drivers/snmp-ups.h: fix SU_TYPE_DAISY(t) macro - (had no arg) - * drivers/snmp-ups.h: drivers/snmp-ups.h: whitespace fixes - * drivers/snmp-ups.h: drivers/snmp-ups.h: comment SU_STATUS_NUM_ELEM - as possibly obsolete - -2021-10-27 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix buffer size to possibly - print max size_t - -2021-10-26 Jim Klimov - - * drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups.{c,h}: fix - SU_FLAG_* to (unsigned long) and their usage, to match - snmp_info_t->flags type - * drivers/snmp-ups.c: drivers/snmp-ups.c: decode_str(): range-check - return of snprintf() - -2021-11-11 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - rearrange lines to better match with 42ITy fork - * NEWS, docs/nut.dict: NEWS: improved SNMPv3 Auth/Priv algo support, - and nut-scanner threadcount, for NUT v2.7.5 - -2021-11-10 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am: hotfix header - (in)compatibility of different IPMI versions - * drivers/Makefile.am: drivers/Makefile.am: hotfix header - (in)compatibility of different IPMI versions - * drivers/Makefile.am: drivers/Makefile.am: hotfix header - (in)compatibility of different IPMI versions - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: hunnox_step is only used - qith QX_USB - * drivers/bcmxcp_usb.c, drivers/libusb.h, drivers/nutdrv_atcl_usb.c, - drivers/nutdrv_qx.c, drivers/richcomm_usb.c, - drivers/tripplite_usb.c: drivers/*usb*: align whitespace changes - with libusb-1.0 branch - * drivers/Makefile.am: drivers/Makefile.am: use LIBUSB_IMPL macro to - align with libusb-1.0 branch - * drivers/libusb.c: drivers/libusb.c: whitespace fixes and message - fixes to align with libusb-1.0 branch - * drivers/libusb.c, drivers/libusb.h, drivers/powervar-hid.c, - drivers/usbhid-ups.c: drivers/libusb.{c,h} + powervar-hid.c + - usbhid-ups.c: whitespace fixes after PR #1044 - * docs/config-prereqs.txt: docs/config-prereqs.txt: mention further - I2C-related packages in Debian/Ubuntu distros - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, report the - start of build variant and how many remain - * Makefile.am, clients/Makefile.am, common/Makefile.am, - conf/Makefile.am, data/Makefile.am, data/html/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - drivers/Makefile.am, include/Makefile.am, lib/Makefile.am, - scripts/Makefile.am, scripts/Solaris/Makefile.am, - scripts/augeas/Makefile.am, scripts/devd/Makefile.am, - scripts/hotplug/Makefile.am, scripts/python/Makefile.am, - scripts/systemd/Makefile.am, scripts/udev/Makefile.am, - scripts/ufw/Makefile.am, scripts/upsdrvsvcctl/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/Makefile.am, - tools/nut-scanner/Makefile.am: */Makefile.am: ensure that `make - maintainer-clean` also removes .dirstamp files - * .gitignore: .gitignore: remove a redundancy - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, ignore - strange exit-code from `expr` - if the maths result was "0" - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, ignore - strange exit-code from `expr` - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, do not - distclean before build (this just spends time to generate the - Makefile to kill it) - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, report - "SUCCEEDED build(s)" after final optional_maintainer_clean_check() - if that is called - * ci_build.sh: ci_build.sh: dumb down can_clean_check() to pass "set - -e" shells - * ci_build.sh: ci_build.sh: optional_*_clean_check() quickly skip if - there is no Makefile - * ci_build.sh: ci_build.sh: in "default-all-errors" mode, count - expected/remaining BUILDSTODO and call - optional_maintainer_clean_check() for the last iteration and - optional_dist_clean_check() for others - * ci_build.sh: ci_build.sh: introduce can_clean_check() to not fail - when we have nothing to test against - -2021-11-09 Jim Klimov - - * Makefile.am: Makefile.am: first-shot "git-realclean-check" and - targets to print *CLEANFILES lists - * ci_build.sh: ci_build.sh: introduce optional_dist_clean_check() to - use e.g. in "default-all-errors" case - * ci_build.sh: ci_build.sh: in loop for "default-all-errors", report - "build" successes as such - * ci_build.sh: ci_build.sh: skip optional_maintainer_clean_check() if - there is no .git [issue #1167] - -2021-11-09 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: consider SNMPv3 Auth/Priv - algos detected by configure script when reporting the usage (via - addvar() help messages) [issue #1169] - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - consider SNMPv3 Auth/Priv algos detected by configure script when - reporting the usage [issue #1169] - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: - comment the comment - * tools/nut-scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, - tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c + scan_snmp.c + scan_nut.c: ifdef the - references to max_threads_scantype - -2021-11-09 Jim Klimov - - * configure.ac: configure.ac: limit the impact of linux_i2c absent - libs when "auto" mode was requested - * ci_build.sh: ci_build.sh: start default build from a clean slate, - and do not REQUIRE to be able to build everything (do auto-detect) - * tests/Makefile.am, tools/nut-scanner/Makefile.am: tools/nut- - scanner/Makefile.am, tests/Makefile.am: do not refer to - LINKED_SOURCE_FILES with extra paths - -2021-11-09 Jim Klimov - - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: note about PTY definitions - * docs/config-prereqs.txt: docs/config-prereqs.txt: say a bit more - about OSes with containers - * docs/config-prereqs.txt: docs/config-prereqs.txt: say a bit more - about "General call to Test" and mention "ci_build.sh" - * docs/config-prereqs.txt, docs/nut.dict: docs/config-prereqs.txt: - revise pkgs available in Debian-like operating systems - -2021-11-08 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: use detected - NUT_HAVE_LIBNETSNMP_usm* support to define and use actual Priv or - Auth types - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: use - detected NUT_HAVE_LIBNETSNMP_usm* support to define and use actual - Priv or Auth types - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: detect - support of usmAES128PrivProtocol in Net-SNMP we build against - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: detect - support of (NETSNMP_DRAFT_BLUMENTHAL_AES_04) usmAES192PrivProtocol - usmAES256PrivProtocol in Net-SNMP we build against - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: detect - support of usmDESPrivProtocol usmHMACMD5AuthProtocol - usmHMACSHA1AuthProtocol in Net-SNMP we build against - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: detect - support of usmHMAC256SHA384AuthProtocol - usmHMAC384SHA512AuthProtocol usmHMAC192SHA256AuthProtocol in Net- - SNMP we build against - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: ifdef - all references to NETSNMP_DRAFT_BLUMENTHAL_AES_04 related code - * tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan-init.c: - tools/nut-scanner/... : move init/destroy of threadcount_mutex from - nut-scanner.c to nutscan-init.c - -2021-11-05 Dim - - * drivers/snmp-ups.c, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/scan_snmp.c: Added new auth methods to snmp - -2021-11-08 Jim Klimov - - * tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, tools/nut- - scanner/scan_xml_http.c: tools/nut-scanner/scan_eaton_serial.c + - scan_nut.c + scan_snmp.c + scan_xml_http.c: release global - semaphores in final protocol-scanner tread reaping - * tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, tools/nut- - scanner/scan_xml_http.c: tools/nut-scanner/scan_eaton_serial.c + - scan_nut.c + scan_snmp.c + scan_xml_http.c: report if we are - waiting for semaphored threads to complete - -2017-10-31 barraudl - - * tools/nut-scanner/Makefile.am, tools/nut-scanner/README, tools/nut- - scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/nutscan-init.c, tools/nut-scanner/nutscan-init.h: Revise - use of semaphores in nut-scanner vs libnutscanner Original commit - in 42ITy fork in 2017: "Fix the Debian package generation" Adapted - into NUT upstream code, considering 4 years of codebase evolution, - in 2021: - -2017-10-23 barraudl - - * configure.ac, tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut- - scanner.c, tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, tools/nut- - scanner/scan_xml_http.c: Add thread limitation to avoid memory - error Original development in 42ITy fork in 2017: UPDATE: Merged - with NUT upstream, considering evolution of codebases over 4 years - since original commit, revised 2021: - -2021-11-08 Jim Klimov - - * drivers/mge-hid.c: drivers/mge-hid.c: actively check and warn if we - truncated the string - * drivers/gamatronic.c: drivers/gamatronic.c: actively check and warn - if we truncated the string - * docs/nut.dict: docs/nut.dict: update for recent NEWS - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - safely limit a strncpy() call - * drivers/oneac.c: drivers/oneac.c: shield a potentially truncating - snprintf() into a small buffer - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRINGOP_TRUNCATION - * drivers/mge-hid.c: drivers/mge-hid.c: shield a potentially - truncating snprintf() into a small buffer - -2021-11-08 Jim Klimov - - * configure.ac: configure.ac: for CppUnit, also sanity-check - CPPUNIT_ASSERT_MESSAGE() - -2021-11-07 Jim Klimov - - * clients/Makefile.am: clients/Makefile.am: depend on "dummy" recipe - to re-evaluate out-of-dir libs (so development iterations in them - are reflected in rebuilds) - * drivers/Makefile.am: drivers/Makefile.am: depend on "dummy" recipe - to re-evaluate out-of-dir libs (so development iterations in them - are reflected in rebuilds) - * server/Makefile.am: server/Makefile.am: depend on "dummy" recipe to - re-evaluate out-of-dir libs (so development iterations in them are - reflected in rebuilds) - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - depend on "dummy" recipe to re-evaluate out-of-dir libs (so - development iterations in them are reflected in rebuilds) - * tests/Makefile.am: tests/Makefile.am: depend on "dummy" recipe to - re-evaluate out-of-dir libs (so development iterations in them are - reflected in rebuilds) - * tests/Makefile.am: tests/Makefile.am: drop obsoleted comment - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: add - test_strarr_alloc() This may seem trivial, but there are - suspicions this allocation does not always work (e.g. NUT issue - #1126) - -2021-11-07 Jim Klimov - - * drivers/gamatronic.c: drivers/gamatronic.c: shield a potentially - truncating snprintf() into a small buffer - * drivers/bcmxcp.c: drivers/bcmxcp.c: shield a potentially dangerous - snprintf() into a small buffer as tested-safe - * clients/upscmd.c: clients/upscmd.c: shield a potentially dangerous - snprintf() into a small buffer as tested-safe - * clients/upsrw.c: clients/upsrw.c: shield a potentially dangerous - snprintf() into a small buffer as tested-safe - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: add - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_FORMAT_TRUNCATION - -2021-11-07 Jim Klimov - - * clients/nutclient.cpp: clients/nutclient.cpp: safety check in - strarr_alloc(): returned pointer should be not null - * clients/nutclient.h: tests/nutclienttest.h: whitespace fixes - (indent chars) - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: whitespace fixes - (wrap long lines for maintainability) - -2021-11-07 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: load_mib2nut(): do not - report "Unknown mibs value" just if a device did not match the - mapping [NUT issue #1141] - * drivers/snmp-ups.c: drivers/snmp-ups.c: refactor load_mib2nut() to - not `strcmp(mib, "auto")` many times - -2021-11-07 Jim Klimov - - * drivers/snmp-ups.c: Update snmp-ups.c Fix use of `char - su_scratch_buf[255]` (original static array moved to another file - in master branch), and bump `DRIVER_VERSION` - -2021-11-07 Jim Klimov - - * NEWS: NEWS: added snmp-ups support for ondelay/offdelay for - NUT-2.7.5 - -2021-11-07 Jim Klimov - - * drivers/snmp-ups.c: Update snmp-ups.c Use the common (and - sufficiently large for any runaway numeric madness) - `su_scratch_buf` instead of a local `char[6]` buffer. - * drivers/snmp-ups.c: Update snmp-ups.c A few small whitespace fixes - -2021-11-07 Jim Klimov - - * drivers/arduino-hid.c: drivers/arduino-hid.c: normalize whitespace - for NUT codebase - * drivers/arduino-hid.c, drivers/arduino-hid.h: drivers/arduino- - hid.{c,h}: update (C) to arduino-hid support author - * NEWS: NEWS: added usbhid-ups new subdriver arduino-hid support for - NUT-2.7.5 - * NEWS: NEWS: added USB HID support on interface number greater than - 0 for NUT-2.7.5 - * NEWS: NEWS: added huawei-ups2000 support for NUT-2.7.5 - -2021-11-07 Jim Klimov - - * docs/man/huawei-ups2000.txt: Update huawei-ups2000.txt Made the - `configure` example a bit friendlier for copy-pasting. - -2021-11-06 Jim Klimov - - * tests/.gitignore, tools/nut-scanner/.gitignore: GitIgnore - LINKED_SOURCES (follow-up to PR #1159) - * .gitignore: GitIgnore .dirstamp in build trees - * Makefile.am: Makefile.am: move removal of dist tarballs and build - packages from "distclean" to "maintainer-clean" - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: mark - use of LINKED_SOURCE_FILES as "nodist" - * tests/Makefile.am: tests/Makefile.am: mark use of - LINKED_SOURCE_FILES as "nodist" - * Makefile.am: Makefile.am: add a "make realclean" as alias to - maintainer-clean - * Makefile.am: Makefile.am: typo fix MAINTAINERCLEAN_FILES => - MAINTAINERCLEANFILES - * ci_build.sh: ci_build.sh: there is no default "make realclean" - implem in autotools, fall back to "maintainer-clean" support for - wipingg the workspace - * Makefile.am, clients/Makefile.am, common/Makefile.am, - conf/Makefile.am, data/Makefile.am, data/html/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - drivers/Makefile.am, include/Makefile.am, lib/Makefile.am, - scripts/Makefile.am, scripts/Solaris/Makefile.am, - scripts/augeas/Makefile.am, scripts/devd/Makefile.am, - scripts/hotplug/Makefile.am, scripts/python/Makefile.am, - scripts/systemd/Makefile.am, scripts/udev/Makefile.am, - scripts/ufw/Makefile.am, scripts/upsdrvsvcctl/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/Makefile.am, - tools/nut-scanner/Makefile.am: */Makefile.am: there is no default - "make realclean" implem in autotools, fall back to "maintainer- - clean" support for wipingg the workspace - * Makefile.am, clients/Makefile.am, common/Makefile.am, - conf/Makefile.am, data/Makefile.am, data/html/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - drivers/Makefile.am, include/Makefile.am, lib/Makefile.am, - scripts/Makefile.am, scripts/Solaris/Makefile.am, - scripts/augeas/Makefile.am, scripts/devd/Makefile.am, - scripts/hotplug/Makefile.am, scripts/python/Makefile.am, - scripts/systemd/Makefile.am, scripts/udev/Makefile.am, - scripts/ufw/Makefile.am, scripts/upsdrvsvcctl/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/Makefile.am, - tools/nut-scanner/Makefile.am: */Makefile.am: reshuffle what we - remove as part of "make distclean" vs. "make realclean" (can be - remade only by autogen.sh) - * Makefile.am: Makefile.am: do not "distclean" away some more parts - of "configure" script ecosystem (leave that to "realclean") - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - restore use of $(builddir) for LINKED_SOURCE_FILES - * tests/Makefile.am: tests/Makefile.am: restore use of $(builddir) - for LINKED_SOURCE_FILES - * ci_build.sh: ci_build.sh: call optional_realclean_check() after - more build variants - * tools/Makefile.am: tools/Makefile.am: distclean the helper scripts - that can be re-made - * ci_build.sh: ci_build.sh: change the cleanliness check from - "distcheck" to "realcheck" and factor into a method - * Makefile.am: Makefile.am: regenerate the helper needed for - ChangeLog if cleaned away - * Makefile.am: Makefile.am: delete the configure script and its - components not in a "make distclean" but in "make realclean" - -2021-11-05 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: use - BUILT_SOURCES=LINKED_SOURCE_FILES to avoid dist-ing temporary - symlinks as files - * tests/Makefile.am: tests/Makefile.am: use - BUILT_SOURCES=LINKED_SOURCE_FILES to avoid dist-ing temporary - symlinks as files - * ci_build.sh: ci_build.sh: only call dpkg if present - * ci_build.sh: ci_build.sh: configure_nut(): call ./autogen.sh before - CONFIGURE_SCRIPT if there is no configure script - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - revise the magic of LINKED_SOURCE_FILES for distcheck - * tests/Makefile.am: tests/Makefile.am: revise the magic of - LINKED_SOURCE_FILES for distcheck - * ci_build.sh: ci_build.sh: add a DO_DISTCHECK_CLEAN to make sure we - clean everything made, and no more (after any distcheck) - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - revise the magic of LINKED_SOURCE_FILES for distcheck - * tests/Makefile.am: tests/Makefile.am: revise the magic of - LINKED_SOURCE_FILES for distcheck - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: make - sure to symlink sources into $(builddir)/ - * tests/Makefile.am: tests/Makefile.am: make sure to symlink sources - into $(builddir)/ - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: work - around dmake bugs - * tests/Makefile.am: tests/Makefile.am: work around dmake bugs - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: quote - pathnames, and force the symlink (to overwrite older if any) - * tests/Makefile.am: tests/Makefile.am: quote pathnames, and force - the symlink (to overwrite older if any) - * Makefile.am: Makefile.am: distclean-local: first find(), then rm() - the findings (find-recursion fails otherwise) - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - symlink source used from another directory into current builddir, - do avoid external ".deps/" usage - * tests/Makefile.am: tests/Makefile.am: symlink source used from - another directory into current builddir, do avoid external ".deps/" - usage - * Makefile.am, clients/Makefile.am, common/Makefile.am, - drivers/Makefile.am, server/Makefile.am, tests/Makefile.am, - tools/nut-scanner/Makefile.am: */Makefile.am: Do not clean ".deps" - in SUBDIRS of the main project - * Makefile.am, clients/Makefile.am, common/Makefile.am, - conf/Makefile.am, data/Makefile.am, data/html/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - drivers/Makefile.am, include/Makefile.am, lib/Makefile.am, - scripts/Makefile.am, scripts/Solaris/Makefile.am, - scripts/augeas/Makefile.am, scripts/devd/Makefile.am, - scripts/hotplug/Makefile.am, scripts/python/Makefile.am, - scripts/systemd/Makefile.am, scripts/udev/Makefile.am, - scripts/ufw/Makefile.am, scripts/upsdrvsvcctl/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/Makefile.am, - tools/nut-scanner/Makefile.am: */Makefile.am: revise CLEANFILES and - DISTCLEANFILES (favored over clean-local target rules) - -2021-11-04 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: use - libcommon.la as part of libnutscan.(la|so) - -2021-11-04 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: do - not build common.c into nut-scanner (avoid double-definition of - nut_debug_level among other things) - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: fix - rule for NUT_SCANNER_DEPS to be sure - * clients/Makefile.am, common/Makefile.am, drivers/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/nut- - scanner/Makefile.am: */Makefile.am: define dependencies on out-of- - dir *.la helper libs: use AM_MAKEFLAGS (follows-up to PR #1151) - -2021-11-04 Jim Klimov - - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - revise parsing of --thread via strtol() Inspired by 42ITy fork - approach to similar issue - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - rename "--jobs" to "--thread" Inspired by 42ITy fork approach to - similar issue - -2021-11-04 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: fix - rule for NUT_SCANNER_DEPS to be sure - * clients/Makefile.am, common/Makefile.am, drivers/Makefile.am, - server/Makefile.am, tests/Makefile.am, tools/nut- - scanner/Makefile.am: */Makefile.am: define dependencies on out-of- - dir *.la helper libs: use AM_MAKEFLAGS (follows-up to PR #1151) - -2021-11-04 Jim Klimov - - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - refine sanity-checks for nofile_limit.rlim_cur value range - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, - tools/nut-scanner/scan_nut.c, tools/nut-scanner/scan_snmp.c, - tools/nut-scanner/scan_xml_http.c: tools/nut-scanner/nut-scanner.c - + scan_xml_http.c + scan_snmp.c + scan_nut.c + nut-scan.h: Add a - hard limit on netxml scanning thread count - * configure.ac, tools/nut-scanner/nut-scanner.c: tools/nut- - scanner/nut-scanner.c + configure.ac: detect if getrlimit() is +2.4.2 + +2010-02-19 Arnaud Quette + + * [r2363] ChangeLog, configure.in: Final update for 2.4.2 release + +2010-02-19 Arnaud Quette + + * [r2362] NEWS, data/driver.list: Add HP R1500 G2 to compatibility + list for bcmxcp + (reported by Stephan Schupfer) + +2010-02-19 Arjen de Korte + + * [r2361] clients/upsmon.h: Fixed typo + * [r2360] clients/upsmon.c, clients/upsmon.h: You can't compare + strings with '!=' in C, so the logic to determine if the stock + message was overridden was flawed (causing problems with + (de)allocation of memory) + +2010-02-19 Arnaud Quette + + * [r2357] conf/nut.conf.sample, conf/upsmon.conf.sample, docs/FAQ, + man/upsmon.conf.5: Remove remaining references to ACL / + allowfrom. + +2010-02-19 Arjen de Korte + + * [r2355] configure.in: Replace __func__ on pre-C99 compilers with + __FUNCTION__ (may be available on older GNU C compilers) or + __LINE__ (which is always available) + +2010-02-16 Arjen de Korte + + * [r2353] drivers/main.h: Static initialization of flexible array + members is non-portable (GNU C extension), so don't use a + flexible array member here + * [r2352] configure.in: Check if the C compiler supports flexible + array members and/or variable-length arrays + * [r2350] drivers/upscode2.c: Don't use signed constants in a + bitfield + +2010-02-15 Arjen de Korte + + * [r2349] drivers/main.h: Fix missing semi-colon + * [r2348] drivers/main.h: Attempt to fix compiler warning on + Solaris (although I have my doubts about the portability of array + declarations within structures) + * [r2347] drivers/snmp-ups.c, drivers/snmp-ups.h: Fix for buggy + Net-SNMP config should be before including headers, since our + autoconf generated header is the first to be included (so the + conflict is caused by subsequently including the Net-SNMP + headers) + * [r2346] drivers/apcsmart.c, drivers/metasys.c, drivers/serial.c: + Fix unreachable code warnings + * [r2345] drivers/upscode2.c: An (int) is only guaranteed to be at + least 16-bit while we need 32-bit here (so it's better to use a + fixed width integer) + +2010-02-14 Arjen de Korte + + * [r2344] configure.in, docs/configure.txt, drivers/powerman-pdu.c, + m4/nut_check_libneon.m4, m4/nut_check_libnetsnmp.m4, + m4/nut_check_libpowerman.m4, m4/nut_check_libusb.m4: Allow to + override CFLAGS and LDFLAGS detected by the *.m4 macros in case + pkg-config is not available + * [r2343] docs/configure.txt, m4/nut_check_libssl.m4: Allow cflags + and ldflags overrides for openssl (may be useful/needed if + pkg-config is not available) + +2010-02-13 Arjen de Korte + + * [r2342] drivers/liebertgxt2.c: Use (unsigned char) instead of + (char) in command definitions (to prevent overflow warnings + definitions) + * [r2341] drivers/mge-shut.h: The usage code must be at least a + 32-bit integer (and 'int' is only guaranteed to be at least + 16-bit). + * [r2340] m4/nut_check_libnetsnmp.m4: Check if Net-SNMP library is usable - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - constrain default or requested job count with current `ulimit -n` - (minus known overhead) - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - whitespace fix - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - wrap long line -2021-11-03 Jim Klimov +2010-02-12 Arjen de Korte - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: limit thread count like in scan_snmp.c - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: limit - thread count like in scan_snmp.c - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: define TRUE/FALSE - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: limit thread count like in scan_snmp.c - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - comment "#endif // HAVE_PTHREAD" to navigate in code better - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: only - loop to free the thread_array if any were allocated - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/scan_snmp.c: - tools/nut-scanner/nut-scan.h + scan_snmp.c: (C) header and some - cosmetic fixes - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - bump default max_threads to not lag with /24 subnets + * [r2339] docs/cables/apc.txt: APC cable diagrams as reported on + the mailinglist + [http://lists.alioth.debian.org/pipermail/nut-upsuser/2005-August/000118.html] -2021-11-03 Jim Klimov +2010-02-11 Charles Lepple - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: only - sleep after attempting pthread_tryjoin_np() if nothing got cleaned - away - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: hide - debug logging for thread herding - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/scan_snmp.c: - tools/nut-scanner/scan_snmp.c: update comments and messages - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - update log-tracing of pthread herding - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: move - locking of total thread count change when we add one + * [r2338] ChangeLog: Generate ChangeLog entries from r2337 through + r2331. -2021-11-03 Jim Klimov +2010-02-11 Arnaud Quette - * configure.ac, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/scan_snmp.c: configure.ac, tools/nut-scanner/scan_snmp.c, - tools/nut-scanner/nut-scanner.c: not all glibc versions - HAVE_PTHREAD_TRYJOIN + * [r2337] NEWS: Complete news information for the 2.4.2 release. -2021-11-03 Jim Klimov +2010-02-11 Arjen de Korte - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: limit - the thread count for parallelized scanning - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - add a threadcount_mutex to use in all children - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - handle max_threads, curr_threads - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - add support for -j N (--jobs=N) option to limit simultaneous - scanning threads - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - comment a FIXME for limiting the pthread count - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - nutscan_cidr_to_ip(): forbid scanning whole Internet + * [r2336] (numerous files) No functional changes (properties only) + * [r2335] AUTHORS: No functional changes (properties only) -2021-11-03 Jim Klimov +2010-02-10 Arnaud Quette - * tests/.gitignore: GitIgnore test log and trace for "getvaluetest" + * [r2334] ChangeLog: Trimmed 2.4.0 entries. -2021-11-03 Jim Klimov +2010-02-10 Arjen de Korte - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - tone down the debug-logging of CIDR processing - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - only free cidr_tok after we are done manipulating its memory buffer - * tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan-ip.c: - nutscan-ip.c, nut-scanner.c: instrument the CIDR processing to - trace an error + * [r2333] m4/nut_check_ipv6.m4: Check for presence of structures + required for IPv6 support in the header files that are defined by + POSIX (don't rely on the netdb.h header to include them) -2021-11-02 Jim Klimov +2010-02-10 Charles Lepple - * docs/documentation.txt, docs/man/dummy-ups.txt: - docs/documentation.txt + docs/man/dummy-ups.txt: refer to - `tools/nut-ddl-dump.sh` in the same manner (issue #1111) - * docs/man/dummy-ups.txt: docs/man/dummy-ups.txt: fix use of "link:" - tag in asciidoc (issue #1111) and slightly reword - * docs/documentation.txt: docs/documentation.txt: fix use of "link:" - tag in asciidoc (issue #1111) and slightly reword - * docs/nut-names.txt: docs/nut-names.txt: fix use of "link:" tag in - asciidoc (issue #1111) - * docs/developers.txt: docs/developers.txt: fix use of "link:" tag in - asciidoc (issue #1111) + * [r2332] ChangeLog: Generate ChangeLog entries from SVN r2331 back + through r2117. -2021-11-01 Jim Klimov +2010-02-10 Arjen de Korte - * ci_build.sh: ci_build.sh: give the caller a way to disable parallel - builds with PARMAKE_FLAGS=" " (space) - * ci_build.sh: ci_build.sh: enable parallel builds for default build - (one without a BUILD_TYPE specified) - * ci_build.sh: ci_build.sh: enable parallel builds for "distcheck" in - default builds, which should now pass well (after usual build and - check passed) - * ci_build.sh: ci_build.sh: report chosen settings for parallel - builds - * configure.ac: configure.ac: test more proactively if valgrind can - test things and not crash by itself - * ci_build.sh: ci_build.sh: enable parallel builds for "default- - tgt:*" which should now pass well - * ci_build.sh: ci_build.sh: guess the available amount of parallelism - for the current system; consider load averages for GNU Make too - * docs/Makefile.am, docs/man/Makefile.am: docs/(man/)Makefile.am: - move back to builddir all files for the built documents, not just - the target name - * docs/Makefile.am, docs/man/Makefile.am: docs/(man/)Makefile.am: - before putting back the built documents, clean up the destination - if needed and make the workdir removable if needed (a2x can copy - system/EXTRA_DIST resources with their attrs) + * [r2331] drivers/genericups.c: Fix typo in previous commit + * [r2330] drivers/genericups.c: Don't hang up on last close + (initial state of HUPCL is implementation dependent) + [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=327072] -2021-10-31 Jim Klimov +2010-02-09 Arjen de Korte - * docs/Makefile.am, docs/man/Makefile.am: docs/(man/)Makefile.am: - only delete target before build if it is a directory (chunked HTML) - * docs/Makefile.am: docs/Makefile.am: update comment about - destination dir for asciidoc/a2x - * docs/man/Makefile.am: Revert "docs/man/Makefile.am: tone down the - use of "touch" for multicomponent docs" This reverts commit - 0b9ac2500ddbc7bd11a639805d43cda9259bfb1f. - * docs/Makefile.am: docs/Makefile.am: avoid potential for races where - same document is built several times (mentioned in different list - variables) - * docs/man/Makefile.am: docs/man/Makefile.am: avoid races where same - document is built several times (mentioned in different list - variables) - * docs/man/Makefile.am: Revert "docs/man/Makefile.am: avoid races - where same document is built several times (mentioned in different - list variables)" This reverts commit - 29ae5a8f6e5524d689ebaf2abdf508528288b010. - * docs/man/Makefile.am: docs/man/Makefile.am: tag DOC-MAN-HTML - visibly different from DOC-HTML of the main docs dir - * docs/man/Makefile.am: docs/man/Makefile.am: avoid races where same - document is built several times (mentioned in different list - variables) - * docs/man/Makefile.am: docs/man/Makefile.am: tone down the use of - "touch" for multicomponent docs - * docs/.gitignore, docs/Makefile.am, docs/man/.gitignore, - docs/man/Makefile.am: docs/(man/)Makefile.am: fan out doc builds - into subdirectories, where we can, so parallel runs do not collide + * [r2329] drivers/main.c: Some drivers set + 'driver.version.internal' in upsdrv_initinfo() so we should set + the generic message before running that + * [r2327] man/upssched.conf.5: Fix wrong reference + [http://lists.alioth.debian.org/pipermail/nut-upsdev/2010-February/004532.html] + * [r2326] server/netuser.c: Check if user is allowed to login + before accepting connection + + [http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=544390] -2021-11-01 Jim Klimov +2010-02-08 Arjen de Korte - * ci_build.sh: ci_build.sh: update the heading comment + * [r2324] UPGRADING: The tcp-wrappers support is optional in + addition to the LISTEN directive (not the other way around) -2021-10-31 Jim Klimov +2010-02-08 Arnaud Quette - * docs/man/Makefile.am: docs/man/Makefile.am: whitespace fixes (drop - some indentation) + * [r2323] UPGRADING: Add a double explicit note about the ACL + mechanism removal in 2.4.0. + (reported on Debian by Anthony DeRobertis, Bug #526811) -2021-10-30 Jim Klimov +2010-02-08 Arjen de Korte - * docs/Makefile.am: docs/Makefile.am: as developer aid, add - "(all-)docs" target to try building all types regardless of - enablement by configure script; also add "make man" support + * [r2322] data/driver.list: Added lots of Ippon devices that were + mentioned on the mailinglists (serial devices will undoubtly + work, USB support still experimental) -2021-10-31 Jim Klimov +2010-02-07 Arjen de Korte - * ci_build.sh: ci_build.sh: support CI_REQUIRE_GOOD_GITIGNORE=false - to bypass fatal error on git status being not empty after build - -2021-10-30 Jim Klimov - - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - reference nut_version.h in a way that does not offend "make - dist(check)" - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am: - reference some out-of-dir sources via top_srcdir (not ../..) - * clients/Makefile.am, drivers/Makefile.am, server/Makefile.am, - tests/Makefile.am, tools/nut-scanner/Makefile.am: */Makefile.am: - define dependencies on out-of-dir *.la helper libs, and reference - them via top_builddir (not ..) - * common/Makefile.am: common/Makefile.am: reference nut_version.h in - a way that does not offend "make dist(check)" - * ci_build.sh: ci_build.sh: default "minimal" ritual should not spend - half the time building docs - -2021-10-04 Jim Klimov - - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: range-check - and cast returned ipmi_dev->sensors_count - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: - libfreeipmi_get_sensors_info(): we check that sdr_record_len is not - negative, so can cast to (uint) - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: - libfreeipmi_get_board_info(): range-check and cast mfg_date_time - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: - libfreeipmi_get_psu_info(): range-check and cast libfreeipmi method - arguments which are ints - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: - libfreeipmi_get_psu_info(): range-check and cast libfreeipmi method - arguments which are uint8_t - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: - nut_ipmi_open(): range-check and cast libfreeipmi method arguments - which are uint8_t - -2021-09-23 Jim Klimov - - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: - range-check and cast ipmi_sec->authentication_type - ipmi_sec->privilege_level ipmi_id to match method signatures - -2021-10-15 Jim Klimov - - * ci_build.sh: ci_build.sh: report Build host settings - -2021-10-16 Jim Klimov - - * ci_build.sh, docs/developers.txt: ci_build.sh: add - BUILD_TYPE=fightwarn(-clang|-gcc) for presets with developer aid - Also updated docs/developers.txt with example and description - -2021-10-26 Jim Klimov - - * tests/getvaluetest.c: tests/getvaluetest.c: align test structure - with field types in HIDData_t - * tests/getvaluetest.c: tests/getvaluetest.c: fix bufsize size_t type - * tests/getvaluetest.c: tests/getvaluetest.c: mark static local - methods as such - * drivers/hidparser.c: drivers/hidparser.c: for skipping botched - LogMin/LogMax, also log a message - -2021-10-20 Stephan Blecher <_github@blecher.at> - - * drivers/hidparser.c: drivers/hidparser.c - -2021-10-22 Jim Klimov - - * autogen.sh: autogen.sh: surprise, not all systems have "dos2unix" - * configure.ac: configure.ac: fix use of --with-docs - * configure.ac: configure.ac: fix use of --with-valgrind - -2021-10-21 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: currently constrain - cppcheck phase(s) to fightwarn-related branch/PR builds - -2021-10-20 Jim Klimov - - * .gitignore, Jenkinsfile-dynamatrix, Makefile.am, ci_build.sh, - configure.ac, docs/config-prereqs.txt, docs/nut.dict, - m4/nut_check_cppcheck.m4: Add recipe support for cppcheck analysis - * ci_build.sh: ci_build.sh: let initial DO_DISTCHECK value be set by - caller - -2021-10-20 Arnaud Quette - - * tools/nut-scanner/scan_snmp.c: Only try all OIDs if sysOID matching - failed - -2021-10-19 Jim Klimov - - * drivers/nutdrv_qx_ablerex.c, drivers/nutdrv_qx_ablerex.h: - drivers/nutdrv_qx_ablerex.{c,h}: heading fixes -- name, descr, (C) - * drivers/nutdrv_qx.c, drivers/nutdrv_qx_ablerex.c: - drivers/nutdrv_qx.c + nutdrv_qx_ablerex.c: common whitespace fixes - * drivers/Makefile.am: drivers/Makefile.am: restore bits lost with - initial posting of PR #1135 - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: update DRIVER_VERSION for - added "ablerex" support - -2021-10-18 Ablerexsoftware - - * drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_ablerex.c, drivers/nutdrv_qx_ablerex.h: Add - nutdrv_qx driver for Ablerex model PR#2 - -2021-10-16 Jim Klimov - - * NEWS, UPGRADING, docs/nut.dict: UPGRADING: notice that upsdebugx() - et al became macros in NUT-2.7.5 - * NEWS: NEWS: another expected point for release after 2.7.5 - -2021-10-14 Jim Klimov - - * drivers/Makefile.am, drivers/snmp-ups-helpers.c, drivers/snmp- - ups.c, drivers/snmp-ups.h: Separate source files of snmp-ups.c - (driver core) and snmp-ups-helpers.c (shared mapping tables and - funcs) (#1134) * drivers/Makefile.am: bring some order into - snmp_ups_SOURCES list * drivers/snmp-ups.h: update (C) heading * - drivers/snmp-ups.h: comment that su_find*() are related to certain - info_lkp_t fields * drivers/snmp-ups.c: extract snmp-ups-helpers.c - that can be built independently * drivers/snmp-ups.h: mark the - range of data points related to Subdrivers shared helpers functions - -2021-10-12 Jim Klimov - - * drivers/powerware-mib.c, drivers/snmp-ups.c, drivers/snmp-ups.h: - drivers/snmp-ups.{h,c} + powerware-mib.c: reference date converter - by macro name instead of magic number - * drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups.{h,c}: - rename the fun/nuf mappings to fun_vp2s/nuf_s2l to match the DMF - codebase and ease eventual backports - * drivers/snmp-ups.h: drivers/snmp-ups.h: comment the fun/nuf mapping - and their relation to su_find_*() methods - * drivers/snmp-ups.c: drivers/snmp-ups.c: clarify that we pass a - "long*" arg to su_find_infoval() - * drivers/snmp-ups.c: drivers/snmp-ups.c: typo fix - * drivers/snmp-ups.c: drivers/snmp-ups.c: clarify in decode_str() - that we pass a "long*" arg to su_find_infoval() - * drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups.{c,h}: - rearrange braces, blank lines and some comments to match the - formatting fixes in DMF branch (and to simplify eventual backport) - * drivers/snmp-ups.c: drivers/snmp-ups.c: rearrange mib2nut[] in - alphabetic order (except *ietf tables that go last) and reference - mib.c sources - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - whitespace (indent) - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: fix regex pattern - for dynacfgPipeline.appliesToChangedFilesRegex_FILES_PY - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: parameterize - dynacfgPipeline.axisCombos* and excludeCombos_DEFAULT_* for - repetitive settings - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: parameterize - dynacfgPipeline.branchStableRegex - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: extend - sample capability labels with PYTHON variants - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: update for Python- - version build scenarios - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add - dynacfgPipeline.appliesToChangedFilesRegex_FILES_PY for future - handling - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: update - dynacfgPipeline.appliesToChangedFilesRegex_FILES_RECIPE to consider - changes of autogen.sh - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: fix whitespace style - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: fix - whitespace style - -2021-10-11 Jim Klimov - - * tools/nut-scanner/nutscan-device.c: tools/nut-scanner/nutscan- - device.c: fix whitespace style - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - whitespace style - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: fix - whitespace style - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: fix - whitespace style - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: fix whitespace style - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: fix - whitespace style - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix whitespace style - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: fix whitespace style - * tools/nut-scanner/nutscan-device.h: tools/nut-scanner/nutscan- - device.h: fix whitespace style - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - whitespace style - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: fix - whitespace style - * tools/nut-snmpinfo.py.in: tools/nut-snmpinfo.py.in: fix whitespace - style of generated header - * tools/nut-snmpinfo.py.in: tools/nut-snmpinfo.py.in: fix heading of - generated header - -2021-09-28 Jim Klimov - - * drivers/microdowell.h: drivers/microdowell.h: normalize whitespace - within the file - * drivers/microsol-apc.h: drivers/microsol-apc.h: whitespace fix - -2021-09-23 Jim Klimov - - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix whitespace style - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: fix whitespace style - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: fix - whitespace style - -2021-09-22 Jim Klimov - - * tests/cpputest.cpp: tests/cpputest.cpp: avoid "no out-of-line - virtual method definitions" (weak-vtables) - * tests/nutclienttest.cpp: tests/nutclienttest.h: avoid "unused - exception parameter ex" - * clients/nutclientmem.h: clients/nutclientmem.h: avoid "extra ; - after method" warnings - -2021-10-11 Jim Klimov - - * docs/Makefile.am, docs/man/Makefile.am: docs{,/man}/Makefile.am: - quiesce docs-generating targets by default to just state what they - make - * docs/nut.dict: Update spellchecker dict - -2021-10-09 Jim Klimov - - * ci_build.sh: ci_build.sh: add support for CI agents setting - NUT_BUILD_CAPS=valgrind=no - * Makefile.am: Makefile.am: `make spellcheck` from top dir should be - quieter (fallout from touchfiles) - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: stress to - `systemctl restart lxc-net` after edits of /etc/lxc/dnsmasq- - hosts.conf - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: stress that for CI_WRAP_SH method, the Prefix Start - Agent Commandshould not pollute stderr/stdout - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: report more details - about the build host when we "Inspect initial envvars" - -2021-10-08 Jim Klimov - - * scripts/subdriver/gen-snmp-subdriver.sh: gen-snmp-subdriver.sh: - deprecate "which" in favor of "command -v" - * ci_build.sh: ci_build.sh: deprecate "which" in favor of "command - -v" - -2021-10-07 Jim Klimov - - * m4/nut_check_python.m4: m4/nut_check_python.m4: export PYTHON(2,3) - envvars for other scripts called in the build - -2021-09-28 Jim Klimov - - * .gitignore: GitIgnore the tmp/ subdirectory used by CI builds - * .gitignore: GitIgnore Python precompiled files - -2021-09-27 Jim Klimov - - * configure.ac: configure.ac: split generation of "data" files vs. - "scripts" from *.in templates - * configure.ac: Update python scripts to be generated by configure - and using the detected PYTHON value - * clients/nutclient.h: clients/nutclient.h: whitespace typo fix - * docs/developers.txt: docs/developers.txt: fix reference to Fosshost - to be an URL - -2021-09-26 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: for a non-PR build - of a fightwarn* branch, reference 'fightwarn' for analysis - -2021-09-23 Jim Klimov - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl => generated nutscan- - usb.h: sentinel in a table of uint16_t can not be -1 - -2021-09-22 Jim Klimov - - * clients/upsclient.c, configure.ac: clients/upsclient.c + - configure.ac: fix use of CPU_TYPE - * configure.ac: configure.ac: add "-Wno-cast-qual" to clang-medium - and clang-hard warnings levels - -2021-10-05 Jim Klimov - - * docs/nut.dict: Update spellchecker - * NEWS: NEWS: added FTTx support and other genericups improvenets for - NUT-2.7.5 - -2021-10-05 Jim Klimov - - * configure.ac: configure.ac: more AC_CHECK_HEADERS_ONCE - * ci_build.sh: ci_build.sh: for default mode (no BUILD_TYPE) enable - cgi and dev files (no=>auto) and do not require serial drivers - (yes=>auto) - * m4/nut_type_socklen_t.m4: m4/nut_type_socklen_t.m4: fix detection - on windows Probably practical codebase should also account for - other arg types, e.g. "SOCKET" that is not even exported into a - macro so far. - * ci_build.sh: ci_build.sh: report CI_OS_NAME detection issues more - clearly It is not helpful to read just this: Could not recognize - ... from ''-'' - -2021-10-05 Jim Klimov - - * autogen.sh: autogen.sh: suggest CRLF fixes for the workspace (e.g. - if checked out on Windows) This falls a bit short of enforcing - with .gitattributes which may or may not interfere with platform- - native editors and other tools. - -2021-10-04 Jim Klimov - - * conf/Makefile.am, docs/man/Makefile.am: conf/Makefile.am, - docs/man/Makefile.am: avoid prerequisites on suffix rules - * drivers/apc-mib.c: drivers/apc-mib.c: bump APCC_MIB_VERSION for PR - #1113 - * docs/man/genericups.txt, drivers/genericups.c: genericups: - officially alias "NULL" and "none" setting keywords - -2021-10-04 Jim Klimov - - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: recommend a unique Remote root directory per agent - -2021-10-04 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: extend QEMU build - scenarios to "ssh-qemu-nut-builder" agents, and to iterate - "COMPILER" toolkits for cross-check on same platform - -2021-10-04 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: Debianish systems - tend to deliver g++ in a separate package from gcc - * docs/ci-farm-lxc-setup.txt, docs/nut.dict: docs/ci-farm-lxc- - setup.txt: add a chapter on Jenkins Build Agent setup for the - containers - -2021-10-03 Jim Klimov - - * docs/nut.dict: Update spellchecker - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: document - making a self-login ssh key for abuild - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: document - allowing container SSH server to accept envvars from client - -2021-10-03 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: Typo fix: remove - extra unstashCleanSrc() for ci_build.sh preparations - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: allow limited use - of QEMU containers as build agents (slow workers => few combos) - -2021-10-02 Jim Klimov - - * configure.ac: configure.ac: quiesce the check for usable valgrind - binary - * docs/nut.dict: Update spellchecker - * configure.ac: configure.ac: adapt warnings level (auto, minimal) - for GCC with c89/c90/ansi requested builds - * tests/getvaluetest.c: tests/getvaluetest.c: fix declaration of - variables in code body, and type of sizeof-derived iterator - * tests/getvaluetest.c: tests/getvaluetest.c: normalize whitespace to - NUT style - * tests/getvaluetest.c: tests/getvaluetest.c: add (C) and descriptive - heading - -2021-10-02 Jim Klimov - - * configure.ac: configure.ac: test if valgrind is actually usable on - build/check ssytem - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: fix - extraction of hosts-map data - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: make note - of lxc-create for other distros - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: add git to - early starter-kit of packages - -2021-09-30 Jim Klimov - - * Jenkinsfile-dynamatrix, docs/developers.txt: Jenkinsfile-dynamatrix - + developers.txt: for "GNU C89 standard builds with fatal - warnings", only run with a `fightwarn.*89.*` regex branch name; do - not pollute logs and analysis of "usual fightwarn" builds - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: for "GNU C standard - builds with non-fatal warnings, without distcheck and docs (must - pass)" slowBuild scenario, start with a "gnu89/gnu++98" non- - regression variant - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: reword some - slowBuild filter config descriptions and comments - * docs/developers.txt, docs/nut.dict: docs/developers.txt: extend the - description of NUT CI setup Clarification of adaptive jobs, - running different sets of scenarios, and how to reproduce a failed - test case locally. Also updated spellchecker dictionary. - * docs/developers.txt: docs/developers.txt: stress likely - incompatibility with stricter C89/GNU89/ANSI-C standard, so C99 - (GNU99) is the baseline - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: rearrange for - readability (line-split allowedFailure and excludeCombos blocks - that have many combos inside) - -2021-09-30 Jim Klimov - - * .lgtm.yml: .lgtm.yml: drop redundant lines - * autogen.sh: autogen.sh: whitespace fix - * autogen.sh, configure.ac, scripts/systemd/Makefile.am: nut- - common.tmpfiles.in: fix systemd magic vs autoconf magic Follows up - from PR #1037 for issue #1030 to let the trick work for distcheck - and similar out-of-tree builds. - -2021-09-27 Jim Klimov - - * .lgtm.yml: Add .lgtm.yml to specify search for python template - files * Index *.py.in + scripts/python/app/NUT-Monitor.in * Do not - consider them templates to ignore * Also turn off the FIXME alerts, - NUT has a lot of those so far - * NEWS: NEWS: updated the python 2+3 compatibility notice - * Makefile.am: Makefile.am: call the generated gitlog2changelog.py - from correct path - * scripts/augeas/Makefile.am, tools/Makefile.am: Fix "dist" targets - to call templates gen-nutupsconf-aug.py.in and nut-snmpinfo.py.in - that they have - * scripts/python/module/PyNUT.py.in, - scripts/python/module/test_nutclient.py.in: - scripts/python/module/PyNUT.py.in: update syntax for Python 3 (also - ok for 2.7) - * .gitignore: GitIgnore possible leftovers from interrupted configure - script run - * scripts/Solaris/.gitignore, scripts/augeas/.gitignore, - scripts/python/app/.gitignore, scripts/python/module/.gitignore, - tools/.gitignore: GitIgnore generated python scripts - * scripts/augeas/Makefile.am: scripts/augeas/Makefile.am: comment - where gen-nutupsconf-aug.py comes from - * autogen.sh: autogen.sh: simplify call of gen-nutupsconf-aug.py.in - in the subdir - * autogen.sh: autogen.sh: use gen-nutupsconf-aug.py.in with the - $PYTHON interpreter - * ci_build.sh: ci_build.sh: pass $PYTHON envvar -t configure --with- - python=... arg - * configure.ac: configure.ac: split generation of "data" files vs. - "scripts" from *.in templates - * configure.ac, scripts/Solaris/Makefile.am, - scripts/Solaris/{precheck.py => precheck.py.in}, - scripts/augeas/Makefile.am, .../{gen-nutupsconf-aug.py => gen- - nutupsconf-aug.py.in}, scripts/python/Makefile.am, - scripts/python/app/{NUT-Monitor => NUT-Monitor.in}, - scripts/python/module/{PyNUT.py => PyNUT.py.in}, - .../module/{test_nutclient.py => test_nutclient.py.in}, - tools/Makefile.am, tools/{gitlog2changelog.py => - gitlog2changelog.py.in}, tools/{nut-snmpinfo.py => nut- - snmpinfo.py.in}: Update python scripts to be generated by configure - and using the detected PYTHON value - * configure.ac, m4/nut_check_python.m4: configure.ac: detect PYTHON, - PYTHON2, PYTHON3 implementations in the build environment - * autogen.sh: autogen.sh: find various python versions if not - specified by $PYTHON - * clients/nutclient.h: clients/nutclient.h: whitespace typo fix - * docs/developers.txt: docs/developers.txt: fix reference to Fosshost - to be an URL - * NEWS: NEWS: expect a few more milestones for 2.7.6 (or later) - release - * UPGRADING: UPGRADING: mention protocol changes due to new TRACKING - ability - * NEWS, UPGRADING: NEWS + UPGRADING: Warn about API changes due to - fightwarn - -2021-09-26 Mark Dietzer - - * drivers/apc-mib.c: Add active power and apparent power from APC - MIBs for single-phase UPS devices - -2021-09-25 Jim Klimov - - * docs/developers.txt, docs/nut.dict: docs/developers.txt: replace - references to defunct Travis CI with new NUT CI farm [#869] - * docs/nut-qa.txt, docs/nut.dict: docs/nut-qa.txt: replace references - to defunct Travis CI with new NUT CI farm [#869] - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: with customized - shellcheck dynamatrixAxesLabels, be sure to match both OS_FAMILY - and OS_DISTRO as a bundle - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: with - docs+distcheck, also test compliance with available Make - interpreters - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: with shellcheck, - also test available Make interpreters - * Makefile.am, configure.ac, include/Makefile.am: configure.ac + - {./,include/}Makefile.am: revise the recipe for - include/nut_version.h - * docs/nut.dict: docs/nut.dict: update dict - * ci_build.sh: ci_build.sh: call "$MAKE -j NUM" with a space, to - cater for make implems that require a separate argument token - -2021-09-23 Jim Klimov - - * m4/nut_func_getnameinfo_argtypes.m4: - m4/nut_func_getnameinfo_argtypes.m4: reorder the loop to first try - current X/Open definition of getnameinfo() - * configure.ac, m4/nut_check_headers_windows.m4, - m4/nut_func_getnameinfo_argtypes.m4: - m4/nut_func_getnameinfo_argtypes.m4 - m4/nut_check_headers_windows.m4: lift recipes from cURL to detect - NUT_FUNC_GETNAMEINFO_ARGTYPES - -2021-09-22 Jim Klimov - - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_SIGN_COMPARE and HAVE_PRAGMA_GCC - _DIAGNOSTIC_IGNORED_TAUTOLOGICAL_UNSIGNED_ZERO_COMPARE Sometimes - library/system provided types are beyond our control and vary from - OS to OS... - -2021-09-23 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix whitespace style - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: fix - whitespace style - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - whitespace style - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: fix - whitespace style - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: fix - whitespace style - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: fix whitespace style - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: fix - whitespace style - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: fix whitespace style - * tools/nut-scanner/nutscan-ip.c, tools/nut-scanner/nutscan-ip.h: - tools/nut-scanner/nutscan-ip.c: fix whitespace style - * tools/nut-scanner/nutscan-init.c: tools/nut-scanner/nutscan-init.c: - fix whitespace style - * tools/nut-scanner/nutscan-device.c, tools/nut-scanner/nutscan- - device.h: tools/nut-scanner/nutscan-device.[c,h]: fix whitespace - style - * tools/nut-scanner/nutscan-display.c: tools/nut-scanner/nutscan- - display.c: fix whitespace style - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - fix whitespace style - * tools/nut-scanner/nut-scan.h: tools/nut-scanner/nut-scan.h: fix - whitespace style - -2021-09-22 Jim Klimov - - * server/sstate.c: server/sstate.c: whitespace fix - -2021-09-23 Jim Klimov - - * ci_build.sh: ci_build.sh: warn that a build without BUILD_TYPE - ignores BUILD_WARNOPT and BUILD_WARNFATAL settings - -2021-09-22 Jim Klimov - - * tests/Makefile.am: tests/Makefile.am: comment a TODO for - referencing helpers built in other dirs - -2021-09-22 Yifeng Li - - * docs/nut.dict: nut.dict: add my name "Yifeng". - * docs/nut.dict: nut.dict: add technical terms for UPS2000 man page. - * docs/man/Makefile.am, docs/man/huawei-ups2000.txt: huawei-ups2000: - add documentation. - * drivers/Makefile.am, drivers/huawei-ups2000.c: huawei-ups2000: - Modbus driver for Huawei UPS2000 (1kVA-3kVA) This commit - implements a Modbus driver for Huawei UPS2000 (1kVA-3kVA) series - UPS units using the USB or RS-232 interface (USB is only support on - Linux 5.12+ via the "xr_serial" kernel module), with support for - power and battery status monitoring, alarm reporting, RW variables, - and instant commands for battery selftest, buzzer, shutdown, - restart, and bypass control. - -2021-09-23 Jim Klimov - - * drivers/generic_modbus.c: drivers/generic_modbus.c: fix assignments - of sigar[].type to enum - * drivers/generic_modbus.c: drivers/generic_modbus.{c,h}: fix - ser_parity to char, and sanity-check before dereferencing - * drivers/generic_modbus.c: drivers/generic_modbus.c: fix switch{} - warnings - * drivers/generic_modbus.c: drivers/generic_modbus.c: fix suseconds_t - for time ranges - * drivers/generic_modbus.c: drivers/generic_modbus.c: fix warnings - with declarations - * drivers/generic_modbus.c, drivers/generic_modbus.h: - drivers/generic_modbus.{c,h}: fix whitespace style - * NEWS: NEWS: added tripplite ability to manage outlet groups for - NUT-2.7.5 - -2021-09-23 Jim Klimov - - * docs/nut.dict: Update nut.dict - -2021-09-22 Jim Klimov - - * docs/nut.dict: docs/nut.dict: updated for recent NEWS and UPGRADING - * UPGRADING: UPGRADING: clarified upsdebugx() `[D#]` prefix impact - * UPGRADING: UPGRADING: stress that new Qx protocol drivers should be - developed in common nutdrv_qx framework - * UPGRADING: UPGRADING: Cut-off features that did land into master - branch to become the 2.7.5 release, vs. big chunks planned now for - later releases - * NEWS: NEWS: update reference to ChangeLog file vs. Git history - * NEWS: NEWS: refactored upsdebugx() and friends as macros for - NUT-2.7.5 - * NEWS: NEWS: HCL updated with Ippon Back Comfo Pro II 650/850/1050 - (USB) for NUT-2.7.5 - * NEWS: NEWS: added and clarified many battery.* protocol variables - for NUT-2.7.5 - * NEWS: NEWS: netxml-ups battery info fixed for NUT-2.7.5 - * NEWS: NEWS: HCL updated with Opti-UPS PS1500E (USB) for NUT-2.7.5 - * NEWS: NEWS: referenced Date and Time representations preferred for - NUT-2.7.5 - * NEWS: NEWS: added generic_modbus driver for NUT-2.7.5 - * NEWS: NEWS: updated systemd integration for NUT-2.7.5 - * NEWS: NEWS: added autoconf-2.70 update for NUT-2.7.5 - * NEWS: NEWS: added portable Makefile effort for NUT-2.7.5 - * NEWS: NEWS: added incremental "make spellcheck" support for - NUT-2.7.5 - * NEWS: NEWS: Cut-off features that did land into master branch to - become the 2.7.5 release, vs. big chunks planned now for later - releases - * NEWS: NEWS: added DISABLE_WEAK_SSL for NUT-2.7.5 - -2021-06-30 Jim Klimov - - * NEWS: NEWS: mention `experimental.*` namespace - * NEWS: NEWS: mention that master/slave deprecation did not impact - protocol currently - * NEWS: NEWS: mark libusb-1.0 support in main branch as "expected" - currently - -2021-05-24 Jim Klimov - - * NEWS: NEWS: added powerpanel driver support for CyberPower - OR1500LCDRTXL2U in NUT-2.7.5 - * NEWS: NEWS: added TcpClient C++ testing mock for NUT-2.7.5 - * NEWS: NEWS: improved USB HID parsing for NUT-2.7.5 - * NEWS: NEWS: improved USB device matching for NUT-2.7.5 - * NEWS: NEWS: microsol-apc added for NUT-2.7.5 - -2021-04-23 Jim Klimov - - * NEWS, docs/nut.dict: docs/nut.dict + NEWS: fix both to pass - spellcheck - -2021-04-21 Jim Klimov - - * NEWS: NEWS: Add 2.7.5 support for Tripplite AVR750U - -2021-04-20 Jim Klimov - - * NEWS: NEWS: List more achievements of 2.7.5 - -2020-01-20 Jim Klimov - - * NEWS: NEWS: described nut-driver-enumerator introduction - -2019-03-15 Arnaud Quette - - * NEWS: Add entry for openssl-1.1.0 support - -2019-03-13 Arnaud Quette - - * docs/nut.dict: Update spelling dictionary - -2019-02-28 Arnaud Quette - - * NEWS: Update NEWS for next release - -2018-02-28 Arnaud Quette - - * docs/nut.dict: Add Avocent to the spell check list - -2018-02-27 Arnaud Quette - - * NEWS: Update NEWS for Emerson Avocent PM3000 PDU - -2017-11-17 Arnaud Quette - - * NEWS: Update NEWS for next release - * NEWS: Update NEWS for next release - -2017-10-08 Charles Lepple - - * NEWS, UPGRADING, docs/nut.dict: Spell-check release notes - * NEWS, UPGRADING: Update NEWS and UPGRADING for next release - Current as of master @ b8df06b761, assuming libusb-1.0+0.1 gets - merged - -2021-09-22 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: cosmetically - update OmniOS notes - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: comment a - TODO for NAT setup desired - * docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc-setup.txt: comment why - LXC+LIBVIRT - * docs/ci-farm-lxc-setup.txt, docs/config-prereqs.txt, docs/user- - manual.txt: docs/config-prereq.txt + ci-farm-lxc-setup.txt + user- - manual.txt: fix markup so new docs can be chapters in user- - manual.html - -2021-09-21 Jim Klimov - - * scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in: - scripts/Solaris/preremove.in + postinstall.in: configure sanity - checker likes datarootdir more than datadir - * ci_build.sh: ci_build.sh: fix reported BUILD_TYPE for default- - spellcheck builds - -2021-09-21 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am: try to avoid "warning: ignoring - prerequisites on suffix rule definition" - * docs/Makefile.am: docs/Makefile.am: when calling a sub-make for - *-spellchecked rule, make sure to use the - "$(abs_top_builddir)/docs/Makefile" (the original "top_builddir" - might come from outer caller in another subdir) - * docs/Makefile.am: docs/Makefile.am: move reading of the - spellchecked file out of the pipe so errors finding one are exposed - to build result - * conf/Makefile.am, data/Makefile.am, docs/Makefile.am, - docs/man/Makefile.am: docs/Makefile.am: conjure a portable - *-spellchecked rule that works for non-GNU make tools - * docs/Makefile.am: docs/Makefile.am: comment about a non-portable - GNU Make feature use - * docs/Makefile.am: docs/Makefile.am: for no-op *-spellchecked rule, - report SKIP-ASPELL with the target (touchfile) name to avoid - source-text determination - * docs/Makefile.am: docs/Makefile.am: be sure to run the quiet sub- - make using docs/Makefile.am to use its target definitions - * docs/Makefile.am: docs/Makefile.am: if SPELLCHECK_ENV_DEBUG, report - which file we would spellcheck (quiet sub-make might do and report - nothing for an already checked text) - * docs/Makefile.am: docs/Makefile.am: consider "-spellchecked" among - SUFFIXes - * docs/Makefile.am: docs/Makefile.am: comment about a non-portable - GNU Make feature use - -2021-09-21 Jim Klimov - - * .gitignore, Makefile.am, conf/Makefile.am, data/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - lib/Makefile.am, scripts/augeas/Makefile.am, - scripts/ufw/Makefile.am, tools/nut-scanner/Makefile.am: Makefiles: - change from *.spellchecked suffix pattern to *-spellchecked which - is easier to plug into POSIX make rulesets - * Makefile.am, conf/Makefile.am, configure.ac, data/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - lib/Makefile.am, scripts/Makefile.am, scripts/augeas/Makefile.am, - scripts/ufw/Makefile.am, tools/nut-scanner/Makefile.am: Makefiles + - configure.ac: add a way to "make clean" away the *.spellchecked - touch-files - * .gitignore, conf/Makefile.am, data/Makefile.am, docs/Makefile.am, - docs/man/Makefile.am: Makefiles: mark every spellchecked text file - with a touch-file to not re-test it again needlessly (at a cost of - some noise for some implementations of make) - -2021-09-21 Jim Klimov - - * drivers/legrand-hid.c: Update legrand-hid.c Address build warnings - from CI - -2021-09-21 Jim Klimov - - * scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in: - scripts/Solaris/preremove.in + postinstall.in: configure sanity - checker likes datarootdir more than datadir - * ci_build.sh: ci_build.sh: fix reported BUILD_TYPE for default- - spellcheck builds - -2021-09-21 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am: try to avoid "warning: ignoring - prerequisites on suffix rule definition" - * docs/Makefile.am: docs/Makefile.am: when calling a sub-make for - *-spellchecked rule, make sure to use the - "$(abs_top_builddir)/docs/Makefile" (the original "top_builddir" - might come from outer caller in another subdir) - * docs/Makefile.am: docs/Makefile.am: move reading of the - spellchecked file out of the pipe so errors finding one are exposed - to build result - * conf/Makefile.am, data/Makefile.am, docs/Makefile.am, - docs/man/Makefile.am: docs/Makefile.am: conjure a portable - *-spellchecked rule that works for non-GNU make tools - * docs/Makefile.am: docs/Makefile.am: comment about a non-portable - GNU Make feature use - * docs/Makefile.am: docs/Makefile.am: for no-op *-spellchecked rule, - report SKIP-ASPELL with the target (touchfile) name to avoid - source-text determination - * docs/Makefile.am: docs/Makefile.am: be sure to run the quiet sub- - make using docs/Makefile.am to use its target definitions - * docs/Makefile.am: docs/Makefile.am: if SPELLCHECK_ENV_DEBUG, report - which file we would spellcheck (quiet sub-make might do and report - nothing for an already checked text) - * docs/Makefile.am: docs/Makefile.am: consider "-spellchecked" among - SUFFIXes - * docs/Makefile.am: docs/Makefile.am: comment about a non-portable - GNU Make feature use - -2021-09-21 Jim Klimov - - * .gitignore, Makefile.am, conf/Makefile.am, data/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - lib/Makefile.am, scripts/augeas/Makefile.am, - scripts/ufw/Makefile.am, tools/nut-scanner/Makefile.am: Makefiles: - change from *.spellchecked suffix pattern to *-spellchecked which - is easier to plug into POSIX make rulesets - * Makefile.am, conf/Makefile.am, configure.ac, data/Makefile.am, - docs/Makefile.am, docs/cables/Makefile.am, docs/man/Makefile.am, - lib/Makefile.am, scripts/Makefile.am, scripts/augeas/Makefile.am, - scripts/ufw/Makefile.am, tools/nut-scanner/Makefile.am: Makefiles + - configure.ac: add a way to "make clean" away the *.spellchecked - touch-files - * .gitignore, conf/Makefile.am, data/Makefile.am, docs/Makefile.am, - docs/man/Makefile.am: Makefiles: mark every spellchecked text file - with a touch-file to not re-test it again needlessly (at a cost of - some noise for some implementations of make) - * docs/nut.dict: docs/nut.dict: update for recent changes - * docs/man/apcsmart.txt, docs/man/generic_modbus.txt: - docs/man/apcsmart.txt: fix an indented block - * docs/man/apcsmart.txt, docs/man/generic_modbus.txt: - docs/man/generic_modbus.txt + apcsmart.txt: drop "[source, conf]" - decorators for sample configs and ASCII-art, pygmentize needs much - setup to render that - * docs/config-prereqs.txt: docs/config-prereqs.txt: add "pygmentize" - packages to the list, for HTML rendering of "source" blocks - * docs/man/generic_modbus.txt: docs/man/generic_modbus.txt: import a - note from discussion at NUT issue #1056 about the data-path and - generic use for the modbus driver - * docs/man/generic_modbus.txt: docs/man/generic_modbus.txt: line-wrap - long paragraphs - * tests/nutlogtest.c: tests/nutlogtest.c: fix more fallout from #675 - * configure.ac, m4/nut_check_libnss.m4: m4/nut_check_libnss.m4: fix - deterministic 32/64 bit builds (on illumos/solaris family of OSes - at least) - * ci_build.sh: ci_build.sh: tweak PKG_CONFIG_PATH setting for 64-bit - dirs on illumos/solaris and related operating systems (otherwise - pkg-config reports default data, can be for 32-bit libs, on 64-bit - hosts) - * ci_build.sh: ci_build.sh: report detected CI_OS_NAME if we had to - guess - * ci_build.sh: ci_build.sh: for developer workstation use, detect - CI_OS_NAME via uname as a fallback (if CI vars are not provided) - * ci_build.sh: ci_build.sh: recognize CI_OS_NAME from case- - insensitive match of "$OS_FAMILY-$OS_DISTRO", and recognize - solaris+sunos - * include/common.h: Fix some fallout from PR #685 * The - parenthesized "(label)" in debug macros is a safer expansion than - the original "label" * Avoid the dangling "args..." that may be - not-specified by caller (strict-C99 compat) - * docs/Makefile.am: docs/Makefile.am: do not spellcheck ../INSTALL - which is generated - * ci_build.sh: ci_build.sh: run the first spellcheck really quietly - * docs/Makefile.am, docs/nut.dict: docs/Makefile.am + docs/nut.dict: - add more texts from base dir to spellcheck them too - * docs/Makefile.am: docs/Makefile.am: report the directory relative - to which spellchecked text sources failed - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: use ci_build.sh to - spellcheck with a more user-friendly output - * ci_build.sh: ci_build.sh: extend the BUILD_TYPE=default-spellcheck - to do a quiet round first, and only report details about failed - files if needed - * ci_build.sh: ci_build.sh: fallback BUILD_WARNFATAL=true/false - handling; comment values for BUILD_WARNOPT - -2021-09-20 Jim Klimov - - * docs/nut.dict: docs/nut.dict: update for recently added docs and - merged PRs, and update sorting - * docs/config-prereqs.txt: config-prereqs.txt: fix markup to become - asciidoc - -2021-09-20 Jim Klimov - - * docs/Makefile.am, docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc- - setup.txt + docs/Makefile.am: update some notes and ability to - build the new doc - -2021-09-20 Jim Klimov - - * docs/ci-farm-lxc-setup.txt: ci-farm-lxc-setup.txt: update with - notes for "chroot apt-get" tricks - * docs/ci-farm-lxc-setup.txt: ci-farm-lxc-setup.txt: fix markup to - become asciidoc - -2021-09-21 Jim Klimov - - * docs/man/generic_modbus.txt: docs/man/generic_modbus.txt: some - whitespace issues - * m4/nut_type_socklen_t.m4: [NUT issue #1053] - m4/nut_type_socklen_t.m4: convert one remaining - AC_TRY_COMPILE(H,M,S) into modern - AC_COMPILE_IFELSE(AC_LANG_PROGRAM(H,M), S) - * configure.ac: [NUT issue #1053] configure.ac: apply recommendations - of "autoupdate" and warnings from "autoconf" for autotools-2.70 - -2021-09-20 Jim Klimov - - * docs/config-prereqs.txt: config-prereqs.txt: fix markup to become - asciidoc - * tests/.gitignore: GitIgnore test log and trace for "nutlogtest" - -2021-09-20 Jim Klimov - - * docs/Makefile.am, docs/ci-farm-lxc-setup.txt: docs/ci-farm-lxc- - setup.txt + docs/Makefile.am: update some notes and ability to - build the new doc - -2021-09-20 Jim Klimov - - * docs/nut.dict: docs/nut.dict: ordering and typo fixes in the - dictionary :) - * docs/ci-farm-lxc-setup.txt: ci-farm-lxc-setup.txt: update with - notes for "chroot apt-get" tricks - -2021-09-19 Jim Klimov - - * docs/nut-names.txt: docs/nut-names.txt: refactor the standalone - Time and Date format chapter - -2021-09-20 Jim Klimov - - * docs/ci-farm-lxc-setup.txt: ci-farm-lxc-setup.txt: fix markup to - become asciidoc - -2021-09-19 Jim Klimov - - * docs/ci-farm-lxc-setup.txt: Introduce docs/ci-farm-lxc-setup.txt - with setup notes - * docs/ci-farm-lxc-setup.txt: Introduce docs/ci-farm-lxc-setup.txt - with setup notes - -2021-09-17 Jim Klimov - - * Jenkinsfile-dynamatrix: Update Jenkinsfile-dynamatrix Revise - pattern for Makefiles and similar - * Jenkinsfile-dynamatrix: Update Jenkinsfile-dynamatrix Do not apply - filename regex filtering to main branch builds so they can always - serve as a reference - * Jenkinsfile-dynamatrix: Update Jenkinsfile-dynamatrix Remove - 'default' target as it brings little value: default-tgt:distcheck- - valgrind tests the distcheck part, and default-nodoc tests the main - recipe with default settings and no distcheck (both skip/disable - docs). - -2021-09-17 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: modularize the way - to constrain build scenarios not relevant to the changed files - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: find a way to - constrain build scenarios not relevant to the changed files (e.g. - no big rebuilds for a docs-only change) - -2021-09-16 Jim Klimov - - * docs/nut.dict: Update nut.dict - * docs/nut.dict: Update nut.dict - * docs/nut-names.txt: Update nut-names.txt Clarified an ambiguity - typo about time format, added examples for data with time zones - -2021-09-16 dtsecon - - * drivers/generic_modbus.c: change ulon to uint_32 - * drivers/generic_modbus.h: fix forward declarations of enum - occurances - -2021-09-15 Jim Klimov - - * docs/nut.dict: Update nut.dict Update for PR #1076 - * docs/nut.dict: Update nut.dict Add "FTTx" for PR #1061 - * tests/getvaluetest.c: Update getvaluetest.c Include NUT "common.h" - for NUT_UNUSED_VARIABLE among other things - * tests/getvaluetest.c: getvaluetest.c: Fixing a NUT_UNUSED_VARIABLE - -2021-09-15 Jim Klimov - - * clients/upsclient.c: upsclient.c: log upscli_init() as a no-op in - case of builds without SSL - * clients/upsclient.c: upsclient.c: add NUT_UNUSED_VARIABLE for the - stub implem in case of builds without SSL - * server/netssl.c: netssl.c: add NUT_UNUSED_VARIABLE for the stub - implem in case of builds without SSL - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: limit default- - withdoc(:man) scenarios to not iterate compiler variants, only OSes - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add a comment with - overview of the dynacfgPipeline.slowBuild goals and trade-offs - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add a groovy - shebang for highlighters - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: rephrase some - comments and filter bundle names - -2021-09-14 dtsecon - - * docs/nut.dict: update nut.dict - * docs/nut.dict: update nut.dic - -2021-09-13 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: only run and - withdocs:man on setups that did not yet run a witdocs:all (and are - declared capable of man) - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: remove distcheck- - light (sort of pointless WRT other scenarios) and withdocs:man - (redundant) from "various builds" - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: comment that - "default-all-errors" builds do not include docs and distcheck - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add "default- - alldrv:no-distcheck" variant - * ci_build.sh: ci_build.sh: add "default-alldrv:no-distcheck" variant - * ci_build.sh: ci_build.sh: comment "default-all-errors" builds with - varying SSL implementations and refactor into a loop and case - Should be helftul for https://github.com/networkupstools/jenkins- - dynamatrix/issues/4 eventually - * ci_build.sh: ci_build.sh: comment the case BUILD_TYPE to maintain - easier - -2021-09-12 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: reduce the amount - of build combos by careful use of dynamatrixAxesCommonEnv - -2021-09-11 Jim Klimov - - * tests/cpputest.cpp: tests/cpputest.cpp: add an optional verbose - mode to list executed test case names - * configure.ac: ci_build.sh: actively check that cppunit is not just - installed, but is usable with current compiler toolkit (we saw - linking issues and runtime segfaults with it) - * ci_build.sh: ci_build.sh: update a comment for OpenIndiana gcc-4.x - vs. libgd - * ci_build.sh: ci_build.sh: skip CGI builds for openindiana with - gcc-4.x (or older, preemptively) for now - * ci_build.sh: ci_build.sh: update constraints for libgd/cgi builds - on freebsd - * ci_build.sh: ci_build.sh: fix --disable-cppunit (not --without- - cppunit) - -2021-09-11 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: constrain autotools - builds to "*fightwarn*" branches and PRs - -2021-06-14 Doug Nazar - - * server/netssl.c: server: Add warning if DISABLE_WEAK_SSL is not - enabled. - -2021-06-12 Jim Klimov - - * server/netssl.c: Update netssl.c Comment the default value of - `disable_weak_ssl` (currently not getting in our way, but can - change later) - * server/netssl.c: Update netssl.c Slight pedantic fix for use of - NSS VMAJOR/VMINOR macros - * server/conf.c: Update conf.c Comment parse_boolean() and add - support for "0" and "1" string values there, for good measure - * conf/upsd.conf.sample: Update upsd.conf.sample Mention that - DISABLE_WEAK_SSL is "currently" disabled by default, hinting that - it can become enabled after some releases. - * docs/nut.dict: Update nut.dict Add "TLSv" support in - spellchecker - -2021-06-11 Doug Nazar - - * conf/upsd.conf.sample, server/conf.c, server/netssl.c, - server/netssl.h: server: Add option to disable weak SSL - protocols/ciphers. - -2021-09-01 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c, drivers/powerware-mib.c, - drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: Add a generic - function to convert date (#1078) This provides conversion from US - date (mm/dd/yyyy) to ISO Calendar date (yyyy-mm-dd). Also adapt the - function callback mechanism to make it more generic, and only char* - to char* reformating, beside from the int to char* value lookup. - Co-authored-by: Jim Klimov - -2021-08-03 Jim Klimov - - * clients/nutclient.h, clients/nutclientmem.cpp, - clients/nutclientmem.h: clients/nutclient.h + nutclientmem.h/.cpp: - add NUT_UNUSED_VARIABLE() where needed - * drivers/libshut.h: drivers/libshut.h: define the Device field - recently added to USBDevice_t - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: initialize the recently - added USBDevice_t Device field - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - fix the switch-case fallthrough that should not be (the case of "s" - is handled lower in the routine, so instant return is not logical) - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - complete the item_t initializers - * drivers/nutdrv_qx_masterguard.c: drivers/nutdrv_qx_masterguard.c: - be explicit about NUT_UNUSED_VARIABLEs - -2021-07-20 Jim Klimov - - * common/common.c: common/common.c: avoid C++ style comments - -2021-05-25 Jim Klimov - - * docs/images/ci/fosshost.org_Host_Light_309px.png, - docs/images/ci/fosshost.org_Host_Light_38px.png: docs/image/ci: add - more Fosshost logos tuned to be readable at smaller height - -2021-04-26 Jim Klimov - - * docs/man/dummy-ups.txt: dummy-ups.txt: mention the DDL and nut-ddl- - dump.sh - -2021-08-27 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: note caveats - about installing cppunit and gcc-4.4.4 on OpenIndiana - -2021-08-07 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: suggest - installing valgrind where available - -2021-08-04 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: suggest - installing source-highlight where available - -2021-08-03 Jim Klimov - - * docs/nut.dict: docs/config-prereqs.txt: list prerequisites for at - least a minimal build in OmniOS CE - update spellchecker - * docs/config-prereqs.txt: docs/config-prereqs.txt: list - prerequisites for at least a minimal build in OmniOS CE - * docs/config-prereqs.txt: docs/config-prereqs.txt: document libtool - as a prerequisite - -2021-08-02 Jim Klimov - - * docs/config-prereqs.txt: docs/config-prereqs.txt: revise - installation of supported shell interpreters - * docs/config-prereqs.txt: docs/config-prereqs.txt: add en-aspell for - freebsd profile - -2021-08-01 Jim Klimov - - * docs/Makefile.am, docs/config-prereqs.txt, docs/nut.dict, - docs/packager-guide.txt, docs/user-manual.txt: Introduce - docs/config-prereqs.txt and spellcheck for it - -2021-08-11 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: revise use of - requiredNodelabels/excludedNodelabels, and reset them to surely - delete any cached values in the reusable dynamatrix object - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: keep docs builds to - the standard set of builders (nut-builder not doc-builder) - -2021-08-10 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: use a custom-named - dynacfgPipeline.stashnameSrc - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: neuter the example - buildCommit - * Jenkinsfile-dynamatrix: Revert "Jenkinsfile-dynamatrix: list the - custom commits built on new NUT CI for initial history" This - reverts commit c9b5c870ac6834f16ebecb5334ac178de2d03d3d. Have that - list in history but do not clutter live version. - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: list the custom - commits built on new NUT CI for initial history - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: revise docs-all - build spec - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: modernize example - for custom replayed builds - -2021-08-04 Jim Klimov - - * ci_build.sh: ci_build.sh: double-quote path var expansions - * ci_build.sh: ci_build.sh: detect build agent capabilities for - Jenkins builds with NUT dynaMatrix config - * ci_build.sh: ci_build.sh: abstract from TRAVIS_OS_NAME to - CI_OS_NAME and set one for Jenkins builds with NUT dynaMatrix - config - -2021-08-03 Jim Klimov - - * configure.ac: configure.ac: hack around libtool when building with - custom bitness - -2021-08-03 Jim Klimov - - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: define autotools- - based distcheck for NUT - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: define autotools- - based distcheck for NUT - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: explicitly exclude - openindiana from build scenario with all docs types - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: typo fix - (require*d*Nodelabels after upstream refactor) - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: do not pass - "-Wno-unknown-warning" to GCC - * m4/nut_check_libavahi.m4: m4/nut_check_libavahi.m4: PoC enable - avahi build in FreeBSD - rearrange - -2021-08-02 Jim Klimov - - * Jenkinsfile-dynamatrix: Revert "Jenkinsfile-dynamatrix: try to - synchronize cloning of dsbcClone+stageNameClone" This reverts - commit 2d477fac1c67f7a8477c550f1e5a638e533ab2ad : "synchronized" is - not supported for Jenkins Groovy CPS - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: try to synchronize - cloning of dsbcClone+stageNameClone - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: define - dsbcClone+stageNameClone closer to start of closure to get the - correct copy ASAP - * Jenkinsfile-dynamatrix: Jenkinsfile-dynamatrix: add - SERVICE_FRAMEWORK="selftest" to shellcheck-nde (equivalent) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in: check for not-supported (t)csh interpreter - * Makefile.am: Makefile.am: add SERVICE_FRAMEWORK="selftest" to - shellcheck-nde - * Makefile.am: Makefile.am: add shellcheck-nde - * Makefile.am: Makefile.am: fix shellcheck (not all OSes serve - /bin/bash at that pathname) - -2021-07-31 Jim Klimov - - * m4/nut_check_libavahi.m4: m4/nut_check_libavahi.m4: PoC enable - avahi build in FreeBSD - * m4/nut_check_libneon.m4: m4/nut_check_libneon.m4: FreeBSD installs - stuff under /usr/local - -2021-07-28 Jim Klimov - - * ci_build.sh: ci_build.sh: report CONFIGURING NUT in a way - friendlier for copy-paste - * configure.ac, m4/nut_compiler_family.m4: configure.ac + - m4/nut_compiler_family.m4: introduce NUT_COMPILER_FAMILY_FLAGS to - propagate -Wno-unknown-warning(-opton) before any pkgconfig - * docs/man/Makefile.am: docs/man/Makefile.am: Fix check-man-txt to - also run from separate build dirs - * ci_build.sh: ci_build.sh: do not make TOO MUCH noise when dumping - config.log - * ci_build.sh: ci_build.sh: set DISTCHECK_FLAGS in "default-tgt:"* - handling too - -2021-07-27 Jim Klimov - - * ci_build.sh: ci_build.sh: introduce BUILD_TYPE=default-withdoc:man - (and allow it) - * .gitignore: GitIgnore CI-generated log files - * ci_build.sh: ci_build.sh: introduce BUILD_TYPE=default-withdoc:man - * ci_build.sh: ci_build.sh: make sure DISTCHECK_FLAGS is single-line - * configure.ac: configure.ac: tell compiler to not choke on unknown - options - -2021-07-26 Jim Klimov - - * ci_build.sh: ci_build.sh: parameterize $MAKE - * ci_build.sh: ci_build.sh: try to avoid problems with multi-token - CFLAGS etc. when passed from "${CONFIG_OPTS[@]}" array into - DISTCHECK_CONFIGURE_FLAGS string (envvar) - refactor - -2021-07-22 Jim Klimov - - * ci_build.sh: ci_build.sh: try to avoid problems with multi-token - CFLAGS etc. when passed from "${CONFIG_OPTS[@]}" array into - DISTCHECK_CONFIGURE_FLAGS string (envvar) - -2021-07-20 Jim Klimov - - * configure.ac: configure.ac: detect if i2c library is usable, and - cancel i2c driver build if it is not - -2021-06-26 Jim Klimov - - * Makefile.am, configure.ac: configure.ac: follow autotools doc - recommendation to automatically update the libtool script if it - becomes out-of-date - * configure.ac: configure.ac: AC_PROG_LIBTOOL is noisily deprecated - since autotools-2.70; LT_INIT is the replacement - * m4/nut_arg_with.m4: m4/nut_arg_with.m4: AC_HELP_STRING is noisily - deprecated since autotools-2.70; AS_HELP_STRING is available since - 2.59 and we use it already a lot elsewhere - -2021-04-26 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am: fix truncated comment - Text originates from SVN-Git migration in - e8e716e0598158f705e060c72f8f4b0444fbcd0f - -2021-08-23 Arnaud Quette - - * docs/nut-names.txt: Complete the date standardization proposal for - time - -2021-08-20 Arnaud Quette - - * docs/nut-names.txt: Propose to express dates using ISO 8601 when - possible - -2021-08-19 Stephan Blecher <_github@blecher.at> - - * drivers/legrand-hid.c: issue-616: legrand 600 fix input voltage - -2021-08-18 root - - * scripts/upower/95-upower-hid.rules: legrand hid rules update - -2021-08-12 Arnaud Quette - - * drivers/mge-xml.c: netxml-ups: fix for erroneous battery info - (MGEXML/0.30) (#1069) Some battery related information were - wrongly using output information - * docs/nut-names.txt: RFC: clarify and complete battery dates (#1063) - The existing battery.date means the installation or last - replacement date, as it seems to be implemented by various drivers. - Add an additional battery.date.maintenance for the next replacement - or maintenance date - * docs/nut-names.txt: Extend battery information collection (#1062) - * RFC: Add battery.capacity.nominal * RFC: add Li-ion battery - cell information * RFC: Add battery.status * Clarify Li-ion - battery cell information Mention that min/max cell voltage and - temperature are observed values, not settings - * docs/nut-names.txt: RFC: add new variable battery.packs.external - (#1060) * RFC: add new variable battery.packs.external * Improve - wording, as per Charles Lepple feedback * Improve example values, - which can or not be zero-padded - -2021-08-01 Jim Klimov - - * Jenkinsfile-dynamatrix: Introduce Jenkinsfile-dynamatrix - -2021-07-28 Jim Klimov - - * data/driver.list.in: data/driver.list.in: list Ippon Back Comfo Pro - II 650/850/1050 as supported by blazer_usb [#1035] - -2021-07-21 dtsecon - - * drivers/generic_modbus.c, drivers/generic_modbus.h: shutdown - configurable repetition with increasing time interval added - -2021-07-19 dtsecon - - * configure.ac, docs/Makefile.am, docs/man/Makefile.am: fix man pages - broken build process - -2021-07-16 dtsecon - - * docs/man/generic_modbus.txt: improve man page - * docs/man/Makefile.am, docs/man/generic_modbus.txt: man page text - created, added in build procedure - -2021-07-08 dogtopus - - * docs/man/genericups.txt, drivers/genericups.h: genericups: Change - type 23 to be active low. Seems that typical RS232 transceivers - inverts the signal automatically anyway, so there's no point of - making them active high by default. - -2021-07-06 dogtopus - - * docs/man/genericups.txt: docs: Document the special line NULL in - genericups documentation. - * drivers/genericups.c: genericups: Bump version number. - * docs/contact-closure.txt, docs/man/genericups.txt, - drivers/genericups.c, drivers/genericups.h: genericups: Add support - for FTTx battery backup. A lot of those "UPSes" use a 4-wire open- - drain-like contact closure signaling (dubbed "telemetry interface") - to report their status (see https://dl4jz3rbrsfum.cloudfront.net/do - cuments/CyberPower_UM_CBN50U48A-1.pdf for example). They are sorta - compatible with APC 940-0020B/C cables in terms of pin assignments, - with extra signals for replace battery and battery missing and lack - of shutdown signal. This patch adds a sample device type (23) for - this kind of device. It also adds support for the extra signal - types (RB for replace battery and BYPASS for disconnected battery) - used by these devices, as well as an option to unassign/disable an - unused signal in the config file by setting it to NULL. Note that - there is no standard cable for this kind of device, so type 23 - assumes RS232 control signaling and RTS as the voltage source for - input pin pullups. - -2021-07-06 dtsecon - - * drivers/generic_modbus.c, drivers/generic_modbus.h: fix serial - options in modbus_open - * drivers/generic_modbus.c: fix 'for' loop initial declarations for - compatibility out of C99 mode - * drivers/Makefile.am: generic_modbus.h added to Makefile.am - * drivers/generic_modbus.c: just one space less - -2021-06-30 Nick Briggs - - * tests/.gitignore, tests/Makefile.am, tests/getvaluetest.c: Create - test harness for GetValue() report value extraction (usbhid-ups) - Adds source and updates Makefile.am to build tests/getvaluetest, a - test harness for the report value extraction function GetValue() in - hidparser.c. getvaluetest has some built-in test cases, which are - easily extensible, but also accepts a single test specification on - the command line to allow for easy experimentation. getvaluetest - -h for usage - -2021-06-30 Jim Klimov - - * scripts/systemd/nut-driver-enumerator.service.in, - scripts/systemd/nut-driver@.service.in, scripts/systemd/nut- - monitor.service.in, scripts/systemd/nut-server.service.in: - systemd/*.service(.in): update units with SyslogIdentifier=%N The - log identifier should hopefully help make more sense of syslog or - journal entries where helper shell script traces might end up. - -2021-06-29 Dimitris Economou - - * drivers/generic_modbus.c: minor changes to comply with nut - development guidelines - * drivers/generic_modbus.c: variable ctx changed to mbctx - -2021-06-25 dtsecon - - * drivers/generic_modbus.c: removing unnecessary code - * drivers/generic_modbus.c: time_ellapsed fixed - -2021-06-25 abratchik - - * drivers/Makefile.am, drivers/arduino-hid.c, drivers/arduino-hid.h, - drivers/usbhid-ups.c, scripts/upower/95-upower-hid.rules: Arduino - UPS Support - -2021-06-12 abratchik - - * docs/FAQ.txt, drivers/libusb.c, drivers/libusb.h, drivers/powervar- - hid.c: HID-compliant UPS support with interface gt than 0 - -2021-06-24 dtsecon - - * drivers/generic_modbus.c: minor changes and tidying up - * drivers/generic_modbus.c: remove unnecessary stuff - * drivers/generic_modbus.c, drivers/generic_modbus.h: initial commit - of generic_modbus beta version source files - * drivers/Makefile.am: generic_modbus sources add in buidling - procedure - -2021-06-22 Tom Fifield - - * data/driver.list.in: Opti-UPS PS1500E is supported by blazer_usb - Opti-UPS PS1500E connects via serial over USB, and is supported by - the blazer_usb driver. This patch updates the compatibility list. - Manufacturer link: https://www.opti- - ups.com/index.asp?SCID=SC20060001 Device is automatically detected - by nut-scanner > [nutdev1] > driver = "blazer_usb" > - port = "auto" > vendorid = "0665" > productid = "5161" - > bus = "001" OB status is correctly detected, and other - correct values are displayed when queried: battery.charge: 100 - battery.voltage: 27.60 battery.voltage.high: 26.00 - battery.voltage.low: 20.80 battery.voltage.nominal: 24.0 - device.mfr: device.model: 1500VA device.type: ups driver.name: - blazer_usb driver.parameter.bus: 001 driver.parameter.pollinterval: - 2 driver.parameter.port: auto driver.parameter.productid: 5161 - driver.parameter.synchronous: no driver.parameter.vendorid: 0665 - driver.version: 2.7.4 driver.version.internal: 0.12 - input.current.nominal: 13.0 input.frequency: 60.0 - input.frequency.nominal: 60 input.voltage: 113.9 - input.voltage.fault: 111.4 input.voltage.nominal: 110 - output.voltage: 113.3 ups.beeper.status: enabled - ups.delay.shutdown: 30 ups.delay.start: 180 ups.firmware: ups.load: - 2 ups.mfr: ups.model: 1500VA ups.productid: 5161 ups.status: OL - ups.type: offline / line interactive ups.vendorid: 0665 - -2021-06-18 Scott K Logan - - * drivers/tripplite.c: drivers/tripplite.c: start using the 'X' value - Relatively ancient documentation seems to suggest that this - 'firmware checksum' value can be used to indicate the firmware - generation as well as the capabilities of the UPS, namely the - number of independently controllable plugs. - -2021-06-16 Nick Briggs - - * drivers/hidparser.c: Add note regarding sensitivity to 32- vs 64- - bit compilation and overflow - -2021-06-14 Doug Nazar - - * Makefile.am, conf/Makefile.am, data/Makefile.am, docs/Makefile.am, - docs/man/Makefile.am: Fix spellcheck to also run from separate - build dirs - -2021-06-12 Jim Klimov - - * docs/nut-names.txt: docs/nut-names.txt: add the note about RFC - Recording Document - * docs/nut-names.txt: docs/nut-names.txt: reword the intro paragraphs - and define the "experimental.*" namespace - * docs/FAQ.txt: FAQ.txt: make it easier to find suggestions for - missing "battery.charge.restart" workarounds - -2021-06-02 Nick Briggs - - * drivers/hidparser.c: Fix GetValue() to correctly extract values - from a report when compiled in LP64 mode Changes the strategy for - removing potential garbage bits from values extracted from a - report. Use the LogMin and LogMax fields to drive which bits are - meaningful but avoid confusion when, for example, given a range of - -1..2147483647 - -2021-05-30 Jim Klimov - - * configure.ac: configure.ac: bugfix - populate systemdtmpfilesdir in - its option, not systemdshutdowndir - * configure.ac: configure.ac: do not make noise with yet empty - systemdtmpfilesdir - * configure.ac: configure.ac: process other values for - systemdshutdowndir option - * configure.ac: configure.ac: just in case, double-quote to single- - tokenize detected systemd related options - * configure.ac: configure.ac: update comments for systemd related - options - -2021-05-28 Jim Klimov - - * docs/nut.dict: nut.dict: add new words for nut-website - * configure.ac: configure.ac: improve reporting of systemd options - processing - * autogen.sh, configure.ac, scripts/systemd/.gitignore, - scripts/systemd/nut-common.tmpfiles.in: configure.ac: generate - scripts/systemd/nut-common.in based on current config - * configure.ac: configure.ac: typo fix in comment - * Makefile.am, configure.ac, docs/configure.txt, docs/nut.dict, - scripts/systemd/.gitignore, scripts/systemd/Makefile.am, - scripts/systemd/nut-common.tmpfiles.in: [Issue #1030] Deliver - systemd-tmpfiles config to pre-create runtime locations - -2021-05-24 Jim Klimov - - * docs/nut.dict: Update nut.dict Update dict for PR #975 - * docs/man/nutdrv_qx.txt: Update nutdrv_qx.txt Our accepted - terminology is for multiple "UPSes" not "UPSen", however - questionable the language might be - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Bump version due to - addition of `phoenixtec_command()` - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Pre-initialize "e = NULL" - in phoenixtec_command(), we do not set it from `memchr()` later in - all cases. - * drivers/nutdrv_qx_masterguard.c: Update nutdrv_qx_masterguard.c - Add #include - * drivers/powerpanel.h: Update powerpanel.h Define a subdriver_t for - driver version (modifiable) vs type (bin/txt) - * drivers/powerp-txt.c: Update powerp-txt.c Fix subdriver type vs - subdriver version - * drivers/powerp-bin.c: Update powerp-bin.c Track subdriver version - * drivers/powerp-txt.c: Update powerp-txt.c Introduce versioning - * drivers/cyberpower-mib.c: Update cyberpower-mib.c Update reported - driver version after the bump - * drivers/cyberpower-mib.c: Update cyberpower-mib.c Handle - "battery.voltage" and "battery.current" readings for different MIB - revisions - -2021-05-24 Jim Klimov - - * lib/.gitignore: GitIgnore generated lib/libnutclientstub.pc - -2021-05-24 Jim Klimov - - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Formatting and slight - rewording of a comment - -2021-05-24 Jim Klimov - - * drivers/usb-common.h: drivers/usb-common.h: better comment "the 5 - pieces of information by which a USB device identifies itself" - * drivers/usb-common.h: drivers/usb-common.h: move the recently added - USBDevice_t Device field to the end, for a bit of cross-version - binary compatibility - * docs/man/blazer-common.txt, docs/man/nutdrv_qx.txt, - docs/man/tripplite_usb.txt, docs/man/usbhid-ups.txt: Docs: rephrase - Note for "device" option in USB drivers - -2021-05-18 Clappier, Eric - - * tests/nutclienttest.cpp: Fix typo - -2021-05-17 Clappier, Eric - - * clients/nutclientmem.cpp, clients/nutclientmem.h, - tests/nutclienttest.cpp: Take into account pull request remarks - -2021-05-07 Clappier, Eric - - * drivers/bcmxcp_ser.c: Fix coverity test issue - * tests/nutclienttest.cpp: Try fixing coverity test issue - * clients/Makefile.am, configure.ac, lib/Makefile.am, - lib/libnutclientstub.pc.in, tests/Makefile.am: Separate lib for - stub - -2021-05-05 Clappier, Eric - - * tests/nutclienttest.cpp: Add tests in cppunit - * clients/Makefile.am: Fix missing header - -2021-05-04 Clappier, Eric - - * clients/Makefile.am, clients/{nutclientmock.cpp => - nutclientmem.cpp}, clients/{nutclientmock.h => nutclientmem.h}, - tests/nutclienttest.cpp: Rename class Fix cppunit test Add - typedef for map - * clients/nutclientmock.cpp: Fix indentation - * clients/Makefile.am, clients/nutclient.cpp, clients/nutclient.h, - clients/nutclientmock.cpp, clients/nutclientmock.h: Separate - NutClientMock class - * clients/nutclient.cpp, clients/nutclient.h, - tests/nutclienttest.cpp: Add mock for TcpClient - -2021-05-20 Denis Yurin - - * drivers/powercom-hid.c: add temperature readings for Powercom - MRT-3000 add temperature readings support for Powercom MRT-3000 - -2021-05-18 Alexey Kazancev - - * drivers/nutdrv_qx.c: nutdrv_qx.c: bump version to 0.31 - * drivers/nutdrv_qx.c: nutdrv_qx.c: add batt.volt.act validation - Some UPS return zero batt voltage after communication error. This - validation must fix wrong runtime calculation. - * drivers/nutdrv_qx.c: nutdrv_qx.c: fix snr_command communication - error in protocol matching phase. - -2021-05-06 Alexey Kazancev - - * drivers/nutdrv_qx.c: nutdrv_qx.c: bump version to 0.30 - -2021-04-26 Alexey Kazancev - - * drivers/nutdrv_qx.c: nutdrv_qx.c: add correction of runtime - estimation - -2021-04-23 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: - fabula_hunnox_subdriver(): annotate NUT_UNUSED_VARIABLE(device) arg - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c: fix - initialization of delta_ups_type_info[] - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c: fix - initialization of delta_ups_type_info[] - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: - fabula_hunnox_subdriver(): annotate NUT_UNUSED_VARIABLE(device) arg - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: order includes and - subdrivers alphabetically - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: order includes and - subdrivers alphabetically - * clients/nutclient.cpp, clients/nutclient.h: - clients/nutclient.{h,cpp}: explicitly request assignment operator - generation for exception classes - -2021-04-09 Jim Klimov - - * drivers/metasys.c: drivers/metasys.c: fix SIZE_MAX comparison - * drivers/metasys.c: drivers/metasys.c: fix %zd printing of ssize_t - res - -2021-03-31 Jim Klimov - - * drivers/metasys.c: drivers/metasys.c: protect failsafe logic from - compiler warnings with pragmas - * drivers/metasys.c: drivers/metasys.c: upsdrv_initinfo(): pedantic - and stylistic fixes - * drivers/metasys.c: drivers/metasys.c: upsdrv_initinfo(): sanity- - check that reply was big enough to have a serial number, and then - cast for memcpy() - * drivers/metasys.c: drivers/metasys.c: get_answer(): rectify var - types to avoid signedness and range warnings - * drivers/metasys.c: drivers/metasys.c: fix arg type for - send_read_command() to avoid signedness mismatches - * drivers/metasys.c: drivers/metasys.c: refactor a get_word_float() - to simplify code - * drivers/metasys.c: drivers/metasys.c: fix fixed-width integers for - get_word()/get_long() or cast meaningfully where needed - * drivers/bcmxcp.c: drivers/bcmxcp.c: cast the bytes when - constructing "cbuf[]"s element by element - * drivers/bcmxcp.c: drivers/bcmxcp.c: instcmd(): cast use of sddelay - to avoid signedness warnings - * drivers/bcmxcp.c: drivers/bcmxcp.c: upsdrv_initinfo(): buf is - size_t by usage - * drivers/bcmxcp.c: drivers/bcmxcp.c: upsdrv_initinfo(): fix atoi() - of unsigned value for shutdown_delay - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix fixed-width integers for - get_word()/get_long()/init_outlet() or cast meaningfully where - needed - * drivers/al175.c: drivers/al175.c: avoid implicit conversion of byte - to int during bit-shifting - -2021-03-30 Jim Klimov - - * drivers/al175.c: drivers/al175.c: avoid implicit tcflag_t - signedness conversion - * drivers/al175.c: drivers/al175.c: avoid implicit char/byte - conversion - * drivers/al175.c: drivers/al175.c: avoid implicit long/unsigned long - conversion, and fix formatting nearby - * drivers/al175.c: drivers/al175.c: align arguments to wrappers of - al175_do() with the uint16_t type it accepts (avoid variable-width - signed int) - * drivers/libusb.c: drivers/libusb.c: mark hid_rep_index static (not - externalized) - -2021-01-20 Jim Klimov - - * drivers/eaton-ats16-nm2-mib.c, drivers/eaton-ats16-nmc-mib.c: - eaton-ats16-nm?-mib.c: port comments from 42ity fork to clarify - what is going on here for mib2nut_info_t definitions - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - comment about not-function pointers from libnet-snmp - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: fix - indentations and whitespaces - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: fix indentations and whitespaces - * tools/nut-scanner/nut-scanner.c: nut-scanner.c: some extra - whitespace, some missing, in longopts[] - -2021-01-06 Jim Klimov - - * server/netssl.c: server/netssl.c: #include "nut_stdint.h" for - limits definitions - * clients/upscmd.c, clients/upsimage.c, clients/upsmon.c, - clients/upsrw.c, clients/upsstats.c, common/common.c, common/str.c, - drivers/al175.c, drivers/bcmxcp.c, drivers/bcmxcp_ser.c, - drivers/bcmxcp_usb.c, drivers/bestfortress.c, drivers/etapro.c, - drivers/genericups.c, drivers/metasys.c, drivers/netxml-ups.c, - drivers/nutdrv_siemens_sitop.c, drivers/powercom.h, - drivers/richcomm_usb.c, drivers/serial.c, drivers/snmp-ups.c, - server/upsd.c: Various sources: use nut_stdint.h where limits.h was - introduced recently - * configure.ac, include/nut_stdint.h: nut_stdint.h: include limits.h - and make sure SIZE_MAX is defined - -2020-12-27 Jim Klimov - - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: fix size_t types - for upsdebugx_hex() and range-check the values - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix static const struct - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix whitespace - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix static const struct - -2020-12-26 Jim Klimov - - * server/conf.c, server/upsd.c, server/upsd.h: server/upsd.{c,h} - conf.c: fix maxconn to long, to match sysconf() return value; check - that practical value range allows to malloc() the buffers - * server/upsd.c: server/upsd.c: fix size_t/ssize_t types for - {ssl_,}write() in sendback() - * server/netssl.c, server/netssl.h: server/netssl.{c,h}: fix - ssl_write()/ssl_read() to return ssize_t (like upsclient - net_write()/net_read()) - * server/netssl.c: server/netssl.c: fix int types for OpenSSL - codepaths - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: fix numphases to - unsigned int - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: fix int size_t - types for read(), malloc() etc. - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: fix size_t types - for upsdebugx_hex() and some indentation - * drivers/isbmex.c: drivers/isbmex.c: fix int size_t types for - read(), malloc() etc. - * drivers/genericups.c: drivers/genericups.c: fix int types for - sleep() - * drivers/genericups.c: drivers/genericups.c: cast termios types for - bit magic - * drivers/gamatronic.h: drivers/gamatronic.h: fix speed_t/size_t in - baud_rates[] definition like for bcmxcp_ser - * drivers/gamatronic.c: drivers/gamatronic.c: fix some whitespace - * drivers/gamatronic.c: drivers/gamatronic.c: fix int size_t types - for read(), malloc() etc. - * drivers/etapro.c: drivers/etapro.c: constrain return value for - etapro_get_response() type - * drivers/bestuferrups.c: drivers/bestuferrups.c: fix size_t int type - for execute() (use-cases pass sizeof() anyway) - * drivers/bestfortress.c: drivers/bestfortress.c: constrain value for - usleep() in upssend() - * drivers/bestfortress.c: drivers/bestfortress.c: constrain return - value for upssend() type - * drivers/bestfortress.c: drivers/bestfortress.c: fix size_t types - for upsdebugx_hex() - -2021-04-23 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: fix back setparam() - arg type - -2020-12-01 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: fix printing of - ssize_t variable - -2020-11-30 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: use size_t where it - should be, for data chunk length parsing - -2020-12-26 Jim Klimov - - * drivers/bestfcom.c: drivers/bestfcom.c: fix size_t int type for - execute() (use-cases pass sizeof() anyway) - * drivers/belkinunv.c: drivers/belkinunv.c: fix int types for read(), - malloc() etc. - * drivers/belkinunv.c: drivers/belkinunv.c: fix int types for reg - (byte) - * drivers/belkin.c: drivers/belkin.c: fix size_t/useconds_t int type - for cnt (already limited to byte range) - * drivers/bcmxcp.c: drivers/bcmxcp.c: whitespace fix indentation in - set_alarm_support_in_alarm_map() - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix unsigned int type for index - arguments in set_alarm_support_in_alarm_map() - * drivers/serial.c: drivers/serial.c: fix ssize_t int type for - function returns vs size_t buflen argument - * drivers/dstate.c: drivers/dstate.c: fix size_t int type for - bufrw_max - * drivers/main.c: drivers/main.c: fix int types for poll_interval - * clients/upscmd.c: clients/upscmd.c: fix data range warnings for - asserts about implem-dependent overflow chances - * clients/upsrw.c: clients/upsrw.c: fix data range warnings for - asserts about implem-dependent overflow chances - * clients/upsclient.c: clients/upsclient.c: fix data range warnings - for asserts about implem-dependent overflow chances - * clients/upsmon.c, clients/upsmon.h: clients/upsmon.c: fix int types - for power value and totalpv accounting - * clients/upsmon.c: clients/upsmon.c: fix int types for sleep() - * clients/upsimage.c: clients/upsimage.c: make explicit casts from - floating-points into int types for rendering - * clients/upscmd.c: clients/upscmd.c: fix int types for timeouts from - upsclient.c - * clients/upsrw.c: clients/upsrw.c: fix int types for timeouts from - upsclient.c - * clients/upsclient.c: clients/upsclient.c: fix numq int types for - verify_resp() - -2020-12-25 Jim Klimov - - * clients/upsclient.c: clients/upsclient.c: make explicit a case - size_t/ssize_t casting - * clients/upsclient.c, clients/upsclient.h: clients/upsclient.{c,h}: - fix "timeout" type in - net_read/net_write/upscli_sendline_timeout/upscli_readline_timeout - to match upscli_select_read/upscli_select_write - * clients/upsclient.c: clients/upsclient.c: fix int types for OpenSSL - codepaths - -2020-12-07 Jim Klimov - - * drivers/metasys.c: drivers/metasys.c: various routines: fix - command_length into size_t - * drivers/bcmxcp_io.h, drivers/bcmxcp_ser.c, drivers/bcmxcp_usb.c: - bcmxcp*: various routines: fix command_length into size_t - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: get_answer(): fix - bytes_read, end_length and length into size_t - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: get_answer(): fix - bytes_read, end_length and length into size_t - -2020-12-02 Jim Klimov - - * drivers/bcmxcp.c: drivers/bcmxcp.c: use size_t for upsdebugx_hex() - and upsdebugx_ascii() args for logged data length - -2020-12-01 Jim Klimov - - * drivers/masterguard.c: drivers/masterguard.c: fix printing of - ssize_t variable - -2020-11-30 Jim Klimov - - * clients/upsstats.c: clients/upsstats.c: fix use of use size_t vs - int-argumented printf("%.*s", int, str) formatting - * drivers/al175.c: drivers/al175.c: check pointer math WRT buffer - lengths passed to logging - * common/common.c, include/common.h: common.{c,h}: use size_t for - upsdebugx_hex() and upsdebugx_ascii() args for logged data length - * drivers/tripplitesu.c: drivers/tripplitesu.c: init_comm(): fix data - types to size_t for strlen() function - * drivers/tripplitesu.c: drivers/tripplitesu.c: do_command(): fix up - "count" int type to be unsigned - * drivers/tripplitesu.c: drivers/tripplitesu.c: do_command(): fix up - "ret" int type to avoid conversions - * drivers/masterguard.c: drivers/masterguard.c: avoid value type - conversion by changing data types to size_t for strlen() function - * drivers/masterguard.c: drivers/masterguard.c: avoid value type - conversion by casting explicitly the return value of strlen() - function - -2020-12-27 Jim Klimov - - * clients/nutclient.cpp, clients/nutclient.h: - clients/nutclient.{h,cpp}: explicitly request copy constructor - generation for exception classes - -2020-11-30 Jim Klimov - - * clients/upsset.c: drivers/upsset.c: fix up int types to avoid - implicit conversions - * clients/upsimage.c: drivers/upsimage.c: avoid value type conversion - by casting explicitly the return value of strlen() function - * clients/upsimage.c: drivers/upsimage.c: fix up int types to avoid - conversions - * clients/cgilib.c: drivers/cgilib.c: fix up int types to avoid - conversions - * clients/upsstats.c: drivers/upsstats.c: fix up floating-point types - to avoid conversions and precision change - * clients/upsstats.c: clients/upsstats.c: use size_t where it should - be, for string length related processing - * clients/upslog.c: clients/upslog.c: use size_t where it should be, - for string length related processing - * clients/upslog.c: clients/upslog.c: avoid implicit floating-integer - conversion - -2021-03-30 Jim Klimov - - * configure.ac: configure.ac: nut_enable_warnings: clang presets - should let "-Wdocumentation" slide: NUT does not use it now, and - third-party headers are what they are - -2020-12-29 Jim Klimov - - * tests/nut-driver-enumerator-test.sh: tests/nut-driver-enumerator- - test.sh: allow to pass SHELL_PROGS="busybox_sh" as a single token - -2020-12-26 Jim Klimov - - * .travis.yml: .travis.yml: move _matrix_linux_gnustd_warn_viable a - bit up in _matrix_required_linux listing, to get more probable - failures earlier - -2021-04-23 Jim Klimov - - * drivers/delta_ups-mib.c: delta-mib.c: rename onbatt_info lookup - table in commented-away code sample (and match naming pattern with - other tables) - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c: typo in comment - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: comment that Vendor ID - 0x0483 is from ST Microelectronics - -2021-04-23 Jim Klimov - - * drivers/ever-hid.c: Update ever-hid.c Make and comment the macro - for ST Microelectronics vendor id (to generate udev data, etc. - properly) - * drivers/ever-hid.c: Update ever-hid.c Lowercase the hex in vendor - ID macro, for consistency - -2021-04-22 Nick Briggs - - * drivers/hidparser.c: correct 'for' loop initial declarations are - only allowed in C99 or C11 mode - * drivers/hidparser.c: Extract values in HIDParse correctly when - compiled in 64-bit (LP64) mode Reworks the conversion of bytes in - little-endian order to host order to operate independently of the - sizeof(long) and the byte-order of the host system. The extracted - value is stored as uint32_t as the code already performs casts to - signed/unsigned of varying sizes as appropriate to the context of - use. - -2021-04-21 Jim Klimov - - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: sync polling frequencies - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: remove (read-only) mappings for ups.delay* - in favor of same points polled for ups.timer* - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: comment away ups.mfr/model/serial setting - per PR comments - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: set voltage/current/frequency precision to - %.1f same for all entries - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: set battery.charge* precision to %.0f same - for all entries - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: import delta_ups_hid2nut[] entries "as is" - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: import Helper lookup tables and mapping - functions from master - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: change delta_ups_hid2nut[] content order - by names to be same as in master - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: import named delta_ups_usage_lkp[] content - from master - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: import delta_ups_format_model() content - from master - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: move delta_ups_format_model() to same - position as in master - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: indentations in delta_ups_claim() - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: indentations in delta_ups_hid2nut[] - * drivers/delta_ups-hid.c: drivers/delta_ups-hid.c/.h: sync PR #807 - code with master branch: indentations in delta_ups_usage_lkp[] - * drivers/delta_ups-hid.c, drivers/delta_ups-hid.h: - drivers/delta_ups-hid.c/.h: sync PR #807 code with master branch: - rename delta => delta_ups, sync comments - * drivers/Makefile.am, drivers/{delta-hid.c => delta_ups-hid.c}, - drivers/{delta-hid.h => delta_ups-hid.h}, drivers/usbhid-ups.c, - scripts/upower/95-upower-hid.rules: Rename delta-hid.c/.h to - delta_ups-hid.c/.h and sync vendor label for USB [#807] - -2021-04-21 Edgar Fuß - - * drivers/nutdrv_qx.c: Correct format string size_t is unsigned, so - use %zu (not %zd) in upsdebug() format string. - * drivers/nutdrv_qx.c: Remove vis-dependent debugging code Remove - (level 4) debugging code in the phoenixtex/masterguard USB - subdriver that depends on the BSD strvis() family for visual string - formatting. - -2021-04-20 Jim Klimov - - * drivers/delta-hid.c: Update delta-hid.c Sync the vendor-name - comment (for udev generation among others) with another Delta HID - driver merged to master recently. - -2021-04-20 Jim Klimov - - * drivers/delta_ups-hid.c, scripts/upower/95-upower-hid.rules: - 95-upower-hid.rules: regenerate for idVendor=05dd (Delta UPS) - * docs/documentation.txt: docs/documentation.txt: add a section on - reporting Data dumps for the DDL - -2021-04-20 Jim Klimov - - * docs/nut.dict: Update nut.dict Updated for PR #994 - -2021-04-20 Jim Klimov - - * docs/man/nutdrv_qx.txt: docs/man/nutdrv_qx.txt: fix copy-paste typo - -2021-04-20 Ygor Amadeo Sartori Regados - - * docs/man/microsol-apc.txt: Man page compilation error fixes - * docs/man/Makefile.am, docs/man/microsol-apc.txt: Added man page - * drivers/microsol-apc.c, drivers/microsol-common.h: Fix: wrong - operator and unused function - * drivers/microsol-apc.c, drivers/microsol-apc.h: Fixed driver name - -2021-04-20 Jim Klimov - - * drivers/microsol-apc.c: Update microsol-apc.c In upsdrv_info, - split contributors one per line for better source readability - -2021-04-20 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix back the name for - "fabula_hunnox_subdriver" (USB protocol subdriver vs. - "hunnox_subdriver" for device data mapping) - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: bump core DRIVER_VERSION - to reflect changes from PR #638 for "hunnox" support - * docs/man/nutdrv_qx.txt, drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: - simplify new subdriver/command naming from "fabula-hunnox" to - "hunnox" - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: restore indentation with - TABs - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fabula_command_hunnox(): - comment about truncating the buflen to 102 bytes - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fabula_command_hunnox(): - comment away scoping for (and use of) "hunnox_patch" leaving the - markers in comments for refactoring - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: comment that - fabula_hunnox_subdriver was reported to support more than Hunnox - branded devices - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fabula_command_hunnox(): - restore originally PRed choice of usb_get_string{,_simple}() based - on langid_fix alone - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: separate - fabula_command_hunnox() from fabula_command() without using a mixed - routine, to ensure no impact on currently supported devices - * docs/nut.dict: docs/nut.dict: typo fix - -2021-04-20 Jim Klimov - - * docs/nut.dict: Update nut.dict Some more keywords to the - dictionary from PR #638 - -2021-04-19 Jim Klimov - - * docs/nut.dict: Update nut.dict Update dictionary for Hunnox PR - #638 - * docs/man/nutdrv_qx.txt: Update nutdrv_qx.txt Basically mention - updates from Hunnox subdriver and protocol addition (PR #638). - * drivers/nutdrv_qx.c: Update nutdrv_qx.c Err on the safer side of - changing behavior for non-hunnox device support, limit the - applicability of langid_fix (per PR #638 review cautionary - comments). Maybe the proposed original change did apply to other - devices that support the fix-up, but that should be evaluated - separately and this new constraint reversed if needed. - * drivers/nutdrv_qx_hunnox.c: Update nutdrv_qx_hunnox.c Updated file - heading - * drivers/nutdrv_qx_hunnox.h: Update nutdrv_qx_hunnox.h Updated file - heading - -2021-04-10 Jim Klimov - - * docs/images/advanced.png, docs/images/bizarre.png: Vox populi: - replace master by primary and slave by secondary in documentation - images [#840] - -2021-04-09 Jim Klimov - - * docs/images/ci/fosshost.org_Host_Dark_56px.png, - docs/images/ci/jenkins-nut-large-256px.png, docs/images/ci/jenkins- - nut-large-squared.png, docs/images/ci/jenkins-nut-large.pdn, - docs/images/ci/jenkins-nut-large.png, docs/images/ci/jenkins-nut- - small-256px.png, docs/images/ci/jenkins-nut-small.pdn, - docs/images/ci/jenkins-nut-small.png, docs/images/ci/jenkins-nut- - squared.png, docs/images/ci/jenkins-nut-transparent-bg-40px.png, - docs/images/ci/jenkins-nut-transparent-bg.png, - docs/images/ci/jenkins-nut.css, docs/images/ci/jenkins-nut.png, - docs/images/ci/jenkins-nut.txt: Add image and CSS resources used in - new Jenkins CI [#869] - -2021-04-09 Jim Klimov - - * docs/nut.dict: Update nut.dict Missed a couple of new dictionary - words - -2021-04-09 Alexey Kazancev - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: add overflows protection - for snr subdriver - -2021-04-09 Jim Klimov - - * docs/nut.dict: Update nut.dict Added "snr" and "SNR" to - spellchecker dictionary - -2021-04-09 Alexey Kazancev - - * docs/acknowledgements.txt: docs/acknowledgements.txt: add NAG at - manufacturer list - * data/driver.list.in: data/driver.list.in: add various SNR-UPS-LID- - XXXX UPSes supported by nutdrv_qx Protocol: 'megatec' USB - subdriver: 'snr' - * docs/man/nutdrv_qx.txt: docs/man/nutdrv_qx.txt: update man page for - new 'snr' USB subdriver - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: add new 'snr' USB - subdriver to support SNR-UPS-LID units - -2021-04-08 Jim Klimov - - * docs/man/Makefile.am: Update Makefile.am Beside exactly "troff" - some systems have other "*roff" family tools and formats - -2021-04-07 Jim Klimov - - * configure.ac: configure.ac: satisfy both builders that have pkg- - config installed and those who do not - * configure.ac: configure.ac: avoid syntax errors if pkg-config is - not installed - -2021-04-06 Aaron Thompson - - * drivers/powercom.c: drivers/powercom.c: Fix a small error in output - voltage for KIN models. - -2021-03-31 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: protect failsafe logic from - compiler warnings with pragmas - -2021-03-30 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: alarm_set(): stretch slightly - absurd ways to avoid overflow and fix signed/unsigned mismatch - (follow up for #986) - * configure.ac: configure.ac: add --enable-cppunit to allow disabling - it even if deemed supported by compiler Practice shows that - libcppunit.so may be linked against a different compiler version - and/or libc than the one used for current NUT build. While formal - support checked by the script works, practical build fails. - * NEWS: NEWS: Reflect terminology change for upsmon - -2021-03-29 Jim Klimov - - * clients/upsmon.c: clients/upsmon.c: rename static functions - slavesync() => sync_secondaries() and checkmaster() => - apply_for_primary() and document them better - * README, clients/nutclient.cpp, clients/nutclient.h, - clients/upsmon.c, clients/upsmon.h, conf/ups.conf.sample, - conf/upsd.users.sample, conf/upsmon.conf.sample.in, docs/config- - notes.txt, docs/design.txt, docs/features.txt, docs/history.txt, - docs/man/clone.txt, docs/man/genericups.txt, - docs/man/libnutclient_misc.txt, docs/man/nut.conf.txt, - docs/man/nutdrv_atcl_usb.txt, docs/man/richcomm_usb.txt, - docs/man/upsd.txt, docs/man/upsd.users.txt, - docs/man/upsmon.conf.txt, docs/man/upsmon.txt, docs/net- - protocol.txt, docs/new-drivers.txt, docs/scheduling.txt, - docs/security.txt, drivers/optiups.c, scripts/augeas/README, - scripts/augeas/nutupsdusers.aug.in, - scripts/augeas/tests/test_nut.aug, scripts/perl/Nut.pm, - scripts/python/module/PyNUT.py, server/netcmds.h, server/netuser.c, - server/netuser.h, server/user.c: Vox populi: replace manager/master - by primary and subordinate/slave by secondary - * scripts/python/app/README: scripts/python/app/README: typo fix - * docs/man/libnutclient_misc.txt: docs/man/libnutclient_misc.txt: fix - English wording a bit - * docs/nut.dict: docs/nut.dict: update word-count after large docs - update - -2021-03-27 orbea - - * drivers/Makefile.am: drivers: Fix undefined references with - slibtool. - -2021-03-26 Arnaud Quette - - * scripts/upower/95-upower-hid.rules: Revert "95-upower-hid.rules - script updated" This reverts commit - 262c23c6b8f1368165c75a0df317b1ba9ff5c511. - -2021-03-26 Jim Klimov - - * tools/nut-snmpinfo.py: Update nut-snmpinfo.py Also handle the `//` - comments same way as `/*...` - -2021-03-25 Arnaud Quette - - * tools/nut-snmpinfo.py: nut-scanner: improve SNMP extractor script - Also remove EOL comments - -2021-03-24 Jim Klimov - - * drivers/bestups.c, drivers/blazer.c, drivers/blazer.h, - drivers/blazer_ser.c, drivers/blazer_usb.c: bestups, blazer* driver - sources: add obsoletion notices on top, in favor of nutdrv_qx - drivers - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: allow to trace USB - driver conflicts (e.g. obsoleted and new handlers of same - vendor/product IDs) - -2021-03-23 Ygor Amadeo Sartori Regados - - * drivers/microsol-apc.c, drivers/microsol-apc.h, drivers/microsol- - common.c, drivers/microsol-common.h: Bug fix: battery charge - calculation - -2021-03-23 Jim Klimov - - * ci_build.sh: ci_build.sh: make GitIgnores failure fatal (and report - what the difference is, for tracked and regenerated files) - * tests/.gitignore: GitIgnore tests/nutlogtest binary - * ci_build.sh: ci_build.sh: make GitIgnores failure fatal - -2021-03-23 Degott, Francois Regis - - * scripts/upower/95-upower-hid.rules: 95-upower-hid.rules script - updated - -2021-03-23 Ygor Amadeo Sartori Regados - - * drivers/microsol-common.c: Bug fix: Handle packet boundary - desynchronization - -2021-03-23 Degott, Francois Regis - - * scripts/upower/95-upower-hid.rules: 95-upower-hid.rules script - updated - * drivers/Makefile.am, drivers/eaton-ats16-nm2-mib.c, .../{eaton- - ats16-mib.h => eaton-ats16-nm2-mib.h}, .../{eaton-ats16-mib.c => - eaton-ats16-nmc-mib.c}, drivers/eaton-ats16-nmc-mib.h, - drivers/snmp-ups.c: improve support of EATON ATS16 NMC/NM2 - -2021-03-21 Ygor Amadeo Sartori Regados - - * drivers/microsol-apc.c: Fixed missing calculation part for BZ1500 - Bug identified with data provided on issue #697 - * drivers/microsol-common.c: CI fix: C89 compilation fixed - * drivers/Makefile.am: Missing header fixed - * drivers/Makefile.am: CI error fix: missing header file - -2021-03-19 Ygor Amadeo Sartori Regados - - * drivers/microsol-common.c, drivers/microsol-common.h: Fixed LGTM - alert about localtime_r Also passed microsol-common.c through - indent - * drivers/Makefile.am, drivers/microsol-apc.c, drivers/microsol- - apc.h, drivers/microsol-common.c, drivers/microsol-common.h: New - driver: microsol-apc Derived from solis driver, for newer APC - Back-UPS BR hardware. Support added for APC Back-UPS BZ1500, - BZ2200BI and BZ2200I. Tested on BZ2200BI. Created common file that - may be used on solis as well. - -2021-03-14 JungEon Kim - - * data/driver.list.in: Add Delta UPS Amplon R Series in drivers.list - -2021-03-14 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: alarm_set(): at least log the - truncated buf if it does not fit into dstate field - -2021-03-13 Jim Klimov - - * docs/developers.txt: docs/developers.txt: replace "master" where it - is easy, and update some recommendations - * clients/upsmon.c: clients/upsmon.c: comment that also several NUT - drivers can directly set FSD flag propagated from the smarter power - devices - * docs/security.txt: docs/security.txt: extend the Firewall section - for more considerations - * docs/man/upsmon.txt: docs/man/upsmon.txt: suggestions for - experiments about timing the shutdown vs. dummy SHUTDOWNCMD to - check the skeleton logic - * docs/man/upsmon.conf.txt: docs/man/upsmon.conf.txt: extend the - example for "bigserver" with manager vs subordinate upsmon's - * docs/history.txt: docs/history.txt: reflect that slave/master terms - were deprecated - * README: README: Make note of UPSes which allow multiple managerial - accesses - * clients/nutclient.cpp, clients/nutclient.h, clients/upsmon.c, - docs/net-protocol.txt, scripts/perl/Nut.pm, - scripts/python/module/PyNUT.py, server/netcmds.h, server/netuser.c, - server/netuser.h, server/user.c: Identify points in source code - (and few related docs) for deprecating master|slave terminology - * README, clients/upsmon.c, clients/upsmon.h, conf/ups.conf.sample, - conf/upsd.users.sample, conf/upsmon.conf.sample.in, docs/config- - notes.txt, docs/design.txt, docs/features.txt, docs/man/clone.txt, - docs/man/genericups.txt, docs/man/libnutclient_misc.txt, - docs/man/nut.conf.txt, docs/man/nutdrv_atcl_usb.txt, - docs/man/richcomm_usb.txt, docs/man/upsd.txt, - docs/man/upsd.users.txt, docs/man/upsmon.conf.txt, - docs/man/upsmon.txt, docs/net-protocol.txt, docs/new-drivers.txt, - docs/nut.dict, docs/scheduling.txt, docs/security.txt, - drivers/optiups.c, scripts/augeas/README, - scripts/augeas/nutupsdusers.aug.in, - scripts/augeas/tests/test_nut.aug, scripts/perl/Nut.pm, - server/user.c: Update documentation, emitted messages and easy-to- - fix code to rename master=>manager and slave=>subordinate - * docs/man/upsmon.txt: docs/man/upsmon.txt: suggestions for - experiments about timing the shutdown vs. dummy SHUTDOWNCMD to - check the skeleton logic - * docs/security.txt: docs/security.txt: extend the Firewall section - for more considerations - * docs/security.txt: docs/security.txt: reword one shade of "master" - * docs/solaris-usb.txt: docs/solaris-usb.txt: reword one shade of - "master" - * drivers/asem.c: drivers/asem.c: clarify the use of "S" word - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - clarify the use of "S" word - * drivers/nutdrv_qx.c, drivers/usbhid-ups.c: drivers/nutdrv_qx.c & - usbhid-ups.c: reword "Reference list of..." - * clients/upsmon.c, docs/net-protocol.txt: docs/net-protocol.txt + - upsmon.c: comment that also several NUT drivers can directly set - FSD flag propagated from the smarter power devices - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: note that - systems should only shutdown when less than MINSUPPLIES PSUs are - non-critical - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: note about - UPSes with manageable thresholds for critical state - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: note that - rack shutdowns can compete for I/O and take longer - * conf/upsmon.conf.sample.in: conf/upsmon.conf.sample.in: generalize - the example about multi-PSU servers - * docs/config-notes.txt: docs/config-notes.txt: update the example - about multi-PSU servers - -2021-03-13 JungEon Kim - - * drivers/Makefile.am, drivers/delta_ups-hid.c, drivers/delta_ups- - hid.h, drivers/usbhid-ups.c: delta_ups-hid: Add support for Delta - UPS Amplon R Series - -2021-03-13 Jim Klimov - - * docs/config-notes.txt: docs/config-notes.txt: note about upsmon - with 0 PSUs for just-monitoring - * data/html/header.html.in, docs/cables/apc-rs500-serial.txt, - docs/cables/ge-imv-victron.txt, docs/cables/powerware.txt, - docs/cables/repotec.txt, docs/cables/sms.txt, docs/man/apcsmart- - old.txt, docs/man/apcsmart.txt, docs/man/asem.txt, - docs/man/bcmxcp.txt, docs/man/bcmxcp_usb.txt, docs/man/belkin.txt, - docs/man/belkinunv.txt, docs/man/bestfcom.txt, - docs/man/bestuferrups.txt, docs/man/bestups.txt, - docs/man/everups.txt, docs/man/genericups.txt, docs/man/index.txt, - docs/man/libnutclient_misc.txt, docs/man/libnutclient_tcp.txt, - docs/man/libupsclient-config.txt, docs/man/liebert-esp2.txt, - docs/man/metasys.txt, docs/man/mge-shut.txt, docs/man/mge- - utalk.txt, docs/man/nut-driver-enumerator.txt, docs/man/nut- - ipmipsu.txt, docs/man/nut-scanner.txt, - docs/man/nutdrv_atcl_usb.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_get_serial_ports_list.txt, - docs/man/nutscan_init.txt, docs/man/nutscan_new_device.txt, - docs/man/nutscan_scan_avahi.txt, - docs/man/nutscan_scan_eaton_serial.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, docs/man/oneac.txt, - docs/man/optiups.txt, docs/man/phoenixcontact_modbus.txt, - docs/man/powercom.txt, docs/man/powerman-pdu.txt, - docs/man/rhino.txt, docs/man/richcomm_usb.txt, - docs/man/riello_ser.txt, docs/man/riello_usb.txt, - docs/man/skel.txt, docs/man/solis.txt, docs/man/tripplite.txt, - docs/man/ups.conf.txt, docs/man/upscli_add_host_cert.txt, - docs/man/upscli_connect.txt, docs/man/upscli_disconnect.txt, - docs/man/upscli_get.txt, docs/man/upscli_init.txt, - docs/man/upscli_splitaddr.txt, docs/man/upscli_splitname.txt, - docs/man/upscli_upserror.txt, docs/man/upsclient.txt, - docs/man/upscmd.txt, docs/man/upsd.conf.txt, docs/man/upsd.txt, - docs/man/upsd.users.txt, docs/man/upsdrvctl.txt, - docs/man/upsdrvsvcctl.txt, docs/man/upslog.txt, - docs/man/upsmon.conf.txt, docs/man/upsmon.txt, docs/man/upsrw.txt, - docs/man/upssched.txt, docs/man/upsset.cgi.txt, - docs/man/upsset.conf.txt, docs/man/upsstats.html.txt, - docs/man/usbhid-ups.txt, docs/man/victronups.txt: docs: fix some - trailing whitespaces - -2021-03-12 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: limit alarm_buf string to fit - into a dstate info status, and log errors and overflows from - alarm_set() [issue #960] - -2021-03-02 Edgar Fuß - - * docs/man/blazer-common.txt, docs/man/nutdrv_qx.txt, - docs/man/tripplite_usb.txt, docs/man/usbhid-ups.txt: Add a remark - that USB device numbers may be unstable In the documentation of - the USB device number matching, add a remark that device numbers - need not to be stable across re-boots or when re-plugging the - device. - * drivers/usb-common.c: USB device matching: add debug messages on - non-match When failing to match the Device part, note this via - upsdebugx() just like when not matching any other part (VendorId, - ProductId, Bus, etc.). - -2021-03-02 Jim Klimov - - * docs/man/nutdrv_qx.txt: Update nutdrv_qx.txt Fixed typo in a new - masterguard paragraph - -2021-02-12 Edgar Fuß - - * tools/nut-usbinfo.pl: Fix VendorID/ProductID matching In a line - like { USB_DEVICE(0x06da, 0x0002), "Phoenixtec Power","USB Cable - (V2.00)", &phoenixtec_subdriver },/* Masterguard A Series */ don't - match ProductID up to the closing parenthesis in the product name - string. - -2021-02-11 Edgar Fuß - - * docs/man/masterguard.txt, docs/man/nutdrv_qx.txt, docs/nutdrv_qx- - subdrivers.txt, drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_masterguard.c, drivers/nutdrv_qx_masterguard.h: - Add Masterguard A/E driver based on Q* framework Add a new driver - for Masterguard A and E series based on the Q* framework - (nutdrv_qx). Based on vendor documentation of both the command set - and USB protocol I was both asked not to disclose. Supports "new" - A700/1000/2000/3000(-19) and E40/60/100(-19) (totally untested due - to lack of hardware). Still sort of work in progress due to some - open questions on NUT integration. - * docs/man/blazer-common.txt, docs/man/nutdrv_qx.txt, - docs/man/tripplite_usb.txt, docs/man/usbhid-ups.txt, - drivers/blazer_usb.c, drivers/libusb.c, drivers/nutdrv_qx.c, - drivers/riello_usb.c, drivers/tripplite_usb.c, drivers/usb- - common.c, drivers/usb-common.h, drivers/usbhid-ups.c: Add USB - device number matching Extend the USB matching by a device number - (in addition to the existing bus number) by adding a Device field - to USBDevice_[st] and ammending the RegExp by a seventh field. - Maybe some #defines for the magical constants would be appropriate. - Add DEBUG_EXACT_MATCH_DEVICE analogous to DEBUG_EXACT_MATCH_BUS, - whatever its intended usage is. Document the device field where - the bus field was documented (which is not the case everywhere it's - actually used). - -2021-01-31 TJ McConnell - - * drivers/tripplite-hid.c: Move 0x3024 alphabetically. Add comment - about new version - -2021-01-26 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: fix regression on Eaton - ePDU Fix a regression that caused a mis-determination of the SNMP - base OID index (0 or 1, should be 1). This in turn caused a mis- - iteration over the outlets, from 0 to N-1 instead of 1 to N, which - resulted in the missing Nth outlet (last outlet of the PDU). This - also caused some data refresh issues - -2021-01-23 Yifeng Li - - * drivers/main.c: main.c: write upsdrv_initinfo/updateinfo() logs to - syslog When a NUT driver is started (via upsdrvctl start), it runs - the following sequence: 1. Run as a foreground process. 2. Do some - basic initialization, log to stderr. 3. If not debugging: - fork() - - Run as a daemon, stderr off, syslog on. The problem, however, is - that upsdrv_initinfo() and updateinfo() are first called before - forking, as a result, the log messages is only sent to stderr, not - syslog. On a traditional init + syslog server setup, those startup - messages are lost. However, those lost messages can be urgent - for - example, it can be a warning about a failed UPS inverter. If the - server is freshly started, the admin may miss them until much - later, or keep staring at the mysterious alarm word without finding - anything relevant in syslog. Similarly, other types of warnings, - such as a rounded ondelay value, should also be visible in syslog. - This patch checks the debugging flags and turn on syslog earlier - when it's in non-debug, non-fork mode, allowing the logs during - upsdrv_initinfo() and upsdrv_updateinfo() to be recorded in syslog. - Mailing list discussion: https://alioth- - lists.debian.net/pipermail/nut-upsdev/2021-January/007508.html - -2021-01-23 TJ McConnell - - * drivers/tripplite-hid.c, scripts/upower/95-upower-hid.rules: Add - AVR750U (0x3024). Use smart1500lcdt_scale for - voltage/current/frequence - -2021-01-20 Jim Klimov - - * drivers/delta_ups-mib.c: delta-mib.c: rename onbatt_info lookup - table in commented-away code sample - * drivers/huawei-mib.c: huawei-mib.c: rename onbatt_info lookup table - in commented-away code sample - * drivers/xppc-mib.c: xppc-mib.c: rename onbatt_info lookup table in - commented-away code sample - -2016-05-25 Jim Klimov - - * drivers/raritan-px2-mib.c: raritan-px2-mib - renamed lookups to - have "raritanpx2_*" prefix - * drivers/raritan-pdu-mib.c: raritan-pdu-mib - renamed lookups to - have "raritan_pdu_*" prefix - * drivers/powerware-mib.c: powerware-mib - renamed "ietf_*" and - "eaton_*" lookups to have "pw_*" prefix - -2016-05-23 Jim Klimov - - * drivers/mge-mib.c: mge-mib.c : rename rogue ietf_* lookups to mge_* - -2016-05-25 Jim Klimov - - * drivers/baytech-mib.c: baytech-mib - renamed "outlet_status_info" - lookup to "baytech_outlet_status_info" - * drivers/apc-ats-mib.c: apc-ats-mib.c- renamed "ats_*" lookups to - "apc_ats_*" - -2021-01-08 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix instant commands using numeric - parameters Instant commands using numeric parameters, like - on/off/cycle commands, were failing due to a bad value submitted - type (time instead of integer) Cherry-picked from - https://github.com/42ity/nut/pull/120 - -2020-12-29 Steve Magoun - - * drivers/macosx-ups.c: drivers/macosx-ups.c: Add ups.mfr and - ups.model legacy vars, fixes #949 - -2020-12-29 Jim Klimov - - * ci_build.sh: ci_build.sh: allow CI workers to say if they have - functional libgd (for the current compiler/ABI version) so whether - it should not be required - -2020-12-28 Jim Klimov - - * ci_build.sh: ci_build.sh: treat helper dirs (tmp/ .inst/ - CCACHE_DIR/) correctly even if named FS objects are symlinks to - dirs - * docs/Makefile.am, docs/man/Makefile.am: docs/{man/,}Makefile.am: - parameterize EGREP and call "file" sanity checks case-insensitive - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: detect Apple - LLVM as CLANG - -2020-12-27 Jim Klimov - - * configure.ac, docs/developers.txt: configure.ac - docs/developers.txt: add a "medium" warning pre-set difficulty - level - * configure.ac: configure.ac: document the choice rationale of no- - warning macros - * docs/developers.txt, docs/nut.dict: docs/developers.txt: document - the new --enable-warnings options - * configure.ac: configure.ac: define a clang-minimal warning preset - that our codebase already survives - * .travis.yml, configure.ac: Move comment about clang no-warning - selection from .travis.yml to configure.ac - * .travis.yml: .travis.yml: make use of BUILD_WARNFATAL=yes - BUILD_WARNOPT=hard to simplify the test setup specifications - -2020-12-26 Jim Klimov - - * configure.ac: configure.ac: hush clang warnings about nullptr in - C++ code (c++98 not compatible)) - * configure.ac: configure.ac: provide a hidden "gcc-legacy" warnings - option to cover previous behavior - * ci_build.sh: ci_build.sh: allow passing --enable-warnings=... and - --enable-Werror=... args via BUILD_WARNOPT and BUILD_WARNFATAL - envvars - * configure.ac: configure.ac: implement --enable-warnings=... and - --enable-Werror(=yes/no) to specify the presets we require to pass - * m4/nut_arg_with.m4: m4/nut_arg_with.m4: add NUT_ARG_ENABLE and - document the difference vs NUT_ARG_WITH - * ci_build.sh: ci_build.sh: support passing BUILD_SSL_ONCE=true to - only try whichever SSL implem is found, not both even if installed - * autogen.sh: autogen.sh: shell-check that generated configure script - is syntactically valid - * m4/nut_compiler_family.m4: m4/nut_compiler_family.m4: fix tracking - nut_cv_CLANGCC and determining CLANGCC=yes - * drivers/apcsmart.c, drivers/apcsmart.h: drivers/apcsmart.{c,h}: - drop custom debx()/logx()/fatx()/fate() macros in favor of NUT- - standard ones - -2020-12-02 Jim Klimov - - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix a few whitespaces - (indentation) - -2020-12-07 Jim Klimov - - * drivers/libusb.c: drivers/libusb.c: fix whitespace - -2020-12-25 Jim Klimov - - * common/common.c: common/common.c: fix initialization of a struct - timeval (initialize all fields) - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: fix - initialization of a info_lkp_t (initialize all fields) - * drivers/al175.c: drivers/al175.c: assert incoming numbers, error- - check the sprintf() result, and comment why - * drivers/blazer_usb.c, drivers/nutdrv_qx.c: nutdrv_qx blazer_usb: - report acceptable subdriver names in help() - -2020-12-25 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: - match_function_subdriver(): upsdebugx() device matching faults to - help troubleshoot driver setups - -2020-12-24 Jim Klimov - - * drivers/usb-common.c: usb-common.c: upsdebugx() device matching - faults to help troubleshoot driver setups - -2020-12-25 Jim Klimov - - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: add comment for per- - warning pragma naming - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: fix wrong long macro - name typo, for the pragmas gating - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.h: #include - (lost in cherrypick web) - * docs/nut.dict: docs/nut.dict: add Evgeny - * docs/nut.dict: docs/nut.dict: add maintainership - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: fix nesting of macros - for pragmas - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: use HAVE_PRAGMAS_FOR_GC - C_DIAGNOSTIC_IGNORED_TAUTOLOGICAL_CONSTANT_OUT_OF_RANGE_COMPARE - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce HAVE_PRAGMAS_FOR_ - GCC_DIAGNOSTIC_IGNORED_TAUTOLOGICAL_CONSTANT_OUT_OF_RANGE_COMPARE - (equivalent of HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TYPE_LIMITS on - some compilers) - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: comment in/out function - contexts for the pragma - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: do macro magic for - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_TYPE_LIMITS_BESIDEFUNC working - with older compilers - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: separate the support for - #pragma GCC diagnostic... inside vs outside function bodies - (gcc-4.4 and older are upset about "inside" case) - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: cast type for printing - speed_t on different OSes - -2020-12-07 Jim Klimov - - * drivers/bcmxcp_ser.c, drivers/bcmxcp_ser.h: - drivers/bcmxcp_ser.{c,h}: get_answer(): fix baud rate processing - into speed_t and size_t - -2020-12-23 Jim Klimov - - * docs/user-manual.txt: docs/user-manual.txt: small typo fix - * docs/nut.dict: nut.dict: update with project names that nut-website - spellchecking prefers to know - * docs/nut.dict: nut.dict: update with project names that nut-website - spellchecking prefers to know - * docs/nut.dict: nut.dict: update with project names that nut-website - spellchecking prefers to know - -2020-12-21 Jim Klimov - - * docs/acknowledgements.txt: docs/acknowledgements.txt: update - persons currently involved, new maintainer https://alioth- - lists.debian.net/pipermail/nut-upsdev/2020-November/007494.html - -2020-12-15 Bi11 - - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: Fix incorrect - fatal message for privProtocol - * tools/nut-scanner/scan_snmp.c: Fix incorrect usmAESPrivProtocol - import in nut-scanner In libnetsnmp, usmAES128PrivProtocol is a - pointer, while usmAESPrivProtocol is an array. This change is the - same as in c7cf507454bcf6f40b24b58e61c130c7772c5bf2. - -2020-12-15 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: Restore legacy Eaton ePDU - switchability info Use a hack to also have switchability for both - the unit and its outlets on legacy Eaton G2 ePDU Partially - cherry-picked from 42ity fork, and bumped to their faster moving - MIB mapping revision number. See - https://github.com/42ity/nut/pull/118 As for the behavior of the - fix: * on G2, the first outlet.switchable doesn't exist, so try - the 2nd, which is the ugly hack: try on the first outlet to see if - switchable * on G3, the first is good, so flag unique does the - rest Tested on MA G2 and G3. - -2020-11-30 Jim Klimov - - * drivers/dummy-ups.c: drivers/dummy-ups.c: use size_t where it - should be, for numargs-related parsing - * clients/upsclient.c: clients/upsclient.c: use size_t where it - should be, for numargs parsing - * server/netcmds.h, server/netget.c, server/netget.h, - server/netinstcmd.c, server/netinstcmd.h, server/netlist.c, - server/netlist.h, server/netmisc.c, server/netmisc.h, - server/netset.c, server/netset.h, server/netssl.c, server/netssl.h, - server/netuser.c, server/netuser.h, server/upsd.c, server/user.c: - server/*: numerous upsd commands: use size_t where it should be, - for numargs parsing - * server/sockdebug.c: server/sockdebug.c: use (and print) size_t - where it should be, for numargs parsing - * drivers/dstate.c: drivers/dstate.c: use size_t where it should be, - for numargs parsing - * clients/upssched.c: clients/upssched.c: use (and print) size_t - where it should be, for numargs parsing - * clients/upsmon.c: clients/upsmon.c: use size_t where it should be, - for numargs parsing - * clients/upsset.c: clients/upsset.c: use size_t where it should be, - for numargs parsing - * server/conf.c: server/conf.c: use size_t where it should be, for - numargs parsing - * drivers/snmp-ups.c: drivers/snmp-ups.c: whitespace fix - * drivers/snmp-ups.c: drivers/snmp-ups.c: use size_t where it should - be, for numargs parsing - * common/state.c, include/state.h, server/sstate.c: common and server - state.c: use size_t where it should be, for numargs and numflags - parsing - * drivers/clone-outlet.c: drivers/clone-outlet.c: use size_t where it - should be, for numargs parsing - * drivers/clone.c: drivers/clone.c: use size_t where it should be, - for numargs parsing - * server/netssl.c: server/netssl.c: avoid implicit size_t (arch- - dependent) vs. PRInt32 (Mozilla NSS) integer conversion - * clients/upsclient.c: clients/upsclient.c: avoid implicit size_t - (arch-dependent) vs. PRInt32 (Mozilla NSS) integer conversion - -2020-12-02 Jim Klimov - - * drivers/solis.c: Update solis.c Shuffle the comparison in the if- - clause to certainly bail out if we did not read from the port. - -2020-11-30 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: fix up int types to - avoid implicit conversions, and pre-initialize to avoid - uninitialized use - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: initialize - variable to avoid potential uninitialized use - * drivers/blazer.c: drivers/blazer.c: initialize variable to avoid - potential uninitialized use and convey an error if that happens - * drivers/powerpanel.c: drivers/powerpanel.c: initialize variable to - avoid potential uninitialized use and convey an error if that - happens - * drivers/solis.c: drivers/solis.c: initialize variable to avoid - potential uninitialized use and convey an error if that happens - * drivers/rhino.c: drivers/rhino.c: initialize variable to avoid - potential uninitialized use and convey an error if that happens - * drivers/bestfortress.c: drivers/bestfortress.c: initialize - variables to avoid potential uninitialized use and null-pointer - dereference if data processing fails - -2020-12-02 Jim Klimov - - * include/nut_float.h: Update nut_float.h Consider equality to - epsilon to be also treated as zero - * include/nut_float.h: Update nut_float.h Fix copyright line - -2020-11-30 Jim Klimov - - * drivers/cps-hid.c: drivers/cps-hid.c: employ nut_float.h for safer - floating point comparisons - * drivers/snmp-ups.c: drivers/snmp-ups.c: employ nut_float.h for - safer floating point comparisons - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: - employ nut_float.h for safer floating point comparisons - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: employ - nut_float.h for safer floating point comparisons - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: employ nut_float.h for - safer floating point comparisons - * drivers/blazer.c: drivers/blazer.c: employ nut_float.h for safer - floating point comparisons - * drivers/upscode2.c: drivers/upscode2.c: employ nut_float.h for - safer floating point comparisons - * drivers/solis.c: drivers/solis.c: employ nut_float.h for safer - floating point comparisons - * drivers/rhino.c: drivers/rhino.c: employ nut_float.h for safer - floating point comparisons - * drivers/metasys.c: drivers/metasys.c: employ nut_float.h for safer - floating point comparisons - * drivers/mge-hid.c: drivers/mge-hid.c: employ nut_float.h for safer - floating point comparisons - * configure.ac, include/Makefile.am, include/nut_float.h: Introduce - nut_float.h and check more carefully for presence of math.h and/or - float.h in the build system - * drivers/tripplitesu.c: drivers/tripplitesu.c: avoid "bad function - cast" by casting explicitly the return value of the function - * drivers/tripplite.c: drivers/tripplite.c: avoid "bad function cast" - by casting explicitly the return value of the function - * drivers/mge-xml.c: drivers/mge-xml.c: avoid "bad function cast" by - casting explicitly the return value of the function - * drivers/bestfortress.c: drivers/bestfortress.c: avoid "bad function - cast" by casting explicitly the return value of the function - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix snprintf() target - buffer size from bogus sizeof() determination (#926) - -2020-11-29 Jim Klimov - - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: fix const - qualifier usage - * drivers/snmp-ups.c: drivers/snmp-ups.c: fix const qualifier usage - * drivers/snmp-ups.h: drivers/snmp-ups.h: remove const qualifiers - from strings in snmp_info_t, we have code that writes into them - * drivers/dstate.c: drivers/dstate.c: dstate_tree_dump(): fix const - qualifier usage - * drivers/bestfcom.c: drivers/bestfcom.c: avoid "bad function cast" - by casting explicitly the return value of the function - * drivers/libshut.c: drivers/libshut.c: avoid alignment issues with - buffer used actually for different variable types - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_CAST_ALIGN to quiesce warnings - about a value we anyway receive a pointer to - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_CAST_ALIGN - -2020-11-25 Jim Klimov - - * drivers/solis.c: drivers/solis.c: avoid variable-length arrays, - their support became optional after C99 - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: avoid variable-length - arrays, their support became optional after C99 - * drivers/apcsmart.c: drivers/apcsmart.c: avoid variable-length - arrays, their support became optional after C99 - * drivers/rhino.c: drivers/rhino.c: upsdrv_shutdown(): use sendshut() - * drivers/rhino.c: drivers/rhino.c: sendshut(): handle negative - returns from send_command() - * drivers/rhino.c: drivers/rhino.c: fix mismatched signedness in - comparison - * drivers/rhino.c: drivers/rhino.c: avoid variable-length arrays, - their support became optional after C99 - -2020-11-29 Jim Klimov - - * server/sstate.c: server/sstate.c: sstate_dead(): do not shadow - global varname "maxage" with same-named func argument - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_ups_get(): do not shadow - function-scope varname "value" with temporary-scope namesake - * drivers/snmp-ups.c: drivers/snmp-ups.c: snmp_ups_walk(): do not - shadow global varnames "(input|output|bypass)_phases" with same- - named func local variables - * drivers/upscode2.c: drivers/upscode2.c: check_uppm(): do not shadow - function-scope varname "val" with temporary-scope namesake - * drivers/libhid.c: drivers/libhid.c: new_report_buffer(): do not - shadow global varname "pDesc" with same-named func argument - * drivers/libshut.c: drivers/libshut.c: do not shadow global varnames - "upsfd" and "device_path" with same-named func arguments in - numerous routines - * drivers/dummy-ups.c: drivers/dummy-ups.c: parse_data_file(): do not - shadow global varname "upsfd" with same-named func argument (unused - for good measure) - * clients/upsset.c: clients/upsset.c: print_rw(): do not shadow - global varname "upsname" with same-named func argument - * drivers/riello_usb.c: drivers/riello_usb.c: fix array initializers - for sentinel entries - * drivers/blazer_usb.c: drivers/blazer_usb.c: fix array initializers - for sentinel entries - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: fix - array initializers for sentinel entries - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: fix array initializers - for sentinel entries - * drivers/apcsmart_tabs.c: drivers/apcsmart_tabs.c: fix array - initializers for sentinel entries - * drivers/apcsmart_tabs.c: drivers/apcsmart_tabs.c: fix numeric 0 - into pointer NULL - * drivers/apcsmart.c: drivers/apcsmart.c: fix array initializers for - sentinel entries - * drivers/blazer_ser.c: drivers/blazer_ser.c: fix array initializers - for sentinel entries - * drivers/blazer.c: drivers/blazer.c: fix array initializers for - sentinel entries - * drivers/powerp-txt.c: drivers/powerp-txt.c: fix array initializers - for sentinel entries - * drivers/powerp-bin.c: drivers/powerp-bin.c: fix array initializers - for sentinel entries - * drivers/mge-hid.c: drivers/mge-hid.c: fix array initializers for - sentinel entries - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: upsdrv_initinfo(): - fix array initializer; small whitespace clean-up - * server/upsd.c: server/upsd.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * drivers/powerp-bin.c: drivers/powerp-bin.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * drivers/upscode2.c: drivers/upscode2.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT to - reinforce the defensive programming patterns - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_ASSIGN_ENUM - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * drivers/dstate.c: drivers/dstate.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * drivers/main.c: drivers/main.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * clients/upssched.c: clients/upssched.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * clients/upsmon.c: clients/upsmon.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * server/upsd.c: server/upsd.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES to quiesce a - system definition of signal routines - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_ASSIGN_ENUM - * tools/nut-scanner/nutscan-ip.c: tools/nut-scanner/nutscan-ip.c: - whitespace/formatting fixes - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: - whitespace/formatting fixes - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_COVERED_SWITCH_DEFAULT - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_STRICT_PROTOTYPES - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_ASSIGN_ENUM to quiesce a - thirdparty-strange usecase of enum - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_ASSIGN_ENUM - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - whitespace/formatting fixes - * tools/nut-scanner/nutscan-ip.h: tools/nut-scanner/nutscan-ip.h: - whitespace/formatting fixes - * tools/nut-scanner/nutscan-device.c: tools/nut-scanner/nutscan- - device.c: whitespace/formatting fixes - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - drop semicolons after scope braces - -2020-11-28 Jim Klimov - - * ci_build.sh: ci_build.sh: consider "gdlib" pkg-config presence - equivalent to "libgd" There is a discrepancy between OS distro - packaging names and the delivered .pc file name... - * .travis.yml: .travis.yml: mark "gnu*-nowarn-x86-32bit" test cases - evergreen - -2020-11-27 Jim Klimov - - * drivers/bcmxcp.c, drivers/bcmxcp.h: drivers/bcmxcp.{h,c}: typo fix - CAPASITOR=>CAPACITOR - * tests/cpputest.cpp: cpputest.cpp: be sure to be able to handle - exception objects - -2020-11-26 Jim Klimov - - * drivers/blazer_usb.c: drivers/blazer_usb.c: annotate - #if/#else/#endif relevant to TESTING builds - * scripts/Solaris/precheck.py: scripts/Solaris/precheck.py: quote - shell vars, and report mismatches if any - -2020-11-27 Jim Klimov - - * .travis.yml: .travis.yml: xenial@s390x does not have "time" for us - (missed one beat) - -2020-11-26 Jim Klimov - - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: copy-paste - typo fix about unreachable code - * drivers/libusb.c: drivers/libusb.c: copy-paste typo fix about - unreachable code - -2020-11-27 Jim Klimov - - * .travis.yml: .travis.yml: from 32-bit build envs, drop amd64 libs - that confuse the linker - * .travis.yml: .travis.yml: tell the linker to go 32-bit too - -2020-11-23 Jim Klimov - - * .travis.yml: .travis.yml: work around poor packaging of multilib - perl in ubuntu - * .travis.yml: .travis.yml: define a &deps_driverlibs_cross_i386 list - for cross-builds (x86 32-bit) - * .travis.yml: .travis.yml: for x86-32 builds with gnu17 standard, - try to change install order for g++-multilib - * .travis.yml: .travis.yml: for x86-32 builds with gnu99 standard, - avoid g++-multilib - -2020-11-20 Jim Klimov - - * .travis.yml: .travis.yml: explicit support on 64-bit Debianish - systems for "gcc -m32" at least appears with gcc-multilib and - g++-multilib packages - -2020-11-03 Jim Klimov - - * .travis.yml: .travis.yml: comment for exploring ways to get 32-bit - travis builds - * .travis.yml: Issue #823 follow-up: add explicitly x86 32-bit builds - in Travis CI - -2020-11-27 Jim Klimov - - * ci_build.sh: ci_build.sh: relax the naming of libgd options seen in - the wild - -2020-11-23 Jim Klimov - - * ci_build.sh: ci_build.sh: warn if libgd is not seen and a "default- - all-errors" build might go without CGI binaries - -2020-11-17 Jim Klimov - - * drivers/phoenixcontact_modbus.c: drivers/phoenixcontact_modbus.c: - mrir(): do not shadow global varname "ctx" with same-named func - argument - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: possibly_supported(): - do not shadow global varname "hd" with func argument "hd" - -2020-11-25 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: drop semicolons after scope braces - * tools/nut-scanner/nutscan-device.c: tools/nut-scanner/nutscan- - device.c: drop semicolons after scope braces - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: drop - semicolons after scope braces - * drivers/riello.c: drivers/riello.c: drop extra semicolons - * drivers/bcmxcp.c: drivers/bcmxcp.c: drop semicolons after scope - braces - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: drop - semicolons after scope braces - * drivers/powercom.c: drivers/powercom.c: drop semicolons after scope - braces - * drivers/dstate.c: drivers/dstate.c: declare a macro for scoped - block in a way that semicolon may follow - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - mark up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: mark - up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: mark up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: mark - up NUT_UNUSED_VARIABLEs - -2020-11-27 Jim Klimov - - * clients/Makefile.am: clients/Makefile.am: - AM_CXXFLAGS+=-I$(top_srcdir)/include - -2020-11-25 Jim Klimov - - * tests/example.cpp, tests/nutclienttest.cpp: tests/nutclienttest.cpp - example.cpp: wrap into - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_GLOBAL_CONSTRUCTORS et al to - avoid warnings for CPPUnit macro implementation (boils down to - static vars) - * tests/cpputest.cpp, tests/example.cpp, tests/nutclienttest.cpp, - tests/nutlogtest.c: tests/*.{c,cpp}: update legaleze headings - * tests/example.cpp: tests/example.cpp: fix casting - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: fix CPPUNIT - assert after nullptr - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: fix NULL => - nullptr - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: fix casting - * tests/Makefile.am: tests/Makefile.am: fix delivery and tracking of - CPPUNITTEST(ER)SRC - * tests/nutlogtest.c: tests/nutlogtest.c: add more tests to - investigate NUT_STRARG() behaviors - * configure.ac, include/str.h, m4/ax_c_pragmas.m4: - m4/ax_c_pragmas.m4, str.h => common.h: introduce - HAVE_PRINTF_STRING_NULL and NUT_STRARG(x) macro (for issue #904) - * tests/nutlogtest.c: tests/nutlogtest.c: use - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_FORMAT_OVERFLOW detection to - quiesce warnings about "%s" resolving from NULL pointer First shot - at issue NUT #904 - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: introduce - HAVE_PRAGMA_GCC_DIAGNOSTIC_IGNORED_FORMAT_OVERFLOW detection First - shot at issue NUT #904 - * tests/cpputest.cpp: tests/cpputest.cpp: print final result code - more comprehensibly (especially since process exit code is - inverted) - * clients/Makefile.am: clients/Makefile.am: be sure to use NUT - libcommon for CXX client builds - * clients/nutclient.cpp, clients/nutclient.h: - clients/nutclient.{h,cpp}: move virtual destructors of exception - classes into CPP file to bolt a linker unit (avoid Weak Vtables - warnings and related build overheads) - * clients/nutclient.cpp: clients/nutclient.cpp: (presumed) typo fix - - line ended with comma not semicolon - * clients/nutclient.cpp: clients/nutclient.cpp: quiesce warning and - make visible the unused variable - * clients/Makefile.am: clients/Makefile.am: define HAVE_NUTCOMMON for - NUT C++ builds - * clients/nutclient.cpp: clients/nutclient.cpp: use pragmas for - -Wexit-time-destructors and -Wglobal-constructors handling for an - std:string static variable - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: define pragmas for -Wexit- - time-destructors and -Wglobal-constructors handling - * clients/nutclient.cpp, clients/nutclient.h: - clients/nutclient.{h,cpp}: align strarr_alloc() type with xcalloc() - it uses => size_t - * clients/nutclient.cpp: clients/nutclient.cpp: fix old-style C casts - into static_cast<>s - * clients/nutclient.cpp, clients/nutclient.h: clients/nutclient.cpp: - for (clang) c++ builds with C++11/17/20, avoid warnings about C++98 - compatibility that we do not claim anyway - quiesce in C++ source - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: for (clang) c++ builds with - C++11/17/20, avoid warnings about C++98 compatibility that we do - not claim anyway - check that we have pragmas for that - * clients/nutclient.h: clients/nutclient.h: align method docs with - param names - -2020-11-26 Bastien Nocera - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: Reindent upower rules - header This piece of the code was really confusing because it - looked like, at a glance (and at more than a glance), that the line - which we'd have read in the generated rules file was commented out. - Turns out that beginning of lines in the generated rules could be - in the middle of the line in the code that generated it. Reindent - everything so that each line in the output corresponds to one line - in the input, except for empty lines. There are no differences in - output between the versions before and after this change. - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: Simplify exit path Why - "!= usb" when we're already checking for usb and other values - above? Always go to the end label if we didn't already jump to the - section containing the actual rules. - -2020-11-25 Jim Klimov - - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: do - not wrap variable definitions into parentheses like function - pointers - * drivers/al175.c: drivers/al175.c: declare function(void) prototypes - explicitly - * drivers/netxml-ups.c: drivers/netxml-ups.c: - netxml_alarm_subscribe(): explicitly cast range-limited int - conversions - * drivers/powercom.c: drivers/powercom.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * drivers/powerman-pdu.c: drivers/powerman-pdu.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/powercom.c: drivers/powercom.c: annotate upsdrv_shutdown() - with noreturn attr - * drivers/riello_usb.c: drivers/riello_usb.c: annotate shutdown*() - with noreturn attr - * drivers/powercom.c: drivers/powercom.c: annotate shutdown*() with - noreturn attr - * drivers/al175.c: drivers/al175.c: annotate upsdrv_shutdown() with - noreturn attr - * clients/upsmon.c: clients/upsmon.c: annotate forceshutdown() with - noreturn attr - * clients/upsimage.c: clients/upsimage.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * clients/upsimage.c: clients/upsimage.c: annotate lots of routines - with noreturn attr - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - mark up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: mark - up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: mark up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: mark - up NUT_UNUSED_VARIABLEs - * drivers/netxml-ups.c: drivers/netxml-ups.c: align method docs with - param names - * drivers/netxml-ups.c: drivers/netxml-ups.c: align method docs with - supported keywords - * drivers/al175.c: drivers/al175.c: align method docs with param - names - * drivers/hidparser.c: drivers/hidparser.c: satisfy pedantic macro - parser (defined vs. used value) - * drivers/libshut.c: drivers/libshut.c: satisfy pedantic macro parser - (defined vs. used value) - -2020-11-26 Jim Klimov - - * drivers/libusb.c: drivers/libusb.c: copy-paste typo fix about - unreachable code - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: copy-paste - typo fix about unreachable code - -2020-11-25 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - -2020-11-26 Jim Klimov - - * drivers/nutdrv_qx_blazer-common.c: drivers/nutdrv_qx_blazer- - common.c: remove overly-eager protection from nonliteral format - strings - -2020-11-26 Bastien Nocera - - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: Fix handling of "bind" - events See https://lwn.net/Articles/837033/ for an in-depth - explanation of how "bind" events should be handled in udev rules. - In short: " The ACTION line causes the entire file to be skipped - for anything other than ADD or CHANGE events; in particular, that - is what will happen with BIND events. That will cause properties - associated with those events to be lost — and the device in - question to be set up improperly (if at all). " - -2020-11-26 Jim Klimov - - * .travis.yml: .travis.yml: mark "gnu*-nowarn-s390x" test cases - evergreen - -2020-11-25 Jim Klimov - - * .travis.yml: .travis.yml: xenial@s390x does not have "time" for us - -2020-11-24 Jim Klimov - - * .travis.yml: Issue #823 follow-up: add s390x (BigEndian) builds in - Travis CI - -2020-11-25 Jim Klimov - - * drivers/riello_usb.c: drivers/riello_usb.c: do not hijack system - "errno" definition, and no use for local var of that name found - anyway - * drivers/powerman-pdu.c: drivers/powerman-pdu.c: do not assign - invalid value not from enum range, especially when for no reason - other than to have an un-used initial value - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: cover all values - of enum in a switch() Note: everything not covered before this PR - got aliased into default cases. I do not know the hardware and - models to rule this out otherwise, possibly assignments of binary - and/or smart protocol (lack of?) support are now wrong. - * drivers/powerp-bin.c: drivers/powerp-bin.c: cover all values of - enum in a switch() - * drivers/bestfcom.c: drivers/bestfcom.c: do not "break" just after - "fatalx()" - * drivers/bcmxcp.c: drivers/bcmxcp.c: do not "break" just after - "return" - * common/strerror.c: common/strerror.c: do not warn about unreachable - code in the web of ifdef built blocks - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: fix indentation - -2020-11-20 Jim Klimov - - * common/upsconf.c: common/upsconf.c: conf_args(): fix numargs type - * common/str.c: common/str.c: str_to_{u,}short{,_strict}() routines: - explicit cast from temporary variable to return-value type - * common/common.c: common/common.c: common/common.c: snprintfcat(): - replace asserts by negative returns (and errno where applicable) - * common/common.c: common/common.c: common/common.c: snprintfcat(): - sort out the messy return types (avoid implicit cast in - verification assert) - -2020-11-25 Jim Klimov - - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: do not warn - about nonliteral format string in this case - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: do not warn about - nonliteral format string in this case - * drivers/snmp-ups.c: drivers/snmp-ups.c: various routines: do not - warn about nonliteral format string in these cases - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: - various routines: do not warn about nonliteral format string in - these cases - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: do not warn about - nonliteral format string in this case - * drivers/powerp-bin.c: drivers/powerp-bin.c: do not warn about - nonliteral format string in this case - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: do not warn about - nonliteral format string in this case - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: do not warn about - nonliteral format string in these cases - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: rename scope-local - 'val' variables that shadow another from same routine - * drivers/belkinunv.c: drivers/belkinunv.c: do not warn about - nonliteral format string in this case - * drivers/bcmxcp.c: drivers/bcmxcp.c: do not warn about nonliteral - format string in this case - * drivers/serial.c: drivers/serial.c: various routines: do not warn - about nonliteral format string in these cases - * clients/upsset.c: clients/drivers: error_page(): do not warn about - nonliteral format string in this case - * clients/upsmon.c: clients/drivers: do_notify(): do not warn about - nonliteral format string in this case - * clients/upsimage.c: clients/drivers: drawbar() noimage(): do not - warn about nonliteral format string in this case - * clients/upsclient.c: clients/upsclient.c: build_cmd(): do not warn - about nonliteral format string in this case - * clients/upsclient.c: clients/upsclient.c: upscli_strerror(): do not - warn about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * clients/nutclient.h: clients/nutclient.h: declare strarr routines - to be seen - -2020-11-25 Jim Klimov - - * tools/nut-scanner/nutscan-display.c: tools/nut-scanner/nutscan- - display.c: declare nutscan_device_type_string[] file-local variable - as static, and fix its indentation - -2020-11-23 Jim Klimov - - * drivers/snmp-ups.c, drivers/snmp-ups.h: drivers/snmp-ups*.{c,h}: - export *_info vars to avoid not-used allegations - * drivers/apcupsd-ups.h: drivers/apcupsd-ups.h: comment away - status_info[] as currently un-used - * drivers/riello.c, drivers/riello.h, drivers/riello_ser.c, - drivers/riello_usb.c: drivers/riello*.{c,h}: properly export - variables shared between driver subtypes - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: comment away - ipmi_config as currently un-used - * drivers/mge-xml.c, drivers/netxml-ups.c, drivers/netxml-ups.h: - drivers/netxml/mge-xml*.{c,h}: export shutdown_duration more - usefully - * drivers/riello.h, drivers/riello_ser.c, drivers/riello_usb.c: - drivers/riello*.{c,h}: export get_ups_statuscode() to avoid not- - used allegations - * drivers/libshut.c: drivers/libshut.c: fix pre-declaration of - LIBshut_set_report() - * drivers/al175.c: drivers/al175.c: declare ACT methods to keep - compiler happy even if some are not currently used - * drivers/bcmxcp.c: drivers/bcmxcp.c: comment away FreqTol as - currently un-used - * tools/nut-scanner/nutscan-display.c: tools/nut-scanner/nutscan- - display.c: use nut-scan.h header - * tools/nut-scanner/nutscan-init.c: tools/nut-scanner/nutscan-init.h: - use its own header - -2020-11-22 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: expose load_library() routine - -2020-11-23 Jim Klimov - - * server/netcmds.h: server/netcmds.h: declare function(non-void!) - prototype explicitly - -2020-11-22 Jim Klimov - - * server/netcmds.h: server/netcmds.h: declare function(void) - prototype explicitly - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - expose load_library() routine - * clients/upslog.h: clients/upslog.h: declare function(non-void*) - prototype explicitly - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: declare multiple file-local routines - as static - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - expose load_library() routine - * tools/nut-scanner/scan_usb.c: tools/nut-scanner/scan_usb.c: expose - load_library() routine - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: - declare a file-local routine as static - * tools/nut-scanner/scan_nut.c: tools/nut-scanner/scan_nut.c: expose - load_library() routine - * tools/nut-scanner/scan_ipmi.c: tools/nut-scanner/scan_ipmi.c: - expose load_library() routine - * drivers/nut-ipmi.h: drivers/nut-ipmi.h: declare function(void) - prototype explicitly - * drivers/apcsmart.c: drivers/apcsmart.c: declare multiple file-local - routines as static - * drivers/powercom.c: drivers/powercom.c: declare multiple file-local - variables as static - * drivers/oneac.c: drivers/oneac.c: declare multiple file-local - routines as static - * drivers/libshut.c: drivers/libshut.c: declare multiple file-local - routines as static - * drivers/microdowell.c: drivers/microdowell.c: rectify whitespaces - (indentations and blank lines) - * drivers/microdowell.c: drivers/microdowell.c: declare multiple - file-local routines as static - * drivers/microdowell.c: drivers/microdowell.c: declare a driver- - local variable as static - * drivers/metasys.c: drivers/metasys.c: declare multiple file-local - routines as static - * drivers/isbmex.c: drivers/isbmex.c: declare multiple file-local - routines as static - * drivers/gamatronic.c: drivers/gamatronic.c: do not mark common - routine as static - * drivers/gamatronic.c: drivers/gamatronic.c: declare multiple file- - local routines as static - * drivers/bestfortress.c: drivers/bestfortress.c: declare a file- - local routine as static - * drivers/bestfcom.c: drivers/bestfcom.c: declare multiple file-local - routines as static - * drivers/bestfcom.c: drivers/bestfcom.c: declare a driver-local - variable as static - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: declare a file-local - routine as static - * drivers/al175.c: drivers/al175.c: declare multiple file-local - routines as static - * server/conf.c: server/conf.c: declare a file-local variable as - static - * server/user.c: server/user.c: declare multiple file-local variables - as static, and fix their indentation - * server/upsd.c: server/upsd.c: declare multiple file-local routines - as static - * server/upsd.c: server/upsd.c: declare multiple file-local variables - as static, and fix their indentation - * server/netcmds.h: server/netcmds.h: declare a file-local variable - as static - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: declare a file-local variable as static - * tools/nut-scanner/nut-scan.h: tools/nut-scanner/nut-scan.h: declare - function(void) prototype explicitly - * tools/nut-scanner/nutscan-device.h: tools/nut-scanner/nutscan- - device.h: declare function(void) prototype explicitly - * tools/nut-scanner/scan_snmp.c: tools/nut-scanner/scan_snmp.c: - declare multiple file-local variables as static - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - declare a file-local routine as static - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - declare multiple file-local variables as static - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: declare - function(void) prototype explicitly - * drivers/nut-libfreeipmi.c: drivers/nut-libfreeipmi.c: declare - multiple file-local variables as static - * drivers/nut-ipmipsu.c: drivers/nut-ipmipsu.c: declare multiple - file-local variables as static - * drivers/powerman-pdu.c: drivers/powerman-pdu.c: declare multiple - file-local variables as static - * drivers/netxml-ups.c: drivers/netxml-ups.c: declare a driver-local - variable as static - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: declare multiple file- - local variables as static - * drivers/apc-hid.c: drivers/apc-hid.c: declare multiple file-local - variables as static - * drivers/emerson-avocent-pdu-mib.c: drivers/emerson-avocent-pdu- - mib.c: declare multiple file-local variables as static - * drivers/masterguard.c: drivers/masterguard.c: declare multiple - file-local variables as static - * drivers/Makefile.am, drivers/bcmxcp_ser.c, drivers/bcmxcp_ser.h, - tools/nut-scanner/scan_eaton_serial.c: Introduce bcmxcp_ser.h to - provide as extern some variables from the driver also used in nut- - scanner - * drivers/raritan-px2-mib.c: drivers/raritan-px2-mib.c: declare a - driver-local variable as static - * drivers/snmp-ups.h: clients/snmp-ups.h: declare some setter/getter - routines to be seen - * drivers/snmp-ups.h: drivers/snmp-ups.h: declare function(void) - prototype explicitly - * drivers/snmp-ups.c: drivers/snmp-ups.c: declare multiple file-local - routines as static - * drivers/snmp-ups.c: drivers/snmp-ups.c: declare multiple file-local - variables as static - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: declare - multiple file-local variables as static - * drivers/riello_usb.c: drivers/riello_usb.c: declare multiple file- - local routines as static - * drivers/riello_usb.c: drivers/riello_usb.c: declare multiple file- - local variables as static - * drivers/riello_ser.c: drivers/riello_ser.c: declare multiple file- - local routines as static - * drivers/riello_ser.c: drivers/riello_ser.c: declare multiple file- - local variables as static - * drivers/riello.h: drivers/riello.h: declare function(void) - prototype explicitly - * drivers/riello.c: drivers/riello.c: declare multiple file-local - variables as static - * drivers/apcupsd-ups.h: drivers/apcupsd-ups.h: declare a driver- - local variable as static - * drivers/apcsmart-old.h: drivers/apcsmart-old.h: declare multiple - file-local variables as static - * drivers/victronups.c: drivers/victronups.c: declare multiple file- - local variables as static - * drivers/mge-hid.c: drivers/mge-hid.c: declare multiple file-local - variables as static - * drivers/mge-hid.c: drivers/mge-hid.c: end all info_lkp_t arrays - with sentinel entries - * drivers/apc-hid.h, drivers/libhid.h: Move "extern int - max_report_size;" declaration from drivers/apc-hid.h to more - suitable drivers/libhid.h - * drivers/mge-utalk.c: drivers/mge-utalk.c: declare a driver-local - variable as static - * drivers/mge-utalk.h: drivers/mge-utalk.h: declare a driver-local - variable as static - * drivers/metasys.c: drivers/metasys.c: declare multiple file-local - variables as static - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: declare multiple - file-local routines as static - -2020-11-20 Jim Klimov - - * drivers/genericups.h: drivers/genericups.h: declare a driver-local - variable as static - * drivers/gamatronic.h: drivers/gamatronic.h: declare multiple file- - local variables as static - * drivers/bestuferrups.c: drivers/bestuferrups.c: declare a driver- - local variable as static - * drivers/dummy-ups.c: drivers/dummy-ups.c: declare multiple file- - local variables as static - * drivers/dummy-ups.h: drivers/dummy-ups.h: declare a driver-local - variable as static - * drivers/bestuferrups.c: drivers/bestuferrups.c: declare a file- - local variable as static - * drivers/bestfortress.c: drivers/bestfortress.c: declare a file- - local variable as static - * drivers/belkinunv.c: drivers/belkinunv.c: declare multiple file- - local variables as static - * drivers/bcmxcp_ser.c: drivers/bcmxcp_ser.c: declare multiple file- - local variables as static - * drivers/bcmxcp.c: drivers/bcmxcp.c: declare multiple file-local - variables as static - * drivers/main.c: drivers/main.c: declare multiple file-local - variables as static, and fix their indentation - * clients/upssched.c: clients/upssched.c: declare multiple file-local - variables as static, and fix their indentation - * clients/upsmon.h: clients/upsmon.h: declare file-local variable as - static: struct notifylist[] - * clients/upsset.c: clients/upsset.c: declare multiple file-local - variables as static, and fix their indentation - * clients/upsimagearg.h: clients/upsimagearg.h: declare file-local - variable as static: struct imgarg[] - * clients/status.h: clients/status.h: declare file-local variable as - static: struct stattab[] - * clients/upslog.h: clients/upslog.h: declare file-local variable as - static: struct logcmds[] - * clients/upsclient.c: clients/upsclient.c: declare file-local - variable as static: struct upscli_errlist[] - -2020-11-17 Jim Klimov - - * drivers/riello_ser.c: drivers/riello_ser.c: riello_serialcomm(): do - not shadow global varname "bufIn" with same-named func argument - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: shut_synchronise(): do not shadow - global varnames "upsfd" (from scan_eaton_serial.c and main.c) with - func argument "upsfd" - -2020-11-25 Jim Klimov - - * clients/nutclient.h, tests/nutclienttest.cpp: - tests/nutclienttest.cpp: add tests on Device, Variable and Command - copying by assignment and by constructor - -2020-11-24 Jim Klimov - - * clients/nutclient.cpp: clients/nutclient.cpp: whitespace fixes - (indentations, blank lines) - * clients/nutclient.h: clients/nutclient.h: whitespace fixes - (indentations) - -2020-11-17 Jim Klimov - - * clients/nutclient.cpp, clients/nutclient.h: nutclient.cpp: match a - copy constructor with a copy assignment operator (Device, Variable, - Command classes) - -2020-11-18 Jim Klimov - - * drivers/tripplite.c: drivers/tripplite.c: upsdrv_initinfo(): use a - literal format string - -2020-11-22 Jim Klimov - - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: fix diags pragmas to use our configured-support macros - for cleaner fencing (nonliteral format strings) - -2020-11-18 Jim Klimov - - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: do not warn about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/nutdrv_qx_voltronic-qs-hex.c: drivers/nutdrv_qx_voltronic- - qs-hex.c: fix diags pragmas to use our configured-support macros - for cleaner fencing (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/nutdrv_qx_voltronic-qs-hex.c: drivers/nutdrv_qx_voltronic- - qs-hex.c: various routines: do not warn about nonliteral format - string in these cases - -2020-11-22 Jim Klimov - - * drivers/nutdrv_qx_voltronic-qs.c: drivers/nutdrv_qx_voltronic-qs.c: - fix diags pragmas to use our configured-support macros for cleaner - fencing (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/nutdrv_qx_voltronic-qs.c: drivers/nutdrv_qx_voltronic-qs.c: - do not warn about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/nutdrv_qx_mecer.c: drivers/nutdrv_qx_mecer.c: fix diags - pragmas to use our configured-support macros for cleaner fencing - (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/nutdrv_qx_mecer.c: drivers/nutdrv_qx_mecer.c: various - routines: do not warn about nonliteral format string in these cases - -2020-11-22 Jim Klimov - - * drivers/nutdrv_qx_blazer-common.c: drivers/nutdrv_qx_blazer- - common.c: fix diags pragmas to use our configured-support macros - for cleaner fencing (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/nutdrv_qx_blazer-common.c: drivers/nutdrv_qx_blazer- - common.c: various routines: do not warn about nonliteral format - string in these cases - -2020-11-22 Jim Klimov - - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: fix diags - pragmas to use our configured-support macros for cleaner fencing - (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/nutdrv_qx_bestups.c: drivers/nutdrv_qx_bestups.c: various - routines: do not warn about nonliteral format string in these cases - -2020-11-22 Jim Klimov - - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: fix diags pragmas to - use our configured-support macros for cleaner fencing (nonliteral - format strings) - -2020-11-18 Jim Klimov - - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: do not warn about - nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/blazer.c: drivers/blazer.c: fix diags pragmas to use our - configured-support macros for cleaner fencing (nonliteral format - strings) - -2020-11-18 Jim Klimov - - * drivers/blazer.c: drivers/blazer.c: various routines: do not warn - about nonliteral format string in these cases - -2020-11-22 Jim Klimov - - * drivers/powerp-txt.c: drivers/powerp-txt.c: fix diags pragmas to - use our configured-support macros for cleaner fencing (nonliteral - format strings) - -2020-11-18 Jim Klimov - - * drivers/powerp-txt.c: drivers/powerp-txt.c: do not warn about - nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/mge-utalk.c: drivers/mge-utalk.c: fix diags pragmas to use - our configured-support macros for cleaner fencing (nonliteral - format strings) - -2020-11-18 Jim Klimov - - * drivers/mge-utalk.c: drivers/mge-utalk.c: various routines: do not - warn about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: fix diags pragmas - to use our configured-support macros for cleaner fencing - (nonliteral format strings) - -2020-11-18 Jim Klimov - - * drivers/bestfortress.c: drivers/bestfortress.c: setinfo_float(): - comment about a casting problem, and do not warn about nonliteral - format string in this case - * drivers/bestfortress.c: drivers/bestfortress.c: do not warn about - nonliteral format string in this case - -2020-11-22 Jim Klimov - - * drivers/serial.c: drivers/serial.c: fix diags pragmas to use our - configured-support macros for cleaner fencing (nonliteral format - strings) - -2020-11-18 Jim Klimov - - * drivers/serial.c: drivers/serial.c: do not warn about nonliteral - format string in this case - -2020-11-22 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: fix diags pragmas to use our - configured-support macros for cleaner fencing (nonliteral format - strings) - -2020-11-18 Jim Klimov - - * drivers/dstate.c: drivers/dstate.c: various routines: do not warn - about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * clients/upssched.c: clients/upssched.c: fix diags pragmas to use - our configured-support macros for cleaner fencing (nonliteral - format strings) - -2020-11-18 Jim Klimov - - * clients/upssched.c: clients/upssched.c: send_to_one(): do not warn - about nonliteral format string in this case - -2020-11-22 Jim Klimov - - * common/common.c: common/common.c: fix diags pragmas to use our - configured-support macros for cleaner fencing (nonliteral format - strings) - -2020-11-20 Jim Klimov - - * common/common.c: common/common.c: various routines: do not warn - about nonliteral format string in these cases - -2020-11-17 Jim Klimov - - * common/common.c: common/common.c: snprintfcat(): do not warn about - nonliteral format string in this case - -2020-11-24 Jim Klimov - - * .travis.yml: .travis.yml: run gnu17-clang-8-nowarn-ARM-64bit case - in fightwarn branches - * .travis.yml: .travis.yml: annotate clearer the different - allowed_failure OS build sections - * .travis.yml: .travis.yml: point all GCC -std=*++99 to *-98 I - thought it was an older GCC quirk, but even new ones complain: - g++: error: unrecognized command-line option '-std=gnu++99'; did - you mean '-std=gnu++98'? g++ (FreeBSD Ports Collection) 10.0.0 - 20191222 (experimental) Copyright (C) 2019 Free Software - Foundation, Inc. This is free software; see the source for copying - conditions. There is NO warranty; not even for MERCHANTABILITY or - FITNESS FOR A PARTICULAR PURPOSE. - -2020-11-23 Jim Klimov - - * .travis.yml: .travis.yml: mark gnuXX-gcc-*-arm64 test cases as - evergreen - * .travis.yml: .travis.yml: separate ARM64 test case matrices into - ..._viable and ..._fatal subsets - * .travis.yml: .travis.yml: introduce - NUT_MATRIX_TAG="gnu17-gcc-9-nowarn-ARM-64bit" test case - * .travis.yml: .travis.yml: drop gcc-multilib in ARM builds, seems - missing in Debian - * .travis.yml: .travis.yml: drop arm-32bit builds, seems a no-go on - Travis quickly - * .travis.yml: Issue #823 follow-up: add ARM 32-bit and 64-bit builds - in Travis CI - -2020-11-22 Jim Klimov - - * drivers/gamatronic.c: drivers/gamatronic.c: rectify whitespaces - (indentations and blank lines) - -2020-11-20 Jim Klimov - - * drivers/gamatronic.c: drivers/gamatronic.c: fix indentation and - scope whitespace - * drivers/gamatronic.c: drivers/gamatronic.c: fix trailing whitespace - * common/common.c: common/common.c: cleaner macro processing for - BUILD_64 - -2020-11-22 Jim Klimov - - * include/timehead.h: include/timehead.h: satisfy pedantic macro - parser (defined vs. used value) - -2020-11-23 Jim Klimov - - * m4/nut_report_feature.m4: m4/nut_report_feature.m4: report the - compiler tools and flags ultimately applied to this build - * .gitignore: GitIgnore configure-test.docbuild* dirs - * .travis.yml: .travis.yml: separate the matrix for - _matrix_freebsd_gnustd_warn_viable and ..._fatal cases - * .travis.yml: .travis.yml: mark "gnuXX-gcc-freebsd-warn" cases as - evergreen to keep that way - * .travis.yml: .travis.yml: on freebsd, `pkg install libgd` - explicitly (needs sudo) - * .travis.yml: .travis.yml: introduce freebsd test cases with - warnings (typo fix) - -2020-11-22 Jim Klimov - - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: alarm if bogus tests did - not fail - * m4/ax_c_pragmas.m4: m4/ax_c_pragmas.m4: adapt to gcc vs clang CLI - capabilities - * configure.ac, m4/nut_compiler_family.m4: Introduce - m4/nut_compiler_family.m4 detection - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: fix diags pragmas - to use our configured-support macros for cleaner fencing - (unreachable code) - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: fix diags - pragmas to use our configured-support macros for cleaner fencing - (unreachable code) - * drivers/libusb.c: drivers/libusb.c: fix diags pragmas to use our - configured-support macros for cleaner fencing (unreachable code) - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: fix diags pragmas - to use our configured-support macros for cleaner fencing - (unreachable code) - * configure.ac, m4/ax_c_pragmas.m4: Introduce m4/ax_c_pragmas.m4 - * .travis.yml: .travis.yml: curiously, gcc-7 in Travis does not alias - -std=gnu++99 to canonic gnu++98 - * autogen.sh: autogen.sh: do not hide the progress of autoreconf - * ci_build.sh: ci_build.sh: fix whitespace - * ci_build.sh: ci_build.sh: parameterize $CONFIGURE_SCRIPT as it may - be called differently on some platforms - * .travis.yml: .travis.yml: amend cygwin bin files ACLs to let them - execute Thanks https://stackoverflow.com/a/4493653/4715872 for the - hint - * .travis.yml: .travis.yml: use choco bins in PATH also with - /cygdrive/ prefix just in case - * .travis.yml: .travis.yml: use cygwin bins in PATH also with - /cygdrive/ prefix just in case - * .travis.yml: .travis.yml: allow to skip cygwin autotools install if - it was done earlier and cached - -2020-11-21 Jim Klimov - - * .travis.yml: .travis.yml: use cygwin bins as last resort (e.g. for - autoconf) - * .travis.yml: Revert ".travis.yml: run Windows test cases with - cygwin bash" This reverts commit - 4592860aa82a208969eb1ae3ac2ec1f96e77bc07. - -2020-11-19 Jim Klimov - - * .travis.yml: .travis.yml: for windows builds, add - /C/tools/cygwin/bin to PATH - * .travis.yml: .travis.yml: define a NUT_MATRIX_TAG="gnu99-clang-win- - warn" test case for completeness - -2020-11-22 Jim Klimov - - * .travis.yml: .travis.yml: add _matrix_freebsd_gnustd_warn to - _matrix_freebsd - * .travis.yml: .travis.yml: introduce freebsd test cases with nowarn - and gnu17 - * .travis.yml: .travis.yml: introduce freebsd test cases with - warnings - * .travis.yml: .travis.yml: mark "gnu99-gcc-freebsd-nowarn" and - "gnu99-clang-freebsd-nowarn" as required - * ci_build.sh: ci_build.sh: as of now, skip building cgi (needs - libgd) on freebsd too, for "default-all-errors" test cases - * .travis.yml: .travis.yml: define simple freebsd scenarios - -2020-11-20 Jim Klimov - - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: do not warn - about unreachable code where we handle a legacy off-chance that - fatalx() might not exit the program - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: do not warn about - unreachable code where we handle a legacy off-chance that fatalx() - might not exit the program - * drivers/libusb.c: drivers/libusb.c: do not warn about unreachable - code where we handle a legacy off-chance that fatalx() might not - exit the program - * server/upsd.c: server/upsd.c: a move "help" switch() handling to - default case - * server/upsd.c: server/upsd.c: a switch() default needs no break - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: a switch() default needs - no break - * drivers/riello_usb.c: drivers/riello_usb.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * drivers/blazer_usb.c: drivers/blazer_usb.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: wrap unreachable - exit() added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: control_outlet(): - do not warn about syntactic "break;" after returns in conditionals - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: wrap unreachable exit() - added due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * drivers/metasys.c: drivers/metasys.c: a switch() default needs no - break, especially not after fatalx() - * drivers/dummy-ups.c: drivers/dummy-ups.c: a switch() default needs - no break, especially not after fatalx() - * .gitignore: GitIgnore temporary dirs made by configure script - (remain around if it is aborted) - * clients/upsmon.c: clients/upsmon.c: wrap unreachable exit() added - due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * clients/upsmon.c: clients/upsmon.c: wrap unreachable switch()-break - after help() with "ifndef HAVE___ATTRIBUTE__NORETURN" to avoid - warnings - * clients/upslog.c: clients/upslog.c: wrap unreachable switch()-break - after help() with "ifndef HAVE___ATTRIBUTE__NORETURN" to avoid - warnings - * clients/upscmd.c: clients/upscmd.c: wrap unreachable exit() added - due to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * clients/upsc.c: clients/upsc.c: wrap unreachable exit() added due - to earlier compiler warnings with "ifndef - HAVE___ATTRIBUTE__NORETURN" to avoid opposite warnings now - * server/upsd.c: server/upsd.c: wrap unreachable exit() added due to - earlier compiler warnings with "ifndef HAVE___ATTRIBUTE__NORETURN" - to avoid opposite warnings now - * include/attribute.h: include/attribute.h: align with - AX_C___ATTRIBUTE__ autoconf macro - * m4/ax_c___attribute__.m4: m4/ax_c___attribute__.m4: extend to - declare support for certain __attribute__((...)) use-cases of - interest to NUT - * configure.ac, m4/ax_c___attribute__.m4: configure.ac: introduce - AX_C___ATTRIBUTE__ from gnu.org - * server/upsd.c: server/upsd.c: annotate help() with noreturn attr - -2020-11-17 Jim Klimov - - * server/upsd.c: server/upsd.c: help(): do not shadow global varnames - "progname" (from upsd.c and main.c) with func argument "progname" - -2020-11-20 Jim Klimov - - * drivers/nut-ipmipsu.c: drivers/nut-ipmipsu.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: annotate - nutusb_open_error() with noreturn attr - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: fix indenting - whitespace - * drivers/riello_ser.c: drivers/riello_ser.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/blazer.c: drivers/blazer.c: annotate upsdrv_shutdown() with - noreturn attr - * drivers/dummy-ups.c: drivers/dummy-ups.c: annotate - upsdrv_shutdown() with noreturn attr - * clients/upsmon.c: clients/upsmon.c: annotate several routines with - noreturn attrs - * clients/upsmon.c: clients/upsmon.c: help(): do not shadow global - varname "progname" with same-named func argument - * clients/upsset.c: clients/upsset.c: annotate several routines with - noreturn attrs - * clients/upsimage.c: clients/upsimage.c: annotate drawimage() with - noreturn attr - * clients/upslog.c: clients/upslog.c: annotate help() with noreturn - attr - -2020-11-17 Jim Klimov - - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: annotate help() with - noreturn attr - * drivers/macosx-ups.c: drivers/macosx-ups.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: annotate - upsdrv_shutdown() with noreturn attr - * drivers/ivtscd.c: drivers/ivtscd.c: annotate upsdrv_shutdown() with - noreturn attr - * drivers/clone.c: drivers/clone.c: annotate upsdrv_shutdown() with - noreturn attr - * drivers/skel.c: drivers/skel.c: annotate upsdrv_shutdown() with - noreturn attr - * drivers/liebert.c: drivers/liebert.c: annotate upsdrv_shutdown() - with noreturn attr - * drivers/serial.c: drivers/serial.c: annotate ser_open_error() with - noreturn attr - * drivers/dstate.c: drivers/dstate.c: annotate sock_fail() with - noreturn attr - * drivers/main.c: drivers/main.c: annotate forceshutdown() with - noreturn attr - * common/parseconf.c: common/parseconf.c: annotate pconf_fatal() with - noreturn attr - -2020-11-18 Jim Klimov - - * .travis.yml: .travis.yml: fix typo in recent fix for clang warnings - -2020-11-18 Jim Klimov - - * scripts/Solaris/precheck.py: scripts/Solaris/precheck.py: modernize - calling sub-processes for Python 2.6+ and 3+ (keep original way for - older systems compat) - -2020-11-17 Jim Klimov - - * scripts/augeas/gen-nutupsconf-aug.py: scripts/augeas/gen- - nutupsconf-aug.py: drop unused variables Originally PR meant to - drop "global" modifier outside a local function context, but found - that nothing defines or uses these three names. Must be some - leftover from planned but unfinished development. Re-ran - ./autogen.sh and it generates the same file for the build. - -2020-11-18 Jim Klimov - - * drivers/dstate.h: drivers/dstate.h: dstate_setaux(): fix missed - type change for "aux" - * drivers/dstate.c: drivers/dstate.c: dstate_setaux(): fix missed - type change for "aux" - * .gitignore: GitIgnore NetBeans project directory - -2020-11-16 Jim Klimov - - * .gitignore: GitIgnore .gdb_history files - * .gitignore: GitIgnore conf??????/ temporary directories that can - remain if configure script is aborted - * .gitignore: GitIgnore conf_nut_report_feature file (made by - m4/nut_report) - -2020-11-17 Jim Klimov - - * drivers/powerman-pdu.c: drivers/powerman-pdu.c: query_one() - query_all(): do not shadow global varname "pm" with same-named func - argument - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: - subdriver_match_func(): do not shadow global varname "hd" with func - argument "hd" - * drivers/mge-xml.c: drivers/mge-xml.c: numerous routines: do not - shadow global varname "val" (for XML element temp store?) with - same-named func argument - * drivers/netxml-ups.c: drivers/netxml-ups.c: send_http_request(): do - not shadow global varnames "session" and "uri" with func arguments - * drivers/upscode2.c: upscode2.c: upsc_setstatus(): do not shadow - global varname "status" with func argument "status" - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: callback(): do not - shadow global varname "udev" with func argument "udev" - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: callback(): do not - shadow global varname "hd" with func argument "hd" - * drivers/riello.c: drivers/riello.c: riello_calc_CRC(): change data - type to fix comparisons - * drivers/powercom.c: drivers/powercom.c: output_voltage(): avoid a - multiplication overflow by casting - * server/upsd.c: upsd.c: actually include signal.h from system - * common/common.c: common/common.c: upsdebug_hex() / - upsdebug_ascii(): fix const-ness of buf casting - * common/common.c: common/common.c: get_libname(): fix type to - receive strlen() - * common/state.c, drivers/dstate.c, include/state.h, server/netget.c: - state.c dstate.c etc.: fix st_tree_t->aux to "long" as we convert - via strtol() - * common/parseconf.c: common/parseconf.c: addchar(): signedness-aware - trim of ctx->ch range - * common/common.c: common/common.c: mark search_paths[] as a static - array - * common/common.c: common/common.c: snprintfcat(): sort out the messy - return types - * common/common.c: common/common.c: sendsignalfn(): fix pid to "long" - as we convert via strtol() - * common/common.c: common/common.c: writepid(): fix data type for - umask() - * common/parseconf.c: parseconf.c: add_arg_word(): fix argpos to - size_t, we do not expect negative offsets - * clients/upsclient.c, clients/upsclient.h, common/common.c, - drivers/apcsmart.c, drivers/serial.c, drivers/serial.h, - include/common.h: common, serial, upsclient: change read() and - write() operations from "int" to "ssize_t" - * include/attribute.h: include/attribute.h: satisfy pedantic macro - parser (defined vs. used value) - * drivers/powercom.c: drivers/powercom.c: do not check "if model >= - 2000" just after processing "model < 2000" - * drivers/pijuice.c: drivers/pijuice.c: do not check for - "powerInput5vIo <= POWER_PRESENT" twice in a row - * drivers/bcmxcp.c: drivers/bcmxcp.c: do not check for "value>=0" - when we pick it from "unsigned char[]" answer - * common/common.c: common/common.c: search_paths[]: comment the - reasoning (see also issue NUT #805) - * drivers/apcupsd-ups.c: drivers/apcupsd-ups.c: comment about htons() - return value range (why I did not fix an "x<0" check) - * .travis.yml: .travis.yml: run Windows test cases with cygwin bash - * .travis.yml: .travis.yml: add at least a cygwin automake to Windows - test cases - * .travis.yml: .travis.yml: limit builds on xcode7.x to C11 - * include/parseconf.h: include/parseconf.h: fix trailing whitespace - * .travis.yml: .travis.yml: mark clang builds with fatal warnings, - additionally with -Wno-reserved-id-macro -Wno-padded to play around - system header issues - -2020-11-16 Jim Klimov - - * configure.ac: configure.ac: rephrase the notice about looking for - required C library routines which are beyond strict C standards - -2020-11-10 Jim Klimov - - * configure.ac: configure.ac: make checks for "Required C library - routine" not fatal: -Wall -Werror frowns upon the ways autotools - probe the system - * configure.ac: configure.ac: detect routines that may be not - available in constrained standard-C modes - -2020-11-16 Jim Klimov - - * configure.ac, m4/nut_stash_warnings.m4: Introduce - m4/nut_stash_warnings.m4 and NUT_STASH_WARNINGS and - NUT_POP_WARNINGS in configure.ac - -2020-11-17 Jim Klimov - - * drivers/solis.c: drivers/solis.c: convert from localtime() to - localtime_r() which is thread-safe - * drivers/rhino.c: drivers/rhino.c: convert from localtime() to - localtime_r() which is thread-safe - * drivers/microdowell.c: drivers/microdowell.c: convert from - localtime() to localtime_r() which is thread-safe - * drivers/mge-hid.c: drivers/mge-hid.c: convert from localtime() to - localtime_r() which is thread-safe - * clients/upsstats.c: clients/upsstats.c: convert from localtime() to - localtime_r() which is thread-safe - * clients/upslog.c: clients/upslog.c: convert from localtime() to - localtime_r() which is thread-safe - -2020-11-16 Jim Klimov - - * ci_build.sh: ci_build.sh: build_to_only_catch_errors(): also report - on `make check` with the current test case - * .travis.yml: Revert ".travis.yml: DISABLE test case - "gnu99-clang-5.0-nowarn": it has some problem with the recently - changed "tests/" (and runs clang-7 anyway as it does not use the - PPA for 5.0)" This reverts commit - 4749e0b26a33990dbd7bb56ff863cfc30db4245e as we can now have this - test case working again. - * configure.ac: configure.ac: do not pick C++11 support if a standard - is explicitly requested by caller; fixes NUT issue #873 - * .travis.yml: .travis.yml: fix test cases for - NUT_MATRIX_TAG="*-clang-5.0-*" to actually use clang-5.0 explicitly - -2020-11-15 Jim Klimov - - * .travis.yml: .travis.yml: mark test-case "gnu17-gcc-9-warn" as - passing now - * .travis.yml: .travis.yml: add libnss3-dev and libssl-dev to test - against both SSL implems - * .travis.yml: .travis.yml: DISABLE test case - "gnu99-clang-5.0-nowarn": it has some problem with the recently - changed "tests/" (and runs clang-7 anyway as it does not use the - PPA for 5.0) - * drivers/snmp-ups.c, m4/nut_check_libnetsnmp.m4: drivers/snmp-ups.c: - fix the warning about how we get the size of usmAES128PrivProtocol - * ci_build.sh: ci_build.sh: configure_nut(): sleep more before data - dump so interactive devs can react to the broken configure run - * ci_build.sh: ci_build.sh: build_to_only_catch_errors(): report a - SUCCESS when we have one - * ci_build.sh: ci_build.sh: allow caller to customize their - PKG_CONFIG_PATH - * tests/Makefile.am: tests/Makefile.am: fix include dir for - cppunittest - * server/netssl.c: server/netssl.c: comment about non-fatal build - warnings from NSS include names we use - * server/netssl.c: server/netssl.c: mark up NUT_UNUSED_VARIABLEs for - build with Mozilla NSS - * clients/upsclient.c: clients/upsclient.c: mark up - NUT_UNUSED_VARIABLEs for build with Mozilla NSS - * m4/nut_check_libnss.m4: nut_check_libnss.m4 : warn that nss.pc is - more sensitive to matching PKG_CONFIG_PATH and build bitness than - others - * ci_build.sh: ci_build.sh : enable SSL build variants of "default- - all-errors" with both OpenSS and Mozilla NSS - * m4/nut_check_libnetsnmp.m4: m4/nut_check_libnetsnmp.m4: pick - correct bitness net-snmp-config-{32,64} script if available - -2020-11-14 Jim Klimov - - * tests/Makefile.am: tests/Makefile.am: fix include dir for - nutlogtest - -2020-11-10 Jim Klimov - - * .travis.yml: .travis.yml (#823) : green-light several GCC test - cases that now pass even with all warnings enabled as fatal - * clients/upsset.c: clients/upsset.c: refine whitespace - -2020-11-09 Jim Klimov - - * drivers/rhino.c: drivers/rhino.c: drop extraneous parentheses - * drivers/nutdrv_qx.h: drivers/nutdrv_qx.h: avoid a trailing comma in - enum list (C89) - -2020-11-12 Jim Klimov - - * docs/nut.dict: nut.dict: spellcheck new keywords around "fightwarn" - chapter - -2020-11-10 Jim Klimov - - * docs/developers.txt: docs/developers.txt: detail how to use - ci_build.sh intended for Travis CI to work on fixing stuff locally - -2020-11-13 Jim Klimov - - * tests/cpputest.cpp: tests/cpputest.cpp : wrap the test run to catch - exceptions, if any - * tests/cpputest.cpp: tests/cpputest.cpp : comment the progress - through steps - * tests/cpputest.cpp: tests/cpputest.cpp: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * tests/Makefile.am: tests/Makefile.am : comment the cases where we - do not compile CXX tests - * tests/Makefile.am, tests/nutlogtest.c: Introduce tests/nutlogtest.c - for upslog*() and friends - -2020-11-12 Jean-Baptiste Boric - - * drivers/main.c: Fix faulty dump mode logic - -2020-11-12 Jim Klimov - - * docs/nut.dict: Update nut.dict - -2020-11-10 Jim Klimov - - * configure.ac: configure.ac : detect abs() and fabs() funcs - -2020-11-12 Jim Klimov - - * docs/acknowledgements.txt: Update acknowledgements.txt Do not - constrain contribution from EVER Power Systems to one person - -2020-11-11 Jim Klimov - - * docs/developers.txt: docs/developers.txt: document - NUT_UNUSED_VARIABLE() - -2020-11-10 Jim Klimov - - * include/common.h: include/common.h : drop NUT_UNUSED and - NUT_UNUSED_FUNCTION macros as not portable enough - * drivers/mge-hid.c: drivers/mge-hid.c: mark up NUT_UNUSED_VARIABLEs - in the more portable manner - * drivers/tripplite-hid.c: drivers/tripplite-hid.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/serial.c: drivers/serial.c: mark up NUT_UNUSED_VARIABLEs in - the more portable manner - * drivers/bestfcom.c: drivers/bestfcom.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/dummy-ups.c: drivers/dummy-ups.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/apcsmart-old.c: drivers/apcsmart-old.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/cps-hid.c: drivers/cps-hid.c: mark up NUT_UNUSED_VARIABLEs - in the more portable manner - * drivers/apcsmart.c: drivers/apcsmart.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/bestfortress.c: drivers/bestfortress.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/blazer_usb.c: drivers/blazer_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/apc-hid.c: drivers/apc-hid.c: mark up NUT_UNUSED_VARIABLEs - in the more portable manner - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: mark - up NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/riello_usb.c: drivers/riello_usb.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/explore-hid.c: drivers/explore-hid.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * server/upsd.c: server/upsd.c: mark up NUT_UNUSED_VARIABLEs in the - more portable manner - * clients/upssched.c: clients/upssched.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * clients/upsset.c: clients/upsset.c: mark up NUT_UNUSED_VARIABLEs in - the more portable manner - * clients/upsimage.c: clients/upsimage.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * clients/upsstats.c: clients/upsstats.c: mark up - NUT_UNUSED_VARIABLEs in the more portable manner - * clients/upslog.c: clients/upslog.c: mark up NUT_UNUSED_VARIABLEs in - the more portable manner - * clients/upsmon.c: clients/upsmon.c: mark up NUT_UNUSED_VARIABLEs in - the more portable manner - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: mark up NUT_UNUSED_VARIABLEs in the - more portable manner - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - mark up NUT_UNUSED_VARIABLEs in the more portable manner - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - mark up NUT_UNUSED_VARIABLEs in the more portable manner - * drivers/libshut.c, drivers/riello_ser.c, drivers/snmp-ups.c, - tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_snmp.c: libshut.c riello_ser.c nut-scanner bits: - abolish non-standard u_char and u_short Probably standard C99 - "uint8_t" and 16(?) bit short would be more proper, especially for - serial-line protocols. But the original code used types derived - from hardware implementation sized "char" and "short" - so they - stayed this way here. - * drivers/riello_usb.c: drivers/riello_usb.c: avoid implicit switch - fall-through - * clients/upsc.c: clients/upsc.c: avoid implicit switch fall-through - * clients/upscmd.c: clients/upscmd.c: avoid implicit switch fall- - through - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: avoid implicit switch - fall-through - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: avoid implicit switch - fall-through - * drivers/blazer_usb.c: drivers/blazer_usb.c: avoid implicit switch - fall-through - * server/upsd.c: server/upsd.c: add blank lines for readability of - opts processing switch - * server/upsd.c: server/upsd.c: avoid implicit switch fall-through - * clients/upsstats.h: clients/upsstats.h: wrap with include-guards - * clients/upssched.h: clients/upssched.h: wrap with include-guards - * clients/upsmon.h: clients/upsmon.h: wrap with include-guards - * clients/upslog.h: clients/upslog.h: wrap with include-guards - * clients/upsimagearg.h: clients/upsimagearg.h: wrap with include- - guards - * clients/status.h: clients/status.h: wrap with include-guards - * clients/cgilib.h: clients/cgilib.h: wrap with include-guards - * drivers/tripplite.h: drivers/tripplite.h: wrap with include-guards - * drivers/safenet.h: drivers/safenet.h: wrap with include-guards - * drivers/riello.h: drivers/riello.h: reword the wrap with include- - guards - * drivers/powercom.h: drivers/powercom.h: wrap with include-guards - * drivers/mge-utalk.h: include/mge-utalk.h: wrap with include-guards - * drivers/oneac.h: drivers/oneac.h: wrap with include-guards - * drivers/main.h: drivers/main.h: reword the wrap with include-guards - * drivers/libusb.h: drivers/libusb.h: reword the wrap with include- - guards - * drivers/libshut.h: drivers/libshut.h: reword the wrap with include- - guards - * drivers/libhid.h: drivers/libhid.h: reword the wrap with include- - guards - * drivers/hidparser.h: drivers/hidparser.h: reword the wrap with - include-guards - * drivers/genericups.h: drivers/genericups.h: wrap with include- - guards - * drivers/gamatronic.h: drivers/gamatronic.h: wrap with include- - guards and fix trailing whitespace - * drivers/dummy-ups.h: drivers/dummy-ups.h: wrap with include-guards - * drivers/apcupsd-ups.h: drivers/apcupsd-ups.h: wrap with include- - guards - * drivers/apcsmart_tabs.h: drivers/apcsmart_tabs.h: reword the wrap - with include-guards - * drivers/apcsmart.h: drivers/apcsmart.h: reword the wrap with - include-guards - * drivers/apcsmart-old.h: drivers/apcsmart-old.h: wrap with include- - guards - * include/upsconf.h: include/upsconf.h: wrap with include-guards - * include/upsconf.h: include/upsconf.h: add (C) and license header - * include/upsconf.h: include/upsconf.h: refine whitespace - * include/timehead.h: include/timehead.h: add (C) and license header - * include/timehead.h: include/timehead.h: wrap with include-guards - * include/str.h: include/str.h: reword the wrap with include-guards - * include/state.h: include/state.h: reword the wrap with include- - guards - * include/proto.h: include/proto.h: add (C) and license header - * include/proto.h: include/proto.h: reword the wrap with include- - guards - * include/nut_stdint.h: include/nut_stdint.h: reword the wrap with - include-guards - * include/nut_platform.h: include/nut_platform.h: reword the wrap - with include-guards - * include/extstate.h: include/extstate.h: add (C) and license header - * include/extstate.h: include/extstate.h: reword the wrap with - include-guards - * include/extstate.h: include/extstate.h: refine whitespace - * include/common.h: include/common.h: reword the wrap with include- - guards - * include/attribute.h: include/attribute.h: add (C) and license - header - * include/attribute.h: include/attribute.h: reword the wrap with - include-guards - * server/user.h: server/user.h: update (C) and license header - * server/user.h: server/user.h: wrap with include-guards - * server/user-data.h: server/user-data.h: update (C) and license - header - * server/user-data.h: server/user-data.h: wrap with include-guards - * server/upstype.h: server/upstype.h: reword the wrap with include- - guards - * server/stype.h: server/stype.h: reword the wrap with include-guards - * server/sstate.h: server/sstate.h: reword the wrap with include- - guards - * server/nut_ctype.h: server/nut_ctype.h: protect header files for - C++ inclusion - * server/netuser.h: server/netuser.h: wrap with include-guards - * server/netuser.h: server/netuser.h: add (C) and license header - * server/netssl.h: server/netssl.h: reword the wrap with include- - guards - * server/netset.h: server/netset.h: wrap with include-guards - * server/netset.h: server/netset.h: add (C) and license header - * server/netmisc.h: server/netmisc.h: wrap with include-guards - * server/netmisc.h: server/netmisc.h: add (C) and license header - * server/netcmds.h: server/netcmds.h: add (C) and license header - * server/netlist.h: server/netlist.h: wrap with include-guards - * server/netlist.h: server/netlist.h: add (C) and license header - * server/netinstcmd.h: server/netinstcmd.h: wrap with include-guards - * server/netinstcmd.h: server/netinstcmd.h: add (C) and license - header - * server/netget.h: server/netget.h: wrap with include-guards - * server/netget.h: server/netget.h: add (C) and license header - * server/neterr.h: server/neterr.h: protect header files for C++ - inclusion - * server/neterr.h: server/neterr.h: wrap with include-guards - * server/neterr.h: server/neterr.h: add (C) and license header - * server/netcmds.h: server/netcmds.h: wrap with include-guards - * server/desc.h: server/desc.h: add (C) and license header - * server/desc.h: server/desc.h: wrap with include-guards - * server/conf.h: server/conf.h: update (C) and license header - * server/conf.h: server/conf.h: wrap with include-guards - -2020-11-09 Jim Klimov - - * docs/nut.dict: Update nut.dict Add EVER Sinline model name - -2020-11-09 Jim Klimov - - * drivers/asem.c: drivers/al175.c: update Linux i2c include mesh - (thanks to pijuice.c) - * drivers/pijuice.c: drivers/pijuice.c: set_power_off(): drop unused - "data" - * drivers/pijuice.c: drivers/pijuice.c: avoid setting "data" during a - write Compiler warnings resolved this puzzle: [2020-11-09 - 15:10:38] [build-err] pijuice.c:737:2: note: in expansion of macro - ‘I2C_WRITE_BYTE’ [2020-11-09 15:10:38] [build-err] 737 | - I2C_WRITE_BYTE( upsfd, cmd, shutdown_delay, __func__ ) [2020-11-09 - 15:10:38] [build-err] | ^~~~~~~~~~~~~~ [2020-11-09 15:10:38] - [build-err] pijuice.c:710:10: warning: variable ‘data’ set but not - used [-Wunused-but-set-variable] [2020-11-09 15:10:38] [build-err] - 710 | uint8_t data; [2020-11-09 15:10:38] [build-err] | - ^~~~ So we did not need to set it at all, can go to simple - anonymous negative-return check. - * drivers/pijuice.c: drivers/pijuice.c: use "__s32" de-facto in - headers instead of "s32" from manpages - * drivers/pijuice.c: drivers/pijuice.c: rearrange I2C_*() macros to - catch -1 error codes while fetching unsigned ints - * drivers/apcsmart.c: drivers/apcsmart.c: fix variadic macro logx() - call to accomodate modern standards - * drivers/apcsmart.c: drivers/apcsmart.c: fix variadic macro logx() - call to accomodate modern standards - * drivers/apcsmart.c: drivers/apcsmart.c: fix variadic macro debx() - call to accomodate modern standards - * drivers/pijuice.c: drivers/pijuice.c: set_poweroff(): fix limited - value range exceeded - * drivers/pijuice.c: drivers/pijuice.c: replace __FUNCTION__ by - __func__ to avoid warnings error: ISO C does not support - '__FUNCTION__' predefined identifier [-Werror=pedantic] - * drivers/bcmxcp.c: drivers/bcmxcp.c: bump string buffer size to - avoid potential overflows If we have some bug getting outlet - numbers into billions (int at 64-bit) the string might overflow - indeed... - * drivers/al175.c: drivers/al175.c: document a warning to address - later - * drivers/snmp-ups.c: drivers/snmp-ups.c: avoid warning: control may - reach end of non-void function - -2020-11-08 Jim Klimov - - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: avoid - implicit switch fall-through - * .travis.yml: .travis.yml: our code (and checks) should not rely on - specific compiler features; implicit switch FALLTHRU was solved by - explicit goto jumps - * docs/nut.dict: docs/nut.dict: update for conf/upsstats- - single.html.sample - * docs/developers.txt: docs/developers.txt: avoid spellcheck warning - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - rearrange phases_nb and sanity-check the value to debug-log - unexpectancies - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - sanity-check the outlet_group_nb (not negative) - -2020-11-05 Jim Klimov - - * drivers/hidparser.c: drivers/hidparser.c: hide logging check that - never fires hidparser.c:347:28: error: comparison is always false - due to limited range of data type [-Werror=type-limits] 347 | - if(pParser->Data.ReportID >= MAX_REPORT) uint8_t vs "500" CC - @aquette - -2020-11-06 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: drop g_usec_timeout which is not actually - used - * drivers/libusb.c: drivers/libusb.c: fix debug string formatting - -2020-11-05 Jim Klimov - - * drivers/solis.h: drivers/solis.h: swap "const static" => "static - const" Avoids error: 'static' is not at beginning of declaration - [-Werror=old-style-declaration] - * drivers/solis.c: drivers/solis.c: rectify C-style comments - * drivers/isbmex.c: drivers/isbmex.c: comment about magic D() macro - got debug logging vs. upsdebugx() - * drivers/rhino.c: drivers/rhino.c: ScanReceivePack(): rephrase if- - clause to avoid warnings Seems this is a correct change logically: - - if( !( SourceFail ) == RedeAnterior ) + if( RedeAnterior == !( - SourceFail ) ) given this assignment just below the if-clause: - RedeAnterior = !( SourceFail ); to avoid a compiler warning that - "!" might apply not in a way intended by author - * drivers/masterguard.c: drivers/masterguard.c: StringSplit(): use - the maxlen - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: setvar(): find a - use for "val" - -2020-11-04 Jim Klimov - - * clients/upssched.c: clients/upssched.c: main(): find use for argc - * clients/upsmon.c: clients/upsmon.c: sigpipe(): find use for sig - * clients/upsset.c: clients/upsset.c: print_rw(): find use for - upsname - -2020-11-08 Jim Klimov - - * drivers/blazer_usb.c: drivers/blazer_usb.c: upsdrv_initups(): - constrain langid_fix scanned values to fit into signed int - -2020-11-06 Jim Klimov - - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: upsdrv_initups(): - constrain langid_fix scanned values to fit into signed int - -2020-11-08 Jim Klimov - - * drivers/netxml-ups.c: drivers/netxml-ups.c: rearrange sscanf() of - inputs to avoid wrong int values - -2020-11-06 Jim Klimov - - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: avoid - buffer overflows iterating item->info_rw, possible NPE, and fix the - check for hitting the sentinel entry Fix warnings like: - nutdrv_qx_voltronic.c:4037:39: error: division 'sizeof (info_rw_t - *) / sizeof (info_rw_t)' does not compute the number of array - elements [-Werror=sizeof-pointer-div] 4037 | if (i >= - (int)(sizeof(item->info_rw) / sizeof(item->info_rw[0]))) { | - ^ nutdrv_qx_voltronic.c: In function 'voltronic_p31g_set': - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: - voltronic_fault(): avoid buffer overflows with sprintf() - -2020-11-04 Jim Klimov - - * clients/upscmd.c: clients/upscmd.c: increase buffers to avoid - overflow (warnings) - * clients/upsrw.c: clients/upsrw.c: increase buffers to avoid - overflow (warnings) - -2020-11-05 Jim Klimov - - * drivers/bestfcom.c: drivers/bestfcom.c: increase buffers to avoid - overflow (warnings) - * drivers/bcmxcp.c: drivers/bcmxcp.c: setvar(): increase buffers to - avoid overflow (warnings) - -2020-11-04 Jim Klimov - - * clients/upssched.c: clients/upssched.c: increase buffers to avoid - overflow (warnings) - -2020-11-06 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: tools/nut- - scanner/scan_xml_http.c: avoid possible buffer overflow - * drivers/snmp-ups.c: drivers/snmp-ups.c: su_alarm_set(): bump - alarm_info_value size to avoid print overflows - -2020-11-08 Jim Klimov - - * drivers/belkin-hid.c: drivers/belkin-hid.c: use fabs() for - floating-point math - * drivers/belkin-hid.c: drivers/belkin-hid.c: use fabs() for - floating-point math - -2020-11-06 Jim Klimov - - * drivers/upscode2.c: drivers/upscode2.c: use fabs() for floating- - point math - -2020-11-08 Jim Klimov - - * drivers/netxml-ups.c: drivers/netxml-ups.c: instcmd(): find a use - for "extra" - * drivers/riello_usb.c: drivers/riello_usb.c: instcmd(): find a use - for "extra" - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: instcmd(): find a - use for "extra" - -2020-11-06 Jim Klimov - - * drivers/riello_ser.c: drivers/riello_ser.c: instcmd(): find a use - for "extra" - * drivers/apcsmart-old.c: drivers/apcsmart-old.c: instcmd(): find a - use for "extra" - * drivers/ivtscd.c: drivers/ivtscd.c: instcmd(): find a use for - "extra" - * drivers/clone.c: drivers/clone.c: instcmd(): find a use for "extra" - * drivers/powerman-pdu.c: drivers/powerman-pdu.c: instcmd(): find a - use for "extra" - * drivers/powerp-txt.c: drivers/powerp-txt.c: powpan_instcmd(): find - a use for "extra" - * drivers/powerp-bin.c: drivers/powerp-bin.c: powpan_instcmd(): find - a use for "extra" - * drivers/victronups.c: drivers/victronups.c: instcmd(): find a use - for "extra" - -2020-11-05 Jim Klimov - - * drivers/tripplitesu.c: drivers/tripplitesu.c: instcmd(): find a use - for "extra" - * drivers/tripplite.c: drivers/tripplite.c: instcmd(): find a use for - "extra" - * drivers/solis.c: drivers/solis.c: instcmd(): find a use for "extra" - * drivers/nutdrv_siemens_sitop.c: drivers/nutdrv_siemens_sitop.c: - instcmd(): find a use for "extra" - * drivers/safenet.c: drivers/safenet.c: instcmd(): find a use for - "extra" - * drivers/rhino.c: drivers/rhino.c: instcmd(): find a use for "extra" - * drivers/powercom.c: drivers/powercom.c: instcmd(): find a use for - "extra" - * drivers/optiups.c: drivers/optiups.c: instcmd(): find a use for - "extra" - * drivers/mge-utalk.c: drivers/mge-utalk.c: instcmd(): find a use for - "extra" - * drivers/metasys.c: drivers/metasys.c: instcmd(): find a use for - "extra" - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: instcmd(): find a - use for "extra" - * drivers/etapro.c: drivers/etapro.c: instcmd(): find a use for - "extra" - * drivers/dummy-ups.c: drivers/dummy-ups.c: instcmd(): find a use for - "extra" - * drivers/bestups.c: drivers/bestups.c: instcmd(): find a use for - "extra" - * drivers/bestfortress.c: drivers/bestfortress.c: instcmd(): find a - use for "extra" - * drivers/belkinunv.c: drivers/belkinunv.c: instcmd(): find a use for - "extra" - * drivers/belkin.c: drivers/belkin.c: instcmd(): find a use for - "extra" - * drivers/bcmxcp.c: drivers/bcmxcp.c: instcmd(): find a use for - "extra" - -2020-11-04 Jim Klimov - - * drivers/al175.c: drivers/al175.c: instcmd(): find use for "extra" - -2020-11-08 Jim Klimov - - * drivers/mge-xml.c: drivers/mge-xml.c: mark up NUT_UNUSED_VARIABLEs - * drivers/netxml-ups.c: drivers/netxml-ups.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/riello_usb.c: drivers/riello_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/blazer_usb.c: drivers/blazer_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/bcmxcp_usb.c: drivers/bcmxcp_usb.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/tripplite-hid.c: drivers/tripplite-hid.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/explore-hid.c: drivers/explore-hid.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/explore-hid.c: drivers/explore-hid.c: a few whitespace - fixes - * drivers/cps-hid.c: drivers/cps-hid.c: mark up NUT_UNUSED_VARIABLEs - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: mark up - NUT_UNUSED_VARIABLEs - -2020-11-06 Jim Klimov - - * drivers/nutdrv_qx_voltronic.c: drivers/nutdrv_qx_voltronic.c: mark - up NUT_UNUSED_VARIABLEs - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/apcsmart-old.c: drivers/apcsmart-old.c: mark up - NUT_UNUSED_VARIABLEs - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - mark up NUT_UNUSED_VARIABLEs - * server/netuser.c: server/netuser.c: mark up NUT_UNUSED_VARIABLEs - * server/netmisc.c: server/netmisc.c: mark up NUT_UNUSED_VARIABLEs - * server/netssl.c: server/netssl.c: mark up NUT_UNUSED_VARIABLEs - * server/upsd.c: server/upsd.c: mark up NUT_UNUSED_VARIABLEs - * drivers/upsdrvctl.c: drivers/upsdrvctl.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/apcsmart.c: drivers/apcsmart.c: mark up - NUT_UNUSED_VARIABLEs - -2020-11-05 Jim Klimov - - * drivers/mge-hid.c: drivers/mge-hid.c: mark up NUT_UNUSED_VARIABLEs - * drivers/libshut.c: drivers/libshut.c: mark up NUT_UNUSED_VARIABLEs - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/dummy-ups.c: drivers/dummy-ups.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/bestfortress.c: drivers/bestfortress.c: mark up - NUT_UNUSED_VARIABLEs - * drivers/bestfcom.c: drivers/bestfcom.c: mark up - NUT_UNUSED_VARIABLEs - -2020-11-06 Jim Klimov - - * tools/nut-scanner/scan_eaton_serial.c: tools/nut- - scanner/scan_eaton_serial.c: mark up NUT_UNUSED_VARIABLEs - * tools/nut-scanner/scan_avahi.c: tools/nut-scanner/scan_avahi.c: - mark up NUT_UNUSED_VARIABLEs - -2020-11-04 Jim Klimov - - * drivers/serial.c: drivers/serial.c: mark up NUT_UNUSED_VARIABLEs - * clients/upssched.c: clients/upssched.c: mark up - NUT_UNUSED_VARIABLEs - * clients/upsmon.c: clients/upsmon.c: mark up NUT_UNUSED_VARIABLEs - * clients/upsset.c: clients/upsset.c: mark up NUT_UNUSED_VARIABLEs - * clients/upsimage.c, clients/upsstats.c: clients/upsimage.c: mark up - NUT_UNUSED_VARIABLEs - * clients/upsstats.c: clients/upsstats.c: mark up - NUT_UNUSED_VARIABLEs - * clients/upslog.c: clients/upslog.c: mark up NUT_UNUSED_VARIABLEs - * clients/upsclient.c: clients/upsclient.c: mark up - NUT_UNUSED_VARIABLEs for ifdef-ed codepaths - -2020-11-08 Jim Klimov - - * drivers/apc-hid.c: drivers/apc-hid.c: mark up NUT_UNUSED_VARIABLEs - (and comment a FIXME about possible use for that) - -2020-11-04 Jim Klimov - - * include/common.h: include/common.h: introduce NUT_UNUSED* macros to - mark up codebase - -2020-11-08 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c: comment about issue found - by pedantic compiler snmp-ups.c: In function 'nut_snmp_init': - snmp-ups.c:599:66: error: division 'sizeof (oid * {aka long - unsigned int *}) / sizeof (oid {aka long unsigned int})' does not - compute the number of array elements [-Werror=sizeof-pointer-div] - 599 | g_snmp_sess.securityPrivProtoLen = - sizeof(usmAESPrivProtocol)/sizeof(oid); | - ^ In file included from /usr/include/net-snmp/snmpv3_api.h:27, from - /usr/include/net-snmp/net-snmp-includes.h:78, from snmp-ups.h:79, - from snmp-ups.c:39: /usr/include/net- - snmp/library/transform_oids.h:50:26: note: first 'sizeof' operand - was declared here 50 | NETSNMP_IMPORT oid - *usmAES128PrivProtocol; /* backwards compat */ | - ^~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors - make[1]: *** [Makefile:1953: snmp_ups-snmp-ups.o] Error 1 - -2020-11-08 Jim Klimov - - * docs/developers.txt: Update developers.txt Another spellcheck fix - * docs/developers.txt: Update developers.txt Avoid "quiesce" to - satisfy the spellchecker - -2020-11-08 Jim Klimov - - * drivers/apc-hid.c: drivers/apc-hid.c: a few whitespace fixes - * drivers/openups-hid.c: drivers/openups-hid.c: initialize all fields - of info_lkp_t arrays - * drivers/tripplite-hid.c: drivers/tripplite-hid.c: initialize all - fields of info_lkp_t arrays - * drivers/powercom-hid.c: drivers/powercom-hid.c: initialize all - fields of info_lkp_t arrays - * drivers/cps-hid.c: drivers/cps-hid.c: initialize all fields of - info_lkp_t arrays - * drivers/belkin-hid.c: drivers/belkin-hid.c: initialize all fields - of info_lkp_t arrays - * drivers/apc-hid.c: drivers/apc-hid.c: initialize all fields of - info_lkp_t arrays - * drivers/apc-pdu-mib.c: drivers/apc-pdu-mib.c: define - APC_PDU_DEVICE_MODEL macro on top of file - * drivers/apc-pdu-mib.c: drivers/apc-pdu-mib.c: initialize all fields - of mib2nut_info_t arrays - * drivers/apc-pdu-mib.c: drivers/apc-pdu-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/apc-ats-mib.c: drivers/apc-ats-mib.c: initialize all fields - of mib2nut_info_t array - * drivers/apc-ats-mib.c: drivers/apc-ats-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/eaton-ats16-mib.c: drivers/eaton-ats16-mib.c: initialize - all fields of mib2nut_info_t arrays - * drivers/eaton-ats16-mib.c: drivers/eaton-ats16-mib.c: initialize - all fields of info_lkp_t arrays - * drivers/huawei-mib.c: drivers/huawei-mib.c: initialize all fields - of mib2nut_info_t array - * drivers/huawei-mib.c: drivers/huawei-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/hpe-pdu-mib.c: drivers/hpe-pdu-mib.c: initialize all fields - of mib2nut_info_t array - * drivers/hpe-pdu-mib.c: drivers/hpe-pdu-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/eaton-ats30-mib.c: drivers/eaton-ats30-mib.c: initialize - all fields of mib2nut_info_t array - * drivers/eaton-ats30-mib.c: drivers/eaton-ats30-mib.c: initialize - all fields of info_lkp_t arrays - * drivers/delta_ups-mib.c: drivers/delta_ups-mib.c: initialize all - fields of mib2nut_info_t array - * drivers/delta_ups-mib.c: drivers/delta_ups-mib.c: initialize all - fields of info_lkp_t arrays - * drivers/cyberpower-mib.c: drivers/cyberpower-mib.c: initialize all - fields of mib2nut_info_t array - * drivers/cyberpower-mib.c: drivers/cyberpower-mib.c: initialize all - fields of info_lkp_t arrays - * drivers/bestpower-mib.c: drivers/bestpower-mib.c: initialize all - fields of mib2nut_info_t array - * drivers/bestpower-mib.c: drivers/bestpower-mib.c: initialize all - fields of info_lkp_t arrays - * drivers/xppc-mib.c: drivers/xppc-mib.c: initialize all fields of - info_lkp_t arrays, and end sentinel entries to close them off - * docs/developers.txt, docs/nut.dict: Satisfy the spellchecker - * drivers/xppc-mib.c: drivers/xppc-mib.c: initialize all fields of - mib2nut_info_t array - * drivers/raritan-pdu-mib.c: drivers/raritan-pdu-mib.c: initialize - all fields of mib2nut_info_t array - * drivers/raritan-px2-mib.c: drivers/raritan-px2-mib.c: initialize - all fields of mib2nut_info_t array - * drivers/raritan-px2-mib.c: drivers/raritan-px2-mib.c: fix - indentations - * drivers/raritan-px2-mib.c: drivers/raritan-px2-mib.c: initialize - all fields of info_lkp_t arrays, and fix indentations in the table - * drivers/raritan-pdu-mib.c: drivers/raritan-pdu-mib.c: initialize - all fields of info_lkp_t arrays - * drivers/powerware-mib.c: drivers/powerware-mib.c: initialize all - fields of info_lkp_t arrays - * drivers/netvision-mib.c: drivers/netvision-mib.c: initialize all - fields of mib2nut_info_t array - * drivers/netvision-mib.c: drivers/netvision-mib.c: initialize all - fields of info_lkp_t arrays - * drivers/mge-mib.c: drivers/mge-mib.c: initialize all fields of - mib2nut_info_t array - * drivers/mge-mib.c: drivers/mge-mib.c: initialize all fields of - info_lkp_t arrays - * drivers/ietf-mib.c: drivers/ietf-mib.c: initialize all fields of - mib2nut_info_t arrays - * drivers/ietf-mib.c: drivers/ietf-mib.c: initialize all fields of - info_lkp_t arrays - * drivers/emerson-avocent-pdu-mib.c: drivers/emerson-avocent-pdu- - mib.c: initialize all fields of info_lkp_t arrays - * drivers/emerson-avocent-pdu-mib.c: drivers/emerson-avocent-pdu- - mib.c: initialize all fields of mib2nut_info_t array - * drivers/eaton-pdu-revelation-mib.c: drivers/eaton-pdu-revelation- - mib.c: initialize all fields of mib2nut_info_t array - * drivers/eaton-pdu-revelation-mib.c: drivers/eaton-pdu-revelation- - mib.c: initialize all fields of info_lkp_t arrays - * drivers/eaton-pdu-pulizzi-mib.c: drivers/eaton-pdu-pulizzi-mib.c: - initialize all fields of mib2nut_info_t array - * drivers/eaton-pdu-pulizzi-mib.c: drivers/eaton-pdu-pulizzi-mib.c: - initialize all fields of info_lkp_t arrays - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - initialize all fields of mib2nut_info_t array - * drivers/eaton-pdu-marlin-mib.c: drivers/eaton-pdu-marlin-mib.c: - initialize all fields of info_lkp_t arrays - * drivers/eaton-pdu-genesis2-mib.c: drivers/eaton-pdu-genesis2-mib.c: - initialize all fields of mib2nut_info_t array - * drivers/compaq-mib.c: drivers/compaq-mib.c: initialize all fields - of mib2nut_info_t array - * drivers/compaq-mib.c: drivers/compaq-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/baytech-mib.c: drivers/baytech-mib.c: initialize all fields - of mib2nut_info_t array - * drivers/baytech-mib.c: drivers/baytech-mib.c: initialize all fields - of info_lkp_t arrays - * drivers/apc-mib.c: drivers/apc-mib.c: initialize all fields of - mib2nut_info_t array (and comment concern whether the addition was - right?) - * drivers/apc-mib.c: drivers/apc-mib.c: replace verbatim OID string - we seek with a macro APC_UPS_DEVICE_MODEL like elsewhere - * drivers/apc-mib.c: drivers/apc-mib.c: initialize all fields of - info_lkp_t arrays - -2020-11-06 Jim Klimov - - * drivers/apcsmart_tabs.c: drivers/apcsmart_tabs.c: initialize all - fields of upsdrv_info_t array - * drivers/apcsmart_tabs.c: drivers/apcsmart_tabs.c: initialize all - fields of apc_vartab_t arrays - * tools/nut-scanner/nutscan-serial.c: tools/nut-scanner/nutscan- - serial.c: initialize all fields of device_portname_t arrays - * drivers/upscode2.c: drivers/upscode2.c: initialize all fields of - cmd_t and simple_t arrays - -2020-11-05 Jim Klimov - - * drivers/optiups.c: drivers/optiups.c: initialize all fields of - ezfill_t tables - * drivers/mge-hid.c: drivers/mge-hid.c: update arrays of info_lkp_t - with fourth (nuf) field and comment where a real nuf() might be - useful - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: update arrays of - info_lkp_t with fourth (nuf) field and comment where a real nuf() - might be useful - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: update arrays of - info_lkp_t with fourth (nuf) field - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: update HIDDevice_t - object with missing initializer for bcdDevice - * drivers/mge-hid.c: drivers/mge-utalk.c: update arrays of info_lkp_t - with fourth (nuf) field - * drivers/gamatronic.h: drivers/gamatronic.h: initialize the "value" - field in the struct array - * drivers/gamatronic.h: drivers/gamatronic.h: avoid anonymous struct - -2020-11-04 Jim Klimov - - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix info_lkp_t arrays to - consider fourth "nuf" field - -2020-11-08 Jim Klimov - - * drivers/mge-xml.c: drivers/mge-xml.c: avoid implicit switch fall- - through (comment whether that wondering is the right thing to do - though) - -2020-11-06 Jim Klimov - - * drivers/upscode2.c: drivers/upscode2.c: comment the fallthrough in - upsc_simple() switch, so far consider it explicitly desired as it - was before - * drivers/isbmex.c: drivers/isbmex.c: replace FALLTHRU comments with - more portable and reliable goto jumps - -2020-11-05 Jim Klimov - - * drivers/isbmex.c: drivers/isbmex.c: upsdrv_updateinfo(): fix - switch/break - -2020-11-08 Jim Klimov - - * drivers/blazer_usb.c: drivers/blazer_usb.c: avoid implicit switch - fall-through - * drivers/riello_usb.c: drivers/riello_usb.c: avoid implicit switch - fall-through - * drivers/tripplite_usb.c: drivers/tripplite_usb.c: avoid implicit - switch fall-through - -2020-11-06 Jim Klimov - - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - explicit fall through to displaying help - * drivers/nutdrv_qx.c: drivers/nutdrv_qx.c: qx_command(): explicit - fall through the switch - * drivers/mge-hid.c: drivers/mge-hid.c: replace FALLTHRU comments - with same returns as the next default case - -2020-11-05 Jim Klimov - - * drivers/mge-hid.c: drivers/mge-hid.c: quiesce -Wimplicit- - fallthrough=3 warnings about fall-through in switch - -2020-11-06 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: replace FALLTHRU - comments with more portable and reliable goto jumps - -2020-11-05 Jim Klimov - - * drivers/usbhid-ups.c: drivers/usbhid-ups.c: quiesce -Wimplicit- - fallthrough=3 warnings about fall-through in switch - -2020-11-06 Jim Klimov - - * clients/upsc.c: clients/upsc.c: replace FALLTHRU comments with more - portable and reliable goto jumps - -2020-11-04 Jim Klimov - - * clients/upsc.c: clients/upsc.c: quiesce -Wimplicit-fallthrough=3 - warnings about fall-through in switch - -2020-11-06 Jim Klimov - - * common/snprintf.c: common/snprintf.c: replace FALLTHRU comments - with more portable and reliable goto jumps - -2020-11-04 Jim Klimov - - * common/snprintf.c: common/snprintf.c: quiesce -Wimplicit- - fallthrough=3 warnings about fall-through in switch - -2020-11-08 Jim Klimov - - * ci_build.sh: ci_build.sh: refactor to track failing "default-all- - errors" so we can extend it to "configure_nut()" and - "build_to_only_catch_errors()" more variants - * ci_build.sh: ci_build.sh: refactor to have a - build_to_only_catch_errors() routine - * ci_build.sh: ci_build.sh: refactor to have a configure_nut() - routine - * docs/developers.txt: docs/developers.txt: document a valid use-case - of goto for clean switch-case fall-through - -2020-11-04 Jim Klimov - - * include/common.h: include/common.h: introduce NUT_UNUSED* macros to - mark up codebase - -2020-11-05 Jim Klimov - - * .travis.yml: .travis.yml: in NUT_MATRIX test cases, specify - -Werror=implicit-fallthrough=3 to let special comments quiesce the - warning where a FALLTHRU is intentional - * .travis.yml: .travis.yml: in clang test cases, do not insist that - all macros are used, or we can not pass even autoconf - -2020-11-04 Jim Klimov - - * .travis.yml: .travis.yml : enable "-Wextra -Weverything" for clang - (follow-up to issue #823) - * .travis.yml: .travis.yml : enable "-Wextra" for newer gcc versions - on Linux (follow-up to issue #823) - * .travis.yml: .travis.yml : enable "-Wextra" for default gcc - versions on Linux (follow-up to issue #823) - * configure.ac: configure.ac: revise the fix for AC_PROG_LIBTOOL to - only revert settings already passed to the compiler (that older - releases may not understand if we just force them) - * configure.ac: configure.ac : work around libtool weakness seen by - pedantic compilers (did not test for "${CLANG}" so drop it for now) - * configure.ac: configure.ac : work around libtool weakness seen by - pedantic compilers - * ci_build.sh: ci_build.sh: do not hide autogen.sh stderr - * ci_build.sh: ci_build.sh: if configure failed, sleep a bit before - dumping config.log - -2020-11-03 Jim Klimov - - * ci_build.sh: ci_build.sh : if configure script fails, dump its log - before exiting - * .travis.yml: .travis.yml : rephrase some comments - * .travis.yml: .travis.yml : separate the "_matrix_gnustd_nowarn" - * .travis.yml: Issue #823 follow-up: support branches named like - "fightwarn" to build more test cases in Travis CI (actually enable - those build matrices) - * .travis.yml: Issue #823 follow-up: support branches named like - "fightwarn" to build more test cases in Travis CI - -2020-11-07 Jim Klimov - - * drivers/eaton-ats16-mib.c: Update eaton-ats16-mib.c Reworded the - comments - * drivers/nutdrv_qx.c: Update nutdrv_qx.c drivers/nutdrv_qx.c: - rectify indentations - * drivers/tripplite_usb.c: Update tripplite_usb.c - drivers/tripplite_usb.c: drop trailing whitespace - * docs/acknowledgements.txt: Update acknowledgements.txt Acknowledge - a vendor contribution from EVER Power Systems - * drivers/ever-hid.c: Update ever-hid.c Small whitespace fixes - * docs/acknowledgements.txt: Update acknowledgements.txt Add vendor - contribution from AMETEK Powervar for UPM series - * drivers/liebert-hid.c: Update liebert-hid.c Minor whitespace fixes - -2020-11-06 Jim Klimov - - * configure.ac: configure.ac: drop trailing whitespace - * tools/nut-usbinfo.pl: tools/nut-usbinfo.pl: drop trailing - whitespace - * tools/nut-recorder.sh: tools/nut-recorder.sh: drop trailing - whitespace - * tools/nut-ddl-dump.sh: tools/nut-ddl-dump.sh: drop trailing - whitespace - * tests/nutclienttest.cpp: tests/nutclienttest.cpp: drop trailing - whitespace - * server/user.c: server/user.c: drop trailing whitespace - * server/upstype.h: server/upstype.h: drop trailing whitespace - * server/sstate.c: server/sstate.c: drop trailing whitespace - * server/sockdebug.c: server/sockdebug.c: drop trailing whitespace - * server/netlist.c: server/netlist.c: drop trailing whitespace - * server/netinstcmd.c: server/netinstcmd.c: drop trailing whitespace - * server/netget.c: server/netget.c: drop trailing whitespace - * server/conf.c: server/conf.c: drop trailing whitespace - * common/upsconf.c: common/upsconf.c: drop trailing whitespace - * common/state.c: common/state.c: drop trailing whitespace - * common/setenv.c: common/setenv.c: drop trailing whitespace - * common/parseconf.c: common/parseconf.c: drop trailing whitespace - * clients/upsmon.h: clients/upsmon.h: drop trailing whitespace - * clients/upsimagearg.h: clients/upsimagearg.h: rectify whitespace - * clients/upsclient.h: clients/upsclient.h: drop trailing whitespace - * clients/nutclient.cpp, clients/nutclient.h: - clients/nutclient.{cpp,h}: drop trailing whitespace - * clients/cgilib.c: clients/cgilib.c: drop trailing whitespace - * drivers/nut-ipmipsu.c, drivers/nut-libfreeipmi.c: - drivers/nut-*ipmi**.{c,h}: drop trailing whitespace - * drivers/netxml-ups.c, drivers/netxml-ups.h: drivers/netxml- - ups.{c,h}: drop trailing whitespace - * drivers/mge-utalk.h, drivers/mge-xml.c, drivers/mge-xml.h: - drivers/mge*.{c,h}: drop trailing whitespace - * drivers/main.h: drivers/main.h: drop trailing whitespace - * drivers/main.c: Drop exec bit from source file - * drivers/liebert-hid.h, drivers/liebert.c: drivers/liebert*: drop - trailing whitespace - * drivers/libhid.c: drivers/libhid.h: drop trailing whitespace - * drivers/idowell-hid.c: drivers/idowell-hid.h: drop trailing - whitespace - * drivers/hidtypes.h: drivers/hidtypes.h: drop trailing whitespace - * drivers/genericups.h: drivers/genericups.h: drop trailing - whitespace - * drivers/everups.c: drivers/everups.c: drop trailing whitespace - * drivers/eaton-pdu-pulizzi-mib.c: drivers/eaton-pdu-pulizzi-mib.c: - drop trailing whitespace - * drivers/dummy-ups.h: drivers/dummy-ups.h: drop trailing whitespace - * drivers/dstate.c: drivers/dstate.c: drop trailing whitespace - * drivers/delta_ups-mib.c: drivers/delta_ups-mib.c: drop trailing - whitespace - * drivers/cyberpower-mib.c: drivers/cyberpower-mib.c: drop trailing - whitespace - * drivers/blazer.c, drivers/blazer_usb.c: drivers/blazer*.{c,h}: drop - trailing whitespace - * drivers/bestuferrups.c: drivers/bestuferrups.c: rectify - indentations - * drivers/bestuferrups.c: drivers/bestuferrups.c: drop trailing - whitespace - * drivers/belkin-hid.c, drivers/belkin-hid.h: drivers/belkin*.{c,h}: - drop trailing whitespace - * drivers/bcmxcp_io.h, drivers/bcmxcp_ser.c, drivers/bcmxcp_usb.c: - drivers/bcmxcp*.{c,h}: drop trailing whitespace - * drivers/baytech-mib.c: drivers/baytech-mib.c: drop trailing - whitespace - * drivers/apc-mib.c: drivers/apc-mib.c: drop trailing whitespace - * drivers/apc-hid.c, drivers/apc-hid.h: drivers/apc-hid.{c,h}: drop - trailing whitespace - * drivers/xppc-mib.c: drivers/xppc-mib.h: drop trailing whitespace - * drivers/tripplite-hid.h: drivers/tripplite-hid.h: drop trailing - whitespace - * drivers/snmp-ups.h: drivers/snmp-ups.h: drop trailing whitespace - * drivers/skel.c: drivers/skel.c: drop trailing whitespace - * drivers/richcomm_usb.c: drivers/richcomm_usb.c: drop trailing - whitespace - * drivers/powerware-mib.c: drivers/powerware-mib.c: drop trailing - whitespace - * drivers/openups-hid.c: drivers/openups-hid.c: drop trailing - whitespace - * drivers/oneac.c, drivers/oneac.h: drivers/oneac.{c,h}: drop - trailing whitespace - * drivers/nutdrv_atcl_usb.c: drivers/nutdrv_atcl_usb.c: drop trailing - whitespace - * drivers/riello.c, drivers/riello_ser.c, drivers/riello_usb.c: - drivers/riello*.{c,h}: drop trailing whitespaces - * drivers/apcsmart-old.c, drivers/apcsmart-old.h: drivers/apcsmart- - old.{c,h}: drop trailing whitespaces - * tools/nut-scanner/nut-scanner.c: tools/nut-scanner/nut-scanner.c: - fix whitespaces - * tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan-ip.c, - tools/nut-scanner/nutscan-ip.h, tools/nut-scanner/scan_avahi.c, - tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_ipmi.c, tools/nut-scanner/scan_usb.c: tools/nut- - scanner/*.{c,h}: drop trailing whitespaces - * server/netmisc.c: server/netmisc.c: drop trailing whitespaces - * server/netssl.c: server/netssl.c: drop trailing whitespaces - * server/upsd.c: server/upsd.c: drop trailing whitespaces - * drivers/ivtscd.c: drivers/ivtscd.c: drop trailing whitespaces - * drivers/powerp-bin.h, drivers/powerp-txt.h, drivers/powerpanel.c, - drivers/powerpanel.h: drivers/powerp*.{c,h}: drop trailing - whitespaces - * drivers/powerp-txt.c: drivers/powerp-txt.c: drop trailing - whitespaces - * drivers/powerp-bin.c: drivers/powerp-bin.c: drop trailing - whitespaces - * drivers/victronups.c: drivers/victronups.c: rectify whitespace - * drivers/upscode2.c: drivers/upscode2.c: rectify whitespace - -2020-11-05 Jim Klimov - - * drivers/tripplitesu.c: drivers/tripplitesu.c: drop trailing - whitespaces - * drivers/solis.c, drivers/solis.h: drivers/solis.{c,h}: rectify - whitespaces - * drivers/safenet.c: drivers/safenet.c: drop trailing whitespaces - * drivers/rhino.c: drivers/rhino.c: normalize whitespace heavily - * drivers/powercom.c: drivers/powercom.c: rectify leading whitespaces - * drivers/powercom.c: drivers/powercom.c: drop trailing whitespaces - * drivers/powercom.h: drivers/powercom.h: drop trailing whitespaces - * drivers/optiups.c: drivers/optiups.c: rectify whitespaces - * drivers/hidparser.c: drivers/hidparser.c: drop trailing whitespaces - * drivers/usb-common.c: drivers/usb-common.c: drop trailing - whitespaces - * drivers/libshut.h, drivers/libusb.h, drivers/usb-common.h: - drivers/libshut.h libusb.h usb-common.h: drop trailing whitespaces - * drivers/libshut.c: drivers/libshut.c: rectify whitespaces per style - guide - * drivers/mge-utalk.c: drivers/mge-utalk.c: drop trailing whitespaces - * drivers/metasys.c: drivers/metasys.c: drop trailing whitespaces - * drivers/masterguard.c: drivers/masterguard.c: rectify whitespaces - and drop comments opposing the project style guide - * drivers/masterguard.c: drivers/masterguard.c: drop trailing - whitespaces - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: rectify whitespaces - * drivers/liebert-esp2.c: drivers/liebert-esp2.c: drop trailing - whitespaces - * drivers/isbmex.c: drivers/isbmex.c: rectify whitespaces - * drivers/isbmex.c: drivers/isbmex.c: drop trailing whitespaces - * drivers/gamatronic.h: drivers/gamatronic.h: rectify whitespaces - * drivers/dummy-ups.c: drivers/dummy-ups.c: drop trailing whitespaces - * drivers/bestups.c: drivers/bestups.c: drop trailing whitespaces - * drivers/bestfortress.c: drivers/bestfortress.c: rectify whitespaces - * drivers/bestfcom.c: drivers/bestfcom.c: rectify whitespaces - * drivers/belkinunv.c: drivers/belkin.c: rectify whitespaces - * drivers/belkin.c: drivers/belkin.c: drop trailing whitespaces - * drivers/bcmxcp.c: drivers/bcmxcp.c: fix leading whitespaces - -2020-11-04 Jim Klimov - - * drivers/bcmxcp.c: drivers/bcmxcp.c: drop trailing whitespaces - * drivers/bcmxcp.h: drivers/bcmxcp.h: drop trailing whitespaces - * drivers/serial.c: drivers/serial.c: drop trailing whitespaces - * clients/upssched.c: clients/upssched.c: drop trailing whitespaces - * clients/upsmon.c: clients/upsmon.c: drop trailing whitespaces - * clients/upsset.c: clients/upsset.c: drop trailing whitespaces - * clients/upsimage.c: clients/upsimage.c: drop indented whitespaces - * clients/upsstats.c: clients/upsstats.c: drop trailing whitespaces - * clients/upslog.c: clients/upslog.c: drop trailing whitespaces - * clients/upsc.c: clients/upsc.c: drop trailing whitespaces - * clients/upsclient.c: clients/upsclient.c: drop trailing whitespaces - * common/snprintf.c: common/snprintf.c: rectify whitespace - -2020-11-06 amccartney - - * drivers/powervar-hid.c: Final clean up and edits for Powervar UPM - support - -2020-11-04 Jim Klimov - - * configure.ac: Fix issue #833 for (sys/)termios.h on BSD ...And - generally check if we CAN build serial drivers before trying to - (and/or guessing if we should try). - -2020-11-04 Jim Klimov - - * drivers/solis.c: Update solis.c Drop temporary unicode comment for - PR - * drivers/nutdrv_qx_voltronic.c: Update nutdrv_qx_voltronic.c Drop - temporary comment with unicode for PR - -2020-11-03 Eric Clappier - - * drivers/eaton-ats16-mib.c: Apply patch "Nut-scanner fix for - discovery ats16 with legacy NMC and newer Network-M2" - -2020-10-26 Arnaud Quette - - * drivers/eaton-pdu-marlin-mib.c: snmp-ups: fix outlet ID on Eaton - ePDU Tie outlet ID to a real OID, to avoid erroneous indexes (-1, - 0) - * docs/nut-names.txt, drivers/eaton-pdu-marlin-mib.c: snmp-ups: fix - Eaton ePDU switch ability Expose a general switchability of the - unit, using outlet.switchability, along with a more suitable per- - outlet mechanism - -2020-10-25 Jim Klimov - - * docs/man/Makefile.am: docs/man/Makefile.am : @echo diagnostic - messages without a trace by default - -2020-10-22 Arnaud Quette - - * drivers/main.c: Fix dstate init call WRT data dump Closes: - https://github.com/networkupstools/nut/issues/835 - -2020-10-15 Jim Klimov - - * docs/man/Makefile.am: docs/man/Makefile.am : in check-man-* - targets, count the checked files (to see better the cases where - none were available) - * docs/man/Makefile.am: docs/man/Makefile.am : typo fix ">&@" => - ">&2" for stderr - -2020-10-13 Jim Klimov - - * .travis.yml: .travis.yml (#823) : in default builds, disable - whatever is not in "_matrix_required" - * .travis.yml: .travis.yml (#823) : define a _matrix_linux and - _matrix_all groupings - * .travis.yml: .travis.yml (#823) : clarify the distro-dependent - relations of matrix jobs as required and allowfail per distro - -2020-10-12 Jim Klimov - - * docs/man/usbhid-ups.txt: Update usbhid-ups.txt Rearranged lines to - keep "all" block together, and finish the list item with a comma - without much context change ;) - * docs/nut.dict: Update nut.dict for PR #733 Add new product name - and vendor keywords - -2020-10-12 Jim Klimov - - * docs/acknowledgements.txt: docs/acknowledgements.txt: revise the - last paragraph for listing corporate contributors - -2020-10-12 amccartney - - * docs/man/usbhid-ups.txt, drivers/powervar-hid.c: Changes per NUT - review comments. Removed info fields from polling. Added - company/contributor info. Updated docs/man/usbhid-ups.txt - -2020-10-12 Jim Klimov - - * docs/nutdrv_qx-subdrivers.txt: docs/nutdrv_qx-subdrivers.txt: - revise a few typos - * docs/configure.txt: docs/configure.txt: update for gdlib pkg-config - support (follow-up to #809) - * docs/configure.txt: docs/configure.txt: update for gdlib pkg-config - support (follow-up to #809) - -2020-10-12 Jim Klimov - - * configure.ac: Update configure.ac Whitespace mess - -2020-10-12 Jim Klimov - - * docs/man/upsd.conf.txt: docs/man/upsd.conf.txt: mention that - ALLOW_NO_DEVICE envvar (e.g. from nut.conf) can override the - setting in upsd.conf - * conf/nut.conf.sample: conf/nut.conf.sample: fix ALLOW_NO_DEVICE - example to "export" it on a separate line - -2020-10-12 Jim Klimov - - * .travis.yml: .travis.yml (#823) : win bash has no time - -2020-10-12 Konstantin Gizdov - - * drivers/usbhid-ups.c: address some comments - -2020-10-12 Jim Klimov - - * .travis.yml: ci_build.sh (#823) : add gnu99-clang-win-nowarn - * ci_build.sh: ci_build.sh (#823) : only call dpkg on linux - * ci_build.sh: ci_build.sh (#823) : investigate win autogen - * .travis.yml: .travis.yml (#823) : fix delivery of ccache to win - builds - -2020-10-11 Jim Klimov - - * .travis.yml: .travis.yml (#823) : do not cache /usr/local/Cellar on - osx, it is too big and rejected anyway - * .travis.yml: .travis.yml (#823, #828) : extend matrix for osx - builds with -std=gnu* variants that seem to pass - * .travis.yml: .travis.yml (#823) : for osx builds, avoid "brew - update" by default, that since 2.0.0 release involves cleanup - automagically and takes a needless 15-30 minutes hit on a Travis - worker When desired we can set HOMEBREW_NO_AUTO_UPDATE - customizable per run - * .travis.yml: .travis.yml (#823) : for osx builds, add ccache; and - only bother for asciidoc + docbook-xsl if building docs - * .travis.yml: .travis.yml (#823) : cache locations related to Brew - between runs - * .travis.yml: .travis.yml (#823) : for now, enable CI_TRACE on Win - always (to find where ci_build.sh script dies) - * .travis.yml: .travis.yml : set jobs.fast_finish:true - -2020-10-10 Jim Klimov - - * .travis.yml: .travis.yml (#823) : group tests into YAML _matrix-* - lists to pick some easier for particular runs on dev branches - * .travis.yml: .travis.yml (#823) : xcode6.4 is deprecated on Travis, - try a newer oldest alternative (7.3) - * .travis.yml: .travis.yml (#823) : add c99-clang-xcode10.2-warn - * .travis.yml: .travis.yml (#823) : reorder some allowed_failure - tests to group logically - * .travis.yml: .travis.yml (#823) : drop gnu14-gcc-8-nowarn (no C14), - add gnu17-clang-8-nowarn - * .travis.yml: .travis.yml (#823) : drop gnu14 and gnu17 attempts - with gcc-7; try gnu14 with gcc-8 - * .travis.yml: .travis.yml (#823) : mark gnu17-gcc-9-nowarn as OK - * ci_build.sh: .travis.yml (#823) : give up on gdlib (--with-cgi) on - win for now - * .travis.yml: .travis.yml (#823) : add a few MacOS X and - Windows+clang9 build combos for diversity - * .travis.yml: .travis.yml (#823) : add more compilers and standards - to try, to collect max diags: c17-clang-8-warn gnu17-gcc-9-warn - * .travis.yml: .travis.yml (#823) : add more compilers and standards - to try : gnu14-gcc-7-nowarn gnu17-gcc-7-nowarn gnu17-gcc-9-nowarn - c99-clang-3.5-nowarn c17-clang-8-nowarn - * .travis.yml: .travis.yml (#823) : specify "compiler" in our - handmade matrix to hint to Travis which env we want - * .travis.yml: .travis.yml (#823) : comment the reference of C/C++ - standard support by gcc and clang versions used - * .travis.yml: .travis.yml : reshuffle default required builds order - to have the quicker ones more likely to fail in development - iterations to run first - * .travis.yml: .travis.yml : move BUILD_TYPE=default and - BUILD_TYPE=default-tgt:distcheck-light into common stack for - manageability - * .travis.yml: .travis.yml: declare linux "dist" that we want by - default - * ci_build.sh: ci_build.sh: handle runs with unspecified BUILD_TYPE - * ci_build.sh: ci_build.sh: report if PATH includes ccache, and if CC - and CXX understand passed C(XX)FLAGS - * ci_build.sh: ci_build.sh: report values of PATH, CC and CXX (and - versions of the latter) before adding CCACHE into the mix - -2020-10-09 Konstantin Gizdov - - * drivers/usbhid-ups.c: more compact logic - * drivers/usbhid-ups.c: remove leftover lines - * drivers/usbhid-ups.c: lay the groundwork for CyberPower UT - cputquirk - * drivers/usbhid-ups.c: fix indentation style - -2017-10-03 Arnaud Quette - - * docs/configure.txt: Remove an extraneous point - * docs/configure.txt: Update configure documentation for libusb - Document the possibility to override the auto-detection choice, - even though the implementation of this override is not yet - currently working - -2020-10-09 Jim Klimov - - * docs/developers.txt: docs/developers.txt : document coding style - examples for tabs vs spaces - * docs/developers.txt: docs/developers.txt : document a "for loop - initial declarations are only allowed in C99 or C11 mode" - portability offense - * docs/developers.txt: docs/developers.txt : document the official - C99+ standard support and that we have CI to help make sure what is - upheld - * .travis.yml: .travis.yml : update comment for the NUT_MATRIX_TAG - block of tests - * .travis.yml: .travis.yml : fix comment-naming for cDefault-gcc- - default-nowarn/gnu99-gcc-default-nowarn primary not-failing case to - keep up - * .travis.yml: .travis.yml : mark gnu89-gcc-default-nowarn as a not- - failing case to keep up - * drivers/solis.c: drivers/solis.c : fix C89 for-loop var - declarations - * .travis.yml: .travis.yml : mark gnu11-gcc-7-nowarn - gnu99-clang-5.0-nowarn as not-failing cases to keep up - * .travis.yml: .travis.yml : add gnu89-gcc-default-nowarn to the test - matrix to check if at least the basic syntax is okay (note that - current warnings for C89 seem to indicate faults that may be fatal - in binary code) - * .travis.yml: .travis.yml : mark gnu99-gcc-7-nowarn as a not-failing - case to keep up - * .travis.yml: .travis.yml : add gnu99-clang-5.0-nowarn to the test - matrix (hope clang can do GNU C dialect) - * .travis.yml: .travis.yml : add gnu11-gcc-7-nowarn to the test - matrix - -2020-10-08 Alexey Rodionov - - * .../python/app/locale/ru/LC_MESSAGES/NUT-Monitor.mo, - scripts/python/app/locale/ru/ru.po: Fixed two typos and translation - of the term load - -2020-10-08 Jim Klimov - - * .travis.yml: .travis.yml : add c11-clang-5.0-nowarn and - c11-clang-5.0-warn to the matrix - * .travis.yml: .travis.yml : add gnu99-gcc-7-nowarn - c99-clang-5.0-nowarn to test matrix (expected to be green) - * .travis.yml: .travis.yml : warning comment about multitoken CFLAGS - and distcheck - * ci_build.sh: ci_build.sh : spell case statements in consistent - style - * ci_build.sh: ci_build.sh : define default-all-errors separately - from default-alldrv - -2020-08-08 Sean McBride - - * clients/cgilib.c, clients/nutclient.cpp, clients/upsmon.c, - clients/upsset.c, drivers/al175.c, drivers/apcsmart-old.c, - drivers/asem.c, drivers/bcmxcp.c, drivers/belkinunv.c, - drivers/dstate.c, drivers/gamatronic.c, drivers/isbmex.c, - drivers/mge-utalk.c, drivers/nut-libfreeipmi.c, - drivers/nutdrv_qx_voltronic-qs-hex.c, - drivers/nutdrv_qx_voltronic.c, drivers/oneac.c, drivers/powercom.c, - drivers/rhino.c, drivers/riello_ser.c, drivers/snmp-ups.c, - drivers/solis.c, drivers/tripplite_usb.c, drivers/tripplitesu.c, - server/netssl.c, tools/nut-scanner/scan_nut.c: WIP: Fixed various - warnings and errors identified by cppcheck Specifically: - arrayIndexThenCheck,drivers/nutdrv_qx_voltronic-qs- - hex.c:222,style,Array index 'i' is used before limits check. - arrayIndexThenCheck,drivers/oneac.c:176,style,Array index 'i' is - used before limits check. - clarifyCalculation,drivers/belkinunv.c:1063,style,Clarify - calculation precedence for '&' and '?'. - clarifyCalculation,drivers/belkinunv.c:922,style,Clarify - calculation precedence for '&' and '?'. - clarifyCalculation,drivers/powercom.c:677,style,Clarify calculation - precedence for '&' and '?'. - clarifyCalculation,drivers/powercom.c:732,style,Clarify calculation - precedence for '&' and '?'. - clarifyCondition,drivers/asem.c:248,style,Boolean result is used in - bitwise operation. Clarify expression with parentheses. - duplicateConditionalAssign,drivers/solis.c:725,style,The statement - 'if (DaysOnWeek!=DaysOffWeek) DaysOnWeek=DaysOffWeek' is logically - equivalent to 'DaysOnWeek=DaysOffWeek'. - duplicateExpression,clients/cgilib.c:49,style,Same expression on - both sides of '||'. - duplicateExpression,drivers/nutdrv_qx_voltronic.c:270,style,Same - expression on both sides of '||'. - duplicateExpression,drivers/nutdrv_qx_voltronic.c:303,style,Same - expression on both sides of '||'. - duplicateExpression,drivers/nutdrv_qx_voltronic.c:397,style,Same - expression on both sides of '||'. identicalInnerCondition,drivers/t - ripplite_usb.c:579,warning,Identical inner 'if' condition is always - true. incorrectLogicOperator,drivers/dstate.c:1170,warning,Logical - conjunction always evaluates to false: c2 && !c2. - incorrectLogicOperator,drivers/rhino.c:190,warning,Logical - disjunction always evaluates to true: BattVoltage > 129 || - BattVoltage < 144. incorrectStringBooleanError,drivers/mge- - utalk.c:899,warning,Conversion of string literal "\r\n" to bool - always evaluates to true. - invalidPrintfArgType_sint,clients/upsset.c:393,warning,%d in format - string (no. 1) requires 'int' but the argument type is 'unsigned - int'. invalidPrintfArgType_sint,clients/upsset.c:676,warning,%d in - format string (no. 1) requires 'int' but the argument type is - 'unsigned int'. - invalidPrintfArgType_sint,drivers/isbmex.c:178,portability,%d in - format string (no. 1) requires 'int' but the argument type is - 'ssize_t {aka signed long}'. - invalidPrintfArgType_sint,drivers/tripplitesu.c:435,warning,%d in - format string (no. 1) requires 'int' but the argument type is - 'unsigned int'. - knownConditionTrueFalse,clients/upsmon.c:919,style,Condition 'un' - is always true - knownConditionTrueFalse,drivers/gamatronic.c:111,style,Condition - 'ret>=0' is always true - knownConditionTrueFalse,drivers/powercom.c:696,style,Condition - 'battval>bat0' is always true - knownConditionTrueFalse,drivers/solis.c:485,style,Condition - 'AppPower==0' is always false knownConditionTrueFalse,tools/nut- - scanner/scan_nut.c:180,style,Condition 'numa>=3' is always true - memleak,clients/upsset.c:664,error,Memory leak: val - nullPointerRedundantCheck,drivers/snmp-ups.c:1554,warning,Either - the condition 'info_template==NULL' is redundant or there is - possible null pointer dereference: info_template. - pointerLessThanZero,drivers/nut-libfreeipmi.c:864,style,A pointer - can not be negative so it is either pointless or an error to check - if it is. pointerLessThanZero,drivers/nut-libfreeipmi.c:884,style,A - pointer can not be negative so it is either pointless or an error - to check if it is. - postfixOperator,clients/nutclient.cpp:896,performance,Prefer prefix - ++/-- operators for non-primitive types. - redundantInitialization,drivers/al175.c:548,style,Redundant - initialization for 'reply'. The initialized value is overwritten - before it is read. - uninitMemberVar,clients/nutclient.cpp:504,warning,Member variable - 'TcpClient::_timeout' is not initialized in the constructor. - uninitMemberVar,clients/nutclient.cpp:513,warning,Member variable - 'TcpClient::_timeout' is not initialized in the constructor. - uninitvar,server/netssl.c:546,error,Uninitialized variable: ret - unsignedLessThanZero,drivers/apcsmart-old.c:928,style,Checking if - unsigned expression 'sdtype' is less than zero. - unsignedPositive,drivers/bcmxcp.c:785,style,Unsigned expression - 'commandByte' can't be negative so it is unnecessary to test it. - uselessAssignmentPtrArg,drivers/riello_ser.c:105,warning,Assignment - of function parameter has no effect outside the function. Did you - forget dereferencing it? - -2020-10-08 Jim Klimov - - * ci_build.sh: ci_build.sh : revise multi-token CONFIG_OPTS entries - * .travis.yml, ci_build.sh: .travis.yml / ci_build.sh : define a - BUILD_TYPE=default-all-errors specifically to list all files with - errors fatal for current build config (but not list whatever - succeds) - * ci_build.sh: ci_build.sh : allow to stack multi-token CC="ccache - clang" and such - * ci_build.sh: ci_build.sh : recognize is_clang() for ccache wrapping - * ci_build.sh: ci_build.sh : recognize is_clang() - * .travis.yml, ci_build.sh: Issue #823 : Set up Travis CI testing for - more compiler implementations and C/C++ standards - * ci_build.sh: ci_build.sh : fix a few historic typos - * ci_build.sh: ci_build.sh: make sure we build all possible binaries - in default-alldrv mode - -2020-10-08 Alexey Rodionov - - * .../app/locale/ru/LC_MESSAGES/NUT-Monitor.mo, - scripts/python/app/locale/ru/ru.po: Additional corrections of the - Russian translation - * .../app/locale/ru/LC_MESSAGES/NUT-Monitor.mo, - scripts/python/app/locale/ru/ru.po: Fixed typos, made changes - according to comments - -2020-10-08 Jim Klimov - - * drivers/Makefile.am: drivers/Makefile.am : drop redundant - pijuice_SOURCES listed in wrong section - -2020-10-07 Jim Klimov - - * docs/man/snmp-ups.txt, docs/nut.dict: Update snmp-ups manpage for - symmetrathreephase quirk to complete PR #788 - -2020-10-07 Jim Klimov - - * drivers/snmp-ups.c: Update snmp-ups.c Fixed indentation for - multiline if-clause - -2020-10-07 Jim Klimov - - * docs/man/Makefile.am, docs/man/index.txt, docs/man/pijuice.txt, - docs/nut.dict: Add initial manpage for pijuice driver, hastily - ripped off one for asem driver - * drivers/pijuice.c: pijuice.c cleanup : rectify leading indentations - * drivers/pijuice.c: pijuice.c cleanup : rectify tabulation of - definitions - * drivers/pijuice.c: pijuice.c cleanup : comment end of big block of - nested #if macros - * drivers/pijuice.c: pijuice.c cleanup : rectify indentation and - blank-line the default return - * drivers/pijuice.c: pijuice.c cleanup : indent stacked #if* macros - * drivers/pijuice.c: pijuice.c cleanup : trailing whitespaces - -2020-10-07 Jim Klimov - - * clients/upsmon.c: Update upsmon.c Log a warning if an UPS is both - OB+LB+Calibrating so due to this combo we do not tell the host to - shut down gracefully. Comment some ideas to work around such - situation in a smarter way if we have additional info to know if we - are in a safe environment just calibrating, or a known-unsafe one - with a real outage in progress. - * common/state.c: state.c: state_delinfo(): comment on immutables - For `state_delinfo()` not deleting immutable variables, comment - this near the function and log for runtime hits to help - troubleshooting. - -2020-10-06 Arnaud Quette - - * drivers/main.c: Driver datadump improvements Do not switch to - statepath, nor write pidfile, when using the datadump (-s -d) mode - -2020-09-22 Ross Williams - - * clients/upsmon.c, clients/upsmon.h: Do not shutdown if UPS is - performing calibration Some UPS calibration procedures (e.g. - CyberPower) involve discharging the battery below the LB level, but - we don't want systems to shut down if the UPS is only on battery - because it is calibrating. - -2019-04-01 Ross Williams - - * drivers/cyberpower-mib.c: cyberpower-mib: fix instant command - declarations Had desired OID values in default value field. Also, - default value for SU_TYPE_CMD should be NULL. - -2019-03-29 Ross Williams - - * drivers/cyberpower-mib.c: cyberpower-mib: Add instant commands - -2019-04-01 Ross Williams - - * drivers/cyberpower-mib.c: cyberpower-mib: got delay OID wrong Left - off .0 - * drivers/cyberpower-mib.c: cyberpower-mib: Add delay variables Add - some read/write variables affecting the sleep delay and return - delay. - * drivers/cyberpower-mib.c: cyberpower-mib: fix instant command - declarations Had desired OID values in default value field. Also, - default value for SU_TYPE_CMD should be NULL. - * drivers/cyberpower-mib.c: cyberpower-mib: NUT runtime is seconds - not minutes - * drivers/cyberpower-mib.c: cyberpower-mib: clarify status values - * drivers/cyberpower-mib.c: cyberpower-mib: correct sysOID At least - newer CyberPower management cards report a sysOID of CPS-MIB::ups, - not the base CyberPower enterprise MIB that was previously defined. - -2019-03-29 Ross Williams - - * drivers/cyberpower-mib.c: cyberpower-mib: Add instant commands - * drivers/cyberpower-mib.c: cyberpower-mib: add support for battery - status Reports LB, CAL, and RB flags - -2020-08-12 Konstantin Gizdov - - * drivers/usbhid-ups.c: initial patch that works - -2020-07-29 Fabrice Fontaine - - * m4/nut_check_libgd.m4: nut_check_libgd.m4: try to find gd through - pkg-config gdlib-config has been dropped from version 2.3.0 with h - ttps://github.com/libgd/libgd/commit/d62f608c7c4a814c70d4ba777725e3 - e62d9e2cde - -2020-07-21 Luka Kovačič - - * drivers/delta-hid.c: drivers: delta-hid: Update entry flags - appropriately Update entry flags to use HU_FLAG_QUICK_POLL for - status and alarm variables, HU_FLAG_SEMI_STATIC for variables that - can change on user changes and HU_FLAG_STATIC for variables that - don't need to be updated after init. - -2020-07-02 Luka Kovačič - - * drivers/Makefile.am, drivers/delta-hid.c, drivers/delta-hid.h, - drivers/usbhid-ups.c, scripts/upower/95-upower-hid.rules: drivers: - delta-hid: Add Delta HID subdriver Delta HID subdriver is added to - support Delta RT Series, Single Phase, 1/2/3 kVA UPS devices. The - driver was tested and tweaked on Delta RT 3 kVA UPS. - -2020-07-17 Alexey Rodionov - - * .../app/locale/ru/LC_MESSAGES/NUT-Monitor.mo, - scripts/python/app/locale/ru/ru.po: Add Russian translation for - NUT-Monitor - -2020-07-11 Matt Merhar - - * docs/security.txt: Fix typo in TCP Wrappers documentation - -2020-06-15 Florian Bernd - - * drivers/apcupsd-ups.c: Do not overwrite `poll_interval` in - `apcupsd-ups` This commit removes the hardcoded poll-interval of - 60 seconds and instead only makes sure that the user-defined - interval is greater than a minimum-interval. - * drivers/apcupsd-ups.c, drivers/apcupsd-ups.h: Do not call - `dstate_delinfo()` for LB-condition variables This commit fixes - the `ignorelb` flag for the `apcupsd-ups` driver. Previusly - "battery.charge" and "battery.runtime" was cleared before invoking - `status_commit()` which caused the LB-condition to always be - `false`. - * common/state.c: Respect `ST_FLAG_IMMUTABLE` in `dstate_delinfo()` - -2020-06-11 Eric Zinnikas - - * drivers/cyberpower-mib.c: Support CyberPower RMCARD205 - -2020-06-11 Peter Klein - - * clients/nutclient.cpp, clients/nutclient.h: Remove dynamic - exception specifications from clients/nutclient.cpp These are - invalid in c++17 and must be removed for compatibility with modern - compilers. - -2020-06-02 Jim Klimov - - * drivers/apc-ats-mib.c: apc-ats-mib.c : use a ..._MODEL_NAME macro - and bump version to complete earlier fix - -2020-05-31 Timothy Pearson - - * drivers/snmp-ups.c: Fix long-standing transfer threshold read bug - with APCC 3 phase Symmetra units - -2020-05-14 Arnaud Quette - - * tools/nut-scanner/scan_snmp.c: SNMP scan: check the match dup on - 'mib' instead of 'sysoid' This actually avoids duplication when - multiple sysOIDs are declared for the same MIB - -2020-05-01 gprints - - * drivers/liebert-hid.c: Update liebert-hid.c - -2020-04-28 Arnaud Quette - - * drivers/eaton-ats16-mib.c: snmp-ups: cleanup Eaton ATS16 with new - Network-M2 Duplicate the definition, as a workaround to the bugger - scanner data extraction, and point at the same eaton_ats16 name, - since there is no interest in separating mib2nut entries pointing - at the same MIB mapping - -2020-01-15 Clappier, Eric - - * drivers/ietf-mib.c: Issue corection filter ietf mib (cherry picked - from commit 93a64efbdae28355be60329b651d3c42c7ddedf8) - -2020-04-28 Arnaud Quette - - * tools/nut-snmpinfo.py: Fix Python issue in the SNMP scan extractor - -2020-01-15 Clappier, Eric - - * tools/nut-scanner/scan_snmp.c, tools/nut-snmpinfo.py: Fix nutscan - snmp (cherry picked from commit - bc5a6c218e21c0af454007e2929c084129b6f3ed) - * drivers/apc-ats-mib.c: Issue correction no pointer null at - beginning of the SNMP IDs device table (cherry picked from commit - 9d167892a36bf75d30839e7d4d6b53f037751666) - -2020-04-28 Arnaud Quette - - * drivers/huawei-mib.c: Huawei MIB: add a counter check OID This - avoids getting a false result when trying all OIDs, due to the use - of Net SNMP sysOID (.1.3.6.1.4.1.8072.3.2.10), found in various - implementations - -2016-05-25 Jim Klimov - - * drivers/huawei-mib.c: huawei-mib - renamed lookups to have - "huawei_*" prefix (cherry picked from commit - fd29f32b2837588518ec7bea07f414c2631d5c8f) - -2020-04-21 Jim Klimov - - * scripts/augeas/nutupsdconf.aug.in: nutupsdconf.aug.in: complete the - ALLOW_NO_DEVICE definition - * conf/nut.conf.sample, conf/upsd.conf.sample, - docs/man/upsd.conf.txt, scripts/augeas/nutupsdconf.aug.in, - scripts/augeas/tests/test_nut.aug, server/conf.c, server/upsd.c, - server/upsd.h: Rename NUT_NOCONF_ALLOWED to ALLOW_NO_DEVICE as - suggested in PR comments - * conf/nut.conf.sample: nut.conf.sample: update the comment about - NUT_NOCONF_ALLOWED - * server/upsd.c: upsd.c : CONST char* temp "envvar" as we do not - change the string later - -2020-04-17 Jim Klimov - - * conf/upsd.conf.sample, docs/man/upsd.conf.txt: Re-spell "Boolean" - to satisfy spell-checker - * conf/upsd.conf.sample, docs/man/upsd.conf.txt, - scripts/augeas/nutupsdconf.aug.in, - scripts/augeas/tests/test_nut.aug, server/conf.c, server/upsd.c, - server/upsd.h: Allow to configure NUT_NOCONF_ALLOWED option via - upsd.conf - -2020-04-17 Arnaud Quette - - * drivers/eaton-ats16-mib.c, drivers/eaton-ats16-mib.h, drivers/snmp- - ups.c: snmp-ups: add Eaton ATS16 with new Network-M2 Add support - for Eaton ATS16 using the new Network-M2 communication cards, and - including a fixed sysOID fingerprint - -2020-04-03 Jim Klimov - - * clients/nutclient.cpp: clients/nutclient.cpp: sanity-check - getDevicesVariableValues() called with empty device list - -2020-03-14 Jim Klimov - - * docs/nut.dict: nut.dict : fixes for NUT_NOCONF_ALLOWED addition - * scripts/systemd/nut-driver-enumerator.service.in, - scripts/systemd/nut-driver@.service.in, scripts/systemd/nut- - monitor.service.in, scripts/systemd/nut-server.service.in: SystemD - service units: source EnvironmentFile=...nut.conf if available - * conf/nut.conf.sample: nut.conf.sample : prepare an uncommentable - line for NUT_NOCONF_ALLOWED=true - * server/upsd.c: server/upsd.c: introduce support for envvar - NUT_NOCONF_ALLOWED=true to allow starting with 0 ups.conf sections - -2018-09-19 Arnaud Quette - - * server/upsd.c: upsd should return EXIT_FAILURE when -c failed - -2020-02-19 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in: when autostarting/reloading upsd (nut-server), do - it for previously "failed" unit too - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in: do systemctl daemon-reload between editing a unit - definition and auto-starting it - -2018-12-18 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : centralize management of TIMEOUT_CMD and - TIMEOUT_ARGS, and use it for driver stop/start - it hangs too - sometimes - -2020-02-09 Laurent Bigonville - - * scripts/python/app/nut-monitor.appdata.xml, scripts/python/app/nut- - monitor.desktop: Update the appdata file to the latest version of - the specification (#727) * nut-monitor: Update the appdata file to - the latest version of the specification Fixes: #724 * nut- - monitor: Update the desktop file to follow the last version of the - sepcification - -2020-02-09 Jim Klimov - - * docs/Makefile.am, docs/documentation.txt, docs/nut.dict, - docs/solaris-usb.txt, scripts/Solaris/README: Add docs/solaris- - usb.txt for posterity (#755) - -2020-01-08 Fernando Chaves <38504809+fernandolcx@users.noreply.github.com> - - * drivers/apcupsd-ups.h: apcupsd-ups: add real power and current - variables LOAD_W => ups.realpower LOADAPNT => power.percent - OUTCURNT => `output.current` LOAD_VA => `ups.power` NOMAPNT => - `ups.power.nominal` Closes: - https://github.com/networkupstools/nut/pull/753 - -2019-11-06 Charles Lepple - - * data/driver.list.in: HCL: Add PowerWalker VFI 1000 CG PF1 Closes: - https://github.com/networkupstools/nut/issues/648 - -2019-09-18 andrewmccartney - - * drivers/Makefile.am, drivers/libusb.c, drivers/powervar-hid.c, - drivers/powervar-hid.h, drivers/usbhid-ups.c: Changes to add - support for Powervar UPM as usb-hid UPS. Includes adding a report - index to libusb.c in order to handle the composite device in the - UPM. - -2019-09-12 Andrew Anderson - - * drivers/pijuice.c: Conditionally include linux/i2c.h Check for - I2C_FUNC_I2C to avoid errors caused by conflicts between - linux/i2c-dev.h and linux/i2c.h - * configure.ac, drivers/pijuice.c: Add more granular I2C support - checks Accommodate one more variation of SMBUS/I2C support where - both the headers and the libraries exist and are usable. - * drivers/pijuice.c: Pull over the latest development version Clean - up the upsdebugX() labels Pull the conditional I2C support code - closer to the includes block Don't report battery temp as UPS temp - Warn if we adjust shutdown_delay - * drivers/pijuice.c: Fix the length passed into memset() - * drivers/asem.c: Add pijuice I2C driver for PiJuice HAT 4/4 Update - asem.c to complie cleanly by adding an include for - * configure.ac: Add pijuice I2C driver for PiJuice HAT 3/4 Check for - both the i2c-tools 3.x and 4.x include files (i2c-dev.h/smbus.h) - and set flags accordingly. Link with the i2c library file from - i2c-tools 4.x if it is available. - * drivers/Makefile.am: Add pijuice I2C driver for PiJuice HAT 2/4 - Update the driver Makefile.am to add pijuice driver to the - LINUX_I2C_DRIVERLIST - * drivers/pijuice.c: Add pijuice I2C driver for PiJuice HAT 1/4 Add - pijuice driver - -2019-09-02 Laurent Bigonville - - * scripts/python/app/nut-monitor.desktop: nut-monitor: Drop the .png - extension for the Icon in the .desktop file - -2019-08-18 Laurent Bigonville - - * scripts/python/Makefile.am, scripts/python/app/icons/256x256/nut- - monitor.png, .../python/app/{ => icons/48x48}/nut-monitor.png, - scripts/python/app/icons/64x64/nut-monitor.png, - scripts/python/app/icons/scalable/nut-monitor.svg: nut-monitor: Add - scalable, 64x64 and 256x256 icon for nut-monitor FTR, this icon - comes from gnome-icon-theme 2.28 - -2019-07-22 rpvelloso - - * drivers/solis.c: solis: avoid index out of bounds Since the - parameter taken by autonomy_calc() is used to index a couple of - arrays of 5 positions and the variable `im`, which is passed to - autonomy_calc(), can be equal to 4, blindly incrementing it by one, - when it's 4, leads to an index out of bounds. - -2019-07-30 Daniele Pezzini - - * drivers/nutdrv_siemens_sitop.c: nutdrv_siemens_sitop: move to the - new "battery.charge.approx" var - * data/cmdvartab, docs/nut-names.txt: Add and document a new - "battery.charge.approx" var - -2019-07-12 Spencer Shimko - - * drivers/tripplite_usb.c: Report load for Tripp Lite USB 3005 - protocol The debug output for a device using the Tripp Lite 09ae - 3005 protocol seems to show that the ups.debug.L is the load as - noted on mailing list posts. Decode it and report it as ups.load. - Tested on TRIPP LITE SMART500RT1U. - -2019-07-11 Jim Klimov - - * scripts/Solaris/nut-driver.xml.in: Solaris/nut-driver.xml.in : - constrain the impact of managing SMF instances for missing devices - * scripts/systemd/nut-driver@.service.in: nut-driver@.service.in : - fix back templated @SBINDIR@ - * scripts/systemd/nut-driver@.service.in: Problem: Attempts to start - a nut-driver@bogusname actually run upsdrvctl on everything - Solution: First check if service instance name is valid, then use - it Should fix https://github.com/42ity/nut/issues/87 - -2019-07-10 Laurent Bigonville - - * clients/Makefile.am, tools/nut-scanner/Makefile.am: libupsclient, - libnutscan: Only export symbols part of the public API Fixes: #713 - -2019-07-09 Laurent Bigonville - - * clients/upsclient.c, clients/upsmon.c, drivers/apcsmart.c, - drivers/bcmxcp.h, drivers/bestuferrups.c, drivers/main.c, - drivers/masterguard.c, drivers/metasys.c, drivers/mge-hid.c, - drivers/mge-mib.c, drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_q1.h, - drivers/optiups.c, drivers/solis.c, scripts/python/app/NUT-Monitor, - tools/nut-scanner/nut-scanner.c: Fix several typos - * configure.ac, lib/libupsclient.pc.in, m4/nut_check_libnss.m4, - m4/nut_check_libopenssl.m4: Use pkg-config module names instead of - listing the libraries Fixes: #709 - -2019-07-02 Jim Klimov - - * common/common.c: common.c : BUILD_64 not detected in some distros, - needs stdint.h - -2018-05-04 Matthijs ten Berge - - * docs/man/nutdrv_siemens_sitop.txt: Spelling fix - * drivers/nutdrv_siemens_sitop.c: Remove %-sign from variable values - * drivers/nutdrv_siemens_sitop.c: Fix line endings - * docs/man/nutdrv_siemens_sitop.txt: Better explanation of serial - port polling - -2018-04-11 Matthijs ten Berge - - * data/driver.list.in, docs/man/Makefile.am, docs/man/{siemens- - sitop.txt => nutdrv_siemens_sitop.txt}, drivers/Makefile.am, - drivers/{siemens-sitop.c => nutdrv_siemens_sitop.c}: Rename driver - siemens-sitop to nutdrv_siemens_sitop As requested in https://gith - ub.com/networkupstools/nut/pull/545#pullrequestreview-106712942 - -2018-03-26 Matthijs ten Berge - - * drivers/siemens-sitop.c: Various code improvements after review - - The number of delimiter characters is no longer hard-coded, but - will be detected and thrown away at runtime - Discard any remains - in the RX buffer after communication errors - collapse repeating - code - upsdrv_shutdown now uses instcmd (removes duplicate code) - - obsolete ups.* variables removed - poll_interval not hard-coded, - but give a warning when a large value is encountered - option - parsing improved - * docs/man/siemens-sitop.txt: Improve manpage layout - -2018-03-23 Matthijs ten Berge - - * docs/man/siemens-sitop.txt, docs/nut.dict: Spellcheck fixes - * data/driver.list.in, docs/man/Makefile.am, docs/man/siemens- - sitop.txt, drivers/Makefile.am, drivers/siemens-sitop.c: Initial - commit of siemens-sitop: driver for Siemens SITOP UPS500-series - UPSes - -2019-04-26 William Chase - - * drivers/bestfcom.c: Fix for Ferrups FE7000 "off" command (#692) - "off" command for FE7000 required at least 5 seconds for the - command to be accepted. Also should match the off with autostart - or "o" with "a" to be consistent with the manual: - https://www.eaton.com/content/dam/eaton/products/backup-power-ups- - surge-it-power-distribution/backup-power-ups/eaton-ferrups-tower- - ups/eaton-ferrups-FE-QFE-userguide-.pdf (o [time] a is how the - manual references the "short" command) - -2019-04-16 Ross Williams - - * drivers/snmp-ups.c: snmp-ups: add ability to set TimeTicks - correctly (#687) * snmp-ups: add ability to set TimeTicks - correctly Driver had been setting read/write parameters as either - Integer or String, but OIDs that expect TimeTicks cannot be set - using an Integer. snmp-ups already supported getting TimeTicks - correctly and had helper functions for setting TimeTicks, but logic - had not been implemented in su_setOID(). * Missing semicolon ;-( - * snmp-ups: use NUT's str_to_long() in su_setOID() Safer - conversion from provided strings to instant command or read/write - value. Omitted default value if !SU_MODE_INSTCMD because it is not - possible for read/write variable functions to be called without a - value (unlike instant commands). - -2019-04-11 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c, drivers/snmp-ups.c: [DNMY] Fix snmp - templates (#681) * eaton-pdu-marlin-mib.c : move "outlet.count" - query higher * snmp-ups.c : anticipate lack of OIDs in templates - -2019-04-05 Jim Klimov - - * .travis.yml, Makefile.am, ci_build.sh: Introduce shell script - syntax checks (#675) * Introduce shell script syntax checks * - Makefile.am : do not shellcheck/spellcheck by default as it can - fail for external circumstances (e.g. missing tools) * Makefile.am - : visibly separate the "check-scripts-syntax" implementation (with - current system shells) vs "shellcheck" which may get impemented - differently (with external tools) in later iterations * - Makefile.am : update the check-scripts-syntax comment (clarify - text, fix typo) * Makefile.am : clarify the check-scripts-syntax - vs shellcheck comment * .travis.yml and ci_build.sh : leave TBDs - for future shellcheck tool integration * ci_build.sh : call both - shellcheck and check-scripts-syntax targets; it does not duplicate - the work and reports while one calls another for now - and will do - two tests when they become independent - * configure.ac: configure.ac : fix mismatched usage of have_cxx11 - envvar (#689) - * server/conf.c: Problem: isdigit() receives a char* instead of char - (#690) Solution: as a quick fix, pick the first char of the string - we pass. The proper fix would be to use the str_*() API for safe - conversions, in a later iteration. See-also: - https://github.com/networkupstools/nut/issues/676 - -2019-04-01 Jim Klimov - - * include/common.h: common.h : use the common do/while idiom for - macro with if clause - -2019-04-01 Jim Klimov - - * common/common.c, include/common.h: Problem: upsdebug*() pass data - and allocate vars always Solution: wrap old well-known API - routines into macros that check debugging level first, and only - invest into calling routines and passing data later - if that would - not be in vain. - -2019-03-25 Jean-Baptiste Boric - - * tools/nut-scanner/scan_snmp.c: Fix nut-scanner SNMPv3 (#680) - -2019-03-19 Arnaud Quette - - * drivers/compaq-mib.c, drivers/eaton-ats16-mib.c, drivers/eaton-pdu- - marlin-mib.c, drivers/hpe-pdu-mib.c, drivers/netxml-ups.c, - drivers/powerware-mib.c: Refresh firmware information for Eaton/HPE - devices Despite the static nature of these data, firmware can be - updated by various means, and should thus be refreshed by the - driver, without needing a driver restart. A "semi static" approach - should be done in the end, as in usbhid-ups, but is not part of the - present development, though commented in the code. For the time - being, simply remove the STATIC flags to refresh the data (snmp- - ups) and allow to refresh product information (netxml-ups) - -2019-03-19 Jean-Baptiste Boric - - * tools/nut-scanner/scan_snmp.c: Fix SNMPv3 in nut-scanner (#679) - -2019-03-15 Arjen de Korte - - * clients/upsclient.c, clients/upssched.c, - m4/nut_check_libopenssl.m4, server/netssl.c: Add support for - openssl-1.1.0 (#504) * Add support for openssl-1.1.0 * Allow - TLSv1 and higher (not just TLSv1) * Fix check for empty string * - Report TLS handshake in debug mode * Update - nut_check_libopenssl.m4 * Update upsclient.c * Update netssl.c - -2019-03-14 Charles Lepple - - * docs/man/nutupsdrv.txt, docs/man/ups.conf.txt: nutupsdrv: reword - "user" directive section Closes: - https://github.com/networkupstools/nut/issues/336 Closes: - https://github.com/networkupstools/nut/issues/671 - -2019-03-11 Arnaud Quette - - * docs/new-clients.txt: libnutclient: add comments to the code sample - -2019-03-11 Jean-Baptiste Boric - - * clients/nutclient.cpp, clients/nutclient.h, docs/new-clients.txt, - docs/nut.dict: Implement tracking commands in libnutclient (#673) - * Implement tracking commands in libnutclient * Add - TrackingResult::INVALID_ARGUMENT - -2019-02-26 Arnaud Quette - - * drivers/solis.c: Fix regression in solis authors list - -2019-02-26 Roberto Panerai Velloso - - * drivers/solis.c, drivers/solis.h: Added author info for previous - merge https://github.com/networkupstools/nut/pull/511 (#672) * - added author information - -2019-02-26 Arnaud Quette - - * clients/Makefile.am, clients/upsclient.c, clients/upsclient.h, - clients/upscmd.c, clients/upsrw.c, common/snprintf.c, - conf/upsd.conf.sample, docs/man/Makefile.am, - docs/man/upscli_cleanup.txt, docs/man/upscli_readline.txt, - docs/man/upscli_sendline.txt, docs/man/upscmd.txt, - docs/man/upsd.conf.txt, docs/man/upsrw.txt, docs/net-protocol.txt, - docs/nut-names.txt, docs/nut.dict, docs/sock-protocol.txt, - drivers/dstate.c, drivers/upshandler.h, include/common.h, - scripts/augeas/nutupsdconf.aug.in, - scripts/augeas/tests/test_nut.aug, server/conf.c, server/netget.c, - server/netinstcmd.c, server/netset.c, server/nut_ctype.h, - server/sstate.c, server/upsd.c, server/upsd.h, tools/nut- - scanner/nut-scanner.c: INSTCMD and SET VAR status tracking - implementation (#659) * INSTCMD and SET VAR status tracking - implementation This commit implements the instant commands - (instcmd) and variables settings (setvar) status tracking, to get - the actual execution status from the driver * Missing Revision - history * Fix nut-names.txt modification that should not be here - * Augeas support: add CMDSETSTATUSDELAY for upsd.conf * INSTCMD - and SET VAR status tracking completion Following Daniele Pezzini - thorough review, sanitize and improve the code, and also complete - documentation * INSTCMD and SET VAR status tracking completion - implement support for status tracking in upscmd and upsrw * - upscmd/upsrw: delay retries for status tracking * Remove comment - There is no need to condition CMDSET_STATUS commands received by - upsd from the driver, on cmdset_status_enabled, since what matters - is the presence of a list and id * Complete comment * UUID v4 - implementation replaced the initial rxi/uuid4 library used by a - cross platform version. Though more basic, it is enough for our - needs, at least for now * status_info should be static * No - need for else, since fatalx is called before * Suppress \n from - debug output * Group sanity checks * Get rid of dynamic memory - allocation * Improve and enforce the use of UUID4_LEN * Comment - on the size of dest for nut_uuid_v4() * Move structures and - defines to more appropriate places * Add functions with timeout - Add upscli_sendline_timeout and upscli_readline_timeout, beside - from the classic blocking versions. Also make a common define for - timeout, and use it in upsclient and nut-scanner * upscmd/upsrw: - add a timeout option * Basic homebrew UUID v4 implementation * - Prefer to use static buffer for UUID * log actual result of - instcmd / setvar * Fix tracking ID reporting due to static memory - changes * upsclient: use unsigned int for timeouts Also, - explicit that upscli_cleanup() takes no argument. * upscmd/upsrw: - use unsigned int for timeout + our str_to_uint() for it Also, - slightly reword the help message for `-t` (timeout) option, in - order to clarify which is the unit (seconds) used for the provided - value. * upscmd/upsrw: don't sleep after receiving a non-PENDING - CMDSET_STATUS Also, remove some nesting in do_cmd() and do_set(). - * net-protocol: clarify the format of GET CMDSET_STATUS + - is not optional to get the status of a - command/setvar with CMDSET_STATUS, so drop the [square brackets] - from it. Also drop "quotes" in SET CMDSET_STATUS's , since - it's expected to be a single word. Plus, fix markup of INSTMCD's - parameter. * sock-protocol: align case and markup of - command parameters * dstate: fix handling of INSTCMD's optional - parameters We should still support the old `INSTCMD - []` format, and not only consider when also - `STATUS_ID ` is provided. Also, fix the format of our sock- - protocol commands mentioned in comments, and add function names to - debug info. * common: document the recently added things * upsd: - in INSTCMD/SET handlers, also accept NULL for status_id Plus: - - use a simpler approach to test if status_id is not empty, - align - the way the SET command is built to the one used for the INSTCMD - command. * upsd: drop unnecessary/unused global * upsd: move - sanity checks of cmdset_status_get() after declaration of vars - Also, drop some nesting in that function. * Move from - CMDSET_STATUS / STATUS_ID to TRACKING This is just a big, big - rename, no code changes. * upsd: refine the tracking API Add a - couple of functions to change in a predictable way the value of the - general enablement of tracking and make it visible only inside - upsd.c. Also, move the tracking type (tracking_t) and the list of - items inside upsd.c. * net-protocol: also return TRACKING between - OK and , for INSTCMD/SET VAR * dstate: *really* fix handling - of INSTCMD's optional parameters Erroring out on `INSTCMD - ` doesn't seem like a good idea... * common: massage - default timeouts Rename the default timeout used in network - operations by upsclient and nut-scanner to be more specific: from - DEFAULT_TIMEOUT to DEFAULT_NETWORK_TIMEOUT. Plus, make the default - timeout used when retrieving the result of an INSTCMD/SET VAR with - TRACKING enabled a common #define'd value - (DEFAULT_TRACKING_TIMEOUT), and use it also to publish the default - value of the -t option in the help messages of upscmd and upsrw. - As suggested by Charles Lepple. * upsd: ignore case of UUID4 in - tracking API Also, remove some nesting in tracking_del(). * - libupsclient: generate manpages for - upscli_{read,send}line_timeout() To keep things simple, at least - for now, only generate manpages and not html pages (and, as such, - don't even think of using our linkman AsciiDoc macro with those - functions, to avoid dead links). * libupsclient: bump version as - per recent changes - addition of upscli_{read,send}line_timeout(), - - upscli_cleanup() -> upcli_cleanup(void) Note: only increase - 'current' and not 'age', because the upscli_cleanup() change could - (potentially) make it not compatible with previous versions. * - upscmd/upsrw: warn that also the drivers need to support TRACKING, - for -w * Fix typo and spelling * Add check around atoi() - conversion - -2019-02-25 Roberto Panerai Velloso - - * drivers/solis.c, drivers/solis.h: solis: various improvements and - fixes - fixed two memory leaks (unnecessary strdup's), - removed - ser_flush calls that were causing the driver to desync, - - refactored code, mostly bit mainpulation functions, - other minor - improvements in source code. - -2019-02-23 Jim Klimov - - * clients/Makefile.am: clients/Makefile.am : also consider HAVE_CXX11 - for .la target - * tests/Makefile.am: tests/Makefile.am : explicitly consider - HAVE_CXX11 - * clients/Makefile.am, tests/Makefile.am: tests, clients Makefiles : - consider HAVE_CXX11 - * configure.ac: configure.ac : expose HAVE_CXX11 into automake - * configure.ac: configure.ac : add C++0X as draft C++11 support - detection (older GCC on some systems) - * configure.ac: configure.ac : refactor C++11 detection for - readability - * configure.ac: Problem: OpenBSD mktemp complains on short pattern - Solution: bump from XXXXX to XXXXXXX which did not complain in - another part of the configure script - -2019-02-20 Jim Klimov - - * clients/Makefile.am, tools/nut-scanner/Makefile.am: nut-scanner and - clients Makefile.am : comments about version-information - -2019-02-16 Jim Klimov - - * docs/nut.dict: nut.dict : add words for upsdrvsvcctl doc - -2019-02-08 Jim Klimov - - * common/common.c: Problem: 32-bit builds fail to load 64-bit libs - Solution: Do our best to guess the bitness of a build, and use it - in search paths for get_libname() - -2019-02-03 Daniele Pezzini - - * server/upsd.c: upsd: fix the calling of netcmds items' func() - Since, as per our network protocol, it's perfectly legal to have - single-word commands (and we already have a few, e.g. VER, NETVER, - HELP, ...), we do not do an early check to ensure that at least one - argument was provided to the command. As such, the list of words - generated by parseconf could actually end with the command itself. - That said, trying to access something that should not be there - doesn't seem like a good idea, so, only pass to netcmds items' - func() the list of arguments (which starts at the second item of - the list of words), if there are arguments, otherwise just pass - NULL. - * server/sstate.c: sstate: make sure ADDRANGE/DELRANGE have all the - needed parameters Since ADDRANGE and DELRANGE take 3 arguments - (, , ), we have to ensure all of them - were provided, before attempting to use them. - * drivers/dstate.c: dstate: fix dstate_delrange() socket protocol - command The documented (and used in server-side) command for - deleting a range is `DELRANGE `, not - `DELRANGE " "`, as used in - dstate_delrange(). So, fix that unused (well, at least in NUT) - function to use the correct format. Also, remove an extraneous - additional space in the command used in dstate_addrange(). - -2019-02-01 Arnaud Quette - - * configure.ac, scripts/augeas/Makefile.am: Augeas support: execute - lenses tests if possible This is however disabled for now, while - waiting to fix the reported issue Ref: - https://github.com/networkupstools/nut/issues/657 - * configure.ac: Fix wording that breaks some syntax highlighting - systems - * docs/nut-names.txt: Add the missing delayed versions of some - commands - -2019-01-30 Jean-Baptiste Boric - - * clients/nutclient.cpp, clients/nutclient.h: libnutclient: introduce - getDevicesVariableValues() (#654) A performance bottleneck was - identified within the 42ity project, where querying all variable - values from 300 ePDUs through upsd and libnutclient took 15 seconds - to complete. The new method TcpClient::getDevicesVariableValues() - allows querying device variable values in bulk, by sending all LIST - VAR commands ahead of time and then parsing all the results at - once. Throughput is vastly improved, with the mega-query completing - about 15 times faster. - -2019-01-28 Arnaud Quette - - * clients/Makefile.am, clients/nutclient.h: libnutclient: fix version - and interface * Library version should be updated to reflect - changes, and is now 1:0:0 * Interface should be adapted so that the - additional argument to instant commands can be optional - * drivers/eaton-pdu-marlin-mib.c, drivers/hpe-pdu-mib.c: snmp-ups: - support extra param for instcmd (Eaton/HPE) Add support for extra - parameter for instant commands on Eaton and HPE ePDU - * drivers/snmp-ups.c: snmp-ups: fix potential segfault when using - delayed instant commands, with a NULL default value, and not - providing a value, the driver can segfault - * docs/nut.dict: Fix spellcheck - * clients/nutclient.cpp, clients/nutclient.h, docs/net-protocol.txt: - Add support for extra parameter for instant commands Instant - commands were almost ready for supporting additional parameter. - However, it was not documented, and libnutclient was not supporting - it yet - -2019-01-24 Arnaud Quette - - * drivers/apc-ats-mib.c, drivers/apc-mib.c, drivers/apc-pdu-mib.c, - drivers/baytech-mib.c, drivers/bestpower-mib.c, drivers/compaq- - mib.c, drivers/cyberpower-mib.c, drivers/eaton-ats16-mib.c, - drivers/eaton-ats30-mib.c, drivers/eaton-pdu-genesis2-mib.c, - drivers/eaton-pdu-marlin-mib.c, drivers/eaton-pdu-pulizzi-mib.c, - drivers/eaton-pdu-revelation-mib.c, drivers/emerson-avocent-pdu- - mib.c, drivers/hpe-pdu-mib.c, drivers/ietf-mib.c, drivers/mge- - mib.c, drivers/netvision-mib.c, drivers/powerware-mib.c, - drivers/raritan-pdu-mib.c, drivers/raritan-px2-mib.c, drivers/snmp- - ups.c, drivers/snmp-ups.h, scripts/subdriver/gen-snmp-subdriver.sh: - snmp-ups: Rework instant commands handling Use snmp_info_t->dfl, - which is a char*, instead of snmp_info_t->info_len for instant - commands default value. This allows to distinguish between commands - that do not require a mandatory value. For instcmd requiring a - parameter (such as *.delay), a NULL snmp_info_t->dfl and no - extradata will result in STAT_INSTCMD_INVALID value returned Also - adapt subdrivers and gen-snmp-subdriver.sh to match this - * drivers/delta_ups-mib.c, drivers/eaton-pdu-marlin-mib.c, - drivers/huawei-mib.c, drivers/snmp-ups.c, drivers/snmp-ups.h, - drivers/xppc-mib.c, scripts/subdriver/gen-snmp-subdriver.sh: snmp- - ups: Simplify the mapping structure * snmp_info_t->setvar is not - used anymore, so drop it, * hence, also delete flag SU_FLAG_SETINT - and references to it, * adapt subdrivers and gen-snmp-subdriver.sh - to match this - -2019-01-23 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: Fix warnings (memset-elt- - size/pointer-sign) - * drivers/snmp-ups.c: snmp-ups: Actually fix commands offset (off by - 1) The last fix was wrongly setting the offset to negative, and - substracting it again from the current device number, which - resulted in an addition, not a substraction - * drivers/mge-hid.c, drivers/usbhid-ups.c: usbhid-ups / MGE: bump - versions to reflect changes - -2019-01-22 Arnaud Quette - - * drivers/mge-hid.c, drivers/usbhid-ups.c, drivers/usbhid-ups.h: - usbhid-ups: Fix erroneous OB report on Eaton UPS Also created a - read accessor on status bits and move the related definitions to - the driver header - -2019-01-22 Jean-Baptiste Boric - - * drivers/mge-xml.c, drivers/netxml-ups.c, drivers/netxml-ups.h: - netxml-ups: Report calibration status (#650) - -2019-01-22 Arnaud Quette - - * data/driver.list.in, drivers/Makefile.am, drivers/hpe-pdu-mib.c, - drivers/hpe-pdu-mib.h, drivers/snmp-ups.c: snmp-ups: Add support - for HPE ePDU - -2019-01-21 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: Improve ALARM flag handling - -2019-01-17 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: Fix ALARM flag on non-daisychained - devices - * drivers/snmp-ups.c: snmp-ups: Fix erroneous integration of hpe_pdu - * drivers/snmp-ups.c: snmp-ups: Fix commands offset (off by 1) - * drivers/snmp-ups.c: snmp-ups: Fix detection and display of hex - strings - -2019-01-11 Arnaud Quette - - * drivers/compaq-mib.c: snmp-ups: Add firmware version for new - Network card Also bump HPE/Compaq subdriver version to 1.62 - -2018-12-04 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh : note to not skip full "main" evaluation in daemon - mode - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh : support SIGHUP causing a quick reconfig when - received both during the sleep and processing in-progress - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh : avoid continuous reconfiguration (esp. in daemon - mode) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : for many discovered changes, avoid the lag of - running systemctl daemon-reload for every item in the loop - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : in single-run, daemon and full-reconfig modes, - take note if the config file had changed while we were running - - re-sync services vs sections ASAP then - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : introduce calc_md5_file() and comment calc_md5() - a bit better - -2018-12-07 Scott Shambarger - - * clients/upsmon.c, clients/upssched.c, common/parseconf.c: Add - FD_CLOEXEC flag to config files, pipes and sockets File - descriptors are leaking to processes spawned by upsmod and - upssched, leading to SELinux errors when (for example) sendmail - attempts to read from fd #4. - -2018-12-01 mjan - - * drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_hunnox.c, drivers/nutdrv_qx_hunnox.h: Add support - for Hunnox HNX-850 - -2018-11-19 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : critical typo fix (Environment is valid in - section Service, not Unit) - -2018-11-16 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : refactor upsconf_getSection_content() to have - one place of logic to add the parsed section line - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test--ups.conf, tests/nut-driver-enumerator-test.sh: - nut-driver-enumerator.sh.in : section-name brackets should contain - a single token and not be inside another string - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : refactor upslist_normalizeFile_filter() into a - more readable standalone routine - -2018-11-13 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : update the list of config factors that mean an - USB nutdrv_qx device - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test.sh: nut-driver-enumerator-test.sh / nut-driver- - enumerator-test--ups.conf / nut-driver-enumerator.sh.in : extend - upsconf_getValue() to query for several values in the same call to - more efficiently check if any key/flag is set - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test--ups.conf, tests/nut-driver-enumerator-test.sh: - nut-driver-enumerator-test.sh / nut-driver-enumerator-test-- - ups.conf / nut-driver-enumerator.sh.in : do not ignore driver flags - followed by a comment - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : fix \t into TABCHAR - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : show the expected vs actual diff in any shell interpreter - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : add a disclaimer about config parser (probable - non-)conformity to NUT binary definitions - * tests/nut-driver-enumerator-test--ups.conf: nut-driver-enumerator- - test--ups.conf : test a section with indented name - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test--ups.conf, tests/nut-driver-enumerator-test.sh: - nut-driver-enumerator-test.sh / nut-driver-enumerator-test-- - ups.conf / nut-driver-enumerator.sh.in : in section-name lines, - ignore anything outside the first set of brackets - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : show a diff of expected vs actual, if the shell allows in-place - docs - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : suggest to a dev how to re-run the failed test verbosely - -2018-11-05 Jim Klimov - - * tools/Makefile.am, tools/nut-scanner/Makefile.am: tools/ Makefiles - : refactor with clarifications from DMF branch (#636) - -2018-11-04 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : fix svcprop queries to base service level - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : consider "unknown" systemd unit state as one to - be restarted - * scripts/upsdrvsvcctl/upsdrvsvcctl.in: upsdrvsvcctl.in : fix -D for - debugging level - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test--ups.conf, tests/nut-driver-enumerator-test.sh: - nut-driver-enumerator-test.sh / nut-driver-enumerator.sh.in : - support USB and Serial modes for nutdrv_qx - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : track changes of global config and restart - drivers and nut-server if that happened - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test.sh: nut-driver-enumerator-test.sh / nut-driver- - enumerator.sh.in : in upslist_debug() show also the global config - section - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in, tests/nut-driver- - enumerator-test--ups.conf, tests/nut-driver-enumerator-test.sh: - nut-driver-enumerator-test.sh / nut-driver-enumerator.sh.in : - support flag values (line is a single token) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : do not use an "other" section as a magic value - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : "break" the loop, not return from it (artefact - of moving code from a sub-shell) - -2018-11-01 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh : Use a timeout to restart/reload nut-server - (systemd) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh : Do not restart/reload nut-server if not already - running (systemd) - -2018-10-22 Robert W. Cashman - - * drivers/cyberpower-mib.c: Added UPS load, battery charge, input - voltage/frequency, and output voltage, MIB mappings to cyberpower- - mib.c - -2018-10-12 Jim Klimov - - * .travis.yml: .travis.yml : move nut-driver-enumerator-test jobs - lower in stack - we want slow jobs to start first - * .travis.yml: .travis.yml : matrix job seems to require having at - least two items - -2018-10-11 Jim Klimov - - * tests/nut-driver-enumerator-test.sh: Update nut-driver-enumerator- - test.sh Standardize the testing setup - -2018-10-11 Jim Klimov - - * builds/nut-driver-enumerator-test/ci_build.sh: builds/nut-driver- - enumerator-test/ci_build.sh : use the "selftest" dummy service - framework if systemd is not available in the testing OS environment - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : support a "selftest" dummy service framework - * builds/nut-driver-enumerator-test/ci_build.sh: builds/nut-driver- - enumerator-test/ci_build.sh : let the tests have some - SERVICE_FRAMEWORK - * tests/nut-driver-enumerator-test.sh: tests/nut-driver-enumerator- - test.sh : update envvar processing - * builds/nut-driver-enumerator-test/ci_build.sh: builds/nut-driver- - enumerator-test/ci_build.sh : export BUILDDIR SRCDIR for the test - script - * builds/nut-driver-enumerator-test/ci_build.sh: builds/nut-driver- - enumerator-test/ci_build.sh : debug the testing script itself - * .travis.yml, builds/nut-driver-enumerator-test/ci_build.sh, - tests/nut-driver-enumerator-test.sh: Problem: nut-driver-enumerator - not Travised Solution: Add call to its selftest - -2018-10-10 Jim Klimov - - * docs/nut.dict: nut.dict : add components of --show-all-configs - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : echo if there is nothing to reconfigure (add - timestamp, do not spam in daemonized loop by default) - * scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in: - Solaris preremove.in postinstall.in : pass the last-active nut- - driver-enumerator instance across package upgrades done over a - short timeframe - * scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in: - Solaris preremove.in postinstall.in : less spam from "svcadm clear" - of not-failed services - * scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in: - Solaris preremove.in postinstall.in : support the multi-instance - nut-driver-enumerator service now - * tests/Makefile.am: tests/Makefile.am : EXTRA_DIST the new nut- - driver-enumerator-test script and config - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : echo if there is nothing to reconfigure (early - on or after the loop has done some changes) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : update comments regarding SMF service instance - wrapping - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : test for changed sections before testing for - changed set of section vs service names - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : small sanity check in - upslist_checksums_unchanged() - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : update comments regarding new support for - detection of changed device section contents - * scripts/upsdrvsvcctl/upsdrvsvcctl.in: upsdrvsvcctl.in : SMF service - management should wait for completion, to be same as systemd - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : optimize loop work - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : basic support for detecting changes in ups.conf - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : commented a couple of FIXMEs illustrated by the test expected - data - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : call testcase_upslist_debug() last in the suite - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : store SECTION_CONTENT in a variable and spit it - out once - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : update tests for only trimming whitespace around first "=" - character - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : refer to systemd unit via SVCINST not $1 when - registering - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : update comments - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : drop unneeded assignment in calc_md5() - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : in upslist_normalizeFile() only trim whitespace - around first "=" character (do not touch subsequent ones in value - part) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : optimize upsconf_getValue() since we use pre- - normalized data - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : add DEBUG=trace - * tests/nut-driver-enumerator-test--ups.conf, tests/nut-driver- - enumerator-test.sh: nut-driver-enumerator-test.sh : add a test case - for dummy-ups proxying to a localhost "remote" device; add examples - of quoted key values with spaces - -2018-10-09 Jim Klimov - - * tests/nut-driver-enumerator-test--ups.conf, tests/nut-driver- - enumerator-test.sh: nut-driver-enumerator-test.sh : add a test case - for querying global config pseudo-section - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : support getting global config values (when - device section value is empty) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : zsh not supported - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : add a test case for config value that was quoted - * tests/nut-driver-enumerator-test.sh: nut-driver-enumerator-test.sh - : control values of section and device name checksums in - upsconf_debug() - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : expose section and device name checksums in - upsconf_debug() - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : introduce upsconf_getSection_MD5() to checksum - the normalized payload of a config section - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : in --reconfigure should exit() not return() - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : in systemd_validFullUnitName() add the .service - suffix if needed - * tests/.gitignore, tests/nut-driver-enumerator-test--ups.conf, - tests/nut-driver-enumerator-test.sh: Introduce simple unit tests - for nut-driver-enumerator.sh - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : expose upsconf_debug() and upslist_debug() to - CLI - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : avoid direct exit during loop processing - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : use a variable SYSTEMD_CONFPATH - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : use UPSCONF_DATA_SDP and rearrange getSection() - routines for certain use-cases - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : use upslist_readFile_once() in command-line - tools to avoid re-parsing the config many times - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : use cached UPSCONF_DATA in upsconf_getSection() - rather than FS access every time - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : rearrange and document the initial slurping and - normalization of ups.conf, reducing the work done - * docs/man/nut-driver-enumerator.txt, scripts/upsdrvsvcctl/nut- - driver-enumerator.sh.in, scripts/upsdrvsvcctl/upsdrvsvcctl.in: nut- - driver-enumerator.sh.in : add --show-configs to expose UPSCONF_DATA - with normalized content of ups.conf - -2018-10-05 Jim Klimov - - * scripts/upsdrvsvcctl/upsdrvsvcctl.in: upsdrvsvcctl.in : add - "reconf(igure)" call to pass into nut-driver-enumerator.sh - * scripts/upsdrvsvcctl/upsdrvsvcctl.in: upsdrvsvcctl.in : update - usage() - * docs/man/nut-driver-enumerator.txt, scripts/upsdrvsvcctl/nut- - driver-enumerator.sh.in: nut-driver-enumerator.txt : make - spellchecker happy - * scripts/Solaris/postinstall.in: solaris postinstall : - REPORT_RESTART_42=no when reconfiguring - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : update message for reconfig dropping of old - service - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : fix fall-through daemonization for DASH - * scripts/Solaris/README: Solaris README : update about two nut- - driver-enumerator instances - * docs/man/nut-driver-enumerator.txt: nut-driver-enumerator.txt : add - recently introduced options into manpage - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : typo fix - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : typo fix - * scripts/Solaris/nut-driver-enumerator.xml.in: nut-driver- - enumerator.xml.in : support daemonization into background (contract - service) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : support daemonization into background - * scripts/Solaris/nut-driver-enumerator.xml.in: nut-driver- - enumerator.xml.in : typo fix - * scripts/Solaris/nut-driver-enumerator.xml.in: nut-driver- - enumerator.xml.in : avoid creating default service twice - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : support SIGHUP for the daemon - * scripts/Solaris/README, scripts/Solaris/nut-driver- - enumerator.xml.in: nut-driver-enumerator : use --daemon(=freq) in - Solaris SMF service, implement it as an option (two prepackaged - services, with and without loop) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator : add --daemon(=freq) to monitor ups.conf vs. services - changes ourselves in a loop - * scripts/Solaris/postinstall.in: nut-driver-enumerator : use - --reconfigure to remake units from scratch in Solaris postinstall - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator : add --reconfigure to remake units from scratch - -2018-10-04 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : for network-depending connections, wait for - ifplugd to set up physical network, if enabled - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : for network-depending connections, wait for DNS - resolver to appear - * scripts/systemd/nut-driver-enumerator.service.in: nut-driver- - enumerator.service.in : do NOT remain active when done, allow nut- - driver-enumerator.path to start this again - * scripts/Solaris/README: Solaris README : note that there is no - dynamic refresh when ups.conf is changed - * scripts/Solaris/README: Solaris README : update reference to - upsdrvsvcctl directory - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : when removing a systemd instance, also remove - systemd complaints about it (if any) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : less ambiguity - manage ".service" instances as - such - -2018-10-03 Jim Klimov - - * common/common.c: get_libname() : support more 64-bit pathname - patterns (#609) - -2018-09-08 Jim Klimov - - * drivers/usbhid-ups.c: usbhid-ups.c : libusb/libshut tracing debug - text - -2018-10-02 Jim Klimov - - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : in systemd use-case, fall back to rude restart - if reload-or-restart of nut-server stalled and failed - -2018-09-28 Jim Klimov - - * scripts/systemd/nutshutdown.in: Update nutshutdown.in No strict - restrictions for fallback timeout - -2018-09-27 Jim Klimov - - * scripts/Solaris/nut-server.xml.in, scripts/Solaris/svc-nut- - server.in, scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut- - driver-enumerator.sh.in / nut-server.xml.in / svc-nut-server.in : - reload the running upsd instead of restarting it fully when - possible (Solaris SMF) - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : reload the running upsd instead of restarting it - fully when possible (Linux SystemD) - -2018-09-26 Jim Klimov - - * scripts/systemd/nut-driver-enumerator.path.in: nut-driver- - enumerator.path.in : typo fix for CONFDIR => CONFPATH - * docs/man/Makefile.am: docs/man/Makefile.am : handle other - nutclient*.3 manpages that are mass-implemented by some - libnutclient*.txt - * scripts/systemd/nutshutdown.in: nutshutdown.in : fallback short - timeout if config is absent or not parsable - * scripts/systemd/nutshutdown.in: nutshutdown.in : check that needed - programs exist first - -2018-09-19 Jim Klimov - - * configure.ac: configure.ac : syntactic sugar - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - reformatted - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - also the values registered - with comm_driver structure - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - reformatted - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - also the values registered - with comm_driver structure - * drivers/usbhid-ups.c: usbhid-ups.c : report the libusb version - involved in the driver at this time - * tools/Makefile.am, tools/nut-scanner/Makefile.am: Update comments - in tools(/nut-scanner)/Makefile.am regarding new more proper - dependency definitions - -2018-09-17 Daniele Pezzini - - * data/driver.list.in: HCL: update support level of some Meta System - devices As per the provided protocol: see nut-website's - 66d30c90401ff7929b25e5a87f9299b728f861ea - -2018-09-08 Jim Klimov - - * tools/Makefile.am: tools/Makefile.am : GENERATED_USB_FILES also - depend on nutdrv_qx.c - * tools/Makefile.am: tools/Makefile.am : generalize - GENERATED_SNMP_FILES too for consistency - * tools/Makefile.am: Makefile.am : fix back calling scripts from - distdir while being in builddir - -2018-09-07 Jim Klimov - - * tools/Makefile.am, tools/nut-snmpinfo.py, tools/nut-usbinfo.pl: - tools/nut-snmpinfo.py tools/nut-usbinfo.pl tools/Makefile : use - TOP_SRCDIR/TOP_BUILDDIR to pass with distcheck too - -2018-09-08 Jim Klimov - - * scripts/Solaris/postinstall.in: Solaris/postinstall.in : clarify - tests for present vs non-empty config files - * scripts/Solaris/postinstall.in, scripts/Solaris/postremove.in, - scripts/Solaris/preinstall.in, scripts/Solaris/preremove.in: Insert - or update header comments in Solaris pre/post-install/remove - scripts - -2018-09-07 Jim Klimov - - * tools/Makefile.am: tools/Makefile.am : update dependency on C - sources - * Makefile.am: Makefile.am : "dist" drivers/*.c before tools (which - generates further files from that) - * drivers/libusb0.c, drivers/libusb1.c: libusb0/1.c : ease debugging - by trace messages - * drivers/libusb1.c: libusb1.c : inverted order of - usb_communication_subdriver_t name/ver fields - * drivers/libusb0.c: libusb.c : inverted order of - usb_communication_subdriver_t name/ver fields - * configure.ac: configure.ac : syntactic sugar - * drivers/libusb.c: libusb.c : inverted order of - usb_communication_subdriver_t name/ver fields - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : fix initial setup with 0 service instances - present - * scripts/upsdrvsvcctl/nut-driver-enumerator.sh.in: nut-driver- - enumerator.sh.in : try to enable "nut-server" when restarting it - * tools/Makefile.am: tools/Makefile.am : avoid rebuilding generated - files after "make dist" over and over - * tools/nut-scanner/Makefile.am: tools/nut-scanner/Makefile.am : - structurally arrange built dependencies, reduce hardcoded - references to their names - -2018-09-06 Jim Klimov - - * drivers/libshut.c, drivers/libusb.c, drivers/usbhid-ups.c: libusb - tracing debug text - -2018-09-06 Daniele Pezzini - - * data/driver.list.in: HCL: add some Legrand devices supported by - nutdrv_qx Also, specify that Legrand Multiplug is USB-only. - * data/driver.list.in: HCL: update support level of some Meta System - devices As per the provided protocol: see nut-website's - 570c1e5e9f1fb4f82abef9359897b5159e88fc50 Also, fix name of "HF Line - /2". - -2018-09-06 Gabriele Taormina - - * drivers/metasys.c: metasys: retrieve also battery charge and - runtime The added command is only supported by devices with an 'id - code' >= 14, while for other, older, models the command is not - enabled by default, and the user has to perform a specific - procedure via serial to enable it (where supported). - -2018-09-05 Daniele Pezzini - - * drivers/metasys.c: metasys: remove useless initialisation of vars - -2018-08-27 Gabriele Taormina - - * data/driver.list.in, drivers/metasys.c: metasys: support some newer - Meta System and Legrand devices Add to the metasys driver a few - new models (Meta System DHEA, and others now branded Legrand) - speaking the Meta System UPS protocol. - * drivers/metasys.c: metasys: treat any '\0' in the serial number as - a '0' - * drivers/metasys.c: metasys: for bypass mode, call status_set() with - "BYPASS", not "BY" - * drivers/metasys.c: metasys: fix handling of errors/special values - As per protocol documentation, data is sent by the device with - unsigned integers of 8, 16 or 32 bits, with errors/special values - being: - for uint16: 0xFFFF and 0xFFFE, - for uint32: 0xFFFFFFFF. - Alas, those values are (and, probably, have always been) actually - reported in the documentation (mostly) as if their types were not - unsigned (so, in decimal: -1, and -2) and the metasys driver used - them like that, converting the values to non-fixed width signed - types (int and long) and then expecting a value of -1 or -2 to - signal a particular event, but this only happens on platforms where - int is exactly 16 bits, and long 32 bits. So, leave values as - unsigned types (adjusting all the printf formats accordingly), and - use the right hex values, instead. - * data/driver.list.in, drivers/Makefile.am, drivers/legrand-hid.c, - drivers/legrand-hid.h, drivers/usbhid-ups.c: usbhid-ups: add - Legrand subdriver - * data/driver.list.in, drivers/nutdrv_qx.c: nutdrv_qx: add support - for some Legrand USB devices - -2018-08-29 Jim Klimov - - * scripts/systemd/Makefile.am: EXTRA_DIST scripts/systemd/nut.target - also - -2018-08-21 Jim Klimov - - * m4/nut_check_libneon.m4: nut_check_libneon.m4 : shell typo fix - * m4/nut_check_libneon.m4: nut_check_libneon.m4 : do not AC_MSG_WARN - inside a standard message chain - * m4/nut_check_libneon.m4: nut_check_libneon.m4 : provide fallback - defaults when pkg-config fails - -2018-08-14 Jim Klimov - - * m4/nut_check_libneon.m4: nut_check_libneon.m4 : comment about - detecting without pkgconfig as a fallback - * m4/nut_check_libavahi.m4: nut_check_libavahi.m4 : typo fix - -2018-08-19 Daniele Pezzini - - * configure.ac: configure: fix messages of pkg-config checks The - PKG_*() macros we use there already print messages, therefore we - can't use AC_MSG_CHECKING() before calling them, and - AC_MSG_RESULT() after, or we will get something like: checking for - autoconf macro support of pkg-config... checking for pkg-config... - /usr/bin/pkg-config ^^^ AC_MSG_CHECKING() - ^^^ PKG_*() macro output checking pkg-config is at least version - 0.9.0... yes ^^^ PKG_*() macro output -- continuation ok ^^^ - AC_MSG_RESULT() checking for autoconf macro support of pkg-config - module checker... checking for dummy_PKG_CONFIG... yes ^^^ - AC_MSG_CHECKING() ^^^ - PKG_*() macro output ok ^^^ AC_MSG_RESULT() ...which is not - exactly desirable. So, move the messages to AC_MSG_NOTICE(), with - the result being explicitly printed only on failure (AC_MSG_WARN() - call). - * docs/man/Makefile.am: docs/man: fix man8 target for linux/i2c - * docs/man/Makefile.am, drivers/Makefile.am: nutdrv_qx: don't - duplicate make targets Since nutdrv_qx is both a serial and a USB - driver, up until now, its executable and manpages appeared in two - lists: serial and USB drivers, in order to be built in both cases, - when ./configure'd for only one of them... but, by doing this, when - ./configure'd for both, we ended up with dupes, which could - potentially cause problems, e.g. when installing them (and this - just happened). For the executable, luckily, libtool calls install - one file at a time, so this was not, and it still should not be, a - problem. For the manpages, we were previously saved by automake, - which splits the list of files to be installed in different calls - if they are too many (see automake's am__install_max var, currently - set to 40), so the two nutdrv_qx entries ended up in different - calls to install, but the 8b75b03 commit, by adding more manpages - before nutdrv_qx's ones, pushed also the first occurrence to the - second call to install, which already contained the other one, - causing an error. While other alternative, more flexible, but also - less portable, ways for solving this exist (e.g. using GNU make's - $(sort) on the generated lists), at least for now, prefer a more - portable solution, adding new intermediate lists for serial/USB - drivers and using simple automake conditionals. Close - https://github.com/networkupstools/nut/issues/594 - -2018-08-14 Jim Klimov - - * .gitignore, Makefile.am, README, common/Makefile.am, configure.ac, - docs/FAQ.txt, docs/config-notes.txt, docs/developers.txt, - docs/features.txt, docs/man/Makefile.am, docs/man/index.txt, - docs/man/nut-driver-enumerator.txt, docs/man/upsdrvctl.txt, - docs/man/upsdrvsvcctl.txt, docs/net-protocol.txt, docs/nut.dict, - include/Makefile.am, scripts/Aix/.gitignore, scripts/Aix/nut.init, - scripts/Aix/nut.init.in, scripts/Makefile.am, - scripts/Solaris/.gitignore, scripts/Solaris/Makefile.am, - scripts/Solaris/README, scripts/Solaris/makelocal.sh, - scripts/Solaris/nut-driver-enumerator.xml.in, scripts/Solaris/nut- - driver.xml.in, scripts/Solaris/nut-monitor.xml.in, - scripts/Solaris/nut-server.xml.in, scripts/Solaris/nut.in, - scripts/Solaris/nut.xml.in, scripts/Solaris/pkginfo.in, - scripts/Solaris/postinstall.in, scripts/Solaris/postremove, - scripts/Solaris/postremove.in, scripts/Solaris/preinstall, - scripts/Solaris/preinstall.in, scripts/Solaris/prepackage.py, - scripts/Solaris/{preproto.pl => preproto.pl.in}, - scripts/Solaris/preremove.in, scripts/Solaris/svc-nut-monitor.in, - scripts/Solaris/svc-nut-server.in, scripts/systemd/.gitignore, - scripts/systemd/Makefile.am, scripts/systemd/README, - scripts/systemd/nut-driver-enumerator.path.in, scripts/systemd/nut- - driver-enumerator.service.in, scripts/systemd/nut- - driver.service.in, scripts/systemd/nut-driver.target, - scripts/systemd/nut-driver@.service.in, scripts/systemd/nut- - monitor.service.in, scripts/systemd/nut-server.service.in, - scripts/systemd/nut.target, scripts/systemd/nutshutdown.in, - scripts/upsdrvsvcctl/.gitignore, scripts/upsdrvsvcctl/Makefile.am, - scripts/upsdrvsvcctl/README, scripts/upsdrvsvcctl/nut-driver- - enumerator.sh.in, scripts/upsdrvsvcctl/upsdrvsvcctl.in: Use target - for drivers in Linux systemd (updated) and SMF instances for - drivers in new Solaris-like systems (and bring AIX initscript into - better shape) (#330) * Use target for drivers in systemd This - allows much better granularity and better monitoring in case of - multiple UPSes. * nut-driver.target improvements suggested by - @peterhoeg in PR#229 * systemd units dependencies revised and - commented * nut-driver-enumerator.sh initial commit * nut- - driver@.service.in : integrate comments from @peterhoeg about - extending unit requirements * WIP : initial integration of nut- - driver-enumerator.sh/service into makefiles etc. * nut-driver- - enumerator.sh renamed into nut-driver-enumerator.sh.in as it has - processable templates in code * nut-driver-enumerator.sh.in : add - its own config-file support to set the variables used inside (if - not via command-line env) * nut-driver-enumerator.sh.in : fix up - the copyright header * Subject: Fix systemd service file for - Debian From: Laurent Bigonville Forwarded: not- - needed * nut-driver-enumerator.sh.in : complete the Solaris SMF - support in the helper script * EXTRA_DIST the scripts/systemd/nut- - driver.target (non-templated) file * nut-driver-enumerator.sh.in : - updated comments (esp. about usage and exit-codes) and runtime - messages * nut-driver-enumerator.service.in : define an actual - service payload * nut-driver-enumerator.sh.in : refactor the logic - of MAIN PROGRAM into smaller routines for readability * nut- - driver-enumerator.sh.in : introduce routines to help define custom - dependencies of particular drivers on other services * nut-driver- - enumerator.sh.in : allow custom NUT_CONF_DIR from envvar, to - facilitate testing * nut-server.service.in : typo fix in comments - * nut-driver-enumerator.sh.in : support the concept of localhost - networking dependencies, and define vars with lists of services to - depend on * nut-driver-enumerator.sh.in : use proper FMRI:instance - separator for SMF * nut-driver-enumerator.sh.in : added variables - for dependency type on third-party service units * nut-driver- - enumerator.sh.in : change upsconf_getDriverMedia() output from tab- - separated to multiline; add upsconf_getMedia() and upsconf_debug() - and upslist_debug() * nut-driver-enumerator.sh.in : refactor with - upsconf_getValue() and cached pre-cooked ups.conf data; - infrastructure to configure service dependencies when adding the - service instance * Remove hardcoded dependencies on udev and - network from provided systemd units; add comments about extending - via drop-in files and that nut-driver-enumerator will do this for - nut-drivers * nutshutdown.in : mark executable * nut-driver- - enumerator.sh.in : complete the systemd drop-in support for custom - dependencies for a driver * nut-driver-enumerator.sh.in : complete - the SMF drop-in support for custom dependencies for a driver * - nut-driver-enumerator.sh.in : comment-away upslist_debug() in - default runs * WIP Adding Solaris SMF manifests for NUT * - Sanitize Solaris SVR4 packaging rules * Sanitize Solaris packaging - scripts some more * Add configure options for Solaris packaging - variants * Sanitize Solaris packaging scripts some more - consider - DESTDIR for installation root * Turn solaris preproto.pl into a - template so it uses proper (configured) user/group strings * - Makefile.am : ensure there is a DESTDIR set before packaging * - Makefile.am : use $(MAKE) $(AM_MAKEFLAGS) instead of explicit - "make" (mostly in packaging recipe) * makelocal.sh : commented and - revised * Solaris/Makefile.am : put generated SVR4 package into - builddir (not srcdir that may be readonly) to match other OS - recipes * Makefile.am : ensure the DESTDIR is used for packaging - purposes (when calling sub-makes) * Solaris/pkginfo.in : ARCH is - CPU_TYPE, not OS_NAME * GitIgnore built Solaris/NUT*.local.gz - product * GitIgnore built systemd files * GitIgnore - _install_pkgprotodir * Makefile.am : ensure only the custom - DESTDIR is used for packaging purposes * Makefile.am : convert the - big packaging "if" into "case"; link steps with "&&"; retain - DESTDIR if Solaris packaging fails; ensure the correct custom - DESTDIR is absent before packaging (and after Solaris packaging) * - Solaris/Makefile.am : Revise recipe-names and comments for Solaris - packaging variants * Solaris/Makefile.am and *.xml.in : relocate - SMF methods and manifests under NUT DATADIR to package compactly * - Solaris-SMF : svc-nut.in svc-nut-client.in : use @RUN_AS_*@ and - @PIDPATH@ vars instead of hardcoding * Solaris/Makefile.am : list - helper scripts and installation scripts and data in variables and - depend on them in packaging; chmod +x the scripts after copying - over to proto area * GitIgnore config.cache * Remove - Solaris/prepackage.py (unreferenced duplicate of precheck.py) * - Solaris/nut.in : sanitize the default init-script * - Solaris/Makefile.am : put init-scripts under NUT share (DATADIR) to - package it compactly; copy to OS dirs in postinstall * Makefile.am - .gitignore etc. relocate successfully built package files to - abs_top_builddir * Change Aix/nut.init to a .in template * svc- - nut.in svc-nut-client.in : consider nut.conf if available * - Solaris/Makefile.am and SVR4 scripts : install augeas lenses as - part of NUT package (in DATADIR at least) * configure.ac : comment - about sysconfdir for NUT * Sanitize Aix/nut.init.in * More - standardization of Solaris initscripts and SMF methods; use - LD_LIBRARY_PATH to prefer NUT provided libs in case of conflicts - (facilitate bundling with third-party packages) * - Solaris/Makefile.am : add ability to "make check" something here, - e.g. validate manifest XMLs * Solaris SMF XML manifests : fix - "dependent" definitions, and add dependencies on required config - files * configure.ac : fix a manually crafted "Checking for" into - using AC_MSG routines * Solaris SVR4 packaging should now take - care of SMF service registration/teardown * Solaris preremove.in - postinstall.in : Usage of @datadir@ caused "${prefix}" strings to - pop up - define the vars * Solaris scripts : use lower-cased - @datadir@ in templates processed by configure * - Solaris/preremove.in : fix FMRI pattern when removing package * - Solaris/postinstall.in : fix SMF manifest dir * - Solaris/postremove.in : fix verbose RM; wipe the /var/run/nut dir - too * Solaris/preremove.in : fix commands when removing package * - Solaris/postinstall.in : enable SMF services if configs are already - available (esp. create nut-driver instances) * - Solaris/preremove.in : fix commands when removing package * - Solaris/postinstall.in : enable SMF services if configs are already - available (esp. create nut-driver instances) - verbosity * - Solaris/nut-driver-enumerator.xml.in : use a unique dependency name - (avoid conflict in nut-driver instances chain of deps) * systemd - and Solaris : fix up embedded ${prefix} in service files and SMF - manifests after generation * systemd/README : add recent authors - * Define a NUT_DATADIR and NUT_LIBEXECDIR with expanded path values - to use in service manifests * Solaris : packaged service - addition/removal more verbose * nut-driver-enumerator.xml.in nut- - driver.xml.in : do not block startup of nut server * nut.xml.in : - do not block startup of nut server due to failed nut-driver- - enumerator * nut-driver-enumerator.sh.in : improve portability by - using TAB char as is (not regex \t which gets misinterpreted by - some tools) * nut-driver-enumerator.sh.in : comment the caveats * - nut-driver-enumerator.sh.in : apcsmart is serial only * nut- - driver-enumerator.sh.in : By default, update wrapping of devices - into services... but keep the door open to other uses of the script - * nut-driver-enumerator.sh.in : refactor a bit and add externally - callable actions * Introduce upsdrvsvcctl with semantics similar - to upsdrvctl, but managing stop/start of SMF or systemd unit - instances * nut-driver-enumerator.sh.in : consider possible - difference of device and service instance names * nut-driver- - enumerator.sh.in : refactor md5 * nut-driver-enumerator.xml.in : - add REFRESH action and do not die on RESTART * Mention nut-driver- - enumerator and upsdrvsvcctl in (systemd/|Solaris/)README * - upsdrvsvcctl.in : updated comments * upsdrvsvcctl.in : added a - resync option * Rename Solaris SMF services to match systemd - patterns and ease life for sysadmins * Add systemd nut.target to - manage the bundle of NUT services * config-notes.txt : document - the systemd and SMF support in NUT * nut.dict : update - spellchecker * Solaris/Makefile.am : support copying where attrs - can not be preserved * Solaris postinstall : report if services - were not instantly enabled due to missing config files * - upsdrvsvcctl.in : reformat prettily * nut-driver-enumerator.sh.in - : wrap usage() * nut-driver-enumerator.sh.in : added --list- - services-for-devices * nut-driver@.service.in : comment about - aligning timeouts with ups.conf maxstartdelay * nut.xml.in : - Revise comments * nut-driver-enumerator.sh.in : when amending - service unit instance config for systemd, update the Description to - state the NUT device section name * nut-driver-enumerator.sh.in : - support common NUT_CONFPATH envvar * Add upsdrvsvcctl.txt manpage - and references to upsdrvsvcctl in other docs * upsdrvsvcctl.txt - manpage : refer to service management system logs * upsdrvsvcctl : - support "list upsname" CLI action to help troubleshooting * - upsdrvsvcctl : add handling for "shutdown" command * Docs about - upsdrvsvcctl - clarify that it may not be preinstalled with non- - SMF/non-systemd OS packages * Pass spellcheck for upsdrvsvcctl doc - updates * Solaris packaging of nut-driver-enumerator.sh : deliver - into libexecdir same as in Linux * Move nut-driver- - enumerator.sh.in and upsdrvsvcctl.in into scripts/upsdrvsvcctl to - share on par between Linux and Solaris (for starters) * Use - @NUT_LIBEXECDIR@ for nut-driver-enumerator.sh * Introduce nut- - driver-enumerator.path.in for systemd * nut-driver- - enumerator.service.in : be part of nut.target, not common multi- - user * Systemd services : be PartOf=nut.target to propagate - service stops * postinstall.in : use NUT_DATADIR * nut- - monitor.xml.in : depend on nut-server (if locally running) * - nut.xml.in : fix path (use pre-eval-ed version) * nut-driver- - enumerator.sh.in : add a way to print out just an instance suffix - name * nut-driver-enumerator.sh.in : when printing full instance - name, do not add stuff if the argument is already a full name * - nut-driver-enumerator.sh.in : implement --get-device-for-service * - nut-driver (systemd/SMF) : use "nut-driver-enumerator.sh --get- - device-for-service" for current service instance name * nut.xml.in - : this service is transient * upsdrvsvcctl.in : fix parameter - passing * upsdrvsvcctl.in : "clear" the SMF service state when - stopping/starting, just in case it was failed * nut-driver- - enumerator.sh.in : restart upsd IFF the set of known-device - mappings was changed * Revise and relax some dependencies for - Solaris SMF services * nut-driver-enumerator.sh.in : info messages - go to stderr; reply for request only goes to stdout * nut-driver- - enumerator.sh.in : complete the upslist_equals() method * - nut.xml.in : never fail on stop (if component services did not - stop, it is their problem) * Solaris preremove.in SMF : clear - sevices before stopping them, just in case * upsdrvsvcctl.in : - post-process clearing of SMF service instances if any have failed - * nut.xml.in : never fail on stop (if component services did not - stop, it is their problem) * Solaris preremove.in SMF : remove nut - before services it depends on * main.c upsdrvctl.c : make debug - messages a bit more useful * Solaris preremove.in SMF : do not - block stopping NUT driver services, but follow up with - upsdrv(svc)ctl stop of everything * Solaris preremove.in SMF : - sleep after stopping drivers before removing their services * - Solaris preremove.in SMF : force-remove services of drivers * nut- - driver.xml.in : rename a dependency to avoid conflicts * Solaris - nut.xml.in : add a refresh action handler * Solaris postinstall.in - SMF : first use nut-driver-enumerator.sh.in to just register the - mappings, no autostarts * Solaris preremove.in SMF : stop drivers - with common method (and use NUT_SBINDIR) before going one by one * - Solaris postinstall.in SMF : start the drivers via upsdrvsvcctl - after registering (so the mapping is stable) * Solaris - postinstall.in preremove.in : NUT_SBINDIR => SBINDIR * Add manpage - for nut-driver-enumerator[8] * Handle EXTRA_DIST of - scripts/upsdrvsvcctl/ with their own Makefile * nut-driver- - enumerator.txt : change to be more like other page sources * - Spellcheck nut-driver-enumerator.txt * Add - scripts/upsdrvsvcctl/README * Update gitignores * List new - manpages upsdrvsvcctl nut-driver-enumerator in index * Add - upsdrvsvcctl do scripts/Makefile.am SUBDIRS * upsdrvsvcctl.in nut- - driver-enumerator.sh.in : Add a way to show configs per device * - nut-driver-enumerator.sh.in : fix upsconf_getValue() to return - success if key was found, or report an error if not * nut-driver- - enumerator.sh.in : expose upsconf_getValue() as --show-device- - config-value * nut-driver-enumerator.sh.in : NOTE on top about the - choice of simplified shell * nut-driver-enumerator.sh.in : in - upsconf_getSection() stop after printing out the section contents - * nut-driver-enumerator.sh.in : refactor upsconf_getValue() to use - upsconf_getSection() * nut-driver-enumerator.sh.in : update - comment in header * nut-driver-enumerator.service.in : do not fail - the systemd unit, it cannot restart * Fix references for - configure.in to point to configure.ac nowadays * nut-driver- - enumerator.sh.in : use fully-pathed SMF svccfg in all parts of code - consistently * nut-driver-enumerator.sh.in : comment about not- - detecting reconfigurations of existing sections currently - * docs/man/Makefile.am, scripts/subdriver/gen-snmp-subdriver.sh: - Upstream smaller fixes from 42ity NUT (#587) * gen-snmp- - subdriver.sh : replace multiline "echo" with questional tabbing by - a single-string "printf" * docs/man/Makefile.am : fix merge error - that broke manpage packaging - -2018-07-31 Daniele Pezzini - - * tools/nut-scanner/nut-scanner.c: nutscanner: get debug level early - (for nutscan_init()) and restore options (#541) * Revert "Problem: - nutscan_init() called before debug is enabled" This reverts commit - f613d45f78c96c290a1d63d4a2c3f28385d90d42. When parsing the command - line (or showing help), many options rely on a nutscan_avail_* var - already initialized by nutscan_init() -- moving that call after the - parsing of opts renders those options unavailable. * nutscanner: - parse debug level opts separately before anything else In order to - have early the value of the desired debug level (needed to - correctly debug nutscan_init()), split the parsing of command line - options into two loops: - the first one, before the call to - nutscan_init(), will only care about debug level, - the second one, - after the call to nutscan_init(), will consider the remaining (and - possibly depending on a nutscan_avail_* var already initialized by - nutscan_init()) arguments (and moan in case of errors). Closes - https://github.com/networkupstools/nut/issues/500 - -2018-07-28 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: support USB devices that don't - close their replies with a CR Since some devices, when - communicating via USB, don't close their replies to our - commands/queries with the expected (and mandated by the specs) CR, - rendering the driver almost useless as protocols get one less - character than they expect, update the various USB subdrivers - (leaving out the ones that rely on a CR to stop reading from the - device) to add the missing terminating CR in such cases (as long as - we get anything usable). This is a bit of a cheat, but, at least - for now, it will do -- not to mention the fact that it is way less - invasive than touching all the places of the driver that expect a - closing CR and all the qx2nut tables of the various protocols. - Close https://github.com/networkupstools/nut/issues/441 - -2018-07-25 mbastiaan <35669404+mbastiaan@users.noreply.github.com> - - * drivers/tripplite_usb.c: input_voltage_nominal, added case 6 - SMX500RT1U 230V requires case 6. - * drivers/tripplite_usb.c: Update tripplite_usb.c Incremented driver - version for pull request #584 - * data/driver.list.in: Update driver.list.in Added new line for - SMX500RT1U with product ID 0001. Updated line for other product IDs - -2018-07-24 mbastiaan <35669404+mbastiaan@users.noreply.github.com> - - * drivers/tripplite_usb.c: Update tripplite_usb.c Added - battery.charge status for 3005 protocol. Tested on SMX500RT1U, - charge level seems ok-ish considering how it's calculated and the - voltage jumping up and down. - -2018-06-17 Links - - * drivers/mge-hid.c: get PowerWalker VFI 2000 TGS working, read - values correctly - -2018-03-17 Steve Gilbert - - * drivers/libhid.c: In HIDGetEvents.c call to get_interrupt, increase - timeout from 250 to 750 ms to allow more time for UPS response - (cherry picked from commit 5cea18c04a79cd873347efeffb6bb869edd8643e - --@clepple) Closes: - https://github.com/networkupstools/nut/pull/543 Closes: - https://github.com/networkupstools/nut/issues/542 - -2018-05-24 Charles Lepple - - * drivers/tripplite-hid.c: usbhid-ups: Add support for - Delta/Minuteman UPS - https://github.com/networkupstools/nut/issues/555 - -2018-05-22 Jim Klimov - - * .travis.yml, ci_build.sh: Change the Travis test-case for - NO_PKG_CONFIG==true - -2018-05-18 Arnaud Quette - - * scripts/subdriver/gen-snmp-subdriver.sh: Improve the SNMP subdriver - generation script Provide a 3rd mode to allow an offline creation - for a complete MIB walk. In this mode, we get data from 1 file - (numeric snmpwalk dump of the whole SNMP tree). The sysOID is - extracted from the dump, and only the pointed subtree is used. A - MIB file MUST be provided, and is used to produce the string SNMP - walk. Also reformatted the whole script using tab only, and - reconciled with the DMF version. - -2018-05-15 Bernhard M. Wiedemann - - * tools/nut-snmpinfo.py, tools/nut-usbinfo.pl: Sort input file list - (#528) so that nut builds in a reproducible way in spite of - indeterministic filesystem readdir order and - http://bugs.python.org/issue30461 See https://reproducible- - builds.org/ for why this is good. - -2018-05-02 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: in 'sgs' USB subdriver, use - #define'd value for USB timeouts - -2018-03-15 Daniele Pezzini - - * tools/nut-scanner/scan_usb.c: nutscanner: in scan_usb.c, nullify - free()'d pointers that are later reused We assign 'device_name', - 'serialnumber' and 'vendor_name' only if the analyzed device - provides that data and, since we use these pointers also to check - if those items are available so that we can store and free() them, - after free()'ing them we must make them NULL, or the next device, - if it does not provide that data, will inherit the old (now - free()'d) pointer and will attempt to access it and re-free() it. - * drivers/libusb1.c: libusb1: don't use the same var to iterate both - devices and interface descriptor From our old libusb.c, libusb1.c - inherited a for loop that iterates over the interface descriptor in - order to try and find the HID descriptor among its 'extra' bytes. - Unluckily, it uses the same var (i) that's now used, at the same - time, for the iteration through the device list, in which it - happens to be nested. Since this obviously spells disaster, make - these vars unique (and add a bit of debugging info). - -2018-03-14 Daniele Pezzini - - * data/cmdvartab, docs/nut-names.txt: libusb: update example of - driver.version.usb and add it to cmdvartab - * drivers/libusb1.c: libusb1: publish actual libusb version - * tools/nut-scanner/scan_usb.c: libusb: in nutscanner, free busname - also on nutscan_new_device() errors or when done with it - * drivers/bcmxcp_usb.c, drivers/libusb0.c, drivers/libusb1.c, - drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, tools/nut- - scanner/scan_usb.c: libusb: improve handling of errors when - allocating new memory - libusb 0.1 (when not shared with libusb - 1.0): prefer our xstrdup() function -- on errors, it'll - automatically call fatal*(), - libusb 1.0 (and nutscanner): don't - use our x{malloc,strdup,...}() functions, so that we can free the - list of devices (and close the device and call libusb_exit() in - nutscanner) before exiting. - * drivers/libusb1.c: libusb1: publish the interface we are actually - using - * drivers/richcomm_usb.c: richcomm_usb: use the local USB device - handle in usb_device_open() Although at that point of - usb_device_open(), both the local (handle) and the global (udev) - device handles point to the same thing, prefer the local one to - make things clearer. - * drivers/bcmxcp_usb.c, drivers/libusb0.c, drivers/libusb1.c, - drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c, tools/nut- - scanner/scan_usb.c: libusb: clean up after ourselves libusb 1.0: - - a device list allocated with libusb_get_device_list() must be - deallocated with a call to libusb_free_device_list(), - ditto for - the config descriptor. libusb 0.1 and 1.0: - release (commented- - out) interfaces when done with them, - remove unnecessary goto's - after calls to fatal*() functions, - nutscanner: also close the USB - device handle (and libusb_exit() for libusb 1.0) on errors. - -2018-03-13 Daniele Pezzini - - * drivers/bcmxcp_usb.c, drivers/tripplite_usb.c: usb drivers: free - USBDevice_t's dynamically allocated items when cleaning - -2018-03-13 Georg Altmann - - * docs/nut.dict: doc: update nut.dict - * INSTALL.nut: doc: Update installation instructions for FreeBSD - Details usb device permissions. Also pkg and new port config style. - -2018-03-10 Patrik Dufresne - - * drivers/powerp-txt.c: Fix tabs - * drivers/powerp-txt.c: Change status line parsing for CyberPower - OR1500LCDRTXL2U Add a new way to parse the status line in - powerpanel text driver to support CyberPower model OR1500LCDRTXL2U - with serial cable. This model doesn't provide temperature, but does - provide runtime. - -2018-03-09 Jim Klimov - - * drivers/main.c, drivers/upsdrvctl.c: main.c upsdrvctl.c : make - debug messages a bit more useful - -2018-03-05 Daniele Pezzini - - * drivers/richcomm_usb.c: richcomm_usb: don't libusb_exit() when - closing a previously opened device - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: don't libusb_exit() - when closing a previously opened device - * drivers/libusb1.c: libusb1: don't libusb_exit() when closing a - previously opened device - * drivers/riello_usb.c: riello_usb: use libusb_bulk_transfer() for - bulk operations - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: add missing 'inline' - keyword - -2018-03-04 Charles Lepple - - * drivers/usbhid-ups.c: usbhid-ups: fix instcmd logging before - fallback check The hidups_item pointer needs to be checked for - NULL before dereferencing. - -2018-02-28 Jim Klimov - - * drivers/snmp-ups.c: Fix the recently added update for Avocent - support (#532) * Problem: snmp-ups segfaults Solution: - base_snmp_template_index() prevented from processing empty argument - * Problem: index has to be counted for any device not just for - daisychain Solution: counted for both * Problem: debug info - needs improvement Solution: added * drivers/snmp-ups.c : bump - the version for public-release driver fix * snmp-ups.c : Fix - indentation for recent fixes - -2018-02-20 Bernhard M. Wiedemann - - * tools/nut-usbinfo.pl: Cleanup usbinfo code to reduce code - duplication and solve an associated FIXME - -2018-02-16 Arnaud Quette - - * data/driver.list.in, drivers/Makefile.am, drivers/emerson-avocent- - pdu-mib.c, drivers/emerson-avocent-pdu-mib.h, drivers/snmp-ups.c: - snmp-ups: Add support for Emerson Avocent PM3000 PDU - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: various - improvements This prepares the addition of newer devices - -2018-01-11 Daniele Pezzini - - * m4/nut_check_libusb.m4: autoconf: support libusb 0.1 - implementations identified as 'libusb-0.1' Make NUT_CHECK_LIBUSB - macro aware of those libusb 0.1 implementations named in their pkg- - config files as 'libusb-0.1', instead of just 'libusb' (e.g. on - FreeBSD). - -2018-01-10 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: update USB errors handling to - support both libusb 0.1 and 1.0 - -2018-01-02 Charles Lepple - - * configure.ac: Fix AC_MSG_*() quoting The autoconf quote characters - are `[` and `]` - no need for `"`. - -2018-01-01 Charles Lepple - - * m4/nut_check_libusb.m4: Add autoconf check for libusb_strerror() - Closes: https://github.com/networkupstools/nut/issues/509 - * docs/man/nutdrv_qx.txt, docs/man/snmp-ups.txt, - docs/man/ups.conf.txt, docs/man/usbhid-ups.txt: doc: Clean up - description of `pollfreq` and USB interrupts Closes: - https://github.com/networkupstools/nut/issues/476 - -2017-12-05 Jim Klimov - - * .travis.yml: .travis.yml : add a test-case for builds in absence of - pkg-config in the OS - -2017-11-29 Arnaud Quette - - * docs/configure.txt, docs/man/nutupsdrv.txt, docs/man/upsd.txt: doc: - missing documentation for NUT_* env vars Complete documentation - for upsd and drivers related to the environment variables - NUT_CONFPATH, NUT_STATEPATH and NUT_ALTPIDPATH - -2017-04-08 Sam Varshavchik - - * docs/man/Makefile.am: Fix creation of documentation from - libnutclient_misc.txt A simple .txt.3 rule doesn't understand that - libnutclient_misc.txt creates a bunch of .3. A parallel build, say - 'make -j 10' results in make trying to figure out how to build - nutclient_authenticate.3 before building libnutclient_misc.3, and - without a corresponding .txt in sight it gives up. Rebased onto - master by Charles Lepple clepple+nut@gmail.com Closes: - https://github.com/networkupstools/nut/pull/418 - -2017-11-28 Arnaud Quette - - * docs/man/usbhid-ups.txt: doc: minor formatting in usbhid-ups man - page - -2017-11-27 Arnaud Quette - - * docs/man/nutupsdrv.txt: doc: reword nutupsdrv man page Reference: - https://github.com/networkupstools/nut/issues/476 - -2017-11-27 Jim Klimov - - * tools/nut-scanner/nut-scanner.c: Problem: nutscan_init() called - before debug is enabled Solution: Move the call to this stateless - function to the point after we parse arguments and just before we'd - start the actual scans. Later this can be extended to also consider - which scans were requested and so which libs to load. Thanks to - @clepple for research in - https://github.com/networkupstools/nut/issues/500 - -2017-11-26 Charles Lepple - - * docs/man/usbhid-ups.txt: doc: reword other parts of usbhid-ups man - page - * docs/man/usbhid-ups.txt: doc: mention CPS delay quirks in usbhid- - ups man page Closes: - https://github.com/networkupstools/nut/issues/432 - * tools/nut-scanner/scan_usb.c: nut-scanner: update - usb_get_string_simple() for libusb-1.0 API Closes: - https://github.com/networkupstools/nut/issues/499 - * drivers/libusb1.c: libusb1: const-ify the USB interface number - Remove a few "magic numbers" from USB/HID-related calls. - * drivers/libusb1.c: libusb1: LBYL approach to - libusb_set_auto_detach_kernel_driver() Switch to look-before-you- - leap (LBYL) approach to calling - libusb_set_auto_detach_kernel_driver(), since FreeBSD (11.0 and - 11.1; probably others) requires root privileges to attempt the - kernel driver detach (even if no detach operation is needed). - * m4/nut_check_libusb.m4: libusb1: check for - libusb_kernel_driver_active() - -2017-11-21 Charles Lepple - - * data/driver.list.in: HCL: Change Riello IDG/IPG support level to 4 - The IDG and IPG models were not included in the protocol - documentation provided to the NUT project. Some values are also - returned as 0xFF/0xFFF/0xFFFF - see the HCL for details. Source: - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2017-November/007357.html - -2017-11-17 Arnaud Quette - - * docs/man/nutupsdrv.txt, docs/man/usbhid-ups.txt: man pages: - clarification on polling parameters Explain difference between - pollfreq and pollinterval in usbhid-ups, and highlight the - pollinterval parameter use from ups.conf in nutupsdrv Closes: - https://github.com/networkupstools/nut/issues/476 - * data/driver.list.in: HCL: Eaton 9PX supported by mge-shut, usbhid- - ups and netxml-ups - * data/driver.list.in: HCL: Eaton ATS 30 supported by snmp-ups - * drivers/Makefile.am, drivers/mge-hid.c: mge-shut/usbhid-ups: - compute Output load for Eaton UPS When HID data - UPS.PowerConverter.Output.ActivePower is not present, compute a - realpower approximation using available data. This is needed for - Eaton 5E and some other units Closes: - https://github.com/networkupstools/nut/issues/484 - -2017-10-30 Michal Marek - - * Makefile.am, configure.ac, scripts/systemd/Makefile.am: - configure.ac: Fix systemd shutdown directory detection The - configure script assumes that systemd is installed below ${libdir}, - which is not true on many biarch Linux distros with /lib64. Instead - of guessing, use pkg-config to find the path and provide a --with- - systemdshutdowndir option so that make distcheck can override it. - Also, rename the internal varable to systemdshutdowndir to rhyme - with the respective systemd.pc variable. - -2017-10-20 Jim Klimov - - * configure.ac: Problem: configure fails on system without pkg-config - Solution: detect presence and usability of pkg-config program and - autotools macros (they end up as unexpanded tokens if pkg-config is - not installed), and use this knowledge to proceed with search for - libcppunit - or not. When the test is optional, we should not kill - the build if we can not make it due to missing tools. - -2017-10-11 Jim Klimov - - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : line- - breaks for readability and 80-col standard - pass 2 - * drivers/eaton-pdu-marlin-mib.c: eaton-pdu-marlin-mib.c : line- - breaks for readability and 80-col standard - -2017-10-08 Charles Lepple - - * docs/hid-subdrivers.txt: hid-subdrivers.txt: fix explore command - line Also reformat some surrounding text. Closes: - https://github.com/networkupstools/nut/issues/436 - * docs/hid-subdrivers.txt: hid-subdrivers.txt: clarify Tripp-Lite USB - reference Closes: - https://github.com/networkupstools/nut/issues/452 - * docs/man/powerpanel.txt: powerpanel: emphasize that this driver is - serial-only Apparently, the PowerPanel Plus vendor tool also has - USB support. - * docs/man/belkin.txt, docs/man/belkinunv.txt: belkin/belkinunv: add - links to man pages for other Belkin drivers - * docs/man/tripplite_usb.txt: tripplite_usb: update man page * Fix - link to tripplitesu(8) * Add 3005 protocol * Update protocol - variable name - * docs/man/dummy-ups.txt: dummy-ups: last state should be "OB LB" to - match text Also corrected a typo. - -2017-10-03 Arnaud Quette - - * docs/configure.txt: Update configure documentation for libusb - Document the possibility to override the auto-detection choice - -2017-10-04 Daniele Pezzini - - * configure.ac, m4/nut_check_libusb.m4: libusb 1.0 port: directly use - `--with-usb` to choose the library - -2017-10-03 Arnaud Quette - - * docs/configure.txt: Remove an extraneous point - * docs/configure.txt: Update configure documentation for libusb - Document the possibility to override the auto-detection choice, - even though the implementation of this override is not yet - currently working - -2017-10-02 Daniele Pezzini - - * docs/configure.txt, m4/nut_check_libusb.m4: libusb 1.0 port: - support libusb 0.1/-compat even when 1.0 is available Since libusb - 1.0 can happily coexist with libusb 0.1/libusb-compat, rework our - NUT_CHECK_LIBUSB macro so that, if both are available, libusb 1.0 - precedence can be overridden passing to `configure` appropriate - values for `--with-usb-includes` and `--with-usb-libs` (i.e. libusb - 0.1/libusb-compat-only settings). - * m4/nut_check_libusb.m4: libusb 1.0 port: expand a bit the - introductory comment of libusb ac macro - * m4/nut_check_libusb.m4: libusb 1.0 port: use only one AC_DEFINE'd - variable for libusb 0.1/-compat Libusb 0.1/libusb-compat can be - found with both pkg-config and with its own libusb-config, but, - regardless of how we found it, we need to use the same AC_DEFINE'd - variable to signal its presence. - * m4/nut_check_libusb.m4: libusb 1.0 port: don't check if libusb is - usable, if it's not available Since LIBUSB_VERSION is always non- - empty ('none', if libusb is not found), testing for non-emptiness - will always fail and libusb 0.1/libusb-compat checks will always be - performed. So, test instead that it is not 'none'. - -2017-03-22 Arnaud Quette - - * drivers/libusb1.c, drivers/nut_libusb.h, tools/nut- - scanner/scan_usb.c: Fix spacers - -2016-11-09 Charles Lepple - - * docs/nut-names.txt, drivers/libusb0.c, drivers/libusb1.c: Add - `driver.version.usb` variable Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-09-25 Charles Lepple - - * drivers/libusb1.c: libusb1: use return code from libusb_open() Per - , the handle is only populated when the return code - is 0. This fixes a crash during device detection where more than - one HID UPS is available, and the driver needs to skip the first - one. - -2016-09-02 Arnaud Quette - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/libusb1.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c: libusb 1.0 port: fix - return code for interrupt ops libusb 1.0 returns on success, the - number of bytes actually transferred or otherwise an error code, - except for interrupt transfers, where the actual transfer size is - stored in a separate variable. The libusb 1.0 implementation in NUT - thus needed to be fixed to behave the same way than the libusb 0.1 - implementation Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-31 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0 port: remove the check on USB device - count With the port to libusb 1.0, a sanity check was done on the - available number of USB devices to try. This however caused a - behavior regression, since the only device that NUT may have access - to can be the only UPS connected. In this case, the driver may exit - upon trying to reconnect if the device is transiently not available - Reference: https://github.com/networkupstools/nut/issues/300 - * drivers/libusb1.c, drivers/richcomm_usb.c: libusb 1.0 port: - complete usb_set_altinterface code usb_set_altinterface allows to - force the USB code to call `libusb_set_interface_alt_setting (0, - 0)` (equivalent to `libusb_set_altinterface(0)` in libusb 0.1), as - was done in NUT 2.7.2 and earlier. However, the libusb 1.0 - implementation was still missing the related code Reference: - https://github.com/networkupstools/nut/issues/300 - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: libusb 1.0 port: - fix kernel driver detachment Following the recent modification for - the kernel driver detachment, and the related functions - availability depending on the platforms, nutdrv_atcl_usb and - richcomm_usb were using the wrong macro for - libusb_set_auto_detach_kernel_driver and were missing the libusb - 1.0 code for explicit kernel driver detachment Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-17 Arnaud Quette - - * drivers/libusb1.c, m4/nut_check_libusb.m4: libusb 1.0 port: rework - the kernel driver detachment libusb 1.0 has introduced a new - function (libusb_set_auto_detach_kernel_driver), beside from the - explicit kernel driver detachment request - (libusb_detach_kernel_driver). However, the former is not available - on all systems. As an example, FreeBSD 10.1-10.3 does not have - this. The detachment and interface claiming has been reworked to - handle this case (reported by Charles Lepple) Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-12 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0: remove unused typesafe_control_msg() - workaround For libusb 0.1 implementation, we had to workaround a - libusb API goofs, by wrapping the base function usb_control_msg(), - and casting the variables to the right type. This is not needed for - libusb 1.0 implementation, but was wrongly left in the code - (reported by Charles Lepple) - -2016-08-11 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: fix a warning on unused variable - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: simplify bus publication - bus publication was wrongly listing both the bus and the portname, - instead of the bus only. This may have caused some issue when - trying to match the port - * drivers/usbhid-ups.c: usbhid-ups/mge-shut: forgotten version bump - * drivers/usbhid-ups.c: usbhid-ups/mge-shut: rework errno/errors - handling libusb 1.0 has its own set of return codes, and error - interface. Rework the common HID core (shared between usbhid-ups - and mge-shut) so that error handling can work with both, and using - either libusb 0.1 or 1.0 for usbhid-ups - * tools/nut-scanner/scan_usb.c: nut-scanner: missing symbols lookup - for libusb 1.0 A few symbols from libusb 1.0 were wrongly used - directly, instead of being looked up and loaded at init time - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: add missing libusb_exit() - calls - * tools/nut-scanner/nutscan-init.c, tools/nut-scanner/scan_usb.c, - tools/nut-usbinfo.pl: nut-scanner: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: Remove redundant - variable - * drivers/tripplite_usb.c: tripplite_usb: remove extraneous comment - char - * drivers/nut_libusb.h: permute typedef order of usb_dev_handle - * drivers/nutdrv_qx.c: nutdrv_qx: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/richcomm_usb.c: richcomm_usb: missing function remap for - libusb 0.1 usb_strerror was not remapped for libusb 0.1 - implementation - * drivers/tripplite_usb.c: tripplite_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/riello_usb.c: riello_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - -2016-08-10 Arnaud Quette - - * drivers/richcomm_usb.c: richcomm_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: add the missing detach - call libusb 1.0 provide its own routine for detaching kernel - driver - * drivers/Makefile.am, drivers/libhid.c, drivers/nut_libusb.h: - Forgotten occurences of libusb.h renaming NUT internal header - "libusb.h" was renamed, since it collides with the libusb 1.0 - header, which has the same name. A few occurences of reference and - documentation were however missing - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: initial port to libusb - 1.0 The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/blazer_usb.c: blazer_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/bcmxcp_usb.c: bcmxcp_usb: code cleanup - -2016-08-09 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * docs/configure.txt, drivers/Makefile.am, drivers/libhid.c, - drivers/libhid.h, drivers/{libusb.c => libusb0.c}, - drivers/libusb1.c, drivers/{libusb.h => nut_libusb.h}, drivers/usb- - common.h, drivers/usbhid-ups.c: ushid-ups: complete the port to - libusb 1.0 The port to libusb 1.0 is now complete for usbhid-ups. - Other USB drivers (bcmxcp_usb, blazer_usb, nutdrv_atcl_usb, - richcomm_usb, riello_usb, tripplite_usb, nutdrv_qx) have still to - be addressed - -2016-08-01 Arnaud Quette - - * configure.ac, m4/nut_check_libusb.m4: Initial port to libusb 1.0 - Starting with the configure checks, to detect if libusb 1.0 if - available, and otherwise fall back to the libusb 0.1 backend - -2017-09-17 Jim Klimov - - * configure.ac, tests/Makefile.am: Improve configure script and - recipe for CPPUNIT and C++11 detection * Detect C++11 support and - its use for CPPUNIT tests through configure.ac - should address - issue #472 * Report after detecting C++11 support, presence of - libcppunit, and request for valgrind, whether we'd build the - cppunit tests * Update relevant comments in configure.ac - * drivers/libusb0.c, drivers/libusb1.c: libusb0.c / libusb1.c : - report more visibly if we encountered errors accessing the device - (issue #477) - * drivers/libusb0.c, drivers/libusb1.c: libusb0.c / libusb1.c : - sanitize indentation and break up long-lines - -2017-09-21 Spiros Ioannou - - * drivers/phoenixcontact_modbus.c: phoenixcontact_modbus: fix stale - data detection Also mark driver as DRV_BETA Source: - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2017-September/007331.html - -2017-09-17 Jim Klimov - - * configure.ac: configure.ac : look for CPPUNIT after detecting pkg- - config presence, can help vs. issue #478 - -2017-09-06 Jim Klimov - - * common/common.c: common.c : dflt_statepath() / altpidpath() : - support defined-but-empty envvars to have same effect as not- - defined - * common/common.c: common.c : altpidpath() : support priority of an - envvar, like statepath does - -2017-09-05 Jim Klimov - - * drivers/main.c: main.c : update usage message with hints about - running as unprivileged user - -2017-08-28 Jim Klimov - - * .travis.yml, clients/upsclient.c, drivers/dstate.h, drivers/eaton- - pdu-marlin-mib.c, tests/Makefile.am: A few small fixes for cleaner - codebase and compilations (#466) * dstate.h : use our timehead.h - to have "struct timeval" defined * eaton-marlin : cosmetic - whitespace fixes * tests/Makefile.am : cppunit should build with - C++11 * .travis.yml : make sure to use "docker" env with its - gcc-4.8+ for support of C++11 in cppunit tests - -2017-08-24 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am : fix up access rights for other - files in docs too (some PNGs end up inaccessible otherwise) - -2017-08-23 Arnaud Quette - - * docs/nut-names.txt, docs/nut.dict, drivers/eaton-ats16-mib.c: snmp- - ups: add support for input.phase.shift (#433) * snmp-ups: add - support for input.phase.shift ATS can now publish the electrical - dephasing between input sources * Make spellchecker happy about - "dephasing" - -2017-08-23 Christian Ehrhardt - - * drivers/Makefile.am: automake: only pass net-snmp cflags to snmp- - ups (#464) Other than formerly assumed in the makefile cflags can - be more than includes. And some of them need to be in sync in - regard to CFLAGS and LDFLAGS - for example usage of -fPIE. This - conflicts with a current assumption in the makefile "In any case, - CFLAGS are only -I options, so there is no harm". On a - Distribution where PIE is enabled by default, but disabled for - special cases (like net-snmp) the configure detection gets them as: - LIBNETSNMP_CFLAGS = -DNETSNMP_ENABLE_IPV6 -fno-strict-aliasing -g - -O2 -fdebug-prefix-map=/build/net-snmp-nlMQSZ/net-snmp-5.7.3+dfsg=. - -specs=/usr/share/dpkg/no-pie-compile.specs -fstack-protector- - strong -Wformat -Werror=format-security -DNETSNMP_USE_INLINE - -Ulinux -Dlinux=linux -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv - -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE - -D_FILE_OFFSET_BITS=64 -I/usr/lib/x86_64-linux-gnu/perl/5.26/CORE - -Wdate-time -D_FORTIFY_SOURCE=2 -I/usr/include LIBNETSNMP_LIBS = - -Wl,-Bsymbolic-functions -specs=/usr/share/dpkg/no-pie-link.specs - -Wl,-z,relro -Wl,-z,now -L/usr/lib/x86_64-linux-gnu -lnetsnmp - -lcrypto -lm Of importance are: -specs=/usr/share/dpkg/no-pie- - compile.specs -specs=/usr/share/dpkg/no-pie-link.specs Now when - compiling the non-snmp objects incorrectly get the - "-specs=/usr/share/dpkg/no-pie-compile.specs" due to the assumption - that it is safe to add up all CFLAGS to the global one. LDFLAGS - imported that way are only added to snmp. snmp_ups_LDADD = - $(LDADD_DRIVERS) $(LIBNETSNMP_LIBS) [...] snmp-ups$(EXEEXT): - $(snmp_ups_OBJECTS) $(snmp_ups_DEPENDENCIES) - $(EXTRA_snmp_ups_DEPENDENCIES) @rm -f snmp-ups$(EXEEXT) - $(AM_V_CCLD)$(LINK) $(snmp_ups_OBJECTS) $(snmp_ups_LDADD) $(LIBS) - That leads to other (all non snmp_ups) objects in drivers failing - to build. They get the no-pie-compile.specs (incorrect) spec but - not the no-pie-link.specs on the link step. Some other parts like - mge_shut and nutdrv_qx already have custom CFLAGS/LDFLAGS that are - not added to the global CFLAGS. So despite the commend in the - makefile this doesn't seem to be new in general to nut. I don't - want to mess too much with your build system for now as I don't - know many of its implications. So I chose not the full drop of that - global CFLAGS merge, but a minimal patch for now which fixes the - issue described. Thereby closes #463 - -2017-08-23 Jim Klimov - - * docs/snmp-subdrivers.txt, drivers/Makefile.am, drivers/eaton-mib.h, - drivers/eaton-pdu-genesis2-mib.c, drivers/eaton-pdu-genesis2-mib.h, - drivers/{eaton-mib.c => eaton-pdu-marlin-mib.c}, drivers/eaton-pdu- - marlin-mib.h, drivers/eaton-pdu-pulizzi-mib.c, drivers/eaton-pdu- - pulizzi-mib.h, drivers/eaton-pdu-revelation-mib.c, drivers/eaton- - pdu-revelation-mib.h, drivers/snmp-ups.c: Eaton ePDU SNMP MIB file - split in four (#465) * snmp-subdrivers.txt : reference the - multitude of eaton subdrivers * eaton-mib.h renamed into separate - constituent headers * eaton-mib.c renamed into separate - constituent sources, earlier history retained in eaton-pdu- - genesis2-mib.c * eaton-pdu-revelation-mib.c eaton-pdu-pulizzi- - mib.c eaton-pdu-genesis2-mib.c : no use to include dstate.h here * - eaton-pdu-marlin-mib.c eaton-pdu-revelation-mib.c : port the - renamed structure names from original eaton-mib.c evolution - -2017-08-16 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix the rounding / truncation of some - values The multiplier system of the snmp-ups driver resulted in - some values being rounded to the nearby integer value, thus causing - a loss of the decimals and the value precision in general. This was - mainly visible on the value of currents, but also on some voltages - -2017-08-07 Tobby - - * drivers/apcupsd-ups.c: apcupsd-ups: interpret "SHUTTING DOWN" as - "LB" Fix issue https://github.com/networkupstools/nut/issues/460 - so NUT with apcupsd-ups driver will correctly initiate a shut down - on low battery. Bump version to 0.5 Closes: - https://github.com/networkupstools/nut/issues/460 Closes: - https://github.com/networkupstools/nut/issues/461 - -2017-08-10 Arnaud Quette - - * drivers/apc-ats-mib.c, drivers/apc-ats-mib.h: Remove exec bits on - SNMP subdrivers - -2017-08-02 Charles Lepple - - * drivers/cps-hid.c: CPS HID: add input.frequency and - output.frequency (0.5) Suggested by Andy Jan: - http://lists.alioth.debian.org/pipermail/nut- - upsuser/2017-August/010856.html - -2017-08-04 Arnaud Quette - - * docs/nut-names.txt: NUT namespace: fix an extraneous character - insertion A character was wrongly inserted during the previous - commit, triggering a spellcheck error - * drivers/eaton-mib.c: snmp-ups: Publish outlet.n.name for Eaton ePDU - * docs/nut-names.txt: Extend namespace for iPDU and outlets Extend - NUT namespace to also publish the name of an outlet, using - "outlet.n.name", beside from the existing "outlet.n.desc" - -2017-08-03 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: Fix the phase of outlet groups for - Eaton PDU Compute the phase to which an outlet group is connected - WRT the total number of phase(s) and the considered outlet group - number. - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: Introduce values - lookup functions As already used in other drivers, such as usbhid- - ups, introduce optional values lookup functions, beside from values - lookup mapping. This allows to have a more powerful and generic - values processing before publication - -2017-07-22 Charles Lepple - - * drivers/openups-hid.c: usbhid-ups: only check iOEMInformation once - for openups2 This prevents the 'libusb_get_string: invalid - argument' message from being logged continously. Patch provided by - Alphonse - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2017-July/007314.html - -2017-02-02 Daniel Schaal - - * drivers/main.c: Add foreground option to drivers - * docs/man/upsd.txt, scripts/systemd/nut-server.service.in, - server/upsd.c: Add foreground option to upsd - -2016-12-17 Daniel Schaal - - * clients/upsmon.c, docs/man/upsmon.txt, scripts/systemd/nut- - monitor.service.in: Add option to run upsmon in foreground - -2017-06-26 Jim Klimov - - * docs/man/Makefile.am: docs/man/Makefile.am : Suffice to have - prebuilt docs in dist-ed sources only if DOC_INSTALL_DISTED_MANS is - enabled - * docs/man/Makefile.am: docs/man/Makefile.am : Fix up dist-ed manpage - source timestamps regardless of DOC_INSTALL_DISTED_MANS value - * docs/man/Makefile.am: docs/man/Makefile.am : Fix up manpage source - timestamps when dist-ing - * docs/Makefile.am: docs/Makefile.am : make sure the builddir copy of - docbook-xsl.css is writeable (file is copied from OS, some distros - have it 444 and not 644) - * docs/man/Makefile.am: docs/man/Makefile.am : do not rebuild docs - and do not error out if a prebuilt copy is among sources (not only - in builddir as before) - * configure.ac, docs/man/Makefile.am: configure.ac - docs/man/Makefile.am : track DOC_INSTALL_DISTED_MANS fallback - behavior - * configure.ac, m4/nut_check_asciidoc.m4: m4/nut_check_asciidoc.m4 - configure.ac : parametrize the required minimum versions - (asciidoc/a2x, dblatex) - * configure.ac: configure.ac : refer to detailed doc from --with-doc - help text; preset explicit nut_with_doc=man=auto value - * docs/man/Makefile.am: docs/man/Makefile.am : small typo in comment - * configure.ac: configure.ac : move comment to a more relevant line - -2017-06-25 Charles Lepple - - * tools/gitlog2changelog.py: gitlog2changelog: log parse errors for - Author and Date Suggested by Jim Klimov. - * tools/gitlog2changelog.py: gitlog2changelog: Date header only - occurs at start of line Alternative to - https://github.com/networkupstools/nut/pull/427 - -2017-06-13 Arnaud Quette - - * drivers/main.c: all drivers: update inline help for '-d ' - -2017-06-12 Arnaud Quette - - * drivers/powerware-mib.c: snmp-ups: add input.bypass.frequency for - Eaton 3ph - -2017-06-12 EVER-PowerSystems - - * drivers/ever-hid.c: fixed status names, added comments, fixed - duplicates - * drivers/ever-hid.c: fixed NUT names - -2017-06-12 Arnaud Quette - - * docs/man/nutupsdrv.txt, drivers/main.c: all drivers: change - dump_data from flag to variable The new option '-d dump_data' can - now accept the number of update loops requested as its value - -2017-06-09 Arnaud Quette - - * drivers/main.c: all drivers: add '-d' data dump option Add '-d' - option to the driver-core, which causes the driver to dump the data - tree in upsc-like format to stdout, and exit - -2017-06-09 Arnaud Quette - - * docs/man/nutupsdrv.txt, drivers/dstate.c, drivers/dstate.h, - drivers/main.c: all drivers: add '-d' data dump option Add '-d' - option to the driver-core, which causes the driver to dump the data - tree in upsc-like format to stdout, and exit - -2017-06-12 Emilien Kia (Eaton) - - * docs/man/nutupsdrv.txt, drivers/main.c: Add option to run driver on - standalone mode. (#423) When a driver is launched with '-s ' - instead of '-a ', the driver does not read ups.conf and only - looks for parameters on command line arguments (-x =). At - least, 'port' parameter shall be specified. - -2017-06-03 Charles Lepple - - * drivers/belkin-hid.c: usbhid-ups: add Liebert GXT4 USB VID:PID - [10AF:0000] Source: http://lists.alioth.debian.org/pipermail/nut- - upsuser/2017-June/010682.html Voltage and ConfigVoltage appear to - be scaled improperly per the debug output. - -2017-05-24 Arnaud Quette - - * docs/nut-names.txt, drivers/eaton-mib.c, drivers/snmp-ups.c: snmp- - ups: add support for outlet.group phase (#422) * snmp-ups: fix - oid2info value lookup When oid2info returns NULL, don't publish - the variable. Previously, this was returning "UNKNOWN" which was - not suitable * snmp-ups: add support for outlet.group phase - Outlets groups can now publish the electrical phase to which the - physical outlets group (Gang) is connected to. This is useful for - 3ph ePDU - -2017-05-21 Charles Lepple - - * data/driver.list.in: HCL: CPS EC750G Source: - http://lists.alioth.debian.org/pipermail/nut- - upsuser/2016-December/010461.html - * data/driver.list.in: HCL: CPS PR2200LCDRT2U (SNMP) - -2017-05-20 Charles Lepple - - * data/driver.list.in: HCL: Add APC Back-UPS CS; edit other APC USB - entries Closes: https://github.com/networkupstools/nut/issues/365 - * data/driver.list.in: HCL: CyberPower EC350G supported by usbhid-ups - (v2.7.3) Per @aurimasv on GitHub: > Test results: Tested on - FreeNAS 9.10.1. Unplugged the UPS and the system > shutdown after - 30 seconds. Closes: - https://github.com/networkupstools/nut/issues/347 Also sorted CPS - entries. - * data/driver.list.in: HCL: Powercool 350VA to 1600VA USB (v2.7.2+) - Closes: https://github.com/networkupstools/nut/issues/203 - * data/driver.list.in: HCL: Numeric Digital 800 plus works with - nutdrv_qx Closes: - https://github.com/networkupstools/nut/issues/115 (~ 2.7.4) - -2017-05-08 EVER-PowerSystems - - * drivers/Makefile.am: fixed errors in makefile - * drivers/Makefile.am, drivers/ever-hid.c, drivers/ever-hid.h, - drivers/usbhid-ups.c, scripts/upower/95-upower-hid.rules: add EVER - hid ups - -2017-04-21 Jim Klimov - - * docs/Makefile.am: docs: build cables html documentation Don't skip - cables from html documentation. - -2017-04-09 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am : typo fix not-building - FAQ.chunked - -2017-04-21 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am : make the working directory - contents writable before running a2x, so it can manage files copied - as read-only in earlier steps - -2017-04-10 Jim Klimov - - * docs/Makefile.am, docs/man/Makefile.am: Some systems detect html- - pages as "XML" - please them too - * docs/man/Makefile.am: Some systems detect man-pages as "ASCII text" - - please them - -2017-04-10 Jim Klimov - - * docs/man/Makefile.am: Update Makefile.am Some systems detect text - sources as "ISO-8859 English" text - please them. - -2017-04-09 Jim Klimov - - * docs/man/Makefile.am: docs/man/Makefile.am : fix check-man-html for - distcheck - * docs/man/Makefile.am: docs/man/Makefile.am : fix check-man-pages - for distcheck - * docs/man/Makefile.am: docs/man/Makefile.am : fix check-man-txt for - distcheck - * configure.ac, docs/Makefile.am, docs/man/Makefile.am: Add "make - check" for generated (or "released" pre-built) docs - * docs/Makefile.am: docs/Makefile.am : typo fix not-building - FAQ.chunked - * configure.ac: configure.ac : add --with- - doc(s)=all={yes,no,skip,auto} to manch e.g. man=skip etc. syntax - -2017-04-05 Arnaud Quette - - * data/driver.list.in: Add support for Eaton 9PX Split Phase 6/8/10 - kVA Using netxml-ups, usbhid-ups and mge-shut - * drivers/netxml-ups.c: netxml-ups: bump driver version In order to - reflect update for 2phases, bump driver version - * drivers/dstate.c: dstate_detect_phasecount: update for 2phases - Update the code to be able to handle 2phases devices, also known as - "split phases" - -2017-04-04 Arnaud Quette - - * MAINTAINERS, data/driver.list.in, docs/man/nutupsdrv.txt, - drivers/Makefile.am, drivers/mge-shut.c, drivers/mge-shut.h: - oldmge-shut: final deprecation and removal oldmge-shut is not - anymore part of the distribution, and is replaced by mge-shut - -2017-04-04 Arnaud Quette - - * clients/upsclient.c, drivers/gamatronic.c, drivers/openups-hid.c, - drivers/snmp-ups.c, server/netssl.c, tools/nut-scanner/nutscan- - ip.c, tools/nut-scanner/nutscan-serial.c, tools/nut- - scanner/scan_eaton_serial.c, tools/nut-scanner/scan_nut.c, - tools/nut-scanner/scan_snmp.c, tools/nut-scanner/scan_xml_http.c: - Cppcheck improvements (#405) Fix all Cppcheck errors, using - standard c89: * Uninitialized variables, * Memory leak, * Brackets - balancing, * Common realloc mistake, * Possible null pointer - dereference, * Array index out of bounds, * Not null-terminated - string - -2017-03-31 Nash Kaminski - - * docs/man/liebert-esp2.txt, docs/nut.dict, drivers/liebert-esp2.c: - liebert-esp2 changes: Correct battery V scaling, update docs, - implement split-phase unit support (#412) * Update liebert-esp2 - documentation, include note that port on GXT2 series does not fully - follow RS-232 specs. * Refactor output format of liebert-esp2 - driver to follow that of other drivers to fix the nut-cgi interface - as well as for overall consistency. Implement support for 2 phase - i.e. split phase input Liebert GXT2 series units. Correct battery - voltage scaling for GXT2 series units as well. * Update nut.dict - * Update nut.dict - -2017-03-30 Jim Klimov - - * .travis.yml: Problem: NUT tests in Travis CI often wait for - default-withdoc Solution in .travis.yml : since Travis cloud - starts the jobs as soon as it has resources, move the bulk of - quicker matrix jobs to start after the longest withdocs build. - Experimental note: we still need one job defined in the simple - matrix for default environment, but can keep others in a single - explicitly ordered list. Now the "Running for" time got cut from - 8-9 to 5.5-6 minutes. - -2017-03-29 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am : update comment about - spellcheck-sortdict post-processing, to make it more relevant - * docs/man/upsd.conf.txt, docs/nut.dict: Fix some more typos and add - nut.dict exceptions - -2017-03-29 Arnaud Quette - - * docs/man/upsd.conf.txt: upsd.conf.txt: fix a typo from the previous + * [r2321] UPGRADING, drivers/blazer_usb.c, man/blazer.8: Use + 'ippon' subdriver for devices with USB id 06da:0003 (old + 'phoenix' subdriver still available) + * [r2320] drivers/raritan-mib.h, drivers/snmp-ups.c: Fix wrong name + * [r2319] drivers/raritan-mib.h: Add missing file in previous commit - * conf/upsd.conf.sample, docs/man/upsd.conf.txt: upsd.conf: - clarification on the LISTEN directive - -2017-03-22 Arnaud Quette - - * drivers/libusb1.c, drivers/nut_libusb.h, tools/nut- - scanner/scan_usb.c: Fix spacers - -2016-11-09 Charles Lepple - - * docs/nut-names.txt, drivers/libusb0.c, drivers/libusb1.c: Add - `driver.version.usb` variable Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-09-25 Charles Lepple - - * drivers/libusb1.c: libusb1: use return code from libusb_open() Per - , the handle is only populated when the return code - is 0. This fixes a crash during device detection where more than - one HID UPS is available, and the driver needs to skip the first - one. - -2016-09-02 Arnaud Quette - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/libusb1.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c: libusb 1.0 port: fix - return code for interrupt ops libusb 1.0 returns on success, the - number of bytes actually transferred or otherwise an error code, - except for interrupt transfers, where the actual transfer size is - stored in a separate variable. The libusb 1.0 implementation in NUT - thus needed to be fixed to behave the same way than the libusb 0.1 - implementation Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-31 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0 port: remove the check on USB device - count With the port to libusb 1.0, a sanity check was done on the - available number of USB devices to try. This however caused a - behavior regression, since the only device that NUT may have access - to can be the only UPS connected. In this case, the driver may exit - upon trying to reconnect if the device is transiently not available - Reference: https://github.com/networkupstools/nut/issues/300 - * drivers/libusb1.c, drivers/richcomm_usb.c: libusb 1.0 port: - complete usb_set_altinterface code usb_set_altinterface allows to - force the USB code to call `libusb_set_interface_alt_setting (0, - 0)` (equivalent to `libusb_set_altinterface(0)` in libusb 0.1), as - was done in NUT 2.7.2 and earlier. However, the libusb 1.0 - implementation was still missing the related code Reference: - https://github.com/networkupstools/nut/issues/300 - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: libusb 1.0 port: - fix kernel driver detachment Following the recent modification for - the kernel driver detachment, and the related functions - availability depending on the platforms, nutdrv_atcl_usb and - richcomm_usb were using the wrong macro for - libusb_set_auto_detach_kernel_driver and were missing the libusb - 1.0 code for explicit kernel driver detachment Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-17 Arnaud Quette - - * drivers/libusb1.c, m4/nut_check_libusb.m4: libusb 1.0 port: rework - the kernel driver detachment libusb 1.0 has introduced a new - function (libusb_set_auto_detach_kernel_driver), beside from the - explicit kernel driver detachment request - (libusb_detach_kernel_driver). However, the former is not available - on all systems. As an example, FreeBSD 10.1-10.3 does not have - this. The detachment and interface claiming has been reworked to - handle this case (reported by Charles Lepple) Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-12 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0: remove unused typesafe_control_msg() - workaround For libusb 0.1 implementation, we had to workaround a - libusb API goofs, by wrapping the base function usb_control_msg(), - and casting the variables to the right type. This is not needed for - libusb 1.0 implementation, but was wrongly left in the code - (reported by Charles Lepple) - -2016-08-11 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: fix a warning on unused variable - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: simplify bus publication - bus publication was wrongly listing both the bus and the portname, - instead of the bus only. This may have caused some issue when - trying to match the port - * drivers/usbhid-ups.c: usbhid-ups/mge-shut: rework errno/errors - handling libusb 1.0 has its own set of return codes, and error - interface. Rework the common HID core (shared between usbhid-ups - and mge-shut) so that error handling can work with both, and using - either libusb 0.1 or 1.0 for usbhid-ups - * tools/nut-scanner/scan_usb.c: nut-scanner: missing symbols lookup - for libusb 1.0 A few symbols from libusb 1.0 were wrongly used - directly, instead of being looked up and loaded at init time - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: add missing libusb_exit() - calls - * tools/nut-scanner/nutscan-init.c, tools/nut-scanner/scan_usb.c, - tools/nut-usbinfo.pl: nut-scanner: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: Remove redundant - variable - * drivers/tripplite_usb.c: tripplite_usb: remove extraneous comment - char - * drivers/nut_libusb.h: permute typedef order of usb_dev_handle - * drivers/nutdrv_qx.c: nutdrv_qx: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/richcomm_usb.c: richcomm_usb: missing function remap for - libusb 0.1 usb_strerror was not remapped for libusb 0.1 - implementation - * drivers/tripplite_usb.c: tripplite_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/riello_usb.c: riello_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - -2016-08-10 Arnaud Quette - - * drivers/richcomm_usb.c: richcomm_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: add the missing detach - call libusb 1.0 provide its own routine for detaching kernel - driver - * drivers/Makefile.am, drivers/libhid.c, drivers/nut_libusb.h: - Forgotten occurences of libusb.h renaming NUT internal header - "libusb.h" was renamed, since it collides with the libusb 1.0 - header, which has the same name. A few occurences of reference and - documentation were however missing - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: initial port to libusb - 1.0 The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/blazer_usb.c: blazer_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/bcmxcp_usb.c: bcmxcp_usb: code cleanup - -2016-08-09 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * docs/configure.txt, drivers/Makefile.am, drivers/libhid.c, - drivers/libhid.h, drivers/{libusb.c => libusb0.c}, - drivers/libusb1.c, drivers/{libusb.h => nut_libusb.h}, drivers/usb- - common.h, drivers/usbhid-ups.c: ushid-ups: complete the port to - libusb 1.0 The port to libusb 1.0 is now complete for usbhid-ups. - Other USB drivers (bcmxcp_usb, blazer_usb, nutdrv_atcl_usb, - richcomm_usb, riello_usb, tripplite_usb, nutdrv_qx) have still to - be addressed - -2016-08-01 Arnaud Quette - - * configure.ac, m4/nut_check_libusb.m4: Initial port to libusb 1.0 - Starting with the configure checks, to detect if libusb 1.0 if - available, and otherwise fall back to the libusb 0.1 backend - -2017-03-22 Arnaud Quette - - * clients/upssched-cmd, conf/upssched.conf.sample.in: upssched: align - documentation and sample files Align documentation and sample - configuration and script, so that the whole is more coherent - -2017-03-21 Arnaud Quette - - * docs/scheduling.txt: upssched: some clarification on TIMER - -2017-03-20 Charles Lepple - - * docs/nut.dict: Re-sort nut.dict (#406) * Re-sort nut.dict * - nut.dict header line - -2017-03-13 Spiros Ioannou - - * configure.ac, data/driver.list.in, docs/man/Makefile.am, - docs/man/index.txt, docs/man/phoenixcontact_modbus.txt, - docs/nut.dict, drivers/Makefile.am, - drivers/phoenixcontact_modbus.c, m4/nut_check_libmodbus.m4: - phoenixcontact_modbus driver Closes: - https://github.com/networkupstools/nut/pull/404 - -2017-03-14 Spiros Ioannou - - * .travis.yml: added libmodbus-dev to travis configuration - -2017-03-15 Jim Klimov - - * docs/config-notes.txt: config-notes.txt : small clarifications in - the text - * docs/developers.txt: developers.txt : small clarifications in the - text and line-wrapping and backticks - * docs/config-notes.txt: config-notes.txt : small clarifications in - the text and line-wrapping - * docs/cables.txt: cables.txt : line-wrapping - * docs/asciidoc.txt: asciidoc.txt : line-wrapping - * docs/acknowledgements.txt: acknowledgements.txt : line-wrapping - * docs/support.txt: support.txt : small clarifications in the text - and line-wrapping - * docs/security.txt: security.txt : small clarifications in the text - and line-wrapping - * docs/outlets.txt: outlets.txt : line-wrapping - * docs/new-drivers.txt: new-drivers.txt : line-wrapping - * docs/net-protocol.txt: net-protocol.txt : line-wrapping - * docs/maintainer-guide.txt: maintainer-guide.txt : small - clarifications in the text and line-wrapping and backticks - * docs/macros.txt: macros.txt : line-wrapping - * docs/history.txt: history.txt : line-wrapping - * docs/features.txt: features.txt : small clarifications in the text - and line-wrapping and backticks - * docs/download.txt: download.txt : line-wrapping - * docs/developers.txt: developers.txt : small clarifications in the - text and line-wrapping and backticks - * docs/daisychain.txt: daisychain.txt : small clarifications in the - text and line-wrapping - * docs/configure.txt: configure.txt : small clarifications in the - text - * docs/config-notes.txt: config-notes.txt : small clarifications in - the text - * docs/acknowledgements.txt: acknowledgements.txt : small - clarifications in the text - * docs/FAQ.txt, docs/nutdrv_qx-subdrivers.txt: nutdrv_qx- - subdrivers.txt : small clarifications in the text - -2017-03-13 Jim Klimov - - * docs/nut.dict: nut.dict : add "distros" slangey - * docs/configure.txt, docs/contact-closure.txt, docs/daisychain.txt, - docs/developers.txt, docs/features.txt, docs/history.txt, docs/net- - protocol.txt, docs/new-drivers.txt, docs/nut-names.txt, docs/nut- - qa.txt, docs/nutdrv_qx-subdrivers.txt, docs/outlets.txt, docs/sock- - protocol.txt: docs/*.txt : cleanup long-dash (use double-minus) - * docs/acknowledgements.txt, docs/cables.txt, docs/configure.txt, - docs/contact-closure.txt, docs/design.txt, docs/developer- - guide.txt, docs/developers.txt, docs/documentation.txt, - docs/download.txt, docs/features.txt, docs/hid-subdrivers.txt, - docs/history.txt, docs/macros.txt, docs/maintainer-guide.txt, - docs/net-protocol.txt, docs/new-clients.txt, docs/new-drivers.txt, - docs/nut-names.txt, docs/nut-qa.txt, docs/outlets.txt, - docs/packager-guide.txt, docs/snmp-subdrivers.txt, docs/snmp.txt, - docs/sock-protocol.txt, docs/support.txt, docs/user-manual.txt: - docs/*.txt : cleanup trailing whitespace - -2017-03-13 Arnaud Quette - - * scripts/systemd/nutshutdown.in: Prefer @CONFPATH@ over @sysconfdir@ - Otherwise, the generated nutshutdown script can end up with a non - fully expanded path like "${prefix}/etc/nut.conf" when not - specifying --sysconfdir and using default flags - -2017-01-28 Laurent Bigonville - - * scripts/systemd/nutshutdown.in: Add support for POWEROFF_WAIT - parameter Use "systemctl reboot --force --force" to reboot the - machine has not been shutdown after the POWEROFF_WAIT delay. - Closes: #382 - -2017-03-04 Jim Klimov - - * drivers/snmp-ups.c: snmp-ups.c : presumed typo fix : NUT var for - bypass mapping is "input.bypass" (fix the caller too) - -2017-03-15 Jim Klimov - - * docs/nut.dict: nut.dict : know of "nowait" - -2017-01-28 Jim Klimov - - * docs/man/ups.conf.txt, docs/man/upsdrvctl.txt, drivers/upsdrvctl.c: - From: Arnaud Quette Date: Sat, 7 Jun 2014 - 02:27:15 +0200 Subject: [PATCH] Add 'nowait' option for upsdrvctl - in ups.conf The nowait flag allow to tell upsdrvctl to not wait at - all for the driver(s) to execute the request command. The default - behavior, when this variable is omitted, is to wait 'maxstartdelay' - seconds - -2017-03-13 Arnaud Quette - - * scripts/systemd/nutshutdown.in: Prefer @CONFPATH@ over @sysconfdir@ - Otherwise, the generated nutshutdown script can end up with a non - fully expanded path like "${prefix}/etc/nut.conf" when not - specifying --sysconfdir and using default flags - * docs/scheduling.txt: Disambiguate FHS - Filesystem Hierarchy - Standard - * docs/security.txt: Missing space - -2017-03-13 Jim Klimov - - * docs/FAQ.txt, docs/config-notes.txt, docs/scheduling.txt, - docs/security.txt: Some docs/ files revised to backtick pathnames, - clean up trailing whitespace, and use double-minuses for long-dash - in sentences - * docs/nut.dict: docs/nut.dict : add "FHS" - -2017-03-04 Arnaud Quette - - * docs/FAQ.txt, docs/config-notes.txt, docs/scheduling.txt, - docs/security.txt: Try to adapt paths in documentation - Documentation still widely uses the default paths source when - compiled from source. While it is feasible to adapt some at - compilation time, it is not desirable since, for example, the - online documentation on networkupstools.org has to be generic. So - try to make these paths more generic when possible, and otherwise - make a note - -2017-03-04 Jim Klimov - - * docs/hid-subdrivers.txt, docs/nut.dict: spellcheck: "futher" is a - mistaken exception in custom dictionary - * docs/nut.dict: nut.dict bumped to support nut-website documents - with words that Travis does not know - * drivers/snmp-ups.c: snmp-ups.c : presumed typo fix : NUT var for - bypass mapping is "input.bypass" (fix the caller too) - * docs/nut.dict: nut.dict bumped to support nut-website documents - with words that Travis does not know - * docs/nut.dict: nut.dict bumped to support nut-website documents - -2017-03-02 Arnaud Quette - - * tools/nut-ddl-dump.sh: nut-ddl-dump.sh: various improvements - Improve the script to generate NUT device dumps by adding: * a - header line that mentions the generation source (automatic) and - date * add upsrw dump as comments * add upscmd dump as comments - * drivers/eaton-ats16-mib.c: snmp-ups: ATS16 fixes for ambient sensor - values Values for the attached ambient sensor to an ATS16 were - erroneously multiplied by 10 - -2017-03-01 Jim Klimov - - * drivers/mge-xml.c: Update mge-xml.c Include drivers/main.h to get - testvar() declared properly - -2017-03-01 Jim Klimov - - * docs/man/upscli_init.txt: docs/man/upscli_init.txt : rephrase the - text to pass spellcheck (and human readability) and wrap some long - lines - * drivers/snmp-ups.c: snmp-ups.c : presumed typo fix : NUT var for - bypass mapping is "input.bypass" - * drivers/snmp-ups.c: snmp-ups.c : added comments about some - daisychain global vars - -2017-02-28 Jim Klimov - - * drivers/snmp-ups.c: drivers/snmp-ups.c : in snmp_ups_walk(), report - in log if aborting because of exit_flag - * drivers/snmp-ups.c: drivers/snmp-ups.c : in snmp_ups_walk(), update - some comments - * drivers/snmp-ups.c: drivers/snmp-ups.c : presumed typo fix in - comment about daisy (should be "1..N" not "2..N" in final code) - * drivers/snmp-ups.c: drivers/snmp-ups.c : comment in snmp_ups_walk() - about daisychains vs unitary devices - * drivers/snmp-ups.c: drivers/snmp-ups.c : comment in snmp_ups_walk() - about daisychains vs unitary devices - * drivers/snmp-ups.c: drivers/snmp-ups.c : fix trailing whitespace - * drivers/dstate.c, drivers/dstate.h, drivers/usbhid-ups.h: - drivers/dstate.c : in dstate_detect_phasecount() do not hardcode a - buf[] size but use a macro - * drivers/dstate.c: drivers/dstate.c : extend a comment about 2-phase - devices into dstate_detect_phasecount() - -2017-02-12 Jim Klimov - - * drivers/dstate.c: dstate.c : catch a few more zero value - representation and comment about others - -2017-02-10 Jim Klimov - - * drivers/dstate.c: dstate.c : refactor dstate_detect_phasecount() : - change the report about calculated values to use common format with - __func__ - * drivers/dstate.c: dstate.c : refactor dstate_detect_phasecount() : - change the no-longer-sexy overgrown one-liners with a readable - macro - * drivers/dstate.c: dstate.c : important typo fixed for - dstate_detect_phasecount() - * drivers/dstate.c: dstate.c : revise comment for - dstate_detect_phasecount() - * drivers/dstate.c: dstate.c : address code style (move var - declarations to top of scope) - * drivers/dstate.c: dstate.c : address some nit-picks - -2017-02-09 Jim Klimov - - * drivers/dstate.c, drivers/dstate.h, drivers/mge-xml.c: Refactor - dstate_detect_phasecount(), adding a read-only mode (so the caller - can query the guesswork logic without changing active dstates) - * drivers/dstate.c, drivers/dstate.h, drivers/mge-xml.c: Refactor the - dstate guesswork and setting for 1/3 phases, move it to common - dstate.c/.h and rename to dstate_detect_phasecount() - * drivers/mge-xml.c: Refactor recent logic into a common - set_phasecount() - * drivers/mge-xml.c: Drop an empty line - * drivers/mge-xml.c: mge-xml.c : calculate - (input|bypass|output).phases number (1 or 3) based on available - non-zero measurements - typo fix for "INPUT.bypass." - * drivers/mge-xml.c: mge-xml.c : calculate - (input|bypass|output).phases number (1 or 3) based on available - non-zero measurements - consider absence of Lx values for 1-phase - case - * drivers/mge-xml.c: mge-xml.c : calculate - (input|bypass|output).phases number (1 or 3) based on available - non-zero measurements - also consider current (amps) - * drivers/mge-xml.c: mge-xml.c : calculate - (input|bypass|output).phases number (1 or 3) based on available - non-zero measurements - -2017-02-28 Jim Klimov - - * docs/man/netxml-ups.txt, drivers/mge-xml.c, drivers/netxml-ups.c: - mge-xml / netxml-ups : reimplement do_convert_deci as a simple - VAR_FLAG setting - -2017-02-27 Jim Klimov - - * drivers/mge-xml.c: mge-xml.c : add debug logging of values which - were converted - * docs/man/netxml-ups.txt, docs/nut.dict, drivers/mge-xml.c, - drivers/netxml-ups.c: netxml-ups and mge-xml : allow users to - reenable legacy convert_deci() behavior at run-time, with a - configuration toggle (documented) - * drivers/mge-xml.c: mge-xml.c : updated comment about convert_deci() - pre-history - -2017-02-21 Jim Klimov - - * drivers/mge-xml.c: drivers/mge-xml.c : when reporting deprecation - of convert_deci(), do it once visibly with details like issue - tracker URL, and in regular debug messages refer to that line - -2017-02-20 Jim Klimov - - * drivers/mge-xml.c: drivers/mge-xml.c : in convert_deci() now report - it is deprecated (with debug level 5) so we get reports if - deprecation bites anyone in reality - * drivers/mge-xml.c: drivers/mge-xml.c : bump subdriver version - * drivers/mge-xml.c: drivers/mge-xml.c : bump copyrights - -2017-02-18 Jim Klimov - - * drivers/mge-xml.c: Disable convert_deci() that was needed a decade - ago Left the old code in place, commented away. If devices with - old NetXML pop up (those which served in XML 10x the measured - value), fixes can be applied based on voltage and amps and power - (order of magnitude comparison), or perhaps model names and/or - firmware versions or release dates, if we get those. - -2017-02-27 Jim Klimov - - * drivers/netxml-ups.c: netxml-ups.c : typo fix (shutdwon => - shutdown) - * docs/man/netxml-ups.txt: docs/man/netxml-ups.txt : trailing - whitespace fixes - -2017-02-28 Jim Klimov - - * data/Makefile.am: data/Makefile.am : did not link back to - "spellcheck-sortdict" - -2017-02-04 Steven Bell - - * docs/nut.dict: Removed line left over from merge conflict. Ooops! - -2017-01-28 Laurent Bigonville - - * scripts/systemd/nutshutdown.in: Add support for POWEROFF_WAIT - parameter Use "systemctl reboot --force --force" to reboot the - machine has not been shutdown after the POWEROFF_WAIT delay. - Closes: #382 - -2017-01-28 Jim Klimov - - * drivers/eaton-ats30-mib.c: drivers/eaton-ats30-mib.c : fix - whitespace - * drivers/snmp-ups.c: drivers/snmp-ups.c : fix trailing whitespaces - * docs/nut.dict: nut.dict : know of "nowait" - * docs/Makefile.am: docs/Makefile.am : after spellcheck-interactive, - advise how to review the dictionary changes and avoid regressions - * conf/upsd.conf.sample, conf/upsmon.conf.sample.in, - conf/upssched.conf.sample.in, docs/nut.dict: Spellchecked the conf/ - sample files - * Makefile.am, conf/Makefile.am: Spellcheck the conf/ directory - * conf/upsd.users.sample, conf/upsmon.conf.sample.in: - upsmon.conf.sample.in : clarify nuances of master/slave systems, - and special use-cases of SHUTDOWNCMD and powervalue==0 - * conf/hosts.conf.sample, conf/nut.conf.sample, conf/ups.conf.sample, - conf/upsd.conf.sample, conf/upsd.users.sample, - conf/upsmon.conf.sample.in, conf/upssched.conf.sample.in, - conf/upsset.conf.sample, conf/upsstats.html.sample: Sample - configuration files : fix leading and trailing whitespace (mix of - tab/space) - * conf/ups.conf.sample: ups.conf.sample : move maxretry example - higher in the file so it is before driver-block examples - * drivers/apc-pdu-mib.c: Date: Fri Aug 19 02:43:44 2016 +0200 apc- - pdu-mib.c fixes : * added trailing NULLs for proper structure size; - * fixed some items' flags; * fixed whitespace; * bumped MIBmap - version - * data/driver.list.in, drivers/Makefile.am, drivers/apc-pdu-mib.c, - drivers/apc-pdu-mib.h, drivers/snmp-ups.c: From: Arnaud Quette - Date: Fri, 8 Apr 2016 14:40:00 +0200 - Subject: [PATCH] snmp-ups: support APC PDU Based on initial work - and data from Opengear, using SNMP subdriver creation script, add - support for the more recent APC PDU. This was tested with a - AP8958, but should cover other models - * docs/man/ups.conf.txt, docs/man/upsdrvctl.txt, drivers/upsdrvctl.c: - From: Arnaud Quette Date: Sat, 7 Jun 2014 - 02:27:15 +0200 Subject: [PATCH] Add 'nowait' option for upsdrvctl - in ups.conf The nowait flag allow to tell upsdrvctl to not wait at - all for the driver(s) to execute the request command. The default - behavior, when this variable is omitted, is to wait 'maxstartdelay' - seconds - * conf/ups.conf.sample: Document and pre-set the "maxretry" option in - ups.conf.sample - -2017-01-27 Jim Klimov - - * drivers/eaton-ats16-mib.c, drivers/eaton-ats30-mib.c: Prefix - structures in eaton-atsXY-mib.c files with an eaton_atsXY rather - than just atsXY - * README: README: not asciidoc, and redistributed - do not link to - volatile build status - -2017-01-27 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: Fix counter OID matching In case of - multiple similar sysOID (i.e. same sysOID in different subdrivers), - there is a counter matching OID (generally using the model OID). - However, the matching was causing a crash of snmp-ups in case where - it was not the right MIB mapping and the OID for model entry was - not available - -2017-01-27 Steven Bell - - * docs/man/upscli_connect.txt, docs/nut.dict: Fixed issues with - documentation for automated spellcheck during CI check. - -2017-01-27 Jim Klimov - - * docs/nut.dict: docs/nut.dict : sorted to facilitate further - maintenance - -2017-01-27 Arnaud Quette - - * Makefile.am, data/Makefile.am, data/cmdvartab: Integrate cmdvartab - to the spellcheck target This also includes 2 spelling fixes - -2017-01-27 Jim Klimov - - * NEWS, docs/nut.dict: Spellcheck : Fixed typo in Tore O*r*petveit's - name - * README: README : embed a Travis status image link for NUT Master - branch - * Makefile.am, docs/.gitignore, docs/Makefile.am, - docs/man/Makefile.am: Spellcheck : add a recipe to keep nut.dict - sorted so git diffs are clearer - * Makefile.am: Makefile.am : when calling spellcheck or spellcheck- - interactive for several subdirs, do not stop after the first failed - sub-make - -2017-01-27 Steven Bell - - * docs/man/upscli_add_host_cert.txt, docs/man/upscli_connect.txt, - docs/man/upscli_init.txt: Updated and corrected documentation. - -2017-01-27 Arnaud Quette - - * drivers/Makefile.am, drivers/eaton-ats16-mib.c, drivers/eaton- - ats16-mib.h, drivers/snmp-ups.c: snmp-ups: rename Eaton ATS16 - resources Rename the subdriver files along with the structure and - entries, to make a clear difference with the newly added - eaton_ats30. This completes the previous commit, where some files - was erroneously committed - * drivers/{eaton-ats-mib.c => eaton-ats16-mib.c}, drivers/{eaton-ats- - mib.h => eaton-ats16-mib.h}, drivers/eaton-ats30-mib.c: Fix - unterminated comment, from previous commit - * tools/nut-scanner/scan_snmp.c: nut-scanner: force numeric - resolution of OIDs As done in snmp-ups, force the numeric - resolution of OIDs, to ensure correct OID matching in all cases - * drivers/snmp-ups.c: Only free variable when needed in - su_setvar/su_setOID Previously, we tried to free temporary - pointers in all cases. However, this pointer may ever point at the - static structure, in case we do not need to instantiate variable - (outlet.* collection), and which causes a crash of the driver - * drivers/eaton-ats30-mib.c: Add a comment on the unused OIDs - * drivers/snmp-ups.c: Fix spacing - * drivers/eaton-ats30-mib.c, drivers/eaton-ats30-mib.h: Fix legal - information - -2017-01-26 Tomas Halman - - * drivers/Makefile.am, drivers/eaton-ats30-mib.c, drivers/eaton- - ats30-mib.h, drivers/snmp-ups.c: snmp-ups: support Eaton Automatic - Transfer Switch ATS30 ATS30 MIB differs from previously integrated - EATON ATS driver. - -2016-09-14 Jim Klimov - - * common/common.c: common.c : revised upsdebugx() and upslogx() calls - to not trail an extra newline - * common/common.c, configure.ac: Add support for system library - directories with names based on short target/build/host OS spec too - -2017-01-24 Jim Klimov - - * common/common.c, configure.ac: Add support for system library - directories with names based on target/build/host OS spec (for GCC - at least) - -2016-09-14 Jim Klimov - - * common/common.c: common.c : added logging and small optimizations - during get_libname() - * common/common.c: common.c : add /usr/local/lib64 to search path - -2017-01-19 Jim Klimov - - * tools/nut-scanner/nutscan-init.c: nutscan-init.c : We can also use - libusb-compat from newer libusb-1.0 releases (issue #361) - -2016-09-14 Jim Klimov - - * tools/nut-scanner/nutscan-init.c: nut-scanner : support libneon- - gnutls.so as an alternative name - -2016-07-12 Carlos Dominguez - - * common/common.c, include/common.h, tools/nut-scanner/nutscan- - init.c: Arnaud's patch applied, dynamic library bug fixed, tested! - -2016-07-04 Arnaud Quette - - * common/common.c, include/common.h, tools/nut-scanner/nutscan- - init.c: Move get_libname() to common This function, originally - created for nut-scanner, to be able to lookup for libraries loaded - using libtool loader, is now also useful for the DMF support. This - last loads libneon at runtime, to load DMF structure (including the - one for nut-scanner) and unload it once the file were read - -2017-01-23 Jim Klimov - - * drivers/mge-hid.c, drivers/nutdrv_qx.h, - drivers/nutdrv_qx_bestups.c: Fix the non-ASCII quote character away - from C sources - * docs/daisychain.txt, docs/man/al175.txt, docs/man/apcsmart.txt, - docs/man/apcupsd-ups.txt, docs/man/bcmxcp_usb.txt, - docs/man/bestups.txt, docs/man/blazer-common.txt, - docs/man/clone.txt, docs/man/libnutclient_commands.txt, - docs/man/libnutclient_misc.txt, docs/man/libnutclient_tcp.txt, - docs/man/libnutclient_variables.txt, docs/man/macosx-ups.txt, - docs/man/mge-shut.txt, docs/man/nut-scanner.txt, - docs/man/nutdrv_qx.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_get_serial_ports_list.txt, docs/man/nutupsdrv.txt, - docs/man/skel.txt, docs/man/snmp-ups.txt, docs/man/solis.txt, - docs/man/ups.conf.txt, docs/man/upscode2.txt, - docs/man/upsd.conf.txt, docs/man/upsd.txt, - docs/man/upsmon.conf.txt, docs/man/upsmon.txt, docs/man/upsrw.txt, - docs/man/upssched.conf.txt, docs/man/upsstats.html.txt, - docs/man/usbhid-ups.txt, docs/nut.dict: Update nut.dict and manpage - sources after initial spellchecking integration - * Makefile.am, ci_build.sh, docs/man/Makefile.am: - docs/man/Makefile.am : track all manpage sources in a separate - variable and use that for spellchecker - * docs/Makefile.am: docs/Makefile.am : add daisychain to ALL_TXT_SRC - * docs/Makefile.am: docs/Makefile.am : revised TODOs for spellchecker - -2017-01-20 Jim Klimov - - * .travis.yml: Enable valgrind in travis matrix - -2017-01-21 Jim Klimov - - * indent.sh: Initial commit of indent.sh helper - -2017-01-20 Jim Klimov - - * Makefile.am, tests/Makefile.am: VALGRIND: abuse distcheck to run - tested programs in debug mode under valgrind - * configure.ac: valgrind config fix - * ci_build.sh: Travis : make spellcheck failures fatal now - * docs/nut.dict: docs/nut.dict : add another word missed by earlier - private dict - * docs/nut.dict: docs/nut.dict : try to enable UTF8 contributor names - * docs/Makefile.am: docs/Makefile.am : try to enable UTF8 in args and - env - * .travis.yml, ci_build.sh: Travis : enable i2c tests - * .travis.yml: .travis.yml : rearrange apt deps and special case for - doc/spell tests in the matrix - * .travis.yml, ci_build.sh: Travis: port the test-script structure - from DMF brach (better case than if) - -2017-01-19 Jim Klimov - - * docs/nut.dict: docs/nut.dict : add some words not in dictionaries - available to Travis CI; add some developer names to the dictionary - * NEWS, TODO, UPGRADING, common/parseconf.c, docs/FAQ.txt, - docs/acknowledgements.txt, docs/cables/sms.txt, docs/config- - notes.txt, docs/download.txt, docs/hid-subdrivers.txt, docs/new- - drivers.txt, docs/nut-qa.txt, docs/nut.dict, docs/nutdrv_qx- - subdrivers.txt, docs/packager-guide.txt, docs/snmp-subdrivers.txt, - lib/README, scripts/augeas/README: Spellchecker : Fix or rephrase - issues found by spellchecker, and update the NUT custom dictionary - * docs/developers.txt: docs/developers.txt : fix non-ASCII tick - character - * docs/acknowledgements.txt, docs/packager-guide.txt: Added myself to - docs/acknowledgements.txt docs/packager-guide.txt - * docs/nut-qa.txt: docs/nut-qa.txt : rearranged the paragraph with CI - (to fit in 80 cols) and added link to Travis CI dashboard for NUT - branches - * docs/packager-guide.txt: docs/packager-guide.txt : rearranged the - paragraph with recommended package description (to fit in 80 cols) - * docs/developers.txt: docs/developers.txt : mention the recently - added Travis CI integration - * docs/developers.txt: docs/developers.txt : reformat the paragraph - on distcheck-light, and mention the recently added option to skip - building docs - * Makefile.am: Makefile.am : allow to call from workspace root the - docs/Makefile for targets: spellcheck spellcheck-interactive doc - -2017-01-19 Jim Klimov - - * docs/Makefile.am: docs/Makefile.am : parametrize aspell common - args; add togglable debugging of aspell setup - -2017-01-19 Jim Klimov - - * ci_build.sh, docs/Makefile.am: docs/Makefile.am + Travis : support - a SPELLCHECK_ERROR_FATAL toggle, and use it from Travis for now * - docs/Makefile.am : also report if the build succeeds despite - spellcheck errors (due to this setting) - * docs/Makefile.am: docs/Makefile.am : name the en lang explicitly - * docs/Makefile.am: docs/Makefile.am : big reorganization of - spellcheck * spellcheck targets should fail the build not only if - the last document failed the test * make sure to use custom - spellcheck dictionary from NUT source tree; revise erroring out if - automatic aspell finds issues * also set LC_ALL=C for aspell * - revised spellcheck failure message to suggest next steps for the - human * comment the spellcheck test; use more portable shell test - (instead of bracket); do not fail on empty aspell outputs - -2016-09-07 Jim Klimov - - * configure.ac: configure.ac : add potential usage of valgrind, - optional and configurable/detectable - -2017-01-19 Jim Klimov - - * .travis.yml, ci_build.sh: Travis CI should call spellcheck as a - separate spellchecking job (parallelize, optimize for speed, - separate error causes/reports) - * .travis.yml: .travis.yml : add libcppunit to travis env, so tests - in NUT will be enabled - -2017-01-11 Jim Klimov - - * .travis.yml: .travis.yml : drop comment for PR #354 - -2016-11-21 Jim Klimov - - * common/snprintf.c: common/snprintf.c : avoid a few compilation - warnings and a possible crash due to padded ints in variadic - functions - * common/snprintf.c, configure.ac: common/snprintf.c and configure.ac - : avoid a few compilation warnings - -2017-01-06 Daniele Pezzini - - * common/state.c: state: consider also ST_FLAG_NUMBER flags - * drivers/dstate.c: dstate: report ST_FLAG_NUMBERs also in response - to a DUMPALL request - * drivers/dstate.c: dstate: when dealing with ranges, don't lose - already-set flags Ranges are now explicitly flagged as numbers, - but the use of dstate_setflags() means that we substitute any - previously-set flag with the ones we pass to that function, losing, - for example, an already-set r/w status, with the result of making - an affected var unchangeable. Use instead the newly added - dstate_addflags() function, which preserves already-set flags. - * drivers/dstate.c, drivers/dstate.h: dstate: add a couple of - functions to ease the manipulation of flags - -2017-01-10 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix device.type setting in daisychain - mode device.type was not set due to a coding error, but pushed to - device.model (reported by Evgeny "Jim" Klimov from Eaton) - * drivers/main.c: drivers: set the default device.type even earlier - device.type default setting to "ups" has to be done prior to the - initups() call, otherwise some devices (such as daisychained PDUs) - will not be able to override it - -2017-01-04 Jim Klimov - - * ci_build.sh: ci_build.sh : list contents of installation directory - * ci_build.sh: ci_build.sh : fix installation directories for /etc - and udev, devd and hotplug (not hardcoded root paths) - * ci_build.sh: ci_build.sh : list contents of installation directory - * ci_build.sh: ci_build.sh : fix installation directories for /etc - and udev, devd and hotplug (not hardcoded root paths) - * .travis.yml, ci_build.sh: Travis : take advantage of "--with- - doc=skip" support recently added in configure and Makefiles - -2016-09-13 Jim Klimov - - * configure.ac, docs/man/Makefile.am: configure.ac, - docs/man/Makefile.am - support SKIP_MANS as an explicit non-fatal - situation - -2017-01-04 Jim Klimov - - * ci_build.sh: ci_build.sh : comment about missing i2c - * ci_build.sh: ci_build.sh : generalize the skipping of distcheck and - make it more comprehensible in script code - * .travis.yml: .travis.yml : include the headers needed for i2c - * .travis.yml: .travis.yml : use specific libgd - * .travis.yml: .travis.yml : add graphics pkgs for CGI builds - * ci_build.sh: .travis.yml / ci_build.sh : speed up with parallel - build (fall back to sequential if this fails) - * .travis.yml, ci_build.sh: .travis.yml / ci_build.sh : current NUT - does not skip docs safely, so enable just manpages in default build - * .travis.yml: .travis.yml : add libipmimonitoring packages too - * .travis.yml: .travis.yml : older freeipmi in Travis Ubuntu 12.04.5 - * ci_build.sh: ci_build.sh : fix the doc-skipping option - * .travis.yml: .travis.yml : apparently, libfreeipmi16 pkg requires - extra invitation - * .travis.yml, ci_build.sh: Travis : require docs tools only for - "default-withdoc" builds; change "default" to skip the docs (and - try to pass distcheck) - * .travis.yml: .travis.yml : only define default-alldrv once - * .travis.yml, ci_build.sh: Initial integration of a travis matrix - build (different scenarios) - * .gitignore, .travis.yml, ci_build.sh, docs/Makefile.am: Initial - commits of config and script files for Travis CI automatic - validation (simply do a compile and distcheck) - -2017-01-04 Arnaud Quette - - * m4/nut_check_asciidoc.m4: Minor typo fixes - -2017-01-04 Jim Klimov - - * configure.ac: configure.ac : switch default option to "--with- - doc=man=auto" so ordinary builds succeed by default on any system - * configure.ac: configure.ac alias - * configure.ac: configure.ac : add the "--with-docs" as alias to "-- - with-doc" - * configure.ac, m4/ax_compare_version.m4, m4/nut_check_asciidoc.m4: - Refactor nut_check_asciidoc.m4 and configure.ac to check all doc- - tools in one place (and also only once), and fix comments and some - coding issues - -2016-12-29 Charles Lepple - - * docs/new-drivers.txt: docs: reword/reformat new-drivers.txt - Distinguish HID PDC from Q*, etc. - -2016-11-29 Florian Bruhin - - * tools/gitlog2changelog.py: Fix gitlog2changelog.py on python 3 - * scripts/augeas/gen-nutupsconf-aug.py: Make gen-nutupsconf-aug.py - work with Python 3 This makes the script work with Python 2.6+. - Fixes #345. - -2016-11-28 Daniele Pezzini - - * configure.ac: configure: fix checks for a2x-built docs Since, - starting from commit d4a55ed, we now check that documents are - buildable in an 'external' directory, we need to call a2x with '-- - destination-dir' pointing to that directory, otherwise a2x will put - the generated documents in the same directory where source files - are and then testing the non-existent files under our 'external' - directory will always fail, meaning that we will never pass these - checks. - -2016-11-21 Jim Klimov - - * docs/Makefile.am: EXTRA_DIST the docs/asciidoc.txt as used in - configure script checks - * configure.ac: configure.ac : avoid nonportable "mktemp --tmpdir" - option - -2016-11-17 Michal Soltys - - * autogen.sh: autogen.sh: minor script fixup In case any of the perl - / python parts fails (for example if system default is python3, the - script will complain about print), cd ../.. won't be executed. - Furthermore - if any of those scripts fail, there's no point in - continuing as both files are mandatory. - * docs/man/apcsmart.txt, drivers/apcsmart.c, drivers/apcsmart.h: - apcsmart: CS "hack" updates This patch adds cshdelay option (with - default set to 3.5s) between "simulate power failure" and "soft - hibernate" commands. - -2016-11-16 Arnaud Quette - - * drivers/mge-hid.c: sbhid-ups: fix Eaton/MGE mapping for beeper - handling Two HID Paths exists for handling beeper status and - commands. However, only one historic was implement, which was not - actually suitable for issuing the commands on newer units (such as - 3S, 5P*, ...) (reported by Sergey Talchuk) Closes: - https://github.com/networkupstools/nut/issues/9 - * drivers/usbhid-ups.c: usbhid-ups: adjust debuging info - -2016-11-09 Charles Lepple - - * docs/nut-names.txt, drivers/libusb0.c, drivers/libusb1.c: Add - `driver.version.usb` variable Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-11-03 Charles Lepple - - * data/driver.list.in: HCL: CP1500EPFCLCD Source: - https://github.com/networkupstools/nut/issues/337 - -2016-11-02 Charles Lepple + * [r2318] drivers, drivers/Makefile.am, drivers/apc-mib.c, + drivers/apc-mib.h, drivers/apccmib.h, drivers/baytech-mib.c, + drivers/baytech-mib.h, drivers/baytechmib.h, + drivers/compaq-mib.c, drivers/compaq-mib.h, + drivers/cpqpowermib.h, drivers/eaton-aphel-mib.h, + drivers/eaton-mib.c, drivers/eaton-mib.h, drivers/ietf-mib.c, + drivers/ietf-mib.h, drivers/ietfmib.h, drivers/mge-mib.c, + drivers/mge-mib.h, drivers/mgemib.h, drivers/netvision-mib.c, + drivers/netvision-mib.h, drivers/netvisionmib.h, + drivers/powerware-mib.c, drivers/powerware-mib.h, + drivers/pwmib.h, drivers/raritan-mib.h, + drivers/raritan-pdu-mib.c, drivers/raritan-pdu-mib.h, + drivers/snmp-ups.c, drivers/snmp-ups.h: Extract subdriver info + from main driver body into separate modules. This prevents + namespace conflicts and ensures that changes in one subdriver + don't lead to surprise changes in others. + + It also allows to use a single mapping file to be used in several + subdrivers by specifying a different entry point (which doesn't + work if everything is in one module). + +2010-02-07 Charles Lepple + + * [r2317] drivers/apcsmart.c, drivers/apcsmart.h: apcsmart: Add + input.transfer.reason + + Contributed by Michael Haardt: + http://article.gmane.org/gmane.comp.monitoring.nut.devel/4498 + +2010-02-05 Arjen de Korte + + * [r2316] drivers/cpqpowermib.h: Could this be a Powerware OEM + device? + +2010-02-04 Arjen de Korte + + * [r2315] drivers/cpqpowermib.h: Based on patch from Philip Ward + [http://lists.alioth.debian.org/pipermail/nut-upsdev/2010-February/004509.html] + +2010-02-01 Arjen de Korte + + * [r2305] clients/upsimage.c, common/strerror.c, drivers/bcmxcp.c, + drivers/main-hal.c, drivers/powerman-pdu.c: Prefer snprintf over + sprintf to prevent overflowing buffers (also removes trailing + whitespace) + * [r2303] drivers/Makefile.am, drivers/cpqpowermib.h, + drivers/snmp-ups.c, man/snmp-ups.8: + +2010-01-31 Charles Lepple + + * [r2297] drivers/tripplite_usb.c: Revert trunk commit r2294, which + was meant for a branch. + * [r2296] drivers/clone-outlet.c: clone-outlet.c: remove executable + bit + * [r2294] drivers/tripplite_usb.c: tripplite_usb: initial changes + to test protocol 3004 + +2010-01-30 Arnaud Quette + + * [r2286] tools/Makefile.am, tools/device-recorder.sh: Create a + script to record device running sequence and dump it in a .seq + format. + The .seq file can then be used by dummy-ups to replay the + sequence. + +2010-01-28 Charles Lepple + + * [r2282] m4/nut_report_feature.m4: Another attempt to fix the + feature report on OS X. + +2010-01-27 Arjen de Korte + + * [r2281] m4/nut_report_feature.m4: Attempt to get rid of spurious + '-n' on MacOSX-10.5 BuildBot + * [r2280] m4/nut_check_libhal.m4: Prefer to use 'test' over '[ ]' + (on many shells, this first a built-in function while the second + is a symbolic link to 'test') + +2010-01-27 Charles Lepple + + * [r2279] m4/nut_check_libhal.m4: Remove fallback HAL information + path, and remove extra parentheses. + +2010-01-25 Arjen de Korte + + * [r2278] drivers/megatec.c: Don't check reliability of connection + at driver startup. This confuses users and really serves no + purpose for normal use. In case the connection is unreliable, it + should ultimately be the decision of the user whether or not it + is acceptable (not the driver). + * [r2277] drivers/apc-hid.c, drivers/belkin-hid.c, + drivers/cps-hid.c, drivers/explore-hid.c, drivers/liebert-hid.c, + drivers/mge-hid.c, drivers/powercom-hid.c, + drivers/tripplite-hid.c, include/common.h: The "config.h" header + should be the first included, since it contains the _GNU_SOURCE + declaration (enables Posix extensions to C) + * [r2276] configure.in: Add AC_USE_SYSTEM_EXTENSIONS to use + features of Posix that are extensions to C (requires Autoconf + 2.60 or better) + * [r2275] common/common.c: Fix compiler warning on MacOSX-10.5 + * [r2274] common/common.c: Fix compiler warning on FreeBSD + * [r2273] configure.in: + * [r2272] configure.in, drivers/mge-hid.c: Check for presence of + strptime() before using it + +2010-01-24 Arjen de Korte + + * [r2271] configure.in, drivers/mge-hid.c: The previous patch was a + resounding failure (reverting back to setting _XOPEN_SOURCE in + one specific source file instead) + * [r2270] configure.in: Request SUSv2 compliance for all sources + (experimental) + * [r2269] drivers/mge-hid.c: _XOPEN_SOURCE seems to break on + FreeBSD + * [r2268] drivers/mge-xml.c: Fix compiler warning + +2010-01-24 Charles Lepple + + * [r2267] drivers/mge-hid.c: Define _XOPEN_SOURCE=500 for + strptime() prototype in glibc2 + +2010-01-24 Arjen de Korte + + * [r2266] drivers/mge-hid.c: Removing stuff that was added to fix + strptime on Debian Etch (incompatible with FreeBSD) + +2010-01-23 Arjen de Korte + + * [r2265] drivers/mge-hid.c: Fourth attempt of fixing strptime() + declaration missing on Debian + * [r2264] drivers/mge-hid.c: Third attempt of fixing strptime() + declaration missing on Debian + * [r2263] drivers/mge-hid.c: Second attempt of fixing strptime() + declaration missing on Debian + * [r2262] drivers/apc-hid.c, drivers/belkin-hid.c, + drivers/cps-hid.c, drivers/explore-hid.c, drivers/liebert-hid.c, + drivers/mge-hid.c, drivers/powercom-hid.c, + drivers/tripplite-hid.c, scripts/subdriver/path-to-subdriver.sh: + Remove redundant #include's (are being dealt with by main.h) + * [r2261] data/cmdvartab: Add descriptions for + 'ups.timer.(start|reboot|shutdown)' variables + * [r2260] drivers/mge-hid.c: Need to define _XOPEN_SOURCE for + strptime() prototype in glibc2 + +2010-01-22 Arjen de Korte + + * [r2257] drivers/mge-shut.c, drivers/mge-shut.h: Change naming of + ups.delay.* variables to ups.timer.*, since writing these values + immediately starts the countdown (and not when a shutdown command + is issued) + * [r2256] drivers/powercom-hid.c: Fallback to stored value of + 'ups.delay.(start|shutdown)' only if no parameter is given (to + fix 'load.on' command) + +2010-01-21 Arjen de Korte + + * [r2255] drivers/powercom-hid.c: Fix beeper.status and add + load.on.delay command (to allow starting up with delay when UPS + is shutdown) + +2010-01-19 Arjen de Korte + + * [r2254] data/driver.list, drivers, drivers/Makefile.am, + drivers/liebertgxt2.c, man/Makefile.am, man/liebertgxt2.8: Based + on the patch from the below message (needs to be tested) + + http://lists.alioth.debian.org/pipermail/nut-upsdev/2010-January/004391.html + * [r2253] drivers/powercom-hid.c: Add + 'beeper.(enable|disable|mute)' instcmd's + +2010-01-17 Charles Lepple + + * [r2250] drivers/tripplite_usb.c: tripplite_usb: Detect protocol + before using tl_model + + Reported by Chase Wallis. + +2010-01-17 Arjen de Korte + + * [r2248] man/blazer.8: Add 'ippon' subdriver to man page + * [r2247] drivers/blazer_usb.c: ETIME is not defined on FreeBSD, so + make this test conditional (also fixes wrong sign) + +2010-01-13 Arjen de Korte + + * [r2244] drivers/blazer_usb.c: Close device handle after + usb_reset() is called and reconnect + * [r2243] drivers/blazer_usb.c: Attempt to clear stalled devices by + sending them an usb_reset() command + +2010-01-13 Charles Lepple + + * [r2242] drivers/tripplite_usb.c: tripplite_usb: don't reset + watchdog on SMARTPRO models + + Patch by Chase Wallis: + http://article.gmane.org/gmane.comp.monitoring.nut.devel/4376 + +2010-01-12 Arjen de Korte + + * [r2241] drivers/blazer_usb.c: Fix bug in ippon subdriver + +2010-01-07 Arjen de Korte + + * [r2240] drivers/blazer_usb.c: Fix minor bug in debug code + * [r2239] drivers/blazer_usb.c: Add experimental 'ippon' subdriver + to communicate with UPS devices of the same name + +2010-01-06 Arjen de Korte + + * [r2238] drivers/blazer_usb.c: Clear potential stall condition + while flushing interrupt pipe + * [r2237] drivers/libusb.c, drivers/usbhid-ups.c: Reconnect if + usb_clear_halt() is not implemented (older libusb on *BSD + systems) so that we don't get stuck with a stalled interrupt + endpoint (correction of 2235) + * [r2236] drivers/usbhid-ups.c: EPIPE should not result in + reconnecting since we're reading from a control endpoint here, + not an interrupt endpoint (where this would be an appropriate + action after attempting to fix the stall condition through + usb_clear_halt() first) + * [r2235] drivers/usbhid-ups.c: Reconnect if usb_clear_halt() is + not implemented (older libusb on *BSD systems) so that we don't + get stuck with a stalled interrupt endpoint + +2010-01-05 Arjen de Korte + + * [r2234] drivers/libusb.c: Don't ignore persistent "Broken pipe" + on stalled interrupt endpoint (only ignore them on control + endpoints) + * [r2233] drivers/libusb.c: Clear stall condition on interrupt + endpoint if needed (since we no longer reconnect, this may be + needed) + * [r2232] drivers/libusb.c, drivers/usbhid-ups.c: Change libusb.c + error handling. Most important (functional) change is that + "Broken pipe" is no longer considered a reason to reconnect + (fixes MGE/Eaton Ellipse series UPS stability problems). + +2010-01-04 Arjen de Korte + + * [r2231] drivers/libusb.c: Fix previous patch + * [r2230] drivers/libusb.c: Log message to syslog when + usb_get/set_* operation fails (except timeouts) at LOG_DEBUG to + make sure we have something to work with for debugging frequent + disconnects + +2010-01-02 Arjen de Korte + + * [r2224] m4/nut_check_libneon.m4: Fix output when library is not + installed + * [r2223] m4/nut_check_libhal.m4: Don't wast effort trying to + detect HAL stuff if we already know it is not available + * [r2222] m4/nut_check_libgd.m4: Remove braces around test + conditions + * [r2221] m4/nut_check_libpowerman.m4, m4/nut_check_libssl.m4: + Remove braces around test conditions + * [r2220] m4/nut_check_libusb.m4: Fix one "==" that was left behind + (and slightly improve message when pkg-config is not available) + +2010-01-01 Charles Lepple + + * [r2219] m4/nut_check_libusb.m4: Remove extra parentheses from + libusb test. + + Also change '==' to '=' for string equality test. + +2009-12-31 Arjen de Korte + + * [r2218] m4/nut_check_libusb.m4: Add pkg-config as method to + retrieve CFLAGS and LDFLAGS (but fall back to libusb-config) + +2009-12-30 Arjen de Korte + + * [r2217] drivers/libusb.c: Fix previous patch (failed to remove + closing #endif statement) + * [r2216] drivers/libusb.c, drivers/usbhid-ups.c: Enable the use of + the interrupt pipe on Solaris (for drivers that require this), + but disable it on the usbhid-ups driver (for which it is + optional). + * [r2215] drivers/powercom-hid.c: Honor 'offdelay' configuration + parameter and allow changing the 'ups.delay.shutdown' variable at + runtime + +2009-12-28 Arjen de Korte + + * [r2214] data/driver.list: Add new PowerCOM devices with HID PDC + interface to list of supported models + * [r2213] drivers/powercom-hid.c: The PowerCOM subdriver has now + reached a state where it is useable. Commands have been tested on + a BNT-500AP. + * [r2212] drivers/usbhid-ups.c: The composite commands + 'shutdown.return' and 'shutdown.stayoff' require 'load.on.delay' + and 'load.off.delay' (not 'ups.delay.start' and + 'ups.delay.shutdown'). + +2009-12-27 Charles Lepple + + * [r2203] scripts/hal/Makefile.am: Hard-code source file in + scripts/hal + +2009-12-26 Arjen de Korte + + * [r2202] m4/nut_check_libhal.m4: Revert previous patch that breaks + on OpenSUSE (and add HAL_CALLOUTS_PATH instead of relying on the + default) + * [r2201] m4/nut_check_libhal.m4: Use ${datarootdir} instead of + /usr/share or /usr/local/share (we check for the presence of a + subdirectory, so the chance of a false positive is low) + * [r2200] m4/nut_check_libneon.m4: Only check for optional + functions if we know library is available + * [r2199] m4/nut_check_libgd.m4: Simplify the --with-gd-includes + and --with-gd-libs processing + +2009-12-25 Arjen de Korte + + * [r2198] configure.in: FreeBSD requires both and + so explicitly use only these two headers to check for + availability of uu_lock + * [r2197] m4/nut_check_libusb.m4: Check for presence of 'usb.h' + (not 'libusb.h', which is what we use internally) + +2009-12-24 Charles Lepple + + * [r2196] m4/nut_check_libhal.m4: Test for FDI files in /usr/local + as well as /usr + + This should fix HAL-enabled builds on FreeBSD. + +2009-12-24 Arjen de Korte + + * [r2195] m4/nut_check_libhal.m4: If we can't detect the + HAL_FDI_PATH automatically, set it to /dev/null and emit warning + * [r2194] m4/nut_check_libusb.m4: Fix missing default -lusb library + and improve comments during detection + * [r2193] m4/nut_check_libusb.m4: Work around missing libusb-config + on FreeBSD 8 by falling back to defaults for CFLAGS and LDFLAGS + * [r2192] configure.in: Try to workaround some FreeBSD bugs + * [r2191] drivers/powercom-hid.c: Updated HID to NUT mappings (work + in progress and still quite broken, do not run on production + systems!) + +2009-12-22 Arjen de Korte + + * [r2190] drivers/libhid.c: Add debug information for input reports + that are not in the report descriptor + +2009-12-21 Arjen de Korte + + * [r2189] drivers/libhid.c: Use hexadecimal report numbers in debug + messages (to be consistent throughout the code) + +2009-12-20 Arjen de Korte + + * [r2188] m4/nut_check_libwrap.m4: Small improvement to better + mimic the behavior of AC_SEARCH_LIBS (by checking if we need to + add -lwrap before adding it to LIBS) + +2009-12-19 Arjen de Korte + + * [r2187] m4/ax_create_stdint_h.m4: Update location of Autoconf + Archive in header (so that we can check for modifications) + * [r2186] m4/nut_check_libgd.m4: AC_SEARCH_LIBS puts the result in + LIB, so we need to add that to the LIBGD_LDFLAGS (otherwise, this + will be part of the global LIBS that are used) + +2009-12-18 Arjen de Korte + + * [r2185] m4/nut_check_libgd.m4: Apparently, gdlib-config sometimes + fails to mention '-lgd' when asked for the LDFLAGS, so we need to + test once again if we need to include this library. + * [r2184] common/snprintf.c, configure.in: Instead of trying to + figure out if 'long long' is supported through AC_TRY_RUN + (obsolete), use AC_TYPE_LONG_LONG_INT (and AC_TYPE_LONG_DOUBLE). + Since this is only used by common/snprintf.c, only do this if + snprintf isn't a build-in function (which means probably never). + * [r2183] configure.in: Don't run preprocessor tests on + AC_CHECK_HEADERS (so CPPFLAGS is no longer needed). Replace shell + scripting by autoconf macros. + * [r2182] m4/nut_check_libgd.m4, m4/nut_check_libnetsnmp.m4, + m4/nut_check_libwrap.m4: Don't run preprocessor tests on + AC_CHECK_HEADERS (so CPPFLAGS is no longer needed). + * [r2181] m4/nut_check_libhal.m4: Don't run preprocessor tests on + AC_CHECK_HEADERS (so CPPFLAGS is no longer needed). Reformatted + macro (no functional changes). + * [r2180] m4/nut_check_libwrap.m4: Prefer AC_CHECK_HEADERS over + AC_CHECK_HEADER + * [r2179] m4/nut_check_libgd.m4: Set CPPFLAGS in case autoconf only + runs the preprocessor for AC_CHECK_HEADERS (which doesn't use + CFLAGS) + +2009-12-17 Arjen de Korte + + * [r2178] m4/nut_check_libnetsnmp.m4: Set CPPFLAGS in case autoconf + only runs the preprocessor (which doesn't use CFLAGS) + * [r2177] m4/nut_check_libneon.m4: Cleanup autoconf macro + * [r2176] clients/upsimage.c: Remove redundant test (this is + already handled by autoconf) + * [r2175] Makefile.am: + * [r2174] configure.in: Keep defaults and checks together + * [r2173] drivers/bcmxcp.c: Automatic variables must have a length + that can be computed at compile time rather than runtime. GCC + will happily accept this C++ construction here, but this is not + C. + + Follow the same principle as used elsewhere in the code, by hard + coding this to PW_ANSWER_MAX_SIZE, the maximum size of replies we + expect. + +2009-12-16 Arjen de Korte + + * [r2172] m4/nut_check_libgd.m4: Check for all GD specific header + files while we're at it + * [r2171] clients/upsimage.c: The HAVE_GD_H should not be used + here, it is better to check for HAVE_LIBGD since that one is only + set if both the header file and the gd library are found (and not + just the first). + * [r2170] m4/nut_check_libnetsnmp.m4: Cleanup autoconf macro + * [r2169] m4/nut_check_libgd.m4: Cleanup GD autoconf stuff (also + fixes double -lgd linker flag) + * [r2168] configure.in, m4/nut_check_ipv6.m4, + m4/nut_check_libssl.m4, m4/nut_check_libwrap.m4: Cleanup some + autoconf macros + +2009-12-15 Arjen de Korte + + * [r2167] m4/nut_check_libnetsnmp.m4: Use AC_CHECK_HEADER to check + for required headers. + * [r2166] m4/nut_check_libwrap.m4: Fix autoconf magic for Solaris. + Apparently, allow/deny_severity are not defined as weak symbols, + so autoconf fails with undefined symbols when checking for the + library through AC_SEARCH_LIBS. + +2009-12-15 Charles Lepple + + * [r2165] include/common.h: Fix __attribute__ in common.h + + Patch provided by Tim Rice + http://lists.alioth.debian.org/pipermail/nut-upsdev/2009-December/004288.html - * data/driver.list.in: HCL: Eaton 5E2200VA Reference: - https://github.com/networkupstools/nut/issues/335 - * data/driver.list.in: HCL: Eaton Ellipse PRO 650 VA (USB) supported - by usbhid-ups Closes: - https://github.com/networkupstools/nut/issues/255 +2009-12-10 Arnaud Quette -2016-10-21 Charles Lepple + * [r2163] drivers/mge-utalk.c: complete r2151 with the + implementation details that were removed from the new mge-utalk + man page. - * docs/download.txt: download.txt: Add Slackware link +2009-12-09 Arnaud Quette + + * [r2161] drivers/mge-hid.c: complete alarms and status handling + for Eaton / MGE / Dell. + +2009-12-04 Arnaud Quette + + * [r2153] m4/nut_check_libssl.m4: fix a wrong pkg-config call + parameter, that resulted in using pkg-config's own version + instead of OpenSSL's one. + +2009-12-02 Arnaud Quette + + * [r2148] drivers/libhid.c: skip reports 254/255 for Eaton / MGE / + Dell due to special handling needs + +2009-11-30 Arjen de Korte + + * [r2145] man/upsd.8, man/upsd.conf.5, man/upsd.users.5: Add + upgrading notes for versions earlier than nut-2.4.0 + * [r2143] drivers/usbhid-ups.c, drivers/usbhid-ups.h: Use contents + of interrupt report. In case these are broken, set 'pollonly' + flag in ups.conf or use_interrupt_pipe = FALSE in subdriver (when + device matches!) + +2009-11-26 Arjen de Korte + + * [r2141] man/usbhid-ups.8: Document the 'pollonly' flag + +2009-11-25 Arjen de Korte + + * [r2140] drivers/microdowell.c: Fix compiler warning (dead code, + no functional change) + * [r2139] drivers/usbhid-ups.c: Fix compiler warning + * [r2138] drivers/usbhid-ups.c: Add some USB error codes observed + in the field for possible future handling (and the comments from + the headerfiles where these are defined) -2016-10-12 Kirill Ovchinnikov +2009-11-24 Arjen de Korte - * drivers/apc-mib.c, drivers/snmp-ups.c: apc-mib.c modified for - ups.delay.{start,shutdown} to include SU_TYPE_TIME + * [r2133] drivers/mge-hid.c: We already know if the value to the + reverse conversion functions should be a time or date value, so + there is no need to guess it. -2016-10-11 Yann E. MORIN +2009-11-23 Arnaud Quette - * clients/upsclient.c: client/ups: add missing include struct - timeval is declared in sys/time.h, so we need to #include it. + * [r2128] drivers/mge-hid.c: - fix mge_time_date_conversion_nuf() + to actually use the input value + - force ignoring the DST offset for the output value -2016-10-11 Arnaud Quette +2009-11-19 Arnaud Quette - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c: - Remove unimplement nut-scanner option The -F --fingerprints-file - option, used to provide an additional list of SNMP fingerprints, - was never implemented, but made its way into the code. Remove it, - at least while waiting for an actual implementation - * docs/man/nut-scanner.txt: Update nut-scanner manual page - * tools/nut-scanner/nutscan-device.c, tools/nut- - scanner/scan_xml_http.c: Fix c++ style comments + * [r2122] data/driver.list, drivers/libshut.c, man/mge-shut.8: Add + serial / SHUT support for the new Dell UPS range + - list all models in driver.list using newmge-shut, + - add "battery.runtime.elapsed" support, + - update mge-shut manual page and add an alias for newmge-shut. -2016-04-03 Alica +2009-11-19 Arjen de Korte - * conf/upsstats.html.sample: upsstats.html: Conform to HTML 4.01 - Strict Closes: https://github.com/networkupstools/nut/pull/278 - * conf/upsstats-single.html.sample: upsstats-single.html: Conform to - HTML 4.01 Strict + * [r2121] drivers/mge-hid.c: Prefer to use non-negated logic when + possible (also minimizes changes) -2016-10-05 Arnaud Quette +2009-11-19 Arnaud Quette - * common/common.c: Fix c++ style comments - * drivers/snmp-ups.c: Fix exit code for --list + * [r2119] data/driver.list, docs/new-names.txt, drivers/mge-hid.c, + man/usbhid-ups.8, scripts/dkp/95-devkit-power-hid.rules, + scripts/hal/ups-nut-device.fdi.in, + scripts/hotplug/libhid.usermap, scripts/udev/nut-usbups.rules.in: + Add USB support for the new Dell UPS range + - list all models in driver.list, + - add "battery.runtime.elapsed" in mge-hid.c and NUT namespace, + - adapt ups.model formating to Dell rules, + - update USB helper files, + - update usbhid-ups manual page. -2016-09-28 Jim Klimov +2009-11-18 Arjen de Korte - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, - tools/nut-scanner/scan_xml_http.c: nut-scanner : implement single- - IP and IP-range UDP NetXML device discovery - * tools/nut-scanner/scan_snmp.c: scan_xml_http.c : fix leading - whitespaces (SPACE vs TABs mixed in code) - * tools/nut-scanner/scan_snmp.c: scan_xml_http.c : replace some - fprintf with upsdebugx - * tools/nut-scanner/nut-scanner.c: nut-scanner.c : increased debug- - tracing messages of nut-scanner progress - * tools/nut-scanner/nut-scanner.c: nut-scanner.c : replaced printq() - with standard upsdebugx(), added "-D" option to increase debug - verbosity as common in NUT, moved the help text printout to its own - function + * [r2118] drivers/netxml-ups.c: Re-subscribe to NMC when it doesn't + send us alarm messages anymore -2016-09-27 Jim Klimov +2009-11-18 Arnaud Quette - * common/common.c, include/common.h: common.c/.h : simplify the - upsdebugx() enhancement (no need to fight with warnings/pragmas) + * [r2117] drivers/mge-xml.c: minor typo fix on comment -2016-09-26 Arnaud Quette +Mon Nov 16 01:57:23 UTC 2009 / Charles Lepple - * scripts/systemd/nut-server.service.in: systemd: add reload support - for nut-server / upsd Add ExecReload entry to execute a - configuration reload of upsd, using the available 'upsd -c reload' + - drivers/tripplite_usb.c: fix copy-n-paste error in load.on instcmd. -2016-09-25 Charles Lepple +Fri Oct 9 11:26:49 UTC 2009 / Arjen de Korte - * drivers/libusb1.c: libusb1: use return code from libusb_open() Per - , the handle is only populated when the return code - is 0. This fixes a crash during device detection where more than - one HID UPS is available, and the driver needs to skip the first - one. - -2016-09-21 Jim Klimov - - * include/common.h: common.h : rearranged the - ENABLE_WARNING/DISABLE_WARNING macro definitions so they are only - called for supported compilers and generate empty macros (no-op) - for others +- m4/nut_check_libssl.m4,nut_check_libusb.m4: show version information during + configuration -2016-09-20 Jim Klimov - - * common/common.c: common.c : move anti-warning macros out of the - function body, some compilers do not like that - -2016-09-19 Jim Klimov - - * tools/nut-scanner/scan_xml_http.c: scan_xml_http.c : do not suggest - NetXML support for ePDUs (almost exclusively they are XMLv4 and do - not work with current NUT) - -2016-09-18 Jim Klimov - - * common/common.c: common.c : in upsdebugx() added "[Dx]" prefix : do - not add it for level 0 - -2016-09-17 Jim Klimov - - * common/common.c, include/common.h: common.c : augment upsdebugx() - and upsdebug_with_errno() by prepending the debug-level to logged - messages - * common/common.c: common.c : fix whitespaces - -2016-09-17 Jim Klimov - - * configure.ac: configure.ac : do not fail configuration if a doctype - picked with "auto" can not be built on this system - just skip it - -2016-09-15 Jim Klimov - - * drivers/snmp-ups.c: Added and documented an snmp-ups argument to - list currently loaded MIB-to-NUT mappings (typo fix) - * docs/man/snmp-ups.txt, drivers/snmp-ups.c: Added and documented an - snmp-ups argument to list currently loaded MIB-to-NUT mappings - * drivers/snmp-ups.c: snmp-ups.c : small typo fix - * docs/man/snmp-ups.txt, drivers/ietf-mib.c: Mention tripplite - mapping in snmp-ups manpage; updated some comments about it in - ietf-mib.c - * configure.ac: configure.ac : when verifying ability to build docs, - consider out-of-tree builds too - -2016-09-14 Jim Klimov - - * configure.ac: configure.ac : verify that we can actually build a - simple or chunked HTML document, beside having nominal versions of - software - * configure.ac: configure.ac : verify that we can actually build a - manpage document, beside having nominal versions of software - * configure.ac: configure.ac : verify that we can actually build a - simple PDF document, beside having nominal versions of software - -2016-09-13 Jim Klimov - - * drivers/ietf-mib.c: Give the Tripplite SNMP MIB a name, do not - duplicate "ietf" entries - -2016-09-02 Arnaud Quette - - * drivers/bcmxcp_usb.c, drivers/blazer_usb.c, drivers/libusb1.c, - drivers/nutdrv_atcl_usb.c, drivers/nutdrv_qx.c, - drivers/richcomm_usb.c, drivers/riello_usb.c: libusb 1.0 port: fix - return code for interrupt ops libusb 1.0 returns on success, the - number of bytes actually transferred or otherwise an error code, - except for interrupt transfers, where the actual transfer size is - stored in a separate variable. The libusb 1.0 implementation in NUT - thus needed to be fixed to behave the same way than the libusb 0.1 - implementation Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-31 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0 port: remove the check on USB device - count With the port to libusb 1.0, a sanity check was done on the - available number of USB devices to try. This however caused a - behavior regression, since the only device that NUT may have access - to can be the only UPS connected. In this case, the driver may exit - upon trying to reconnect if the device is transiently not available - Reference: https://github.com/networkupstools/nut/issues/300 - * drivers/libusb1.c, drivers/richcomm_usb.c: libusb 1.0 port: - complete usb_set_altinterface code usb_set_altinterface allows to - force the USB code to call `libusb_set_interface_alt_setting (0, - 0)` (equivalent to `libusb_set_altinterface(0)` in libusb 0.1), as - was done in NUT 2.7.2 and earlier. However, the libusb 1.0 - implementation was still missing the related code Reference: - https://github.com/networkupstools/nut/issues/300 - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: libusb 1.0 port: - fix kernel driver detachment Following the recent modification for - the kernel driver detachment, and the related functions - availability depending on the platforms, nutdrv_atcl_usb and - richcomm_usb were using the wrong macro for - libusb_set_auto_detach_kernel_driver and were missing the libusb - 1.0 code for explicit kernel driver detachment Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-17 Arnaud Quette - - * drivers/libusb1.c, m4/nut_check_libusb.m4: libusb 1.0 port: rework - the kernel driver detachment libusb 1.0 has introduced a new - function (libusb_set_auto_detach_kernel_driver), beside from the - explicit kernel driver detachment request - (libusb_detach_kernel_driver). However, the former is not available - on all systems. As an example, FreeBSD 10.1-10.3 does not have - this. The detachment and interface claiming has been reworked to - handle this case (reported by Charles Lepple) Reference: - https://github.com/networkupstools/nut/issues/300 - -2016-08-16 Arnaud Quette - - * clients/upsrw.c: upsrw: display the variable type beside ENUM / - RANGE upsrw now displays more information, beside the ENUM and - RANGE, such as the variable type (NUMBER or STRING), and the - maximum length for STRING Closes: - https://github.com/networkupstools/nut/issues/267 - * include/extstate.h: Add an explicit type NONE (ST_FLAG_NONE) - Reference: https://github.com/networkupstools/nut/issues/267 - * server/netget.c: Modify server side publication for variable type - ENUM can be either NUMBER or STRING, which was previously not - published. Reference: - https://github.com/networkupstools/nut/issues/267 - * drivers/dstate.c: Automatically set the "NUMBER" flag for ranges - Ranges, added through dstate_addrange(), only support numeric - ranges. So automatically add the ST_FLAG_NUMBER flag to range - Reference: https://github.com/networkupstools/nut/issues/267 - * drivers/dstate.c: Support ST_FLAG_NUMBER in dstate_setflags() - Allow the drivers to explicitly use ST_FLAG_NUMBER through - dstate_setflags() Reference: - https://github.com/networkupstools/nut/issues/267 - * include/extstate.h: Add an explicit type NUMBER (ST_FLAG_NUMBER) - Beside from the existing ST_FLAG_STRING, a need has arise to have - an explicit type NUMBER, and thus a flag for this type, can be used - generally, and more specifically with the driver primitive - dstate_setflags() Reference: - https://github.com/networkupstools/nut/issues/267 - -2016-08-12 Arnaud Quette - - * drivers/libusb1.c: libusb 1.0: remove unused typesafe_control_msg() - workaround For libusb 0.1 implementation, we had to workaround a - libusb API goofs, by wrapping the base function usb_control_msg(), - and casting the variables to the right type. This is not needed for - libusb 1.0 implementation, but was wrongly left in the code - (reported by Charles Lepple) - * clients/upsrw.c: upsrw: display current values of NUMBER variables - References: https://github.com/networkupstools/nut/issues/267 - * drivers/snmp-ups.c: snmp-ups: discard decimals when set to "0" - Publish values as integer when decimals are set to "0". This at - least makes sense for some values that are real integers (phases - and outlets counts for example), but also with many other values - that have not sufficient precision to provide decimals - -2016-08-11 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: fix a warning on unused variable - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: simplify bus publication - bus publication was wrongly listing both the bus and the portname, - instead of the bus only. This may have caused some issue when - trying to match the port - * drivers/usbhid-ups.c: usbhid-ups/mge-shut: forgotten version bump - * drivers/usbhid-ups.c: usbhid-ups/mge-shut: rework errno/errors - handling libusb 1.0 has its own set of return codes, and error - interface. Rework the common HID core (shared between usbhid-ups - and mge-shut) so that error handling can work with both, and using - either libusb 0.1 or 1.0 for usbhid-ups - * tools/nut-scanner/scan_usb.c: nut-scanner: missing symbols lookup - for libusb 1.0 A few symbols from libusb 1.0 were wrongly used - directly, instead of being looked up and loaded at init time - * drivers/bcmxcp_usb.c, drivers/libusb1.c, drivers/nutdrv_atcl_usb.c, - drivers/richcomm_usb.c: libusb 1.0 port: add missing libusb_exit() - calls - * tools/nut-scanner/nutscan-init.c, tools/nut-scanner/scan_usb.c, - tools/nut-usbinfo.pl: nut-scanner: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c, drivers/richcomm_usb.c: Remove redundant - variable - * drivers/tripplite_usb.c: tripplite_usb: remove extraneous comment - char - * drivers/nut_libusb.h: permute typedef order of usb_dev_handle - * drivers/nutdrv_qx.c: nutdrv_qx: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/richcomm_usb.c: richcomm_usb: missing function remap for - libusb 0.1 usb_strerror was not remapped for libusb 0.1 - implementation - * drivers/tripplite_usb.c: tripplite_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/riello_usb.c: riello_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - -2016-08-10 Arnaud Quette - - * drivers/richcomm_usb.c: richcomm_usb: initial port to libusb 1.0 - The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: add the missing detach - call libusb 1.0 provide its own routine for detaching kernel - driver - * drivers/Makefile.am, drivers/libhid.c, drivers/nut_libusb.h: - Forgotten occurences of libusb.h renaming NUT internal header - "libusb.h" was renamed, since it collides with the libusb 1.0 - header, which has the same name. A few occurences of reference and - documentation were however missing - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: initial port to libusb - 1.0 The port to libusb 1.0 is complete, at least from a build - perspective. This now needs to be tested with devices - * drivers/blazer_usb.c: blazer_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * drivers/bcmxcp_usb.c: bcmxcp_usb: code cleanup - -2016-08-09 Arnaud Quette - - * drivers/bcmxcp_usb.c: bcmxcp_usb: initial port to libusb 1.0 The - port to libusb 1.0 is complete, at least from a build perspective. - This now needs to be tested with devices - * docs/configure.txt, drivers/Makefile.am, drivers/libhid.c, - drivers/libhid.h, drivers/{libusb.c => libusb0.c}, - drivers/libusb1.c, drivers/{libusb.h => nut_libusb.h}, drivers/usb- - common.h, drivers/usbhid-ups.c: ushid-ups: complete the port to - libusb 1.0 The port to libusb 1.0 is now complete for usbhid-ups. - Other USB drivers (bcmxcp_usb, blazer_usb, nutdrv_atcl_usb, - richcomm_usb, riello_usb, tripplite_usb, nutdrv_qx) have still to - be addressed - -2016-08-06 Jim Klimov - - * docs/man/dummy-ups.txt: dummy-ups.txt : noted the sleep between - loops - * docs/man/dummy-ups.txt: dummy-ups.txt : text and formatting revised - to be clearer to the uninitiated - -2016-08-04 Arnaud Quette - - * docs/man/snmp-ups.txt: snmp-ups: document the use of non-standard - port SNMP agent may publish data over a non-standard port, i.e. - not 161. This feature is supported since the origin, but was not - explicitly documented nor usable - -2016-08-01 Arnaud Quette - - * configure.ac, m4/nut_check_libusb.m4: Initial port to libusb 1.0 - Starting with the configure checks, to detect if libusb 1.0 if - available, and otherwise fall back to the libusb 0.1 backend - -2016-07-11 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix device.type publication In - daisychain mode at least, device.type was not set to its actual - value, using the current mapping structure, but defaulting to "ups" - (reported by Tomas Halman, from Eaton) - * drivers/snmp-ups.c: snmp-ups: fix and improve match_sysoid The - function was returning FALSE instead of NULL in one case. Also - retry at most 3 times to get the sysOID - -2016-07-07 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix instant commands publication - With non-daisychain setup, there was a bug that created an infinite - test loop when trying to add instant commands - -2016-06-30 Tomas Halman - - * clients/nutclient.cpp: nutclient: fix library segmentation fault if - device name doesn't exists. If device doesn't exist, getClient() - returns NULL. Then calling the method like - getClient()->getDeviceDescription(getName()) causes segfault. We - rather check the status and throw an exception in this case. - -2016-06-25 Charles Lepple - - * docs/acknowledgements.txt: doc: fix acknowledgements link to GitHub - -2016-06-23 Timothy Pearson - - * drivers/libhid.c, drivers/tripplite-hid.c, drivers/usbhid-ups.c, - scripts/upower/95-upower-hid.rules: Add support for SU3000LCD2UHV - Note that protocol 1330 does not respond to requests for - UPS.OutletSystem.Outlet.DelayBeforeReboot, therefore those requests - needed to be bypassed in the driver. - -2016-06-23 Arnaud Quette - - * drivers/mge-xml.c: netxml-ups: detect the unsupported XML v4 - protocol The XML/PDC protocol had an update with version 4, for - ePDU. However, this version is not supported by netxml-ups. We now - detect this version, and explicitly exit with an "XML v4 protocol - is not supported!" message - * drivers/netxml-ups.c: netxml-ups: fix a segmentation fault - netxml_get_page() was not checking if page is NULL, hence resulting - in a segmentation fault with Eaton ePDU, which use the unsupported - version 4 of the XML/PDC protocol. Bump the driver version to 0.41 - -2016-06-13 Tomas Halman - - * clients/nutclient.cpp: NUT client library: internal::Socket class - must close socket in destructor. - -2016-04-16 Charles Lepple - - * data/driver.list.in, drivers/mge-hid.c, scripts/upower/95-upower- - hid.rules: usbhid-ups: add IBM USB VID Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.user/7721 and - http://news.gmane.org/find- - root.php?message_id=5712AB29.6040001%40delphinidae.org.uk - -2016-06-09 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: 2nd pass on fixing memory leaks Fix - some remaining memory leaks reported by Coverity scan - * drivers/snmp-ups.c: snmp-ups: fix memory leaks and incorrect - expression Following the registration of NUT in Coverity scan, a - number of issues were identified. This is the very first set of QA - fixes related to this static code analysis - -2016-06-08 Arnaud Quette - - * Makefile.am: AIX package: reference the exact tarball version - -2016-06-07 Charles Lepple - - * docs/download.txt: Update VMware ESXi package link (from René - Garcia) - -2016-06-07 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix some regression due to daisychain - A few issues were remaining, following the daisychain support - addition. Issues were related to, at least, 3ph initialization and - data not being published, and identified with Eaton 3ph units, - using the "pw" MIB (reported by Yves Clauzel, from Eaton) - -2016-06-05 Timothy Pearson - - * drivers/powerp-txt.c: Add deep battery test for CyberPower - OL3000RMXL2U - -2016-05-31 Arnaud Quette - - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: support - daisychain commands and settings Daisychain commands and settings - on subdevices are now supported. Since 95% of the code of these two - functions was similar, a new function called su_setOID() was - created, and is now called by su_setvar and su_instcmd. This new - function is also daisychain-aware - * drivers/dstate.c: dstate: adapt daisychain devices functions For - daisychain devices, we increase the counter when alarms are present - on a subdevice, but don't decrease the count when the buffer is - empty. Otherwise, we may not get the ALARM flag in ups.status, - while there are some alarms present on device.X - * drivers/eaton-mib.c: snmp-ups: fix input.L2.voltage on Eaton G2/G3 - PDU This data entry was missing the daisychain formatting - directive, which resulted in this data not being published - (reported by Vyskocil Michal from Eaton) - -2016-05-27 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix regression related to daisychain - Fix a few regression with unitary devices, related to the - daisychain changes of the SNMP core engine - * drivers/dstate.c: dstate: enforce underflow to not generate false - alarm The newly introduced daisychain mechanism, with alarm - counters (not just boolean) introduced a potential underflow on - alarm_commit, which resulted in false positive "ALARM" flag - publication in ups.status - * drivers/snmp-ups.c: snmp-ups: update for daisychain Update the - daisychain implementation, as per the latest specification, - including considerations on "device.0". Alarms are also handled for - the daisychain devices. Initial code for settings and commands is - also present, but will be completed in subsequent commits, along - with a final cleanup and potential composite settings and commands - on "device.0" (that are then applied to all daisychain devices) - * drivers/eaton-mib.c: snmp-ups: fix some daisychain data for Eaton - PDU Some data (outlet.%i.current, outlet.%i.power, - outlet.%i.load.{off,on,cycle} and - outlet.group.%i.load.{off,on,cycle}) were missing the daisychain - formatting string, and were hence not published - * docs/daisychain.txt, drivers/dstate.c, drivers/dstate.h: dstate: - add functions to address daisychain alarms Add 2 new functions, - device_alarm_init() and device_alarm_commit(), to address - daisychain devices: these acts as the standard alarm_{init,commit}, - but only clearing / committing the alarm buffer, and not - reinitializing the main alarm counter. Hence, the "device.0" (whole - daisychain) knows if it has to publish the "ALARM" flag in - ups.status - -2016-05-25 Arnaud Quette - - * docs/new-drivers.txt: daisychain: add a reference for drivers and - alarms - * docs/daisychain.txt: daisychain: update specification for alarms - handling - * drivers/eaton-mib.c, drivers/snmp-ups.c, drivers/snmp-ups.h: snmp- - ups: daisychain update, fix and completion Following the - specification update on "device.0" consideration, adapt the current - implementation. For now, the whole daisychain will only publish - device.{mfr,model,count}. Initial support for settings and commands - was also added, and will be expanded to "device.0" - * docs/daisychain.txt: daisychain: update and fix specification - * docs/daisychain.txt: daisychain: update specification as per - discussion - -2016-05-23 Arnaud Quette - - * docs/Makefile.am, docs/daisychain.txt, docs/developer-guide.txt, - docs/user-manual.txt: daisychain documentation: fix documentation - building The daisychain documentation was missing from the build - rules, and from the documentation integration, which resulted in - documentation build being broken (reported by Charles Lepple). As a - side note, the documentation (both user and developer) will need - some update and cleanup, now that there is more content Closes: - https://github.com/networkupstools/nut/issues/291 - * drivers/eaton-mib.c: snmp-ups: Eaton Aphel Revelation updates - Update Eaton Aphel Revelation MIB mapping, by fixing outlets - switchability publication and adding "device.revision". This last - data still has to be submitted as an RFC for extending NUT - variables namespace - -2016-05-19 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix daisychain regression A bug was - discovered with the new daisychain code and non-daisychained - device, resulting in data not being published - -2016-05-18 Arnaud Quette - - * drivers/compaq-mib.c, drivers/ietf-mib.c, drivers/mge-mib.c, - drivers/netvision-mib.c, drivers/powerware-mib.c, drivers/snmp- - ups.c, drivers/snmp-ups.h: snmp-ups: daisychain handling of 1ph / - 3ph phases Per device phases management is now available in - daisychain mode, for input, output and bypass. The overall - mechanism for phase determination has also changed to something - more generic, and not requiring the SU_FLAG_SETINT flag - * drivers/eaton-mib.c: snmp-ups: fix input.phases for Eaton G2 / G3 - ePDU The current implementation was using the number of input, not - the number of phase(s) - -2016-05-17 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: initial daisychain support for Eaton - PDU Following the base implementation for daisychain support in - the SNMP driver core (snmp-ups), add support for daisychain for - Eaton PDU. Commands definitions are disabled for now, and will be - addressed in a subsequent commit - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: base daisychain - support This commit includes the initial support for daisychain. - There are however a number of limitations that still need to be - addressed, such as: * {input,output,bypass}.phase handling: for - now, mixed / hybrid daisychains are not supported * All devices - alarms are pushed to "ups.alarm" without discriminant (i.e. not - "device.X" appended to the alarm) * commands and settings are not - yet handled * non-regression testing on unitary devices have to be - done - * README, docs/outlets.txt, docs/user-manual.txt: Documentation - adjustments - * docs/daisychain.txt, docs/nut-names.txt: daisychain: initial - specification and documentation - * drivers/mge-hid.c: mge-shut/usbhid-ups: list AEG PROTECT NAS vendor - 06da AEG PROTECT NAS were previously using VendorID / ProductID - 0x2b2d / 0xffff, and are now using 0x06da / 0xffff. Also bump the - mge-hid subdriver version to 1.40 - -2016-05-13 Arnaud Quette - - * docs/man/nutupsdrv.txt: Mention explicitly the default pollinterval - As in ups.conf manual page, mention the default poll interval, to - make it clear - -2016-05-10 Arnaud Quette - - * docs/nut-qa.txt: NUT QA: add Coverity static code analysis - information NUT is now a registered Coverity project, and can thus - get static code analysis from it. This is just a first step, and - actions are needed to address the actual defects and complete the - project configuration. Due thanks to Synopsys, Inc., mother firm of - Coverity, for providing this service to Opensource project - -2016-05-09 Arnaud Quette - - * drivers/apc-mib.c, drivers/snmp-ups.h: snmp-ups: remove the - redundant SU_TYPE_STRING define SU_TYPE_STRING was originally - created to expose a required cast to string. However, it is - redundant with ST_FLAG_STRING, and not useful in the end. The only - subdriver that was using it is apc-mib (UPS support) and this was a - no-op - * README: Fix wrong link reference The "NUT outlets management and - PDU notes" were wrongly referred to as "Configuring automatic UPS - shutdowns - -2016-05-04 Jim Klimov - - * .gitignore, docs/.gitignore: GitIgnore some built documents - -2016-05-03 Jim Klimov - - * configure.ac: configure.ac : prefer "/usr/share/augeas/lenses/dist" - over "/usr/share/augeas/lenses" if present - -2016-05-03 Arnaud Quette - - * docs/configure.txt: Document Augeas lenses configure option Add - documentation on the new configure option --with-augeas-lenses- - dir=PATH - -2016-05-03 Jim Klimov - - * docs/Makefile.am, docs/man/Makefile.am: Follow-up to NUT PR#281 - - notice for the future - * docs/Makefile.am, docs/man/Makefile.am: Revert toxic commit: "a2x - says "--destination-dir" is only valid for HTML... so let us reduce - complaints reported in build" This reverts commit - fe17861c4ea12679b3ebfefa8a6d692d79d99f2d because in fact asciidoc - (8.6.9) lies about not supporting the flag, and it is reqired for - `ASCIIDOC_VERBOSE=-v make distcheck-light` to pass. So let's keep - it complaining but working. - * Makefile.am, configure.ac, scripts/augeas/Makefile.am: Allow "make - install" to deliver Augeas lenses into the path defined by - configure (defaults to /usr/share/augeas/lenses) - -2016-05-02 Jim Klimov - - * docs/Makefile.am, docs/man/Makefile.am: a2x says "--destination- - dir" is only valid for HTML... so let us reduce complaints reported - in build - * configure.ac: configure.ac : by default, "--with-doc=man=yes" to - match legacy expectations, and permit "make dist" out of the box - -2016-04-26 Arnaud Quette - - * tools/nut-scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c: nut- - scanner: Force numeric OIDs resolution Force numeric OIDs - resolution (ie, do not resolve to textual names) and disable MIB - loading. This is mostly for the convenience of debug and results - output - * scripts/subdriver/gen-snmp-subdriver.sh: SNMP subdriver generator: - add a FIXME +Thu Oct 8 19:38:03 UTC 2009 / Arjen de Korte -2016-04-11 Michal Vyskocil - - * drivers/netvision-mib.c: netvision-mib: uses 0 as dfl Change to - NULL as other subdrivers does - -2016-04-11 Arnaud Quette - - * tools/nut-scanner/nutscan-init.c: nut-scanner: additional search - path Prepend "/usr/" to the provided --libdir, in case this one - points at "/lib/..." or similar, and not to "/usr/lib/..." + - m4/nut_check_libneon.m4,nut_check_libusb.m4: changes in autoconf magic to + detect optional functions (without making assumptions on where they are + located) + - configure.in: update for the above + - drivers/libusb.c,netxml-ups.c,richcomm_usb.c: update for the above + +Wed Oct 7 17:53:42 UTC 2009 / Arnaud Quette -2016-04-09 Émilien Kia + * drivers/dummy-ups.c: dummy-ups general improvements + - dummy mode now loop on reading the .dev file, instead of reading it once. + Interacting through this method is also possible, by changing the .dev file + content on the fly, + - dummy mode now support actions (TIMER only ATM) in the .dev file. This + allows to have an automated scripting sequence (see data/evolution.dev and + dummy-ups manpage for examples), + - repeater mode now check the upsd connection, and reconnect if needed, + (reported by Gabor Kiss) + - cleanup the inline TODO list, + - bump the driver version to 0.10. + * man/dummy-ups.8: update according to the above changes. + * data/epdu-managed.dev: new dummy-ups definition file. - * clients/nutclient.cpp: Correctly increment pointer in - stringset_to_strarr and stringvector_to_strarr. Fix bug #232 - * tests/Makefile.am, tests/nutclienttest.cpp: Create unit test - (failing for now) to test bug #232 (nutclient: - stringset_to_strarr() and stringvector_to_strarr() only work for - one element). - * clients/nutclient.cpp: Make string[set|vector]_to_strarr public to - be accessible to unit tests. - * clients/nutclient.h: Make nut::Client::~Client virtual. Prevent - compilation warning [-Wdelete-non-virtual-dtor]. +Wed Oct 7 14:05:35 UTC 2009 / Arjen de Korte -2016-03-23 Jim Klimov + - drivers/snmp-ups.c: remove suspicious code for shutdown.* commands - * configure.ac, docs/configure.txt, docs/man/Makefile.am: Added - WITH_MANS support (to toggle generation of manpages) and revised - other documentation formats +Wed Oct 7 13:43:15 UTC 2009 / Arjen de Korte -2016-04-08 Jim Klimov + - drivers/apc-hid.c: add support for Back-UPS RS series test.battery.* + commands (experimental) - * configure.ac, docs/configure.txt: configure.ac : do not inspect - systemdunitdir with pkg-info if we asked not to use it at all +Tue Oct 6 19:39:22 UTC 2009 / Arjen de Korte -2016-04-07 Arnaud Quette + - m4/nut_check_libssl.m4: use pkg-config for compiler and linker flags + - m4/nut_check_libusb.m4: minor change + +Tue Oct 6 19:16:08 UTC 2009 / Arjen de Korte - * drivers/raritan-px2-mib.c: snmp-ups: fix a missing field in - raritan_px2 mapping The default value (dfl field) was missing, and - thus producing a compilation warning + - MAINTAINERS: Remove entry for Peter Selinger (by request) + +Tue Oct 6 12:13:01 UTC 2009 / Arnaud Quette -2016-04-07 Jim Klimov + - drivers/mge-shut.c: actually apply the low battery level if provided (either + through "-x lowbatt" or ups.conf). Also change the driver reported name from + "MGE UPS SYSTEMS" to "Eaton". + (reported by Daniel O'Connor) - * docs/configure.txt, m4/nut_check_libgd.m4, - m4/nut_check_libnetsnmp.m4: Allow to customize path to gdlib-config - and net-snmp-config programs +Mon Oct 5 20:02:42 UTC 2009 / Arnaud Quette -2016-04-06 Arnaud Quette + - drivers/nut_usb.c: remove the calls to usb_set_configuration() and + usb_set_altinterface(), which were not needed and caused troubles + with some Eaton / Powerware models. Also add some older HP T500 / T750 which + seem to be supported, + - data/driver.list: add entries for the above. - * data/driver.list.in, docs/man/snmp-ups.txt, drivers/Makefile.am, - drivers/raritan-px2-mib.c, drivers/raritan-px2-mib.h, drivers/snmp- - ups.c: snmp-ups: support Raritan Dominion PX2 PDU Based on initial - work and data from Opengear, using SNMP subdriver creation script, - add support for the more recent Raritan PDU, model PX2. This was - tested with a PX2-1486 (Metered Input), but should cover all PX2 - models - * scripts/subdriver/gen-snmp-subdriver.sh: SNMP subdriver creation - script: minor updates - -2016-03-23 Jim Klimov - - * configure.ac: Fix "--with-doc=auto" to use present doc-gens * - configure.ac : when using "--with-doc" do actually proceed if some - supported methods are found and some are not... build what we can - on this platform * configure.ac : revised upon peer review : - yes==all, default(empty)==no as documented in --help, auto guesser - must be explicit - -2016-03-24 Kirill Ovchinnikov - - * drivers/snmp-ups.c, drivers/snmp-ups.h: Added a feature of power on - and power off delay time writing to UPS configuration; Added - support of writing "timeticks" values to su_setvar() routine - -2016-03-23 Michal Vyskocil - - * drivers/eaton-mib.c: Bumb version of eaton-mib - -2016-03-23 Arnaud Quette - - * docs/man/snmp-ups.txt, docs/snmp.txt: Fix references to the SNMP - section of protocols - -2016-03-22 Michal Vyskocil - - * drivers/snmp-ups.h: snmp-ups: mark SU_FLAG_OK as internal to the - driver - * drivers/eaton-mib.c: snmp-ups: add outlet type to Eaton Marlin MIB - -2016-03-22 Arnaud Quette - - * configure.ac: Remove the extraneous GNU in front of FreeIPMI - Messages are now more homogeneous - * docs/configure.txt: Clarify multiple specifier for --with-doc - * docs/configure.txt: Update FreeIPMI requirements The documented - requirements were out of date, compared to the tests done at - configure time - -2016-03-22 Michal Vyskocil - - * drivers/snmp-ups.h: snmp-ups: enhance documentation of some flags - Mark SU_FLAG_OK as deprecated and SU_FLAG_STALE as internal to - driver. This helps new developers to write or extend snmp - subdrivers. - * docs/nut-names.txt: Document outlet.n.type Add and document - outlet.n.type variable, which provides information about physical - outlet type. - -2016-03-19 Charles Lepple - - * configure.ac: Version to 2.7.4.1 for snapshots - -2016-03-18 Marty R - - * docs/download.txt: Update OpenWRT package information The previous - link is over 5 years old, nut is now maintained in the packages - repository on GitHub. - -2016-03-10 Arnaud Quette - - * tools/nut-scanner/Makefile.am: Fix nut-scanner compilation in some - environments Following the commits 5187dab (common: add some - string-related functions) and e767df5 (common: consolidate some - string-related functions), the build rules of nut-scanner were not - updated to also use str.c. Since the libcommon.la dependency was - still there, some environments managed to build cleanly, while - other are failing. Update build dependencies to fix this situation - * drivers/powerware-mib.c: snmp-ups: Eaton 3ph UPS improvements Fix - the battery test status reporting, and start to simplify the - mapping layout by getting rid of some #define. Also add the - following: - battery test result "Unknown" - last battery - replacement date (battery.date) - output.voltage thresholds (high - and low) and nominal value - * drivers/snmp-ups.c: snmp-ups: add a debug trace on - nut_snmp_get_int() - -2016-03-09 Arnaud Quette - - * configure.ac: Fix autoreconf on Debian For some reason, Automake - doesn't search the current directory correctly when searching for - helper scripts, when 'nut' is running as a git-submodule, as it is - the case with the website repository - * configure.ac: update version to 2.7.4 - * drivers/apc-ats-mib.c: snmp-ups: add APC ATS input.source - * drivers/snmp-ups.c: snmp-ups: fix the matching OID tests For both - sysOID and classic methods, we used to test one of the two OIDs - provided in the mib2nut structures. However, these two OIDs - (oid_pwr_status and oid_auto_check) tend to be redundant and - confusing. Replace these matching by an extraction of - {ups,device}.model - * drivers/nut-libfreeipmi.c: nut-ipmipsu: fix compilation warnings - * NEWS, UPGRADING, docs/FAQ.txt, docs/net-protocol.txt, docs/new- - drivers.txt, docs/nut-names.txt, docs/nutdrv_qx-subdrivers.txt, - docs/packager-guide.txt, docs/snmp-subdrivers.txt, lib/README, - scripts/augeas/README: Fix spelling and typo errors Following the - spell-checking scope expansion, do a spell-checking pass - * docs/documentation.txt: Update documentation as per the new devices - scope - * docs/features.txt, docs/user-manual.txt: Update documentation as - per the new devices scope - * docs/Makefile.am: Expand spell-checking scope Add more documents, - outside of the docs/ directory Closes: - https://github.com/networkupstools/nut/issues/222 - -2016-03-08 Arnaud Quette - - * configure.ac, tools/Makefile.am, tools/driver-list-format.sh: Check - driver.list[.in] format at make dist time Instead of checking - driver.list.in at configure time, move the checking and - modification into a script that is called at make dist time. The - script can also be called manually, and will try to fix both - driver.list.in and driver.list - -2016-03-07 Arnaud Quette - - * drivers/powerware-mib.c: Remove an erroneous test This was made - test the enumerated values registration in snmp-ups, and should not - have been committed - * data/driver.list.in: HCL: APC ATS AP7724 supported by snmp-ups - These Automatic Transfer Switch should be supported by snmp-ups, - however this was not tested at all Reference: - https://github.com/networkupstools/nut/issues/260 - * NEWS, UPGRADING: Update for release 2.7.4 - * drivers/Makefile.am, drivers/apc-ats-mib.c, drivers/apc-ats-mib.h, - drivers/snmp-ups.c: snmp-ups: support APC Automatic Transfer Switch - Following the recent extension of NUT scope and variable namespace, - to support Automatic Transfer Switch (ATS), implement SNMP support - for APC ATS (with help from "maaboo" through github) Reference: - https://github.com/networkupstools/nut/issues/260 - -2016-03-04 Arnaud Quette - - * drivers/baytech-mib.c, drivers/bestpower-mib.c, drivers/compaq- - mib.c, drivers/cyberpower-mib.c, drivers/eaton-mib.c, drivers/mge- - mib.c, drivers/netvision-mib.c, drivers/powerware-mib.c, - drivers/raritan-pdu-mib.c: snmp-ups: fix mib2nut structures Non - existent OIDs, for testing MIB selection, must be expressed as NULL - and not as empty string ("") for the algorithm to work - -2016-03-03 Daniele Pezzini - - * docs/download.txt: docs: update several download links - -2016-03-03 Arnaud Quette - - * docs/man/upsrw.txt, docs/net-protocol.txt: Clarification on NUMBER - type float values Clarify a bit more documentation on how to - express float values, when using upsrw. That is to say, using - decimal (base 10) english-based representation, so using a dot, in - non-scientific notation. So hexadecimal, exponents, and comma for - thousands separator are forbiden - * clients/upsrw.c, docs/net-protocol.txt, server/netget.c: Prefer - NUMBER to NUMERIC for variable type As per discussion on the - Github pull request, NUMBER would be more suitable than NUMERIC - -2015-11-22 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: increase timeouts in 'sgs' USB - subdriver Apparently the previously used timeouts in the 'sgs' USB - subdriver were not always enough, so increase them. - -2015-11-11 Daniele Pezzini - - * data/driver.list.in: HCL: various TS Shara UPSes supported by - nutdrv_qx Protocol: 'megatec' USB subdriver: 'sgs' - * drivers/nutdrv_qx.c: nutdrv_qx: make sure 'sgs' USB subdriver uses - only what it reads Since, in 'sgs' USB subdriver, we read only 8 - bytes at a time and we expect the first byte to tell us the length - of the data that follows, make sure we don't use more than what we - read from the device in case the first byte is not what we expect - it to be. - -2015-03-04 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: increase verbosity of 'sgs' USB - subdriver In 'sgs' USB subdriver: - be more verbose when - debugging, - always print the return code when dealing with an - error. - -2014-01-31 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: update man page for new 'sgs' - USB subdriver - -2014-01-31 Ronaldo Yamada - - * drivers/nutdrv_qx.c: nutdrv_qx: add new 'sgs' USB subdriver to - support TS Shara units - -2016-03-02 Arnaud Quette - - * data/driver.list.in: HCL: added Eaton Powerware 9125-5000g - Supported with the additional USB card, with the bcmxcp_usb driver - * docs/man/upsrw.txt, docs/net-protocol.txt: Clarification on NUMERIC - type float values Clarify documentation on how to express float - values, when using upsrw. That is to say, using decimal english- - based representation, so using a dot - * drivers/mge-xml.c: netxml-ups: fix Eaton XML published data Some - raw protocol data were wrongly published, and are now commented. - Also add some R/W flags to ambient thresholds Closes: - https://github.com/networkupstools/nut/issues/201 - * tools/nut-scanner/nut-scanner.c: nut-scanner: fix thread attachment - Add a test to have the right thread waiting for the scan to be - complete (patch from Michal Hlavinka, Red Hat) - * configure.ac, tools/nut-scanner/nutscan-init.c, 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: nut-scanner: - don't depend on development libraries nut-scanner was previously - trying to use directly libXXX.so (libusb-0.1, libfreeipmi, - libnetsnmp, libavahi-client, libneon, libupsclient}. However, these - files are generally provided by the development packages. nut- - scanner now tries to look at some known paths, including the one - provided through --libdir, to find the correct libraries Closes: - https://github.com/networkupstools/nut/issues/233 - -2016-03-01 Arnaud Quette - - * clients/upsrw.c, docs/net-protocol.txt, server/netget.c: Default to - type NUMERIC for variables Any variable that is not STRING, RANGE - or ENUM is just a simple numeric value. The protocol documentation - (net-protocol.txt) was previously stating that "The default , - when omitted, is integer." which was not fully true, since a - variable could also be a float. Hence, the wording was changed to - advertise this, and that each driver is then responsible for - handling values as either integer or float. Moreover, instead of - returning a TYPE "UNKNOWN", return "NUMERIC", which is more - suitable, and aligned with the NUT protocol specification - * tools/nut-snmpinfo.py: SNMP subdriver generator: fix output - formatting - * tools/nut-snmpinfo.py: SNMP subdriver generator: discard commented - lines Discard any commented mib2nut_info_t declaration, which - should thus not be taken into account - -2016-02-26 Arnaud Quette - - * data/driver.list.in, drivers/Makefile.am, drivers/eaton-ats-mib.c, - drivers/eaton-ats-mib.h, drivers/snmp-ups.c: snmp-ups: support - Eaton Automatic Transfer Switch Following the recent extension of - NUT scope and variable namespace, to support Automatic Transfer - Switch (ATS), implement SNMP support for Eaton ATS. Note that this - device can also be supported through Eaton XML/PDC (XML over HTTP) - protocol, supported by the NUT netxml-ups driver - * data/cmdvartab, docs/nut-names.txt: Extend namespace for Automatic - Transfer Switch (ATS) Extend NUT namespace to support a new type - of power device: ATS - Automatic Transfer Switch. These devices - are used to setup 2 power systems, such as UPS, to power a single - power supply system, and be able to automatically transfer between - the input sources in case of failure of the primary one. The added - variable are for now limited to 'input.source' and - 'input.source.preferred', but may be extended if needed - -2016-02-25 C Fraire - - * docs/scheduling.txt: Fix docs location of upssched to sbin - -2016-02-25 Arnaud Quette - - * scripts/subdriver/gen-snmp-subdriver.sh: snmp-ups: add the last - missing element in the structure - * drivers/apc-mib.c, drivers/bestpower-mib.c, drivers/compaq-mib.c, - drivers/cyberpower-mib.c, drivers/delta_ups-mib.c, drivers/huawei- - mib.c, drivers/ietf-mib.c, drivers/mge-mib.c, drivers/netvision- - mib.c, drivers/powerware-mib.c, drivers/xppc-mib.c, - scripts/subdriver/gen-snmp-subdriver.sh: snmp-ups: fix values - lookup terminating element The terminating element should really - be NULL, and not the string "NULL", as it was originally done, back - in 2002 - * drivers/snmp-ups.c: snmp-ups: revert order of the NULL/"NULL" test - Fix a segfault when doing first the string comparison test - * drivers/snmp-ups.c: snmp-ups: register values enumerations - Whenever there is a values lookup structure for read/write data, - push the values as enumerations for upsrw - * drivers/snmp-ups.c: snmp-ups: try to lookup values for numeric - elements Numeric elements can also use the value resolution - mechanism - * drivers/snmp-ups.c: snmp-ups: counter test sysOID with a test OID - Some devices have buggy sysOID exposed. Allow to counter test - another OID, to be able to select between different mapping - structures - -2016-02-24 Arnaud Quette - - * scripts/subdriver/gen-snmp-subdriver.sh: SNMP subdriver creation - script: allow sysOID override Allow to use -s to override buggy - sysOID in some device FW. In this case, the sysOID entry in the - mib2nut structure should be set to NULL - -2016-02-11 Arnaud Quette - - * drivers/raritan-pdu-mib.c: snmp-ups: fix macaddr support for - Raritan PDU Raritan MIB was fixed to expose macaddr on - device.macaddr instead of ups.macaddr - * drivers/baytech-mib.c: snmp-ups: fix macaddr support for Baytech - PDU Baytech MIB was fixed to expose macaddr on device.macaddr - instead of ups.macaddr - * drivers/eaton-mib.c: snmp-ups: fix and complete macaddr support for - Eaton Eaton G2 and G3 can now expose the MAC address of the - device, using device.macaddr. Eaton G1 Aphel was fixed to expose - this data on device.macaddr instead of ups.macaddr - * drivers/snmp-ups.c: snmp-ups: add support for hexadecimal octet - strings - * drivers/snmp-ups.c: snmp-ups: fallback for classic MIB detection - If the sysOID matching has failed, then snmp-ups uses ups.model to - get an OID to test. In case ups.model is not available, fallback to - trying to use device.model instead - * docs/images/nut_layering.png, docs/images/nut_layering.svg: Refresh - and complete NUT architecture diagram - -2016-02-08 Arnaud Quette - - * drivers/powerware-mib.c: snmp-ups: extend Eaton 3ph outputSource - values map Add the new status values for xupsOutputSource - (.1.3.6.1.4.1.534.1.4.5.0), that maps to both ups.status and - ups.type - -2016-02-03 Arnaud Quette - - * drivers/powerware-mib.c: snmp-ups: improve support for Eaton 3ph - Improve support for temperature and humidity data, including: - - ups.temperature now available - fixing ambient.temperature - (previously pointing at a wrong OID) - ambient.humidity now - available - the following settings now available: * - ups.temperature.low * ups.temperature.high * ambient.humidity.high - * ambient.humidity.low * ambient.temperature.high * - ambient.temperature.low - -2016-02-01 Daniele Pezzini - - * data/driver.list.in: HCL: various APCUPSD-controlled APC devices - via apcupsd-ups Originally reported by GitHub user @Thermionix. - Reference: https://github.com/networkupstools/nut/pull/215 - -2016-01-31 Charles Lepple - - * docs/man/nutdrv_atcl_usb.txt: man/nutdrv_atcl_usb: point to - nutdrv_qx (fuji) for 0001:0000 Also update best guess for the USB- - to-serial converter situation. - * docs/FAQ.txt: FAQ: udevadm for fixing permissions - -2016-01-30 Charles Lepple - - * drivers/nut-libfreeipmi.c: FreeIPMI: do not split function - arguments with a conditional Alternate approach to suggestion by - Romero B. de S. Malaquias Closes: - https://github.com/networkupstools/nut/pull/250 - -2016-01-24 Charles Lepple - - * docs/config-notes.txt: Documentation: fix formatting Put syntax - examples in verbatim mode, and remove spaces from ends of lines. - * drivers/apc-hid.c: usbhid-ups: handle missing USB strings in APC - code Closes: https://github.com/networkupstools/nut/issues/258 - Might fix: - https://bugs.launchpad.net/ubuntu/+source/nut/+bug/1483615 - -2016-01-23 Charles Lepple - - * data/driver.list.in: HCL: added NHS Laser Senoidal 5000VA Source: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/7123 - Closes: https://github.com/networkupstools/nut/issues/254 - -2016-01-14 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix staleness detection With some - ePDUs or devices using template for outlet and outlet.group, - communication loss with the device were not detected, due to the - handling mechanism. Simply skipping commands for templates, after - the init time, is sufficient to avoid this issue - -2016-01-05 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: improve stale communication recovery - Disable the 10 iterations to retry communicating with stale device. - This was leading up to 10 x 30 seconds, so 5mn, before being able - to get data again - * docs/new-drivers.txt, docs/nut-names.txt: Document - battery.charger.status This will in time replace the historic CHRG - and DISCHRG flags published in ups.status. Closes - https://github.com/networkupstools/nut/issues/196 - -2016-01-03 Charles Lepple - - * data/driver.list.in: HCL: Sweex model P220 via blazer_usb - Reference: https://github.com/networkupstools/nut/issues/251 - -2016-01-04 Arnaud Quette - - * drivers/ietf-mib.c, drivers/ietf-mib.h, drivers/snmp-ups.c: snmp- - ups: add support for Tripplite units on IETF mib These devices - expose ".1.3.6.1.4.1.850.1", which could be supported through this - specific MIB. For now, just link that to the IETF MIB, to provide - a first level of support Reference: - https://github.com/networkupstools/nut/issues/171 - -2015-12-30 Arnaud Quette - - * configure.ac: First stab at checking driver.list.in format - -2015-12-29 Charles Lepple - - * scripts/upower/95-upower-hid.rules: upower: update for AEG - -2015-12-29 Arnaud Quette - - * drivers/powercom.c: Fix the processing of output voltage for KIN - units The processing of output voltage requires to also take into - account the line voltage, as reported by Patrik Dufresne. This may - still need some further adjustments Reference: - https://github.com/networkupstools/nut/issues/187 - * drivers/powercom.c: Fix the processing of input voltage for KIN - units The processing of input voltage requires to also take into - account the line voltage, as reported by Patrik Dufresne. Also bump - the driver version to 0.16, since 0.15 was already used, but not - set Reference: https://github.com/networkupstools/nut/issues/187 - * drivers/mge-hid.c: Fix letter case for AEG USB VendorID The letter - case of this VendorID may be important for generated files, such as - the udev ones (reported by Charles Lepple) - -2015-12-28 Arnaud Quette - - * data/driver.list.in, drivers/mge-hid.c: HCL: AEG PROTECT B / NAS - supported by usbhid-ups Reference: - https://github.com/networkupstools/nut/issues/249 - -2015-12-17 Daniele Pezzini - - * data/driver.list.in: HCL: Legrand Keor Multiplug supported by - nutdrv_qx Reference: - https://github.com/networkupstools/nut/issues/248 - -2015-12-09 Andrey Jr. Melnikov - - * drivers/bcmxcp_usb.c: Don't call usb_close() after reset - -2015-12-08 Andrey Jr. Melnikov - - * drivers/bcmxcp_usb.c: Call usb_reset() when driver unable to claim - device - * drivers/bcmxcp.h, drivers/bcmxcp_usb.c: Refactor get_answer() - routine, make it properly deal with multi-packets responses. Lower - stack usage. - -2015-07-27 Daniele Pezzini - - * common/common.c, common/str.c, drivers/bcmxcp.c, drivers/blazer.c, - drivers/blazer_ser.c, drivers/blazer_usb.c, drivers/libhid.c, - drivers/mge-xml.c, drivers/nutdrv_qx.c, drivers/powerp-bin.c, - drivers/powerp-txt.c, drivers/powerpanel.c, drivers/tripplitesu.c, - drivers/upscode2.c, include/common.h, include/str.h, server/upsd.c, - tools/nut-scanner/scan_usb.c: common: consolidate some string- - related functions Move *trim*() functions from common to str. - Prepend the 'str_' common prefix. Bailout early if string is NULL - or empty. In *trim_m() functions, make sure the string containing - characters to be removed is not NULL and bailout early if empty. - Add new str_trim[_m]() functions to remove both leading and - trailing characters at the same time. Update all the tree - accordingly; versioning where appropriate. - * common/Makefile.am, common/str.c, include/Makefile.am, - include/common.h, include/str.h: common: add some string-related - functions - -2015-11-10 Charles Lepple - - * data/driver.list.in: HCL: Electrys UPS 2500 (nutdrv_qx and - blazer_ser) Closes - https://github.com/networkupstools/nut/issues/241 - * data/driver.list.in: HCL: Eaton E Series DX UPS 1-20 kVA uses - blazer_ser Closes - https://github.com/networkupstools/nut/issues/238 - -2015-11-09 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: add number of outlets in Eaton ePDU - groups - * docs/nut-names.txt: Add a variable for the number of outlets in a - group Added 'outlet.group.n.count' which provides the number of - outlets in the outlet group 'n' - -2015-11-06 Daniele Pezzini - - * drivers/nutdrv_qx_voltronic-qs.c: nutdrv_qx: update 'voltronic-qs' - subdriver Since, for devices supported by 'voltronic-qs' - subdriver, in reality: - invalid commands or queries are echoed - back, - accepted commands are followed by action without any - further reply, update the subdriver interface accordingly. Also: - - change slightly the way we publish protocol as ups.firmware.aux, - - update F's reply examples and some info_type (ratings; - output.frequency) in QX to NUT table to reflect reality, - increase - version number. - -2015-10-19 Daniele Pezzini - - * drivers/nutdrv_qx_voltronic-qs-hex.c: nutdrv_qx: improve 'T' - protocol support in 'voltronic-qs-hex' subdriver Since the last - byte of the reply to the QS query (before the trailing CR) of - devices that implement the 'T' protocol holds in reality ratings - informations (nominal output frequency/voltage and nominal battery - voltage) in its bits, change the 'voltronic-qs-hex' subdriver - accordingly. Also: - change slightly the way we publish protocol as - ups.firmware.aux, - increase version number. - * drivers/nutdrv_qx_voltronic-qs-hex.c: nutdrv_qx: simplify - {in,out}put voltage conversion in 'voltronic-qs-hex' In - 'voltronic-qs-hex' subdriver, instead of calculating separately the - fractional and integer part of input and output voltage, do it at - once. Also, increase version number. - * drivers/nutdrv_qx_voltronic-qs-hex.c: nutdrv_qx: improve protocol - identification in 'voltronic-qs-hex' Since 'V' protocol, in - reality, never happens to use the encoded version of the reply to - the QS query, but it always uses the plain version already - implemented in 'voltronic-qs' subdriver, remove it from the - identification process of 'voltronic-qs-hex' subdriver. Also, - remove some non-significant entries from the testing table and - increase version number. - * drivers/nutdrv_qx_voltronic-qs-hex.c: nutdrv_qx: harmonize - declarations/definitions in 'voltronic-qs-hex' In 'voltronic-qs- - hex' subdriver, the scope of support functions is limited to the - subdriver as rightly stated in forward declarations, so correct - their definitions to reflect that. Also, increase version number. - -2015-10-09 Arnaud Quette - - * docs/nut-qa.txt: Reference Black Duck OpenHUB in QA documentation - Closes networkupstools/nut#192 - -2015-10-08 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: also use __func__ for additional - traces - * drivers/powerware-mib.c: powerware-mib: more comments for RFC - device.event Add more comments on the need to RFC device.event for - some data that are currently published under ups.alarm - * drivers/powerware-mib.c: snmp-ups: improve Eaton 3-phase UPS alarms - reporting Eaton 3phase UPS, using the Powerware MIB, can expose - many new alarms. Also use the standard driver "X.YY" versioning, - and bump subdriver release to "0.85" - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: fix and improve - the ups.alarms mechanism This mechanism allows to walk a subtree - (array) of alarms, composed of OID references. The object - referenced should not be accessible, but rather when present, this - means that the alarm condition is TRUE. Both ups.status and/or - ups.alarm values can be provided - * drivers/snmp-ups.c: snmp-ups: fix on some snprintf calls Some - snprintf calls are using dynamically allocated variables, which - doesn't work with sizeof - * drivers/snmp-ups.c: snmp-ups: use __func__ in debug messages - * drivers/snmp-ups.c: snmp-ups: nut_snmp_get_oid() returns TRUE on - success - * drivers/snmp-ups.c: snmp-ups: only use snprintf calls instead of - sprintf - * drivers/eaton-mib.c, drivers/snmp-ups.c: snmp-ups: simplify - handling of other alarms outlet, outlet groups and phase alarms - are now using a simplified approach that does not require specific - lookup structure to adapt alarm messages. This applies to Eaton - ePDU G2/G3 - -2015-09-22 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix a typo error in debug message - Unknown is spelled with an ending N (reported by Evgeny "Jim" - Klimov, from Eaton) - * drivers/snmp-ups.c: snmp-ups: optimize phase number extraction - efficiency Since we know that we are processing an alarm for a - phase "Lx", don't use strchr, but simply index (reported by Evgeny - "Jim" Klimov, from Eaton) - * docs/nut-names.txt, drivers/eaton-mib.c: snmp-ups: use dash- - separator for out-of-range For the sake of coherence with other - status relative to thresholds, "out of range" frequency status now - also use dash as separator, instead of space - * drivers/eaton-mib.c: Fix a spelling error in comments - * drivers/eaton-mib.c: snmp-ups: fix a typo error on Eaton ePDU G2/G3 - MIB Critical is really spelled critical, and not cricital, as used - in the various status thresholds value-lookup structures (reported - by Evgeny "Jim" Klimov, from Eaton) - * data/cmdvartab: Mention the unit for ambient humidity information - Add an explicit mention that ambient information related to - humidity use the "(percent)" unit - * data/cmdvartab, docs/nut-names.txt: Mention the unit for input - voltage information Add an explicit mention that input information - related to voltage use the "Volts (V)" unit - * data/cmdvartab: Mention the unit for ambient temperature - information Add an explicit mention that ambient information - related to temperature use the "degrees C" unit - -2015-09-18 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: add outlet group identifier for - Eaton ePDU Eaton ePDU can now publish the parent group of each - outlet - * docs/nut-names.txt: Extend outlet collection namespace with group - ID An outlet can now publish the group to which it belongs to - * drivers/snmp-ups.c: snmp-ups: complete nut_snmp_get_{str,int} - These methods now allow to get the value of an OID returned by the - source OID (as for the sysOID). In case of failure (non existent - OID), the functions return the last part of the returned OID (ex: - 1.2.3 => 3) - * drivers/snmp-ups.c: snmp-ups: create a nut_snmp_get_oid() function - This method allows to get the value of an OID which is also an OID - (as for the sysOID), without trying to get the value of the pointed - OID. This will allow to use nut_snmp_get_{int,str}() the get the - value of the pointed OID - -2015-09-17 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: outlet groups type handling for - Eaton ePDU Eaton ePDU can now publish the type of outlet group - * docs/nut-names.txt: Extend outlet group collection namespace with - type The type of outlet group can now be published, part of the - new outlet.group data collection - * drivers/eaton-mib.c: snmp-ups: outlet groups commands for Eaton - ePDU Eaton ePDU can now handle commands outlet groups, including - on, off and reboot (cycle) - * drivers/snmp-ups.c: snmp-ups: fix commands handling for outlet - groups The su_instcmd() function of snmp-ups is now adapted to - support outlet groups - * drivers/eaton-mib.c: Advanced outlets groups alarm handling for - Eaton ePDU Eaton ePDU can now handle alarms on outlets groups, for - voltage and current, relative to the configured thresholds - * drivers/snmp-ups.c: snmp-ups: improvements for outlet groups and - alarms Improve the code for general template management, including - outlets and outlets groups for now, and add alarm management for - outlet groups, the same way as for outlets - -2015-09-16 Arnaud Quette - - * drivers/snmp-ups.c: snmp-ups: fix set variable for outlet groups - The setvar() function of snmp-ups is now adapted to support outlet - groups - * drivers/eaton-mib.c: snmp-ups: outlet groups handling for Eaton - ePDU Eaton ePDU can now handle outlet groups, including voltage - and current (with thresholds and status relative to the configured - thresholds), along with power and realpower. A subsequent commit - will address the alarms, settings and commands. Bump subdriver - version to 0.30 - * drivers/snmp-ups.c: snmp-ups: update debug message The template - guestimation function name was changed, but the debug message was - left with the old function name - -2015-09-15 Arnaud Quette - - * docs/nut-names.txt: Extend NUT namespace with outlet.group - collection A new data collection, called "outlet.group", is now - available. It provides grouped management for a set of outlets. The - same principles and data than the outlet collection apply to - outlet.group - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: adapt template - mechanisms for outlet groups The template handling mechanisms, - originally created for outlets, is now adapted to also manage - outlet groups - -2015-09-14 root - - * docs/nut-names.txt: Add a note on the outlet.count variable - -2015-09-14 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: add nominal input current for Eaton - ePDU snmp-ups now provides input.[Lx.]current.nominal for Eaton - ePDU G2/G3, both for 1phase and 3phase - * drivers/eaton-mib.c: snmp-ups: better input.power handling for - Eaton ePDUs Improve the way we declare and process input.power, as - previously done for input.realpower, in order to address the - variations between Eaton ePDUs G2 and G3 - -2015-09-11 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: publish part number for Eaton ePDU - device.part was standardized in NUT namespace, so enable the - declaration for Eaton ePDU - * drivers/eaton-mib.c: snmp-ups: 3-phase alarm handling for Eaton - ePDU Eaton ePDU can now handle alarms on 3-phase, currently - limited to voltage and current, relative to the configured - thresholds - * drivers/snmp-ups.c: snmp-ups: implement 3-phase alarm handling - snmp-ups now allows to publish 3-phase alarms in ups.alarm, the - same way as with outlet. Declaration of such alarms are done using - "Lx.alarm". info_lkp_t structures messages are shared templates - with outlets, and use the string formats to include the context - (outlet or phase) and the number (of the outlet or phase) in alarm - messages. These alarms are then published in "ups.alarm", with the - standard mechanism for alarm publication - * docs/nut-names.txt: Extend 3-phase collection namespace with alarms - 3-phase data collection now allows to specify alarms, the same way - than with the outlet collection ("outlet.n.alarm"), but using - "Lx.alarm" (for example "L1.alarm"). These alarms are then - published in "ups.alarm", with the standard mechanism for alarm - publication - * drivers/eaton-mib.c: Advanced threshold handling for Eaton 3-phase - ePDU Eaton ePDU can now handle warning and critical thresholds - settings and status for input voltage and current on 3-phase units. - Alarms are however still to be implement - * docs/nut-names.txt: Extend 3-phase collection namespace with - threshold 3-phase data collection now allows to specify low / high - warning and critical thresholds for voltage and current. Status - relative to the thresholds also exist for these data - -2015-09-07 Arnaud Quette - - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups: fix loss of - precision when setting values su_setvar() was losing precision - when converting and casting the provided values to send to the SNMP - agent. As an example, with an OID in millivolt (multiplier set to - 0.001), when providing 238 (V) using upsrw, the value sent to the - SNMP agent was 237999, so leaking 0.1 volt - -2015-09-04 Arnaud Quette - - * drivers/dstate.c: Extend ups.alarm internal buffer to 1024 chars - Currently, ups.alarm can hold up to 256 chars to expose alarms. - With the recent outlet alarms handling addition, the buffer may - quickly be to small. Thus, increase to 1024, which may still not - be sufficient but already provides a bit more room - * drivers/eaton-mib.c: snmp-ups: outlet alarm handling for Eaton ePDU - Eaton ePDU can now handle alarms on outlets, currently limited to - outlet voltage and current, relative to the configured thresholds - * drivers/snmp-ups.c: snmp-ups: implement outlets / PDU alarm - handling snmp-ups now allows to publish outlets and PDU alarms in - ups.alarm, the same way as with ups.status. Declaration of such - alarms are done using the outlet template mechanism - ("outlet.%i.alarm"). info_lkp_t structures messages can also use - the string formats to include the outlet number in alarm messages. - These alarms are then published in "ups.alarm", with the standard - mechanism for alarm publication - * docs/nut-names.txt: Extend outlet collection namespace with alarms - Outlet data collection now allows to specify alarms, using the - template definitions ("outlet.n.alarm"). These alarms are then - published in "ups.alarm", with the standard mechanism for alarm - publication - -2015-09-02 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: outlet threshold handling for Eaton - ePDU Eaton ePDU can now handle warning and critical thresholds - settings and status for outlet voltage and current - * docs/nut-names.txt: Extend outlet collection namespace with - threshold Outlet data collection now allows to specify low / high - warning and critical thresholds for voltage and current. Status - relative to the thresholds also exist for these data - -2015-09-01 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: alarms handling for Eaton ePDU - Eaton ePDU can now publish alarms, related to input status - (voltage, frequency and current) and ambient status (temperature - and humidity). Note that alarms are still published under - ups.alarms, though these should belong to either pdu.alarms or - better device.alarms - * drivers/eaton-mib.c: Advanced input threshold handling for Eaton - ePDU Eaton ePDU can now handle warning and critical thresholds - settings and status for input voltage and current, along with the - frequency status - * data/cmdvartab, docs/nut-names.txt: Extend input collection - namespace with threshold Input data collection now allows to - specify low / high warning and critical thresholds for voltage and - current. Status relative to the thresholds also exist for these - data, and for the frequency - -2015-08-31 Arnaud Quette - - * drivers/eaton-mib.c: snmp-ups: ambient dry contacts support for - Eaton ePDU Eaton ambient modules, connected on ePDU, now publish - the status of the connected dry contacts sensors - * data/cmdvartab, docs/nut-names.txt: Extend ambient collection - namespace with dry contacts Ambient data collection now allow to - specify dry contacts sensor status - * drivers/eaton-mib.c: snmp-ups: fix Eaton Pulizzi Switched PDU - multiplier As per the previous commit, to well handle integer RW - variables - * drivers/eaton-mib.c: snmp-ups: ambient threshold handling for Eaton - ePDU Eaton ePDU can now handle warning and critical thresholds and - status for both humidity and temperature - * data/cmdvartab, docs/nut-names.txt: Extend ambient collection - namespace with threshold Ambient data collection now allow to - specify warning and critical thresholds - * drivers/eaton-mib.c: snmp-ups: publish presence of Eaton ambient - sensor Publish the actual presence of ambient sensor for Eaton - ePDU G2 and G3 - * data/cmdvartab, docs/nut-names.txt: Publish the actual presence of - an ambient sensor A new data was created (ambient.present) to - publish the actual presence of an ambient sensor - -2015-10-06 Charles Lepple - - * data/driver.list.in: HCL: Asium P700, Micropower LCD 1000 and Eaton - 5E1100iUSB - -2015-10-06 Daniele Pezzini - - * data/driver.list.in: HCL: LYONN CTB-800V supported by nutdrv_qx - Protocol: 'voltronic-qs-hex' Reference: - https://github.com/networkupstools/nut/pull/230 - -2015-08-22 Mariano - - * drivers/nutdrv_qx_voltronic-qs-hex.c: nutdrv_qx: add support for - LYONN CTB-800V Small protocol validation change in 'voltronic-qs- - hex' subdriver to add support for the protocol used by the LYONN - CTB-800V UPS. - -2015-09-28 Arnaud Quette - - * docs/new-drivers.txt: Fix spacing error - -2015-09-22 Charles Lepple - - * drivers/solis.c, drivers/solis.h: solis: remove additional warnings - The "Waiting" flag is always zero, and several other variables were - not used. - * drivers/solis.c, drivers/solis.h: solis: clean up warnings Comment - out unused constants, and add 'static' and 'const' wherever - possible. - -2015-09-20 Charles Lepple - - * drivers/Makefile.am, drivers/solis.c: solis: math fixes As - mentioned here: https://github.com/networkupstools/nut/pull/235 - -2015-09-19 bsalvador - - * drivers/solis.c, drivers/solis.h: solis: patch for Microsol Back- - Ups BZ1200-BR patch for correct reading for Microsol Back-Ups - BZ1200-BR (rebased onto solis_debug branch, and cleaned up - whitespace. -- CFL) Closes - https://github.com/networkupstools/nut/pull/235 and Closes - https://github.com/networkupstools/nut/pull/236 - -2015-09-16 Arnaud Quette - - * data/driver.list.in, docs/man/snmp-ups.txt, drivers/powerware- - mib.c, drivers/powerware-mib.h, drivers/snmp-ups.c: snmp-ups: add - Eaton Power Xpert Gateway UPS Card This newer generation of SNMP - card is used for BladeUPS or other UPS, and is serving the same - XUPS MIB, as in the "pw" subdriver - * scripts/subdriver/gen-snmp-subdriver.sh: Update SNMP subdriver - generation script Complete the documentation, by adding some notes - and examples ; Fix the MIBs directories list and the "keep - temporary files" option - -2015-09-11 Arnaud Quette - - * drivers/snmp-ups.c: Improve log/debug output trace - -2015-09-08 Charles Lepple - - * drivers/solis.c: solis: resync with end-of-packet character (0.64) - Suggested by @rpvelloso in https://github.com/networkupstools/nut/i - ssues/231#issuecomment-134795747 Note that the driver could - possibly get out-of-sync after initial detection. - -2015-09-07 Charles Lepple - - * docs/man/macosx-ups.txt, drivers/macosx-ups.c: macosx-ups: - gracefully handle disconnection of UPS Tested on 10.9.5 and - 10.10.5. Returns "data stale" when UPS disappears. - -2015-09-07 Arnaud Quette - - * drivers/powerware-mib.c: Bump Powerware SNMP subdriver version - -2015-09-04 Charles Lepple - - * Makefile.am, docs/configure.txt, docs/new-clients.txt, tools/nut- - scanner/README: doc: correct remaining `--with-lib` references - Credit: Paul Vermeer - -2015-09-01 Arnaud Quette - - * drivers/snmp-ups.h: Minor updates to TODO comments - * drivers/snmp-ups.c: Implement ups.alarm for SNMP snmp-ups now - allows to publish alarms in ups.alarm, the same way as with - ups.status - -2015-08-31 Arnaud Quette +Mon Sep 21 08:30:18 UTC 2009 / Arjen de Korte - * drivers/snmp-ups.c: Proper handling of integer RW variables RW - variables were previously supposed to always be strings. Thus, the - multiplier (using the info_len field) was not applied. Also allow - setting float values, not only integer - * drivers/snmp-ups.c, drivers/snmp-ups.h: Fix default SNMP retries - and timeout The previous patch was using the default values from - Net-SNMP, which are set to -1. When the user was not providing - overriden values, this was causing the driver to not be able to - establish the communication with the device. The default values are - now fixed, as per documented (i.e. 5 retries and timeout of 1 - second). Also bump the driver version to 0.74 - * docs/man/ups.conf.txt, drivers/dstate.c: Make more obvious the - socket write failure Document the error that require the use of - the 'synchronous' flag. Also use debug level 1 instead of 2 for the - debug message + - drivers/tripplite-hid.c: add ECO550UPS to list of supported devices. + - data/driver.list: add an entry for the above. -2015-08-23 Charles Lepple +Sun Sep 20 19:06:34 UTC 2009 / Arjen de Korte - * drivers/solis.c: solis: Add upsdebug*() and upslogx() calls for - diagnostics + - drivers/tripplite-hid.c: fix broken matcher function that would + unconditionally reject possibly supported devices, even when the + productid option was supplied. -2015-08-18 Kenny Root +Tue Sep 15 09:06:32 UTC 2009 / Arnaud Quette - * drivers/powerware-mib.c: Add ups.start.auto for Powerware SNMP Use - the IETF UPS MIB to indicate to Powerware devices that it should - restart when mains power is applied. - * drivers/powerware-mib.c: Fix some indentation problems in PowerWare - SNMP - * drivers/powerware-mib.c: Add shutdown.return for Powerware SNMP - The Powerware MIB supports the concept of shutting down with a - delay and then returning when line power is restored. The delay is - set to 0 seconds currently. - * drivers/powerware-mib.c: Add load.{off,on}.delay for Powerware SNMP - The commands to shut down with delay have existed since the first - version of the Powerware MIB so add the newer commands - "load.off.delay" and "load.on.delay" to aid in shutdown scripts. - -2015-08-07 Arnaud Quette - - * drivers/dummy-ups.c, drivers/dummy-ups.h: Fix dummy-ups for - external value changes dummy-ups allow to change the values of the - publicated variables through the standard upsrw tool. This method - is handy to script value changes, in a controlled way, compared to - the dynamic version (using the TIMER keyword in .dev files), which - changes the values in a non controlled way. Bump driver version to - 0.14 - * m4/nut_check_libnss.m4: Fully check for a working Mozilla NSS - Rework the NSS tests so that just having runtime libraries - installed is not enough. Moreover, since GNU libc6 also provides a - nss.h header, the test now checks for both nss.h and ssl.h Closes - networkupstools/nut#184 - * docs/download.txt: Fix Red Hat / Fedora packages repository URL - -2015-08-03 Tomas Halman - - * clients/nutclient.cpp: Problem: nutclient library sometimes reads - socket closed by server. Solution: proper read return value - evaluation - -2015-08-04 Arnaud Quette - - * tools/nut-scanner/scan_snmp.c: Fix a crash on a 2nd call to - libnutscan on behalf of Tomas Halman, from Eaton Opensource Team - -2015-07-24 Nash Kaminski - - * drivers/tripplitesu.c: tripplitesu: Fix initialization when - tripplite firmware is buggy With some Tripplite SU1000RT2U (and - possibly more) UPS's, a firmware bug causes a malformed response to - the very first command that is sent after the serial port is opened - following a warm or cold boot of the system. My theory is that this - related to either the RS232 data lines or handshaking lines being - pulled high once the server's UART is powered however I have not - determined precisely if this is related to the data line being - pulled high or the handshaking lines being asserted. However, I - have been able to consistently reproduce the issue where the driver - fails to start on the first attempt after a cold/warm boot across 3 - different machines and 2 SU1000RT2U UPS's. To workaround this, the - initial enumeration is repeated a 2nd time after 300ms(to allow all - garbage data to arrive) if the first attempt fails, which allows - the driver to consistently startup successfully on the 1st attempt. - Closes networkupstools/nut#220 - -2015-07-24 Tim Smith - - * INSTALL.nut: Spelling fixes Spelling fixes and capitalization of - SUSE - -2015-07-23 Arnaud Quette - - * scripts/augeas/nutupsconf.aug.tpl: Update Augeas lens for ups.conf - Add the various missing global directives and ups fields - -2015-07-20 Daniele Pezzini - - * data/driver.list.in: HCL: fix case and spacing - -2015-07-18 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: when targeting 'UPS No Ack' - consider also the trailing CR In 'fabula' and 'krauler' USB - subdrivers, take into account also the trailing CR in the reply - while looking for a 'UPS No Ack'. - * drivers/nutdrv_qx.c: nutdrv_qx: stay true to return code in - 'fabula' USB subdriver In 'fabula' USB subdriver, when reading - 'UPS No Ack' from device, since we already mimic a timeout, also - empty the reply. - -2015-07-11 Charles Lepple - - * data/driver.list.in: HCL: Fideltronic INIGO Viper 1200 supported by - nutdrv_qx - -2015-07-02 Charles Lepple - - * drivers/usbhid-ups.c: usbhid-ups: bump version to 0.41 Both the - eaton_dual_reportdesc and usbhid_ups_input_vs_feature branches - claimed version 0.40, so let's disambiguate the merged version. - -2015-07-02 Arnaud Quette - - * drivers/libhid.c: Add a debug trace for the number of HID objects - found - * drivers/hidtypes.h: Fix testing typo MAX_REPORT is really 500 (HID - objects), not 50! - * drivers/hidparser.c: Report when there are further unprocessed HID - objects Following the last commits, and especially the MAX_REPORT - one, warn whenever there are remaining HID objects that were not - processed. This may serve - * drivers/hidtypes.h: Increase the maximum number of HID objects The - previous value (300) was causing a trim of the remaining objects. - Increase the value to 500, which should give a bit of time - * drivers/libshut.c, drivers/libshut.h, drivers/libusb.c, - drivers/usb-common.h, drivers/usbhid-ups.c: Add support for Eaton - dual HID report descriptor All devices use HID descriptor at index - 0. However, some newer Eaton units have a light HID descriptor at - index 0, and the full version is at index 1 (in which case, - bcdDevice == 0x0202). This dual report descriptor approach is due - to the fact that the main report descriptor is now too heavy, and - cause some BIOS to hang. A light version is thus provided at the - default index, solving this BIOS issues - -2015-06-27 Charles Lepple - - * drivers/macosx-ups.c: macosx-ups: fix for 10.10 (Yosemite); v1.1 - In OS X 10.9 and earlier, IOPSGetPowerSourcesInfo() returned a - CFDictionary. In 10.10 it returns a CFArray. Programmers are - supposed to use IOPSGetPowerSourceDescription() to gloss over this - distinction. However, this does not make it easy to distinguish - between a laptop battery and an UPS. So the "port" driver option no - longer has any effect. https://developer.apple.com/library/mac/doc - umentation/IOKit/Reference/IOPowerSources_header_reference/#//apple - _ref/c/func/IOPSGetPowerSourceDescription - -2015-06-22 Arnaud Quette - - * scripts/upower/95-upower-hid.rules, tools/nut-usbinfo.pl: Update - UPower HID rules and generator - -2015-06-11 Charles Lepple - - * drivers/usbhid-ups.c: usbhid-ups.c: fall back to HID Input type if - not a Feature - -2015-06-07 Charles Lepple - - * drivers/tripplite-hid.c: tripplite-hid.c: device.part is static - (version 0.82) - -2015-06-04 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: make sure processed item's - boundaries are not wrong - -2015-04-26 Nick Mayerhofer - - * docs/nutdrv_qx-subdrivers.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx.h: nutdrv_qx: improve documentation for some - methods - -2015-06-04 Daniele Pezzini - - * docs/nutdrv_qx-subdrivers.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx.h: nutdrv_qx: remove redundant comments and - update docs - -2015-04-28 Nick Mayerhofer - - * drivers/nutdrv_qx_voltronic.c: nutdrv_qx: move var declaration in - 'voltronic' subdriver Move variable declaration to fulfill - condition '3.3. Portability' of the developer guide. Bump version. - * drivers/libhid.c: libhid: replace "flush loop" with memset Move to - the C way of setting memory (memset), replacing a for loop with a - few anti-patterns in it: - for (...; ; i++) - for (...; i < - MAGIC_NUMBER; ...) - for (...) array[i] = 0 - -2015-05-18 Daniele Pezzini - - * docs/nutdrv_qx-subdrivers.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx.h, drivers/nutdrv_qx_bestups.c, - drivers/nutdrv_qx_mecer.c, drivers/nutdrv_qx_megatec-old.c, - drivers/nutdrv_qx_megatec.c, drivers/nutdrv_qx_mustek.c, - drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_voltronic-qs-hex.c, - drivers/nutdrv_qx_voltronic-qs.c, drivers/nutdrv_qx_voltronic.c, - drivers/nutdrv_qx_zinto.c: nutdrv_qx: give subdrivers a last chance - to process the command Add (and document) a new function - ('preprocess_command()') to preprocess the command to be sent to - the device, just before the actual sending and, in case of instant - commands/setvars, after the 'preprocess()' function has been - triggered (if appropriate). As an example, this function can be - useful to add to all commands (both queries and instant - commands/setvars) a CRC or to fill the command of a query with some - data. Also, in qx_process(), address buf size vs item->answer size - earlier. Update all subdrivers accordingly, bump versions. - -2015-06-01 Arnaud Quette - - * docs/man/snmp-ups.txt, drivers/snmp-ups.c, drivers/snmp-ups.h: - Provide access to Net-SNMP timeout and retries Two new extra - arguments are now available to allow overriding Net-SNMP number of - retries (snmp_retries) and timeout per retry (snmp_timeout). These - respectively maps to snmpcmd "-r retries" and "-t timeout" - -2015-05-29 Arnaud Quette - - * scripts/upower/95-upower-hid.rules: Update UPower HID rules - * tools/nut-usbinfo.pl: Fix UPower device matching for recent kernels - As per the UPower patch below referenced, hiddev* devices now have - class "usbmisc", rather than "usb". See - http://cgit.freedesktop.org/upower/commit/rules/95-upower- - hid.rules?id=9f31068707fc79744961cea7258b0eb262effbf1 - -2015-05-28 Arnaud Quette - - * 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-init.c, tools/nut-scanner/nutscan-init.h, - tools/nut-scanner/nutscan-ip.c, tools/nut-scanner/nutscan-ip.h, - tools/nut-scanner/nutscan-serial.c, tools/nut-scanner/nutscan- - serial.h, tools/nut-scanner/scan_avahi.c, tools/nut- - scanner/scan_eaton_serial.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: - Fix legal information on source-code headers Copyright and author - were not mentioned as it should be. Most of the nut-scanner - copyright belongs to EATON, apart from few parts. Files - descriptions are now also in Doxygen format - -2015-05-18 Daniele Pezzini - - * docs/nutdrv_qx-subdrivers.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx.h, drivers/nutdrv_qx_bestups.c, - drivers/nutdrv_qx_blazer-common.c, drivers/nutdrv_qx_blazer- - common.h, drivers/nutdrv_qx_mecer.c, drivers/nutdrv_qx_megatec- - old.c, drivers/nutdrv_qx_megatec.c, drivers/nutdrv_qx_mustek.c, - drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_voltronic-qs-hex.c, - drivers/nutdrv_qx_voltronic-qs.c, drivers/nutdrv_qx_voltronic.c, - drivers/nutdrv_qx_zinto.c: nutdrv_qx: make preprocessed value's - size_t a const There's no need to intervene on the passed-to-the- - function value of a preprocessed value's size_t, so clarify it is a - const. Update all subdrivers accordingly, bump versions. - * drivers/nutdrv_qx.c: nutdrv_qx: make sure an answer is not reused - if preprocess_answer() fails If an item's preprocess_answer() - function fails, the answer should not be considered valid and - inherited by the following items with the same command. Therefore, - on failure, clear the answer so that the following items are forced - to query the device and preprocess the answer anew, if appropriate. - -2015-05-13 Arnaud Quette - - * docs/download.txt: Update NUT packages for Windows to 2.6.5-6 - -2015-05-07 Arnaud Quette - - * scripts/systemd/nut-server.service.in: Restore systemd relationship - with nut-driver service The Requires directive from nut-server to - nut-driver was previously removed, since it was preventing upsd - from starting whenever one or more drivers, among several, was - failing to start. Use the Wants directive, a weaker version of - Requires, which will start upsd even if the nut-driver unit fails - to start. closes https://github.com/networkupstools/nut/issues/200 - -2015-04-23 Arnaud Quette - - * Makefile.am: Cleanup GPG signature before generation - -2015-04-22 Arnaud Quette - - * configure.ac: bump version back to 2.7.3.1 - * configure.ac: Restore version 2.7.3 for release - * docs/security.txt: Missing link reference update The filename of - the previous GPG release key was not updated, leading to pointing - to the current release key - -2015-04-08 Nick Mayerhofer - - * docs/nutdrv_qx-subdrivers.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx.h: nutdrv_qx: clarify docs/inline comments - -2015-04-16 Arnaud Quette - - * configure.ac: bump version to 2.7.3.1 - -2015-04-15 Arnaud Quette - - * configure.ac: update version to 2.7.3 - * docs/security.txt: Update release signature verification The - release manager key has change. Update the documentation to reflect - it, along with keeping necessary for checking the previous releases - * docs/download.txt: Fix formatting issue - * NEWS, UPGRADING: Final update for release 2.7.3 Complete the - release information for NUT 2.7.3 - * docs/maintainer-guide.txt: Store some comments for latter - processing - -2015-04-10 Arnaud Quette - - * drivers/mge-hid.c: Improve Eaton ABM support for USB/HID units As - per clarifications from David G. Miller (Eaton ABM expert) and - customers request, when ABM is enabled, we now both publish the - following as per the ABM information: - the 5 status bits - {charging, discharging, floating, resting, off} under - battery.charger.status - the 2 historical status bits {CHRG, - DISCHRG} under ups.status When ABM is disabled, we just publish the - 2 historical status bits {CHRG, DISCHRG} under ups.status, as per - UPS.PowerSummary.PresentStatus.{Charging,Discharging}, as done - previously - -2015-04-02 Arnaud Quette - - * conf/ups.conf.sample, docs/man/ups.conf.txt, drivers/dstate.c, - drivers/dstate.h, drivers/main.c: Improve synchronous driver flag - implementation The previous commit was suffering a number of - issues. The present commit fixes these, along with adding more - documentation and a better and more understandable implementation - code. Thanks to Daniele Pezzini for the thorough review Closes: - https://github.com/networkupstools/nut/issues/197 - -2015-04-01 Arnaud Quette - - * docs/man/ups.conf.txt, drivers/dstate.c, drivers/dstate.h, - drivers/main.c: Implement synchronous driver flag As per issue - #197, NUT drivers work by default in asynchronous mode. This means - that all data are pushed by the driver on the communication socket - to upsd (Unix socket on Unix, Named pipe on Windows) without - waiting for these data to be actually consumed. With some HW, such - as ePDUs, that can produce a lot of data, asynchronous mode may - cause some congestion, resulting in the socket to be full, and the - driver to appear as not connected. By enabling the 'synchronous' - flag, the driver will wait for data to be consumed by upsd, prior - to publishing more. This can be enabled either globally or per - driver. - -2015-04-07 Arnaud Quette - - * scripts/systemd/nut-server.service.in: Do not Require systemd nut- - driver for nut-server Put the Requires=nut-driver.service in - comment for nut-server systemd unit file. Thus we don't require - drivers to be successfully started! This was a change of behavior - compared to init SysV, and could prevent from accessing - successfully started drivers, or at least to audit a system - Closes: https://github.com/networkupstools/nut/issues/200 - -2015-04-04 Charles Lepple - - * UPGRADING: UPGRADING: mention SSL permissions (#199) - * docs/security.txt: NSS SSL documentation Addresses new behavior as - part of the NSS forking fix (#199). Formatting and wording fixed as - well. - -2015-04-04 Émilien Kia - - * server/upsd.c: Initialize SSL after deamonize and downgrade to - user. Fix issue #190 - upsd: NSS SSL only working in debug mode - https://github.com/networkupstools/nut/issues/190 - -2015-04-02 Arnaud Quette - - * drivers/eaton-mib.c: Better input.realpower handling for Eaton - ePDUs G2/G3 Improve the way we declare and process - input.realpower, in order to address the variations between Eaton - ePDUs G2 and G3 - -2015-03-19 Arnaud Quette - - * docs/nut-names.txt: Document new variables and commands addition - The variables and commands that were added were not described in - the NUT namespace document. These are: input.transfer.delay - - battery.energysave.load - battery.energysave.delay - - battery.charger.status - outlet.1.shutdown.return - - outlet.2.shutdown.return - * drivers/bcmxcp.c: Fix the letter case of ABM and outlets status - For more coherence with NUT status publication, these status are - now lower case - * drivers/bcmxcp.c: Add missing Author - -2014-10-10 gavrilov-i - - * data/cmdvartab, drivers/bcmxcp.c, drivers/bcmxcp.h: drivers/bcmxcp: - advanced features Closes: #158 Added setvar function exec result - parsing Add command to turn load on after shutdown.stayoff and - shutdown.return. Outlet control changed. Outlet control via - commands "outlet.n.load.on/off" like in other drivers. Variable - outlet.n.staus now only for reading. Some code changes in - outlet.n.shutdown.return command - now supporting more than 3 - outlets (up to 9). Add descriptions to new and some old variables - and commands. Add "bypass.start" command, for enabling bypass. For - returning in On-Line mode exec "load.on" command. Additional - checks of UPS vars. Now add zero var only if it could be changed. - -2015-04-01 Arnaud Quette - - * drivers/eaton-mib.c: Workaround input.{power,realpower} for Eaton - ePDUs Add variable declarations to handle missing - input.{power,realpower} on Eaton ePDUs G2 and G3 1phase. On 3phase, - these variables point at SNMP OIDs that sum up the 3 phases - information. These OIDs should also be present on 1phase, however - it's actually not the case. So simply duplicate the L1 declaration - -2015-03-31 Arnaud Quette - - * drivers/powerware-mib.c: Implement battery.charger.status for Eaton - SNMP This new official variable now replaces the historic - 'vendor.specific.abmstatus', as per other similar implementations - (in usbhid-ups and bcmxcp drivers) - -2015-03-27 Arnaud Quette - - * drivers/mge-hid.c: Implement Eaton ABM support for USB/HID units - Add support for Eaton Advanced Battery Monitoring, for USB/HID - units. Information are provided through the new - battery.charger.status. For now, at least, when ABM is enabled, the - historic CHRG and DISCHRG flags are not published anymore in - ups.status - -2015-03-26 Stuart Henderson - - * data/driver.list.in, docs/man/snmp-ups.txt, docs/snmp- - subdrivers.txt, drivers/Makefile.am, drivers/huawei-mib.c, - drivers/huawei-mib.h, drivers/snmp-ups.c: snmp-ups: new subdriver - for Huawei "Hi, the [commit] below adds a new subdriver for snmp- - ups to support Huawei UPS, based on an observed walk from a - UPS5000-E with a few bits filled in from the MIBs (copy at - http://junkpile.org/HUAWEI_UPS_MIB/)." http://news.gmane.org/find- - root.php?message_id=slrnmh6npf.tg7.stu%40naiad.spacehopper.org - -2015-03-25 Daniele Pezzini - - * drivers/nutdrv_qx_voltronic.c: nutdrv_qx: add support in - 'voltronic' subdriver for P13 protocol - -2015-03-24 Arnaud Quette - - * drivers/mge-hid.c: Complementary Energy Saving data for Eaton USB - devices Add a 2nd HID path for battery.energysave.delay. Depending - on the exact device model, different implementations may be used - -2015-03-22 Daniele Pezzini - - * NEWS: nutdrv_qx: update NEWS about new 'fuji' USB subdriver - -2015-03-21 Daniele Pezzini - - * drivers/nutdrv_qx.c, drivers/nutdrv_qx.h: nutdrv_qx: typedef - testing_t only if TESTING is #defined First reported by GitHub - user @nickma82 - * docs/man/nutdrv_qx.txt, docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: - document 'voltronic-qs-hex' subdriver in man pages - * docs/man/nutdrv_qx.txt, drivers/nutdrv_qx_bestups.c, - drivers/nutdrv_qx_blazer-common.c, drivers/nutdrv_qx_blazer- - common.h, drivers/nutdrv_qx_mecer.c, drivers/nutdrv_qx_megatec- - old.c, drivers/nutdrv_qx_megatec.c, drivers/nutdrv_qx_mustek.c, - drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_voltronic-qs-hex.c, - drivers/nutdrv_qx_voltronic-qs.c, drivers/nutdrv_qx_zinto.c: - nutdrv_qx: add 'ignoresab' flag to support bogus devices Some - UPSes incorrectly report the 'Shutdown Active' bit (7th bit of the - 'status byte') as always on (=1), consequently making the driver - believe the UPS is nearing a shutdown (and, as a result, ups.status - always contains FSD). To workaround this issue, add a new - 'ignoresab' flag that makes the driver do just what its name tells - (IGNORE Status Active Bit) skipping the relative item in qx2nut - tables. References: - - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2015-March/006896.html - - https://github.com/networkupstools/nut/issues/195 - -2015-03-11 Arnaud Quette - - * data/cmdvartab, docs/nut-names.txt: Add some new variable names, - related to ePDUs Add new variables names, related to ePDUs, such - as input.*.load, input.*.realpower and input.*.power - * drivers/eaton-mib.c: Minor update to comments - -2015-02-04 Arnaud Quette - - * drivers/eaton-mib.c: Fix outlet.{power,realpower} data mapping - According to the new mapping using the input collection, these two - data mapping were targeting at the wrong OIDs. - -2015-02-03 Arnaud Quette - - * drivers/eaton-mib.c: Fix and complete a bit Eaton ePDUs support - Add some new data mapping to improve support for Eaton ePDUs. This - commit includes some new NUT data names that requires approval - before being merged - -2015-03-19 Arnaud Quette - - * data/cmdvartab, docs/nut-names.txt, drivers/mge-hid.c: Add more - Energy Saving features for Eaton USB devices Add two new Energy - Saving features: - battery.energysave.delay: to configure the delay - before switching off the UPS if running on battery and load level - low (in minutes) - battery.energysave.realpower: to switch off the - UPS if running on battery and power consumption on UPS output is - lower than this value (expressed in Watts). Note that documentation - in nut-names.txt and cmdvartab was limited to difference with an - upcoming branch merge, that will add the others - * drivers/mge-hid.c: Align Energy Saving variable names Change - ups.load.energysave to battery.energysave.load, to be coherent with - the latest commit made in the bcmxcp driver - -2015-03-10 Arnaud Quette - - * data/cmdvartab, drivers/mge-hid.c: Add a new EnergySaving threshold - for Eaton UPSs Add 'ups.load.energysave' parameter, to enable - energy saving when the power consumption on the UPS output drops - below this value (in percent). This new variable however requires - to go through the NUT RFC process to get approved - -2015-03-19 Arnaud Quette - - * tools/Makefile.am: Also distribute nut-ddl-dump.sh helper script - -2015-03-18 Daniele Pezzini - - * data/driver.list.in: HCL: EUROCASE EA200N 2000VA supported by - nutdrv_qx Protocol: 'megatec' USB subdriver: 'fuji' Reference: ht - tp://thread.gmane.org/gmane.comp.monitoring.nut.user/8808/focus=908 - 1 - * drivers/nutdrv_qx_bestups.c, drivers/nutdrv_qx_blazer-common.c, - drivers/nutdrv_qx_mecer.c, drivers/nutdrv_qx_megatec-old.c, - drivers/nutdrv_qx_megatec.c, drivers/nutdrv_qx_mustek.c, - drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_voltronic-qs-hex.c, - drivers/nutdrv_qx_voltronic-qs.c, drivers/nutdrv_qx_zinto.c: - nutdrv_qx: remove redundancy in blazer-common-dependent subdrivers - Since main nutdrv_qx driver already sets an alarm when FSD arises - (see nutdrv_qx.c>ups_alarm_set()), there is no need to do so in the - various subdrivers. So, in order to prevent a duplicated alarm - message, remove all unneeded code from the affected subdrivers (all - the ones that depend on nutdrv_qx_blazer-common). - -2015-03-17 Daniele Pezzini - - * data/driver.list.in: HCL: update Mecer ME-1000-WTU (supported by - nutdrv_qx) Tested by @sliverc (Oliver Sauder) on NUT 2.7.1 - Reference: https://github.com/networkupstools/nut/issues/148 - -2015-03-16 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: document USB subdrivers' - glitches - * drivers/nutdrv_qx.c: nutdrv_qx: add workaround in 'fuji' subdriver - to support all shutdown.returns As 'fuji' subdriver discards all - the commands of more than 3 characters, in order to support 'SnRm' - shutdown.returns (and hence the standard 'S.5R0003' shutdown.return - with DEFAULT_{ON,OFF}DELAYs) map 'SnRm' shutdown.returns to the - corresponding 'Sn' commands, meanwhile ignoring ups.delay.start and - making the UPS turn on the load as soon as power is back. - * drivers/nutdrv_qx.c: nutdrv_qx: fix command handling in 'fuji' - subdriver 'fuji' subdriver supported devices only allow one 8 - bytes interrupt as a command/query: make the subdriver discard (and - echo back) all the too long commands. - -2014-11-08 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: update man for the new 'fabula' - and 'fuji' USB subdrivers - -2014-06-26 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: add new 'fuji' USB subdriver Add a - new USB subdriver ('fuji') to support models manufactured by Fuji - (and others) and accompained by UPSmart2000I software. - -2015-03-15 Charles Lepple - - * docs/developers.txt, docs/new-drivers.txt: doc: document build - dependencies, etc. Closes: - https://github.com/networkupstools/nut/issues/189 - * docs/nutdrv_qx-subdrivers.txt: doc: fold a few long preformatted - lines in nutdrv_qx developer guide - * docs/FAQ.txt: docs: FAQ update This addresses several issues: * - https://github.com/networkupstools/nut/issues/19 * - https://github.com/networkupstools/nut/issues/191 and Closes: - https://github.com/networkupstools/nut/issues/161 - * docs/man/Makefile.am: docs/man: provide additional detail for - missing asciidoc/a2x error - * configure.ac: configure: indicate required version of - Asciidoc/A2X/dblatex Still doesn't address data-only packages like - docbook-xsl, so leaving this issue open. Reference: - https://github.com/networkupstools/nut/issues/162 - * docs/Makefile.am, docs/man/Makefile.am: Pass --nonet to xsltproc - This prevents xsltproc from downloading DocBook XSL files for each - step in the documentation build process. Reference: - https://github.com/networkupstools/nut/issues/172 Still need to - document what to do if the build fails. - -2015-03-10 Arnaud Quette - - * docs/documentation.txt: Reference DDL on the Documentation page - Add a reference to the NUT Devices Dumps Library (DDL) on the - Documentation page, both for the website and the distributed - documentation. There are separate references, to distinguish the - DDL interest from a user and a developer point of view - -2015-03-06 Arnaud Quette - - * tools/nut-ddl-dump.sh: First stab at a helper script to generate - device dumps This preliminary version only generates .dev (static) - dump files. However, a merge with nut-recorder.sh, which generates - .seq files (dynamic simulation) is to be considered, along with an - improved version for the newer .nds format - -2015-02-24 Charles Lepple - - * data/driver.list.in: HCL: CPS Value 1500ELCD-RU @ 2.6.3 Source: - http://news.gmane.org/find- - root.php?message_id=1423241134.6830.8.camel%40ignatev - * data/driver.list.in: HCL: JAWAN JW-UPSLC02 with blazer_usb @ 2.7.2 - Source: http://news.gmane.org/find-root.php?message_id=SNT404%2dEAS - 8312A94DDAF0FAD4B7702BA52A0%40phx.gbl - -2015-02-22 Charles Lepple - - * scripts/python/app/NUT-Monitor, scripts/python/app/gui-1.3.glade: - NUT-Monitor: updated version to 1.3.1 - -2015-02-14 Charles Lepple - - * NEWS, UPGRADING: NEWS/UPGRADING for 2.7.3 - -2015-02-14 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: specify 'bestups' ranges in man - pages + - data/driver.list: add an entry for Eaton E Series DX UPS (1-20 kVA) with + mge-utalk. -2015-01-03 Daniele Pezzini +Tue Sep 15 08:16:32 UTC 2009 / Arnaud Quette - * drivers/nutdrv_qx_bestups.c: nutdrv_qx: bestups - add support for - 'M' query + - data/driver.list: add an entry for Eaton E Series NV UPS (400-2000 VA) with + megatec_usb (reported by Vitor Choi Feitosa). -2014-11-02 Daniele Pezzini +Tue Sep 8 18:57:51 UTC 2009 / Arjen de Korte - * docs/man/nutdrv_qx.txt, docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: - update man pages for new 'bestups' subdriver - * drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_bestups.c, drivers/nutdrv_qx_bestups.h: - nutdrv_qx: add BestUPS subdriver (protocol=bestups) A subdriver - using Best Power/Sola Australia protocol as described in - http://www.networkupstools.org/protocols/sola.html Based also on - bestups.c and meant to eventually replace it. + - m4/nut_check_libnetsnmp.m4: check for presence of header files to see + if development files are installed -2015-02-14 Michael Fincham +Tue Sep 8 09:39:24 UTC 2009 / Arnaud Quette - * scripts/python/app/NUT-Monitor: Correct unsafe permissions on - ~/.nut-monitor (Debian #777706) fix-permissions-on-start.debdiff - from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=777706#24 - Closes: https://github.com/networkupstools/nut/issues/185 + - drivers/ivtscd.c: complete general information (device.{mfr,model,type}), + - man/ivtscd.8, man/Makefile.am: add the manpage for ivtscd driver, + - data/driver.list: add an entry for IVT SCD-series devices. -2015-02-14 Michal Soltys +Fri Sep 4 08:36:21 UTC 2009 / Arnaud Quette - * drivers/apcsmart.c: apcsmart: fix SEGV in apc_getcaps() ups ... + - scripts/perl/Nut.pm: embed the NUT Perl client module, + (patch from Gabor Kiss) + - COPYING, scripts/README: update information for Perl module inclusion. -2015-02-13 Michal Soltys +Fri Sep 4 08:12:52 UTC 2009 / Arnaud Quette - * drivers/apcsmart.c, drivers/apcsmart.h: apcsmart: fix command set - parsing for protocol version 4 The issue was discovered with - Smart-UPS RT 10000 XL by surr, see - https://github.com/networkupstools/nut/issues/180 When protocol - version is 4, command set query returns string with additional - section after another '.' . This patch updates the code to handle - such string as well. + - drivers/apc-hid.c: fix input.transfer.reason support by using the standard + BOOL lookup mechanism (thanks Arjen), and bump the subdriver version to 0.94. -2015-02-10 Charles Lepple +Thu Sep 3 11:49:12 UTC 2009 / Arnaud Quette - * configure.ac: configure.ac: bump version to 2.7.2.6 for snapshots - * scripts/upower/95-upower-hid.rules: upower: regenerate for Powercom - PID 0001 (PR #121) - * configure.ac: configure.ac: add bug report URL Should be - compatible with Autoconf 2.59 and newer. + - drivers/apc-hid.c: add input.transfer.reason and input.sensitivity, along + with some more reverse engineered information. + (reported by Markus Wildi) -2015-02-04 Arnaud Quette +Wed Sep 2 19:52:21 UTC 2009 / Arjen de Korte - * drivers/netvision-mib.c: Improve support for on-battery detection - Add support for upsAlarmOnBattery OID, to better detect on-battery - events (reported by Henning Fehrmann) - * drivers/libhid.c, drivers/libhid.h: Fix compilation warning related - to sign comparison + - drivers/ietfmib.h,drivers/mgemib.h: Indexes start at 1 (not 0). -2015-01-31 Ryan Underwood +Tue Aug 25 20:40:28 UTC 2009 / Arjen de Korte - * drivers/apc-hid.c, scripts/upower/95-upower-hid.rules: Add a - product ID for APC AP9584 USB kit. Resolves - networkupstools/nut#181 + - drivers/usbhid-ups.[ch]: remove delayed matching which wasn't really + useful, since it requires claiming the device, breaking any existing + bindings in the process (should also fix Alioth bug #311869) -2015-01-12 Charles Lepple +Tue Aug 18 01:22:14 UTC 2009 / Charles Lepple - * scripts/upower/95-upower-hid.rules: upower: regenerate rules file - for OpenUPS PID 0xd005 - * Makefile.am: Add systemd unit dir fix for 'make distcheck' + - drivers/bestfortress.c, man/bestfortress.8, data/driver.list: Resurrect the + bestfortress driver (submitted by Stuart D. Gathman) -2015-01-11 Sergey Kvachonok +Sat Aug 15 17:42:49 UTC 2009 / Charles Lepple - * configure.ac: Undo ${systemdsystemunitdir} mangling. Running sed - 's/\/lib/\${libdir}/' destroys any ${systemdsystemunitdir} values - that don't start with '/lib' e.g. '/usr/lib64/systemd/system' - becomes '/usr/usr/lib6464/systemd/system'. If a local installation - prefix is needed use appropriately prefixed --with- - systemdsystemunitdir='' parameter instead. + - drivers/cps-hid.c, data/driver.list: Add CyberPower OR2200 to usbhid-ups + (reported by James Erickson) -2015-01-02 Charles Lepple +Wed Aug 12 13:42:21 UTC 2009 / Arnaud Quette - * docs/cables.txt, docs/config-notes.txt, docs/configure.txt, - docs/features.txt, docs/history.txt, docs/man/nutdrv_qx.txt, - docs/nut-names.txt, docs/scheduling.txt, docs/security.txt: docs: - typo fixes + - data/drivers.list: also list Inform Informer Compact 1000VA with blazer_ser + (reported by Mutlu Tunç) -2015-01-01 Charles Lepple +Mon Aug 10 12:18:42 UTC 2009 / Arnaud Quette - * docs/cables.txt: docs: MGE NMC pinout Closes - https://github.com/networkupstools/nut/issues/141 - * docs/cables.txt: docs: Best Power cable pinout Closes - https://github.com/networkupstools/nut/issues/164 - * INSTALL.nut: docs: clarify group ownership of directory in - INSTALL.nut Closes - https://github.com/networkupstools/nut/issues/151 - * docs/man/dummy-ups.txt: docs: dummy-ups repeater mode requires `@` - in port name Also reworded parts of the man page. + - drivers/mge-xml.c: add support for newer Eaton ePDU monitored + - man/netxml-ups.8: add a reference to Eaton ePDU monitored + - data/drivers.list: update the Eaton ePDU monitored to include netxml-ups -2014-12-17 bsalvador +Sun Aug 9 15:43:21 UTC 2009 / Arnaud Quette - * drivers/solis.c: Update solis.c to force ScanReceivePack() + - data/drivers.list: add Inform Informer Compact 1000VA + (reported by Mutlu Tunç) -2014-12-12 Andy Juniper +Fri Jul 31 03:07:27 UTC 2009 / Charles Lepple - * clients/upslog.c, docs/man/upslog.txt: upslog: break out of sleep - on SIGUSR1 and log immediately Reference: - http://news.gmane.org/find- - root.php?message_id=54863D44.3000902%40freeuk.com + - drivers/liebert.c: Hard-code the baud rate to 9600 to prevent problems with + noise. -2014-11-25 Charles Lepple +Wed Jul 29 01:37:06 UTC 2009 / Charles Lepple - * data/driver.list.in: HCL: additional NHS models + - data/driver.list: Add "CP 1500C" to compatibility list for usbhid-ups + (reported by Svein Skogen) -2014-11-17 Charles Lepple +Mon Jul 27 22:00:00 UTC 2009 / Arnaud Quette - * data/driver.list.in: HCL: NHS Sistemas de Energia: Expert C - Isolador series Source: http://news.gmane.org/find-root.php?messag - e_id=CADe06rfE5MA%3dyWDZzofPsC7TOgGOU4TRSoi67uMXedymA9L7ow%40mail.g - mail.com + - tools/nut-usbinfo.pl, scripts/dkp/95-devkit-power-hid.rules: remove + the 0x prefix from the VendorIDs -2014-11-07 Arnaud Quette +Mon Jul 27 11:21:21 UTC 2009 / Arnaud Quette - * scripts/subdriver/gen-snmp-subdriver.sh: Various minor fixes to the - SNMP subdriver generator + - tools/nut-usbinfo.pl, scripts/dkp/95-devkit-power-hid.rules: generate + the DeviceKit-power rule file, so that it can be maintained up to + date from the NUT source. + +Mon Jul 20 19:20:35 UTC 2009 / Arjen de Korte -2014-11-06 Charles Lepple + - Renamed 'virtual' to 'clone' driver, to resolve a conflict with the + Postfix virtual domain mail delivery agent man pages - * drivers/openups-hid.c: openups-hid: Fix scale factors for 0xd005 - (0.4) Previous commit had extra scale factors applied. - * drivers/openups-hid.c, drivers/openups-hid.h: openups-hid: voltage - scale factors based on product IDs - * drivers/openups-hid.c: openups-hid: remove a const; this will - require more thought The USB matching routines should have their - parameters marked as "const" to indicate that they do not modify - the matching tables, but that will require more invasive changes. - Roll this back for now. +Sat Jul 11 15:58:16 UTC 2009 / Charles Lepple -2014-11-05 Charles Lepple + * Makefile.am: Add "." to "find" command - * drivers/openups-hid.c: openups-hid: const and float/double fixups - (0.2) - * drivers/openups-hid.c: openups-hid: add USB ProductID d005 for - OpenUPS2 +Sat Jul 11 14:25:00 UTC 2009 / Charles Lepple -2014-11-05 Arnaud Quette + * drivers/nut_usb.c: Add usb_strerror() to USB error messages. - * Makefile.am: Store the git start point as a variable For - ChangeLog, we now store the git start point (older reference) in a - separate variable, to make the process more clear +Tue Jul 7 11:06:32 UTC 2009 / Arnaud Quette -2014-10-31 Charles Lepple + * device collection completion, for the transition period + - drivers/main.c: remap device.{mfr,model,serial} from the ups.* + equivalent, and preset device.type to ups so that it only has to be + overriden if necessary. + - drivers/skel.c: some update for the device collection + - docs/new-names.txt: add the device collection description - * docs/download.txt: Update VMware ESXi package link (from René - Garcia) +Mon Jul 6 09:28:10 UTC 2009 / Arnaud Quette -2014-10-29 Charles Lepple + - drivers/tripplite.c: fix the reading with some SmartUPS models + (patch from Robert Waldie, Opengear) - * scripts/upower/95-upower-hid.rules: upower: Update Belkin and - Liebert rules Follow-up to issue #159. - * drivers/belkin-hid.c, drivers/liebert-hid.c: usbhid-ups: comments - describing Belkin/Liebert/Phoenixtec situation Follow-up to issue - #159. - * data/driver.list.in: HCL: Rucelf UPOII-3000-96-EL supported by - blazer_ser Manufacturer: - http://www.rucelf.ua/en/catalog/upoii-3000-96-el/ Closes: - https://github.com/networkupstools/nut/issues/165 +Tue Jun 30 13:28:42 UTC 2009 / Arnaud Quette -2014-10-28 Elio Parisi + - drivers/baytechmib.h: add outlet.{current,voltage} and fix some + comments (from Scott Burns, Opengear) - * drivers/riello_usb.c: riello_usb: explicitly claim USB interface - Reference: http://news.gmane.org/find-root.php?message_id=7731ed2f9 - 8014b8a90e695a06d077970%40AM3PR07MB289.eurprd07.prod.outlook.com - and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=738122 +Wed May 27 20:35:41 UTC 2009 / Arjen de Korte -2014-10-20 Elio Parisi + - clients/upsmon.c: multilevel debug information (similar to other NUT + binaries) - * drivers/riello_usb.c: riello_usb: timeouts and error handling - (0.03) Small changes in riello_usb.c that solved some problem with - managing transmission errors between the Raspberry Pi and Riello - ups (thanks to Fredrik Öberg): introducing timeout in reading ups - data in cypress_command; enhanced handling error codes - http://news.gmane.org/find-root.php?message_id=f5294e5579574bcbaf5c - dd95523e0b68%40AM3PR07MB289.eurprd07.prod.outlook.com - * drivers/riello_ser.c: riello_ser: enhanced handling error codes - (0.03) +Mon May 25 19:53:02 UTC 2009 / Arjen de Korte -2014-10-20 Charles Lepple - - * docs/.gitignore: docs: docinfo.xml is now auto-generated - -2014-10-20 Nik Soggia - - * drivers/Makefile.am: missing -lm in drivers/Makefile.am Both - bcmxcp and bcmxcp_usb use ldexp(), so both need `-lm`. - http://news.gmane.org/find- - root.php?message_id=544515BA.4060804%40niksoggia.it - -2014-10-10 Paul Chavent - - * drivers/belkin-hid.c: drivers : add Liebert GXT3 device. - * drivers/main.c: drivers : fix possible memory leak. In arguments - parsing, if user option is passed. - -2014-09-30 Michal Soltys - - * drivers/apcsmart.c: apcsmart: increase passes in setvar_enum() - Current 6 is not enough for bigger units - especially if we swap to - the value directly preceeding the current setting. - -2014-09-27 Daniele Pezzini - - * configure.ac, docs/Makefile.am, docs/docinfo.xml, - docs/docinfo.xml.in: docs: add NUT version number/date in PDF - documents Reference: - https://github.com/networkupstools/nut/issues/150 - * docs/chunked.xsl, docs/common.xsl, docs/xhtml.xsl: docs: move - DocBook options common to html stylesheets to common.xsl - * docs/Makefile.am, docs/common.xsl: docs: add NUT version - number/date into footer of HTML pages Reference: - https://github.com/networkupstools/nut/issues/150 - -2014-09-28 Arnaud Quette - - * docs/configure.txt: Clarify a bit more Avahi build requirements - * tools/nut-scanner/Makefile.am: Don't reference subdir-object with - $(top_srcdir) Replace references to objects in separate - directories that were using $(top_srcdir) by the expanded version - '../../'. The variable was otherwise part of the path, resulting in - build failures. This completes commit f8abb9b Closes - networkupstools/nut#155 - * configure.ac: Explicitly use subdir-objects in automake init - Closes networkupstools/nut#155 - -2014-09-27 Arnaud Quette - - * configure.ac, m4/nut_check_asciidoc.m4: Also check for source- - highlight at configure time source-highlight is used for - documentation generation. It's however optional, so we just check - for the sake of completion - -2014-09-27 Arnaud Quette - - * docs/man/Makefile.am, docs/man/asciidoc.conf: Add NUT version - number into footer of HTML man pages Override AsciiDoc default for - footer-txt to include NUT version number into footer of HTML man - pages. This commit addresses the 2nd point of - networkupstools/nut#150 - -2014-09-26 Charles Lepple - - * drivers/tripplite_usb.c: tripplite_usb: set input.voltage.nominal - back to 230V (0.30) Keeps the input.voltage and output.voltage - scaling from 0.28 Discussion: - http://article.gmane.org/gmane.comp.monitoring.nut.user/8719 - -2014-09-26 Arnaud Quette - - * conf/upsmon.conf.sample.in, docs/man/nut.conf.txt, - docs/man/upsmon.conf.txt, docs/packager-guide.txt: Replace outdated - references to shutdown.txt shutdown.txt was merged into config- - notes.txt during the AsciiDoc conversion of the whole documentation - and website. This content is now available in the docs/config- - notes.txt file, section [[UPS_shutdown]] "Configuring automatic - shutdowns for low battery events" - * conf/upsmon.conf.sample.in: Fix default value of POWERDOWNFLAG - POWERDOWNFLAG path changed from the hard-coded value /etc/killpower - to the build-time generated @CONFPATH@/killpower. This resulted in - an unexpected value '/etc/nut/killpower', at least on Debian. - (reported by Laurent Bigonville) Closes networkupstools/nut#74 - -2014-09-25 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: move to ltrim_m()/rtrim_m() - functions - * common/common.c, include/common.h: Add ltrim_m()/rtrim_m() - functions to trim several chars at the same time Also, make - ltrim() / rtrim() wrappers around ltrim_m() / rtrim_m(). - * common/common.c: Make ltrim() modify the input string Also, always - check string length in both ltrim() and rtrim(). Reference: - https://github.com/networkupstools/nut/issues/154 - -2014-09-25 Charles Lepple - - * data/driver.list.in: HCL: sort Tripp Lite models by name, then - increasing power I know this doesn't allow the cell merging code - to do as much, but this should make it easier to find models. - * data/driver.list.in: HCL: add Tripp Lite OMNIVSINT800 - (tripplite_usb) Source: - http://article.gmane.org/gmane.comp.monitoring.nut.user/8713 - * drivers/tripplite_usb.c: tripplite_usb: scale min/max voltages for - SMART protocol (0.29) Observed in a dump file from driver version - 0.11. Scale input.voltage.minimum and input.voltage.maximum the - same way as other voltages. - * drivers/tripplite_usb.c: tripplite_usb: fix voltage scaling for - 240V/1001 (0.28) Reported by Dave Williams: - http://article.gmane.org/gmane.comp.monitoring.nut.user/8713 The - input.voltage and output.voltage scaling for Protocol 1001 did not - factor in the input_voltage_scaled value. - -2014-09-24 Arnaud Quette - - * scripts/python/app/nut-monitor.appdata.xml: Fix compliance of NUT- - Monitor FreeDesktop AppData file Following the upstream update (by - David Goncalves), update the screenshots width and height to - conform to AppData specification: - http://people.freedesktop.org/~hughsient/appdata/ Closes - networkupstools/nut#127 - -2014-05-18 Charles Lepple - - * drivers/genericups.c: genericups: log cable type overrides as they - are parsed Fixes networkupstools/nut#28 Better than nothing, but - without a unit to test against, I don't want to make any more - intrusive changes. - -2014-09-17 Arnaud Quette - - * docs/nut-qa.txt: Minor update and completion Use the new Debian - package tracker URL and add Redhat / Fedora bug tracker - -2014-09-15 Daniele Pezzini - - * data/driver.list.in: HCL: add devices supported by nutdrv_qx - - Fideltronik LUPUS 500 USB Protocol: 'megatec' USB subdriver: - 'fabula' Reference: http://lists.alioth.debian.org/pipermail/nut- - upsuser/2014-June/009059.html - FTUPS FT-1000BS(T) / Voltronic - Power Apex 1KVA Protocol: 'voltronic-qs-hex' USB devices -> USB - subdriver: 'cypress' - FTUPS FT-1000BS / Voltronic Power Imperial - 1KVA Protocol: 'voltronic-qs' USB devices -> USB subdriver: - 'cypress' - -2014-07-11 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: improve the USB matching procedure - Consider also the iManufacturer/iProduct strings when checking - devices (if subdriver is not specified) to assign the right - subdriver in case the VID:PID couple is not specific enough. - -2014-06-30 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: add new 'fabula' USB subdriver Add - a new USB subdriver ('fabula') to support models - manufactured/rebranded by Fideltronik and accompained by - UPSilon2000 software. Reference: - http://lists.alioth.debian.org/pipermail/nut- - upsuser/2014-June/009059.html - -2014-09-03 Daniele Pezzini - - * drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_voltronic-qs-hex.c, drivers/nutdrv_qx_voltronic- - qs-hex.h: nutdrv_qx: add Voltronic-QS-Hex subdriver - (protocol=voltronic-qs-hex) A subdriver using a protocol, specific - to UPSes manufactured by Voltronic Power, partially Hex-encoded - (e.g. 'QS' reply) and supporting some megatec commands. - * docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: update docs about added - support for more complex UPS answers - * drivers/nutdrv_qx.c, drivers/nutdrv_qx.h, - drivers/nutdrv_qx_mecer.c, drivers/nutdrv_qx_megatec-old.c, - drivers/nutdrv_qx_megatec.c, drivers/nutdrv_qx_mustek.c, - drivers/nutdrv_qx_q1.c, drivers/nutdrv_qx_voltronic-qs.c, - drivers/nutdrv_qx_voltronic.c, drivers/nutdrv_qx_zinto.c: - nutdrv_qx: add basic support for more complex UPS answers Add - support (also in 'TESTING' mode) for '\0' chars in raw UPS answers - and the ability to preprocess answers before anything else (e.g.: - for CRC, decoding, ...). Increase verbosity of USB subdrivers and - serial communication. Always print also the return code when - dealing with an error. Update all subdrivers accordingly, bump - versions. - -2014-09-08 Charles Lepple - - * docs/documentation.txt: docs: Add link to Roger Price's openSUSE - writeup - -2014-09-04 Daniele Pezzini - - * drivers/nutdrv_qx.c: nutdrv_qx: prevent a vicious loop when - unexpected answers happen If a 'QX_FLAG_QUICK_POLL' item gets an - unexpected (non-empty) answer and, after returning from - 'qx_ups_walk()', it is not followed by at least one item using a - different 'command', the driver will loop endlessly using the same - 'broken' answer instead of trying to get a new one from the UPS. To - solve this issue, make sure to have an empty 'previous_item' when - starting 'qx_ups_walk()'. Also, bail out of 'qx_ups_walk()' when a - 'QX_FLAG_QUICK_POLL' item can't be preprocessed properly through - 'ups_infoval_set()'. - -2014-09-04 Charles Lepple + * Enable timestamp on debug messages by default + - common/common.c: prepend elapsed number of seconds and microseconds + since start of program for upsdebug() messages, + - drivers/upsdrvctl.c: inform people that adding debug flags to upsdrvctl + is not the way to debug a driver, + - revert remainder of previous patch + +Mon May 18 11:48:31 UTC 2009 / Arnaud Quette - * docs/man/asem.txt: docs: recommend I2C bus name for asem driver + * Enable timestamp on output messages (format "%H:%M:%S: msg") + - common/common.c, include/common.h: modify vupslog() to allow optional + appending of a timestamp on debug output, + - clients/upsmon.c, drivers/main.c, drivers/upsdrvctl.c, server/upsd.c: + enable timestamping using the "-T" option, + - man/upsmon.8, man/nutupsdrv.8, man/upsdrvctl.8, man/upsd.8: document the + timestamp option. -2014-09-03 Arnaud Quette +Thu May 14 19:19:52 UTC 2009 / Arnaud Quette - * docs/man/nut-scanner.txt: Fix typo error in nut-scanner doc The - example network range scanned when using 192.168.0.0/25 is actually - 192.168.0.0 to 192.168.0.12*7* not (i.e. not .128) as previously - stated (reported by Evgeny 'Jim' Klimov) Closes - networkupstools/nut#144 + - drivers/baytechmib.h: add native NUT support for Baytech SNMP PDUs (RPCs), + - drivers/snmp-ups.c: enable Baytech MIB, + - drivers/Makefile.am: add the new MIB file, + - data/driver.list: add the supported PDUs from BayTech, + - man/snmp-ups.8: document the new MIB and devices. + (patch from Scott Burns, Opengear) -2014-09-02 Charles Lepple +Thu May 14 21:06:11 UTC 2009 / Arnaud Quette - * data/driver.list.in, drivers/belkin-hid.c: HCL: Belkin Regulator - PRO-USB 050d:0f51 (0.17) - https://github.com/networkupstools/nut/issues/149 + - drivers/raritan-mib.h: use the outlets template mechanism and remove all + the OIDs defines for a better readability + - drivers/snmp-ups.c: enable Raritan MIB back. + +Thu May 14 19:19:52 UTC 2009 / Arnaud Quette -2014-08-22 Charles Lepple + - drivers/eaton-aphel-mib.h: use the outlets template mechanism. - * data/driver.list.in: HCL: Mecer ME-100-WTU with blazer_usb USB - VID:PID = 0665:5161 Tested by @silvec (Oliver Sauder) on NUT 2.6.3 - Reference: https://github.com/networkupstools/nut/issues/148 +Thu May 14 14:44:22 UTC 2009 / Arnaud Quette -2014-08-19 Charles Lepple + - docs/configure.txt: a bit of completion and standardisation. - * docs/documentation.txt: docs: update links for two articles +Thu May 14 14:23:41 UTC 2009 / Arnaud Quette -2014-08-17 Charles Lepple + - drivers/snmp-ups.[ch]: add a template mechanism for outlets declaration, and + the needed helpers. Also disable temporarily the Raritan MIB as it conflicts + with Eaton (Aphel) . - * tools/nut-usbinfo.pl: nut-usbinfo: fix FreeBSD devd.conf to use - $cdev - * scripts/upower/95-upower-hid.rules: 95-upower-hid.rules: updated by - nut-usbinfo.pl URL updated in previous commit. - * tools/nut-usbinfo.pl: nut-usbinfo: change link from Alioth SVN to - GitHub - * scripts/udev/.gitignore: udev: ignore 62-nut-usbups.rules Follow- - up commit to networkupstools/nut#140 +Wed May 13 13:54:32 UTC 2009 / Arnaud Quette -2014-08-17 Yann E. MORIN + - man/Makefile.am, man/nut.conf.5: add a manpage for nut.conf + (patch from Debian BTS, #528222) - * conf/Makefile.am: conf/: fix parallel install Do not reference the - upsmon.conf.sample twice, otherwise install, with a high number of - make jobs, may fail, like so: http://autobuild.buildroot.net/result - s/256/2567e13cd5bc702bc3a38a1d6fc8e34022cc7db5/build-end.log --- - This is not a rare occurence, as my testing managed to trigger the - issue in about 1 test out of 10 on average, on a not-so-fast - machine. +Tue May 05 13:26:21 UTC 2009 / Arnaud Quette -2014-08-16 Charles Lepple + - drivers/apcsmart.h: add support for older SmartUPS 600 responding to other + D codes (D7, D8 and D9) + (patch from Konstantin 'Kastus' Shchuka) - * tools/nut-usbinfo.pl: nut-usbinfo: ignore *.orig files +Tue May 05 02:01:13 UTC 2009 / Charles Lepple -2014-08-14 Émilien Kia + - drivers/tripplite_usb.c, man/tripplite_usb.8, data/driver.list: update list + of units tested with tripplite_usb - * configure.ac, docs/man/Makefile.am, m4/nut_check_asciidoc.m4: Test - presence of xmllint for manpages doc generation. - * configure.ac, docs/man/Makefile.am, m4/nut_check_asciidoc.m4: Test - presence of xsltproc for manpages doc generation. +Mon May 04 08:11:01 UTC 2009 / Arnaud Quette -2014-08-04 Charles Lepple + - drivers/apcsmart.[ch]: add support for older SmartUPS, which do not respond + to the ^Z, a or b commands (used to inquire the supported data) + (patch from Thomas Juerges) - * docs/man/ups.conf.txt, drivers/libusb.c: Remove redundant - usb_set_altinterface(), unless user requests it Adds flag/value to - USB driver options. Closes networkupstools/nut#138 +Thu Apr 30 21:20:42 UTC 2009 / Arnaud Quette -2014-08-09 Charles Lepple + - data/driver.list: add Apollo 1000A and 1000F compatibility with genericups + upstype=4 (reported by mvochin) - * drivers/blazer_usb.c, drivers/libusb.c, drivers/nutdrv_qx.c, - drivers/tripplite_usb.c, drivers/usb-common.h, drivers/usbhid- - ups.c: libusb.c: consolidate USB-related addvar() calls - * drivers/cps-hid.c: usbhid-ups (CPS): determine battery.voltage - scale factor at runtime If the battery.voltage reading is greater - than 1.4x battery.voltage.nominal, apply a scale factor of 2/3 to - bring the voltage back in line. Closes networkupstools/nut#142 +Thu Apr 23 12:46:12 UTC 2009 / Arnaud Quette -2014-08-08 Arnaud Quette + - man/snmp-ups.8: remove the EXPERIMENTAL section to the profit of a LIMITATION + section. - * docs/man/nut-scanner.txt: Fix typo error Fix a typo error on "-B" - option (reported by Evgeny 'Jim' Klimov) +Fri Apr 17 13:26:21 UTC 2009 / Arnaud Quette -2014-08-05 Arnaud Quette + - data/driver.list: add UPSonic DS-800 compatibility with megatec_usb + (reported by Nick Jenkins) - * scripts/python/Makefile.am: Distribute FreeDesktop AppData file for - NUT Monitor FreeDesktop AppData file for NUT Monitor was not - distributed, waiting for some approval +Sun Mar 29 20:59:09 UTC 2009 / Arjen de Korte -2014-08-01 Arnaud Quette + - drivers/netxml.c: Either do a quick poll or a complete poll (not both). - * scripts/udev/Makefile.am, scripts/udev/README: Fix USB permission - issues related to Linux / udev Rename udev rules file to 62-nut- - usbups.rules, to prevent NUT USB privileges from being overwritten - Closes #140 - * docs/cables.txt: Fix typo error on Eaton / MGE USB-RJ45 cable +Sun Mar 29 20:21:19 UTC 2009 / Arjen de Korte -2014-07-14 Charles Lepple + * clients/upsimage.c, clients/upsstats.c: + - Add ups.temperature, ambient.temperature and ambient.humidity (sorry folks, + Celsius only for now). + - The graph for the battery.charge now honors battery.charge.low for the red zone. + - The number of minor dashes for the battery.charge is reduced. + - Value on the scales is now right aligned. Display of negative values is corrected. + * conf/upsstats-single.html.sample: + - If ambient.(temperature|humidity) is supported, an 'Ambient' column is added to + display the bars for them. - * scripts/Aix/.gitignore: Ignore generated AIX spec file +Thu Mar 26 20:04:53 UTC 2009 / Arjen de Korte -2014-07-14 Giuseppe Corbelli + * drivers/netxml.[ch], drivers/mge-xml.c: + - Allow multiple entry points for the initial XML page that is loaded + - Use different XML pages for quick and full status updates (the latter + is only polled once every 10 times) + +Mon Mar 23 17:34:10 UTC 2009 / Kjell Claesson - * AUTHORS, docs/man/asem.txt: asem: additional documentation - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6741 + - data/driver.list, add Eaton Powerware 9130 compatibility with bcmxcp and usbhid-ups. -2014-07-13 Charles Lepple +Sun Mar 22 01:13:18 UTC 2009 / Alexander I. Gordeev - * docs/man/upscli_get.txt: upscli_get(): mention SIGPIPE handling - Closes: #132 - * data/driver.list.in: HCL: distinguish between Tripp Lite old and - new protocol 3005 + - drivers/blazer_usb.c: read data from device until timeout. -2014-07-13 Arnaud Quette +Mon Mar 16 22:10:30 UTC 2009 / Kjell Claesson - * scripts/python/app/nut-monitor.appdata.xml: Complete FreeDesktop - AppData file for NUT Monitor As per Richard Hughes comments, in - #127, complete the description field + - drivers/bcmxcp.[ch]: Extend alarm map to fix debug crash on PW9130. Driver version 0.22. -2014-07-12 Arnaud Quette +Wed Mar 04 19:37:12 UTC 2009 / Arnaud Quette - * scripts/Aix/nut-aix.spec.in: Minor adjustments as per Github - comments - * docs/configure.txt: Add missing documentation for configure option - The new asem driver introduced --with-linux_i2c, for which - documentation was missing in configure documentation + - drivers/mge-utalk.c: fix enable_ups_comm() + (patch from Hans-Werner Paulsen) -2014-07-11 Charles Lepple +Sun Mar 01 19:51:54 UTC 2009 / Arnaud Quette - * NEWS, data/driver.list.in, docs/man/Makefile.am, docs/man/asem.txt, - docs/man/index.txt: asem: documentation - -2014-07-07 Giuseppe Corbelli - - * configure.ac, data/driver.list.in, drivers/Makefile.am, - drivers/asem.c: Support for ASEM UPS on Linux/i2c Patch from - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6723 - Thread: http://news.gmane.org/find- - root.php?message_id=53A83FCB.1080808%40copanitalia.com Builds on - Ubuntu 12.10 and 14.04; requires libi2c-dev + - data/driver.list, drivers/tripplite-hid.c: add HP T750 INTL + (reported by KP Kirchdoerfer) -2014-07-05 Charles Lepple - - * drivers/tripplite_usb.c: tripplite_usb: fix typos in bin2d() and - control_outlet() (0.27) - * drivers/tripplite_usb.c: tripplite_usb: control_outlet() for - protocol 3005 (0.26) - * drivers/tripplite_usb.c: tripplite_usb: Additional 3005 protocol - support (0.25) http://news.gmane.org/find-root.php?message_id=CAFe - iwyG8HCfg%2dQqxcwhnm1Yo0z0F0BLyOPCYX%2d4yMMFg8sB4QQ%40mail.gmail.co - m - * drivers/tripplite_usb.c: tripplite_usb: basic support for 3005 - binary protocol (0.24) Based on logs from SMART500RT1U - -2014-07-04 vesnn - - * drivers/powercom.c: Update powercom.c Fix Powercom Imperial - initialization for models since 2009 with USB interface. - -2014-06-23 Arnaud Quette - - * scripts/python/app/nut-monitor.appdata.xml: Create a FreeDesktop - AppData file for NUT Monitor appData files provide to users long - descriptions, screenshots and other useful information on - application. This will mainly serve for Software Center like - applications - -2014-06-19 Charles Lepple - - * data/driver.list.in: HCL: Lacerda New Orion 800VA with blazer_usb - http://news.gmane.org/find-root.php?message_id=CANDysWwqgTUMYU03QbP - T8JxEtLd38mvwfTMMhZqS%3d%2diGpdvJDA%40mail.gmail.com - -2014-06-17 Charles Lepple - - * data/driver.list.in: HCL: add APC-Microsol entry for solis - * drivers/solis.c: solis: silence clang warnings about extra - parentheses Since we're in the neighborhood (#133)... Typically, - the idiom is either: if ( a == b ) for equality checking, or: if - ( ( a = b ) ) for assignment with a comparison. - * drivers/solis.c, drivers/solis.h: solis: eliminate fixed-length - string buffer for model name The new APC model name overflows the - buffer. (#133) - -2014-06-16 bsalvador - - * drivers/solis.c: Update on solis.c to add more support to Back-UPS - 1200BR - * drivers/solis.c: Update solis.c to support Microsol-APC Unit. - Added support to Back-UPS 1200BR (Microsol-APC) unit. - -2014-06-15 Charles Lepple - - * docs/man/upscli_get.txt, docs/man/upscli_list_next.txt, - docs/man/upscli_list_start.txt: docs: synchronize upscli_* - numq/numa with header There were a few leftover signed int - parameters in the man pages, but the headers and implementation use - 'unsigned int'. Closes: - https://github.com/networkupstools/nut/issues/131 - * docs/man/solis.txt: docs: mention APC in Microsol driver man page - * docs/man/apcsmart.txt: docs: point APC Microsol users from apcsmart - to solis Also make some of the formatting and grammar self- - consistent. - * drivers/solis.c: solis: recognize APC BZ1200-BR and BZ2200BI-BR - (0.62) Patch suggested by Bruno Salvador for BZ1200-BR, and also - tested by Douglas A. Augusto on BZ2200BI-BR. Reference: * - http://forums.freenas.org/index.php?threads/nobreak-bz1200-br-back- - ups-rs-1200va-600w-bivolt-115-nt.20247/ * - http://news.gmane.org/find-root.php?message_id=CACu22%2d3Nn2R%3dQQe - 9uy%5fPXHRduaPaFgCp2Sw4ra57Ow2qDQcOJQ%40mail.gmail.com - -2014-06-08 Arnaud Quette - - * scripts/subdriver/gen-snmp-subdriver.sh: Inline documentation fixes - -2014-06-03 george - - * scripts/python/module/PyNUT.py: Fixed version description. - * scripts/python/module/PyNUT.py: Added author information, bumped - version. According to the semantic versioning scheme - (http://semver.org/), adding features that do not break backwards - compatibility with previous releases means that the minor version - number should be incremented. - * scripts/python/module/PyNUT.py: Change format of raise keyword. - Fixes PyNUT Python 3 compatibility. - * scripts/python/module/PyNUT.py: PyNUT: Create a custom exception - class. This maintains backwards compatibility, and allows calling - programs to use "except PyNUTError" instead of "except Exception" - when using PyNUT methods. See - https://wiki.python.org/moin/HandlingExceptions for more - information. - * scripts/python/module/PyNUT.py: Fix error when raising without an - Exception. Raising without a valid exception is invalid: >>> - raise Traceback (most recent call last): File "", line 1, in - TypeError: exceptions must be old-style classes or derived - from BaseException, not NoneType >>> raise Exception Traceback - (most recent call last): File "", line 1, in - Exception Changing this to "raise Exception" fixes this problem. - -2014-06-01 Charles Lepple - - * docs/man/tripplite_usb.txt, drivers/tripplite_usb.c: tripplite_usb: - last tweaks, for now. Initialize bv_12V to a dummy value, since - gcc can't see that it is used in the union of both conditionals - where it is set. Also, align the documentation with the strange - definition of empty used by the Tripp Lite state-of-charge - approximation. - * drivers/tripplite_usb.c: tripplite_usb: silence warning (0.23) - Pedantic, to be sure, but someone might try the driver with a - protocol not listed, and sure enough, bv_12V won't be initialized. - * docs/man/tripplite_usb.txt, drivers/tripplite_usb.c: tripplite_usb: - expose battery_min/_max as variables (0.22) - http://news.gmane.org/find- - root.php?message_id=21370.36829.817425.464627%40godel.bruda.ca - -2014-05-27 Charles Lepple - - * data/driver.list.in: HCL: GRAFENTHAL PR-3000-HS supported by snmp- - ups Tested with 2.6.5-3 (0.68) on Windows (IETF MIB 1.4). Some - NUT variables are zero - further testing may be needed. Reference: - http://news.gmane.org/find-root.php?message_id=75FC7A5479BA4A4E8ADF - 76BC3AD3E568581EC753%40MS03.MACLE.DE - -2014-05-23 Charles Lepple - - * drivers/tripplite_usb.c: tripplite_usb: use dv/dq charge - calculation for all models (0.21) - -2014-05-20 Andrew Burdo - - * drivers/powercom-hid.c: Add comments for some values. - * drivers/usbhid-ups.c: Reuse variable. - * drivers/usbhid-ups.c: Add default case. - -2014-05-18 Charles Lepple - - * scripts/upower/95-upower-hid.rules: upower: regenerate rules file - USB VID:PID = 10af:0004 This dependency graph makes my head spin. - * configure.ac: configure.ac: version to 2.7.2.5 for snapshots - -2014-05-13 Daniele Pezzini - - * drivers/compaq-mib.c: compaq-mib: comment out no longer used items - As per 31827d5faa86377efb7a92b7aec322cc4c7a275f - -2014-05-03 Daniele Pezzini - - * docs/download.txt: docs: add Void Linux in download/Binary packages - Reference: https://github.com/networkupstools/nut/issues/125 - -2014-05-03 Charles Lepple - - * docs/Makefile.am: docs: add mge-usb-rj45.jpg to distribution - -2014-05-02 Arnaud Quette - - * docs/images/cables/mge-usb-rj45.jpg: Add MGE information on USB- - RJ45 cable The illustration matching the previous commit was still - needed on the nut repository, and not on the nut-website on - * docs/cables.txt: Add MGE information on USB-RJ45 cable These - information were provided by MGE years ago, and were waiting for - counter testing. Martin De Graaf - Loyer has now fixed this. Note - that the matching illustration will be committed on the new nut- - website repository - -2014-04-29 Andrew Burdo - - * drivers/powercom-hid.c, drivers/usbhid-ups.c: Bump versions. - * data/driver.list.in, docs/man/usbhid-ups.txt: Update documentation. - * drivers/usbhid-ups.c: Reconnect on interrupt read error. - * drivers/libhid.c, drivers/libhid.h, drivers/powercom-hid.c, - drivers/usbhid-ups.c: Reading from the interrupt pipe implies that - you use INPUT flagged objects. - * drivers/powercom-hid.c: Remove erroneous status. - * drivers/powercom-hid.c: Comment non-compliant variables. - -2014-04-17 Andrew Burdo - - * drivers/libhid.c, drivers/libhid.h, drivers/powercom-hid.c, - drivers/usbhid-ups.c: Add support for 0d9f:0001 (USB HID, - Powercom). +Fri Feb 27 09:33:27 UTC 2009 / Arnaud Quette -2014-04-17 Arnaud Quette + - data/driver.list: add Mustek PowerMust 424 / 636 / 848 (USB) compatibility + with blazer_usb (reported by Vitaly Polyakov) - * NEWS, UPGRADING, configure.ac: Update for release 2.7.2 Complete - the release information for NUT 2.7.2 +Fri Feb 27 09:07:05 UTC 2009 / Arnaud Quette -2014-04-17 Stephen J. Butler + - drivers/apcsmart.[ch]: add APC Matrix 5000, vintage 12/00 + (patch from Jarett Stevens) - * drivers/tripplite-hid.c: Scale for SMART1500LCDT +Tue Feb 17 22:00:01 UTC 2009 / Arnaud Quette -2014-04-07 Arnaud Quette + - drivers/Makefile.am: Fix snmp-ups overlinking with lcrypto. + (Debian Lintian report) - * drivers/compaq-mib.c: Fix erroneous status in HP/Compaq SNMP MIB - Using the most recent HP firmware (1.76), erroneous on-battery - status were reported. Also disable an erroneous low-battery - definition (pointing nowhere), while waiting for actual - improvements (report and patch from Philippe Andersson ; Closes - networkupstools/nut#117) +2.4.1 -2014-04-06 Daniele Pezzini +Mon Feb 16 17:41:32 UTC 2009 / Arnaud Quette - * drivers/mge-xml.c: mge-xml: fix compile-time warnings, versioning + - configure.in: 2.4.1 -2014-04-05 Charles Lepple +Mon Feb 16 16:13:47 UTC 2009 / David Goncalves - * data/driver.list.in: HCL: Numeric Digital 800 plus USB VID:PID = - 0665:5161 Reference: networkupstools/nut#115 (blazer_usb @ 2.6.4; - waiting for confirmation with nutdrv_qx) - * data/driver.list.in: HCL: Eaton Powerware 3105 supported by - bcmxcp_usb Closes networkupstools/nut#117 - * data/driver.list.in, drivers/belkin-hid.c: usbhid-ups/belkin-hid: - add support for Emerson Network Power Liebert PSI 1440 USB VID:PID - = 10af:0004 - http://article.gmane.org/gmane.comp.monitoring.nut.user/8479 + - scripts/python/app/NUT-Monitor: Changed version from 1.0 to 1.1. Changed + the way NUT-Monitor deals with 'ups.status' var to better handle composite + status (OL + TRIM, OL + CHRG, ...) -2014-04-05 Arnaud Quette +Thu Feb 12 13:23:41 UTC 2009 / Arnaud Quette - * drivers/al175.c: Fix data format warnings on all architectures - Complete commit 7daa0feb6ed4f1c29bfe14c8e491ba198a4ba643, and - actually fix some of the warnings related data format. Also bump - al175 driver revision - * clients/Makefile.am: Update libupsclient library version - information Following the recent export of libcommon functions in - libupsclient, update the library version information to 4:0:0 + - scripts/udev/Makefile.am, scripts/hal/Makefile.am, scripts/hotplug/Makefile.am, + Makefile.am: fix the autotools issue with the clean/distclean target removing + the USB helper files. -2014-04-04 Arnaud Quette +Wed Feb 11 10:43:10 UTC 2009 / Kjell Claesson - * drivers/al175.c: Fix data format warnings Fix a few warnings - related data format, in debug code - * clients/Makefile.am: Add libnutclient library version information - Add the missing LDFLAGS for adding version information + - data/driver.list: Updated list with ups supported by microdowell driver. -2014-03-21 Arnaud Quette +Thu Feb 05 22:16:10 UTC 2009 / Kjell Claesson - * data/driver.list.in: [HCL] CABAC UPS-1700DV2 supported by - blazer_usb Reported by jammin84 Closes #113 - * clients/Makefile.am, common/Makefile.am: Link libupsclient with - libcommon Fix undefined references related to functions of - libcommon. This issue was reported on Debian: - https://bugs.debian.org/731156 (patch from Matthias Klose ; Closes - Github issue #73) + - drivers/microdowell.c: Cleaned some of the code. Fixed reading of ups.conf variables. -2014-03-18 Charles Lepple +Wed Feb 04 15:01:20 UTC 2009 / Kjell Claesson - * data/driver.list.in: [HCL] Digitus DN-170014 supported by - richcomm_usb Reference: - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2014-March/006695.html -or- http://news.gmane.org/find-root. - php?message_id=CADq9dvWMx0xBz9XXkVKXCre4ox%2d2kSeHtD7LW39eEDH1RCY8s - Q%40mail.gmail.com + - Added microdowell.c/h into drivers/. add man/microdowell.8. Adjusted + drivers/Makefile.am and man/makefile.am. Adjusted the code for 2.4.0 + in the microdowell.c. -2014-03-05 Charles Lepple +*** File trimmed here 28 January 2009 *** - * UPGRADING: Added note about --enable-option-checking=fatal Closes - #99 (really) - -2014-03-05 Émilien Kia - - * scripts/Aix/nut-aix.spec.in: Make web source path independant from - specific version. - * scripts/Aix/nut-aix.spec.in: Use configure-dependant variables - instead of statically defined ones for user and group. - * configure.ac: Use $target_cpu instead of calling uname to know cpu - type. Fix crosscompilation. - -2013-06-14 Vaclav Krpec - - * scripts/Aix/nut-aix.spec.in, scripts/Aix/nut.init: AIX: packaging & - init script improvements (cherry picked from commit - ce195e3a2eff1abbd8e192f4d3e278017d7ffb21) - -2013-06-12 Vaclav Krpec - - * scripts/Aix/nut.init: Fixed client startup detection (cherry - picked from commit 23df5e811cc9008bfa0a37bd174b59890a3760a6) - * scripts/Aix/nut-aix.spec.in: Fixed AIX RPM specfile (cherry picked - from commit 11ba37bf36dcda0398c8c62fab838dd00e54c5db) - -2013-06-11 Vaclav Krpec - - * scripts/Aix/nut-aix.spec.in: Allow libneon-based XML driver & - scanning for AIX (cherry picked from commit - 4c2e89ec584b2015b22f4599d1571c26f2f94e3d) - -2013-06-10 Vaclav Krpec - - * clients/Makefile.am: Fix of AIX-specific parseconf linking bug - Added dummy do_upsconf_args to binaries that use libcommon to - satisfy the linker. libcommon links libparseconf, which calls - do_upsconf_args supplied from above as an implementation-specific - routine. (cherry picked from commit - 0078f9383d3a7af4f3edfed6c78de387a12c6b2b) - -2013-04-25 Vaclav Krpec - - * clients/Makefile.am, clients/upsclient.c, configure.ac: - linupsclient: NUT scanning on AIX bugfix 1/ A simmilar bug like in - Solaris is in AIX itself---non-blocking connect may return -1 while - errno == 0. Shall be treated as EINPROGRESS. 2/ Linking of - libupsclent.so on AIX requires libcommon, otherwise scanning for - NUT crashes with SIGSEGV on unresolved usplogx (cherry picked from - commit 16177f99bc995852bb86d2183958f24f11993632) - -2013-03-13 Vaclav Krpec - - * Makefile.am: AIX packages: make package does the trick (cherry - picked from commit 1d25bd2868339decace5b3028c834746f2824670) - -2013-03-12 Vaclav Krpec - - * scripts/Aix/nut-aix.spec.in, scripts/Aix/nut.init: AIX packaging: - nut-client uninstal bugfix Packages clean uninstallation - (lost/forgotten commit) (cherry picked from commit - f6dd1aec5d2157a3ba3654621fa8e2ac88b060f9) - -2013-03-08 Vaclav Krpec - - * clients/upsclient.c, configure.ac: Solaris/i386: non-blocking - connect WA (cherry picked from commit - d2b466b9ee5402074ccbf7f2967433350affdbcc) - -2013-03-04 Vaclav Krpec - - * Makefile.am, configure.ac, scripts/Aix/nut-aix.spec.in, - scripts/Aix/nut.init: AIX packaging AIX init script and RPM spec. - file added (cherry picked from commit - 3851525edcb417f96a5d1c12fb786b85095b54d4) - -2014-03-03 Charles Lepple - - * data/driver.list.in: HCL: various updates * Closes - https://github.com/networkupstools/nut/issues/107 - * http://lists.alioth.debian.org/pipermail/nut- - upsdev/2013-November/006564.html * http://news.gmane.org/find- - root.php?message_id=50D9D460.1080408%40gmail.com - * http://news.gmane.org/find-root.php?message_id=CA%2b4duQ%3dppW%2b - Pz%2bRVPVXJyFLj0HErh1ZOtm5tk8b6n5Nd5kSk0g%40mail.gmail.com * - http://news.gmane.org/find- - root.php?message_id=528EC53C.9000801%40me.com - * docs/nut-qa.txt: NUT QA document: updated and reworded - * docs/nut-qa.txt: NUT QA document: CR->LF - * docs/FAQ.txt: FAQ: minor updates Update the bestfortress entry, - fix the mythicbeasts URL, and reword a few entries. - -2014-02-13 Charles Lepple - - * docs/man/upsimage.cgi.txt: upsimage.cgi(8): update GD homepage - -2014-03-03 Émilien Kia - - * drivers/nutdrv_qx.h: Detect if TRUE (and FALSE) are already defined - and define bool_t accordingly. - -2014-02-27 Arnaud Quette - - * UPGRADING: Add a note on Hardware Abstraction Layer removal - * INSTALL.nut, autogen.sh, configure.ac, docs/Makefile.am, - docs/configure.txt, docs/developers.txt, docs/features.txt, - docs/macros.txt, docs/new-drivers.txt, docs/nut-hal.txt, - docs/packager-guide.txt, drivers/Makefile.am, drivers/dstate-hal.c, - drivers/dstate-hal.h, drivers/main-hal.c, drivers/main-hal.h, - m4/nut_check_libhal.m4, m4/nut_config_libhal.m4: Remove the - remaining HAL files and references Remove the remaining build - rules, source code and documentation related to the FreeDesktop - Hardware Abstraction Layer (HAL) support. For the record, with this - HAL implementation, NUT drivers were sending data over DBus - (Closes: #99) - -2014-02-24 Charles Lepple - - * drivers/blazer_usb.c, drivers/libusb.c, drivers/nutdrv_qx.c, - drivers/riello_usb.c, drivers/usbhid-ups.c: OpenBSD ports tree - patches for EPROTO Closes networkupstools/nut#44 - -2014-02-26 Arnaud Quette - - * scripts/Makefile.am, scripts/README, scripts/hal/.gitignore, - scripts/hal/Makefile.am, tools/nut-usbinfo.pl: Remove the - generation of HAL support files Remove the code supporting the - generation of HAL FDI file. This is the first commit of a set to - address Github issue #99 - * drivers/snmp-ups.c: Fix snmp-ups segmentation fault A basic sanity - check was missing in the core code of snmp-ups, causing a driver - crash under some specific circumstances, at driver initialisation - time. Hence, this does not affect production systems - * README, UPGRADING, docs/FAQ.txt, docs/config-notes.txt, - drivers/Makefile.am, scripts/Solaris/nut.in, - scripts/Solaris/postinstall.in, scripts/Solaris/preremove.in, - scripts/systemd/nut-driver.service.in, - scripts/systemd/nutshutdown.in: Closes #96: Install upsdrvctl to - $prefix/sbin Install upsdrvctl to $prefix/sbin rather than - $driverexec. upsdrvctl has been historically standing beside the - drivers. It now resides in the system binaries ($prefix/sbin) - directory - -2014-02-25 Arnaud Quette - - * drivers/mge-hid.c: Add improved support for Eaton 5P Add the - necessary hooks to improve support for Eaton 5P range. This - includes post-processing of the model name, along with handling - rules for battery voltage (actual and nominal) - -2014-02-19 Daniele Pezzini - - * docs/Makefile.am, docs/chunked.xsl, docs/common.xsl, - docs/xhtml.xsl: docs: prevent smartphones from being too smart - (docbook) Add HTML tag to not auto-create telephone number - links on mobile browsers also in docbook processed documents. - Reference: https://github.com/networkupstools/nut/issues/78 XSL - files source: - - https://github.com/asciidoc/asciidoc/blob/master/docbook- - xsl/common.xsl - - https://github.com/asciidoc/asciidoc/blob/master/docbook- - xsl/xhtml.xsl - - https://github.com/asciidoc/asciidoc/blob/master/docbook- - xsl/chunked.xsl - * docs/man/asciidoc.conf: docs: prevent smartphones from being too - smart Add HTML tag to not auto-create telephone number - links on mobile browsers. Reference: - https://github.com/networkupstools/nut/issues/78 - -2014-02-15 Arnaud Quette - - * docs/acknowledgements.txt: Update NUT team membership for Daniele - Pezzini Daniele Pezzini is a now a NUT senior developer - -2014-02-14 Arnaud Quette - - * docs/acknowledgements.txt, docs/website/news.txt: Formalizing the - end of the relationship with Eaton The situation of the - relationship with Eaton has evolved, and since 2011 Eaton does not - support NUT anymore. This may still evolve in the future. But for - now, please do not consider anymore that buying Eaton products will - provide you with official support from Eaton, or a better level of - device support in NUT. - -2014-02-14 Charles Lepple - - * Makefile.am: devd: use staging directory for distcheck - * drivers/Makefile.am, drivers/snmp-ups.c, drivers/xppc-mib.c, - drivers/xppc-mib.h: snmp-ups: add XPPC-MIB for Tripp Lite - SU10KRT3/1X - * scripts/subdriver/gen-snmp-subdriver.sh: gen-snmp-subdriver.sh: - documentation updates - -2014-02-10 Charles Lepple - - * scripts/subdriver/gen-snmp-subdriver.sh: gen-snmp-subdriver.sh: fix - option typos * Use '-M' for MIB directories, to match snmpwalk and - the help text. * Add space before '-c' in snmpwalk (not sure how - this worked before) - * scripts/Makefile.am: cosmetic: Indent scripts/Makefile.am - EXTRA_DIST continuation lines - * scripts/Makefile.am: Add gen-snmp-subdriver.sh to distribution - tarball - -2014-02-14 Arnaud Quette - - * docs/acknowledgements.txt: Update NUT team membership for Frédéric - Bohe Frederic Bohe, NUT senior developer and Eaton contractor from - 2009 to 2013, is now a retired member. Thanks for all the hard work - on the Windows port, nut-scanner, Unix packaging, support, ... Also - update the developers membership page, from Alioth to GitHub - -2013-02-24 Charles Lepple - - * autogen.sh, configure.ac, scripts/Makefile.am, - scripts/devd/.gitignore, scripts/devd/Makefile.am, - scripts/devd/README, tools/nut-usbinfo.pl: FreeBSD: generate - devd.conf files for USB UPSes This adds a --with-devd-dir=PATH - option to ./configure, which defaults to /usr/local/etc/devd (or - /etc/devd, whichever is found first). Unlike udev, there does not - seem to be a way to re-trigger rules at runtime. This means you - will likely need to unplug and replug your UPS after installing the - new nut-usb.conf file. - -2014-02-13 Arnaud Quette - - * .gitignore, server/.gitignore: Minor completion to gitignore files - Add a few more exotic targets, related to debug or official - distribution - -2014-02-11 Daniele Pezzini - - * .gitignore, clients/.gitignore, common/.gitignore, conf/.gitignore, - data/.gitignore, data/html/.gitignore, docs/.gitignore, - docs/man/.gitignore, docs/website/.gitignore, - docs/website/scripts/.gitignore, drivers/.gitignore, - include/.gitignore, lib/.gitignore, m4/.gitignore, - scripts/.gitignore, scripts/HP-UX/.gitignore, - scripts/Solaris/.gitignore, scripts/augeas/.gitignore, - scripts/avahi/.gitignore, scripts/hal/.gitignore, - scripts/hotplug/.gitignore, scripts/python/.gitignore, - scripts/systemd/.gitignore, scripts/udev/.gitignore, - scripts/ufw/.gitignore, server/.gitignore, tests/.gitignore, - tools/.gitignore, tools/nut-scanner/.gitignore: Simplify gitignore - files Remove redundancies and old/svn things. Limit the scope - wherever it makes sense. Ignore all cscope files and test logs. - Make ignoring generated files easier to maintain. - -2014-02-11 Charles Lepple - - * drivers/libshut.c: libshut: partially revert PnP/RTS change - Reported by Baruch Even. It is unclear how this will work after - running nut-scanner, but it is more important to keep the drivers - working. Reference: 65db105 / - 2013-09-24T08:18:00Z!fredericbohe@eaton.com Closes: - networkupstools/nut#91 - -2014-02-09 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: update manpage for the newly - supported Voltronic Power P98 units - * drivers/nutdrv_qx.c, drivers/nutdrv_qx_mecer.c, - drivers/nutdrv_qx_mecer.h: nutdrv_qx: improve support for - '(ACK/(NAK' and Voltronic Power P98 UPSes In 'mecer' subdriver's - claim function try to get protocol (QPI, for Voltronic Power - devices) used by the UPS: - supported devices are Voltronic Power's - P98 units - if the UPS doesn't support the QPI command, use its - reply to identify whether it uses '(ACK\r'/'(NAK\r' replies This - way we can catch '(ACK/(NAK' devices, while previously the 'mecer' - subdriver was 'hidden' by the 'megatec' (echo back/'ACK/NAK') one. - Plus Q1 units with 'ACK'/'NAK' replies or echoing back not - supported and rejected commands are no longer wrongly 'claimed' by - the 'mecer' subdriver. - -2014-02-03 Daniele Pezzini - - * docs/.gitignore, docs/Makefile.am, docs/documentation.txt: docs: - build PDF also for cables.txt - -2014-02-02 Daniele Pezzini - - * Makefile.am, configure.ac, docs/.gitignore, docs/Makefile.am, - docs/man/.gitignore, docs/man/Makefile.am, docs/stable-hcl.txt, - docs/user-manual.txt, docs/website/.gitignore, - docs/website/Makefile.am, docs/website/css/ie-overrides.css, - docs/website/css/web-layout.css, - docs/website/css/xhtml11-quirks.css, docs/website/css/xhtml11.css, - docs/website/faviconut.ico, docs/website/faviconut.png, - docs/website/news.txt, docs/website/old-news.txt, - docs/website/projects.txt, docs/website/scripts/.gitignore, - docs/website/scripts/filter_png.js, docs/website/scripts/jquery.js, - docs/website/scripts/nut_jquery.js, docs/website/scripts/toc.js, - docs/website/ups-protocols.txt, docs/website/web-layout.conf, - docs/website/website.txt, tools/Makefile.am, tools/nut-hclinfo.py: - website: move to a standalone website - -2014-01-18 Daniele Pezzini - - * docs/net-protocol.txt: docs: fix a couple of asciidoc errors in - net-protocols.txt - * server/netlist.c: net-protocol: fix closing line of LIST RANGE - -2014-01-16 Charles Lepple - - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: fix permissions-based - crash, and enable vendor variable (1.1) - -2014-01-13 Charles Lepple - - * .gitignore: Ignore cscope.out - * docs/man/.gitignore, docs/man/nutdrv_atcl_usb.txt, - drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: documentation and - logging (v1.0) - -2014-01-11 Charles Lepple - - * drivers/apc-mib.c: snmp-ups: APC SmartBoost and SmartTrim are OL - SmartBoost and SmartTrim are voltage regulation functions that - prevent the UPS from using the battery during brownouts and - overvoltages, so the BOOST and TRIM states are also mapped to OL. - Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6583 - * data/driver.list.in: [HCL] MicroDowell B.Box LP 500: genericups - type 7 Closes networkupstools/nut#83 From @lxp: UPS shutdown - only works when on-battery and has a delay of about 1min until - execution (something between 50sec to 1min 30sec on mine). - References: http://www.ezdirect.it/pdf/lp500.pdf - https://forums.gentoo.org/viewtopic-t-730172-start-0.html - -2014-01-11 Daniele Pezzini - - * drivers/blazer_ser.c, drivers/blazer_usb.c: blazer: fix man page - references - -2014-01-11 Charles Lepple - - * docs/man/nutdrv_atcl_usb.txt, drivers/nutdrv_atcl_usb.c: - nutdrv_atcl: match iManufacturer (vendor) string - * docs/man/snmp-ups.txt: snmp-ups: update and edit documentation - -2014-01-11 Daniele Pezzini - - * data/driver.list.in: HCL: add Atlantis Land/Voltronic Power units - supported by nutdrv_qx - * drivers/nutdrv_qx_blazer-common.c, drivers/nutdrv_qx_blazer- - common.h: nutdrv_qx: fix nutdrv_qx_blazer-common.{c,h} header - comments - * docs/man/nutdrv_qx.txt, docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: - update manuals for new 'voltronic-qs' subdriver - -2013-12-05 Daniele Pezzini - - * drivers/Makefile.am, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_voltronic-qs.c, drivers/nutdrv_qx_voltronic-qs.h: - nutdrv_qx: add Voltronic-QS subdriver (nutdrv_qx - protocol=voltronic-qs) A subdriver using a protocol, specific to - UPSes manufactured by Voltronic Power, based on the 'mustek' one - (i.e. 'QS'). - -2014-01-01 Charles Lepple - - * drivers/nutdrv_atcl_usb.c: nutdrv_atcl_usb: adjusted logging and - retries (v0.02) - * data/driver.list.in, docs/man/Makefile.am, docs/man/index.txt, - docs/man/nutdrv_atcl_usb.txt: nutdrv_atcl_usb: man page and HCL - entries - -2013-12-31 Charles Lepple - - * drivers/.gitignore, drivers/Makefile.am, drivers/nutdrv_atcl_usb.c, - tools/nut-usbinfo.pl: nutdrv_atcl_usb: 'ATCL FOR UPS' new driver - Reference: http://news.gmane.org/find- - root.php?message_id=%3c52B4C54E.1050106%40ariwainer.com.ar%3e - * drivers/libusb.c, drivers/usb-common.h: Move USB_TIMEOUT to usb- - common.h - -2013-12-31 Laurent Bigonville - - * .gitignore, INSTALL => INSTALL.nut, Makefile.am, docs/FAQ.txt, - docs/Makefile.am, docs/configure.txt, docs/packager-guide.txt, - docs/user-manual.txt: Rename INSTALL to INSTALL.nut Rename it to - INSTALL.nut so autoreconf will not try to overwrite it. In Debian - tools like dh_autoreconf calls autoreconf with -f which overwrite - the INSTALL file. - -2013-12-27 Charles Lepple - - * scripts/subdriver/gen-usbhid-subdriver.sh: usbhid-ups: fix call to - is_usb_device_supported() The is_usb_device_supported() function - now takes a USBDevice_t* instead of a pair of USB ID values. - -2013-12-22 Florian Bruhin - - * data/driver.list.in, docs/man/powercom.txt, drivers/powercom.c: Add - OptiUPS VS 575C support to PowerCom Reference: - http://news.gmane.org/find- - root.php?message_id=%3c20131126085646.GM28832%40lupin%3e - -2013-12-11 Denis Yantarev - - * drivers/blazer_usb.c, drivers/nutdrv_qx.c: Fixed incorrectly - reported Ippon response length - -2013-11-30 Daniele Pezzini - - * docs/man/nutdrv_qx.txt, drivers/nutdrv_qx.c, - drivers/nutdrv_qx_blazer-common.c, drivers/nutdrv_qx_blazer- - common.h, drivers/nutdrv_qx_megatec-old.c, - drivers/nutdrv_qx_mustek.c, drivers/nutdrv_qx_q1.c: nutdrv_qx: fix - 'megatec/old' and 'mustek' subdrivers' claim functions Address, - for 'megatec/old' and 'mustek' subdrivers, the same problem fixed - in commit 720975f4de910b270ba705a7f2981c2ee33ca2eb for Q1-based - ones: - Make the claim function of 'megatec/old' and 'mustek' - subdrivers not poll the UPS for 'vendor' informations as they are - not really needed to set these protocols apart from the other ones - (i.e. the 'status' poll is specific enough, at the time of - writing). - Move common 'light' claim function to nutdrv_qx_blazer- - common.{c,h}. - Update manual. - Versioning. - -2013-11-24 Daniele Pezzini - - * docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: improve developer manual - Get rid of useless tables. Fix minor errors/typos. - * drivers/nutdrv_qx.c: nutdrv_qx: versioning - * docs/man/nutdrv_qx.txt, docs/nutdrv_qx-subdrivers.txt: nutdrv_qx: - update manuals for new Q1 subdriver and improve readability - -2013-11-23 Daniele Pezzini - - * drivers/Makefile.am, drivers/nutdrv_qx.c, drivers/nutdrv_qx_q1.c, - drivers/nutdrv_qx_q1.h: nutdrv_qx: add new 'fallback' Q1 subdriver - Add new 'Q1' subdriver. This subdriver implements the same protocol - as the one used by the 'megatec' subdriver minus the vendor (I) and - ratings (F) queries. In the claim function: - it doesn't even try - to get 'vendor' informations (I) - it checks only status (Q1), - through 'input.voltage' variable Therefore it should be able to - work even if the UPS doesn't support vendor/ratings *and* the user - doesn't use the 'novendor'/'norating' flags, as long as: - the UPS - replies a Q1-compliant answer (i.e. not necessary filled with all - of the Q1-required data, but at least of the right length and with - not available data filled with some replacement character) - the - UPS reports a valid input.voltage (used in the claim function) - - the UPS reports valid status bits (1st, 2nd, 3rd, 6th, 7th are the - mandatory ones) This commit reintroduces a functionality of the - blazer subdrivers that was lost because now, in order to tell - whether a device is supported by a subdriver or not, if the user - doesn't call the driver with the 'novendor' flag, both the status - (Q1) and the vendor (I/FW?) queries are needed (that's to better - discern the subdrivers). Reference: - http://lists.alioth.debian.org/pipermail/nut- - upsuser/2013-November/008692.html - -2013-11-23 Charles Lepple - - * configure.in => configure.ac: Rename configure.in to configure.ac - autoconf has been warning about this for a while - let's fix it - before too many branches get created with the old name. - * configure.in: configure.in: bump version to 2.7.1.5 Some packaging - systems don't like the -pre# system. - -2013-11-21 Laurent Bigonville - - * docs/man/ups.conf.txt, docs/man/upsdrvctl.txt, drivers/upsdrvctl.c: - Provide retry options for upsdrvctl and driver(s) As recently seen - in Debian (bugs #694717 and #677143), it may be required to have - upsdrvctl retrying to start the driver in case of failure. More - specifically, a mix of init system (V and systemd), udev and USB - device(s) can result in the /dev entry not being available at - driver startup, thus resulting in a general failure to start NUT. - This commit provides at least a way to overcome this issue. A more - suitable solution will require more work on NUT design. This - patch if based on Arnaud Quette proposal - -2013-11-20 Arnaud Quette - - * Makefile.am: Maintainers targets: distribution signature / hashes - Create some handy targets to ease and automate release publication - -2013-11-19 Charles Lepple - - * configure.in: configure: update version to 2.7.1 - * docs/website/news.txt: news: add 2.7.1 release - * Makefile.am: ChangeLog: use full path to generator script - * docs/website/projects.txt: website: update related project links - -2013-11-18 Arnaud Quette - - * NEWS: Minor reordering of the news - -2013-11-18 Kirill Smelkov - - * MAINTAINERS, docs/man/.gitignore, docs/man/Makefile.am, - docs/man/al175.txt, docs/man/index.txt, docs/man/nutupsdrv.txt, - docs/new-drivers.txt, drivers/Makefile.am, drivers/al175.c: al175: - updated driver, please restore it Back in 2005 I was young and - idealistic, that's why you finally marked al175 as 'broken', but - now I understand your points (some) and that in NUT you need good - portability. So this time I've checked that al175 compiles with - CC="gcc -std=c89 -pedantic", and CC="gcc -std=c99 -pedantic" Also, - I've tried to clean-up the driver based on feedback from 2009, but - unfortunately I no longer have hardware to test and will not have - any in foreseable future, so the driver was reworked to meet the - project code quality criteria, without testing on real hardware. - Some bugs may have crept in. Changes since last posting in 2009: - - patch rebased on top of current master (v2.6.5-400-g214c442); - - added reference to COMLI communication protocol document; - status - decode errors go to log, instead of setting non-conformant status - like "?T", "?OOST", etc. For such errors new loglevel is - allocated; - "High Battery" status is back; - converted tracing - macros to direct use of upsdebugx and numbers 1,2,3,4 for loglevels - as requested (but now lines got longer because of explicit __func__ - usage); - lowered usage of other macros (e.g. REVERSE_BITS - inlined); - alarm(3) is not used anymore - instead whole I/O - transaction time budget is maintained manually; - man page - converted to asciidoc and supported variables list is merged into - it; - upsdebug_ascii moved to common.c and to separate patch. - ~~~~ Changes since al175 was removed from NUT tree in 2008: - - alloca was eliminated through the help of automatic variables - - debugging/tracing were reworked to (almost always) use NUT builtins - - al175 now uses 3 debug levels for (1=user-level info, 2=protocol - debugging, 3=I/O tracing) - rechecked - http://eu1.networkupstools.org/doc/2.2.0/developers.html and - applied where apporpiate Also > This driver does not support - upsdrv_shutdown(), which makes > it not very useful in a real world - application. This alone > warrants 'experimental' status, but for - the below mentioned > reasons (to name a few), it's flagged - 'broken' instead. Yes, at present shutdown is not supported, and - unfortunately now I don't have AL175 hardware at hand, so that I - can't write it and verify the implementation. I've marked the - driver as DRV_EXPERIMENTAL, although it was tested by us as part of - our systems to work OK for more than three years in production - environment on ships (and we don't need shutdown there -- in - critical situations the system has to operate as long as possible, - untill the battery is empty) Also, all of the previous issues - listed below are now fixed in this al175 version: - ‘return’ with - a value, in function returning void (2x) - anonymous variadic - macros were introduced in C99 - C++ style comments are not allowed - in ISO C90 - ISO C forbids braced-groups within expressions (5x) - - ISO C90 forbids specifying subobject to initialize (16x) - ISO C99 - requires rest arguments to be used (18x) Yes, "All the world is - not an x86 Linux box," and I've tried to make all the world happy. - Please apply. Thanks, Kirill. - * common/common.c, docs/developers.txt, include/common.h: common: - upsdebug_ascii() - to dump a message in ascii For debugging ASCII- - based protocols with control characters (e.g. COMLI) it is handy to - dump messages not in hex, but in ascii with human readable codes. - Add utility function to do it. - -2013-11-17 Charles Lepple - - * docs/man/.gitignore, drivers/.gitignore: apcupsd-ups: ignore - generated files - * drivers/apcupsd-ups.c: apcupsd-ups: fix cut-n-paste error - * drivers/apcupsd-ups.c: apcupsd-ups 0.04: use O_NONBLOCK instead of - FIONBIO - * NEWS, docs/man/index.txt: apcupsd-ups: add NEWS and man page link - * UPGRADING: Mention upsrw output change. - * docs/man/nut-recorder.txt: Reword nut-recorder man page - * UPGRADING: UPGRADING: link to man pages for changed drivers - * configure.in: Bump version to 2.7.1-pre2 - * NEWS, UPGRADING: Update NEWS and UPGRADING for 2.7.1 Closes: - networkupstools#37 - * data/driver.list.in: HCL: StarPower PCF-800VA Reported by Don. - Reference: http://news.gmane.org/find-root.php?message_id=%3cCAPO%2 - bLDnApF3ALNfp%5fwaVpHqSuJ9sajKCKXPXLLsAWUWww7Of%3dw%40mail.gmail.co - m%3e - * data/driver.list.in: HCL: Atlantis Land A03-P551(V1.2) supported by - blazer_usb Reported by Giovanni Panozzo. Reference: - http://news.gmane.org/find- - root.php?message_id=%3c51B76B0C.1080109%40panozzo.it%3e Note that - blazer_usb will eventually be replaced by nutdrv_qx. - * clients/nutclient.h, clients/upsclient.c, - conf/upsmon.conf.sample.in, configure.in, docs/FAQ.txt, - docs/man/libnutclient.txt, docs/man/libnutclient_general.txt, - docs/man/upsmon.conf.txt, docs/security.txt, drivers/powerman- - pdu.c, server/netssl.c: Replace 'connexion' with 'connection' in - English contexts Also reworded a few phrases surrounding the - replacements. - * docs/man/.gitignore: asciidoc: ignore all generated blazer*.html - files - * data/driver.list.in: HCL: update CyberPower entries, including - CP900AVR Reported by Craig Duttweiler Reference: - http://news.gmane.org/find- - root.php?message_id=%3c51295F86.4080601%40twistedsanity.net%3e - * docs/stable-hcl.txt: GitHub issues can also be used to report HCL - updates - * docs/website/projects.txt: Update links to related projects - * docs/download.txt: Update download page * Re-added link to - Buildbot snapshot generator * Updated a few links - -2013-11-13 Daniele Pezzini - - * docs/man/.gitignore, drivers/.gitignore: Add nutdrv_qx to - .gitignore files and remove voltronic from them - -2013-11-12 Charles Lepple - - * docs/man/Makefile.am: a2x: use --destination-dir This option seems - to work now. Previously, Asciidoc source files were copied to the - destination directory, but this did not account for included files. - -2013-11-12 Daniele Pezzini - - * docs/man/nutdrv_qx.txt: nutdrv_qx: fix cross links in manpage - Remove links to voltronic manuals. Fix links to blazer manuals. - -2013-11-12 Charles Lepple - - * .gitignore: git: ignore test-driver, and sort ignores list test- - driver is apparently part of automake, generated for libcpp unit - tests. - -2013-11-10 Charles Lepple - - * docs/man/Makefile.am: Include blazer-common.txt in built tarball - -2013-11-10 Daniele Pezzini - - * clients/upsrw.c: upsrw: publish also the maximum length of STRING - rw variables - -2013-11-09 Daniele Pezzini - - * docs/website/scripts/nut_jquery.js: HCL: Improve readability of - nut_jquery.js - * docs/website/scripts/nut_jquery.js: HCL: make support-level filter - show items with a 'higher or equal' level Reference: https://githu - b.com/networkupstools/nut/issues/48#issuecomment-28134135 - * data/driver.list.in: nutdrv_qx: readd HCL's items lost with the - revert of the voltronic merge - * data/driver.list.in: nutdrv_qx: remove superfluous indications from - the HCL - * data/driver.list.in, docs/Makefile.am, docs/man/Makefile.am, - docs/man/index.txt, docs/man/{blzr.txt => nutdrv_qx.txt}, - docs/man/nutupsdrv.txt, docs/new-drivers.txt, ...lzr-subdrivers.txt - => nutdrv_qx-subdrivers.txt}, drivers/Makefile.am, drivers/{blzr.c - => nutdrv_qx.c}, drivers/{blzr.h => nutdrv_qx.h}, ...r_blazer- - common.c => nutdrv_qx_blazer-common.c}, ...r_blazer-common.h => - nutdrv_qx_blazer-common.h}, drivers/{blzr_mecer.c => - nutdrv_qx_mecer.c}, drivers/{blzr_mecer.h => nutdrv_qx_mecer.h}, - ...{blzr_megatec-old.c => nutdrv_qx_megatec-old.c}, - ...{blzr_megatec-old.h => nutdrv_qx_megatec-old.h}, - drivers/{blzr_megatec.c => nutdrv_qx_megatec.c}, - drivers/{blzr_megatec.h => nutdrv_qx_megatec.h}, - drivers/{blzr_mustek.c => nutdrv_qx_mustek.c}, - drivers/{blzr_mustek.h => nutdrv_qx_mustek.h}, - .../{blzr_voltronic.c => nutdrv_qx_voltronic.c}, - .../{blzr_voltronic.h => nutdrv_qx_voltronic.h}, - drivers/{blzr_zinto.c => nutdrv_qx_zinto.c}, drivers/{blzr_zinto.h - => nutdrv_qx_zinto.h}, tools/nut-usbinfo.pl: nutdrv_qx: rename - 'blzr' driver to 'nutdrv_qx' Reference: - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2013-November/006555.html - * docs/stable-hcl.txt, docs/website/css/web-layout.css: Address Issue - #48 (text-based browsers) Reference: https://github.com/networkups - tools/nut/issues/48#issuecomment-28107101 - -2013-11-08 Arnaud Quette - - * docs/website/projects.txt: Cleanup NUT related projects - -2013-10-25 Daniele Pezzini - - * drivers/blazer.c: blazer: Support UPSes that reply '(ACK' when an - instant command succeeds - * drivers/blazer.c: blazer: Fix a discrepancy in the handling of - instant commands Check if the reply we got back from the UPS is - 'ACK' also for the commands stored in the array. - -2013-10-17 Daniele Pezzini - - * docs/man/blazer-common.txt: blazer: Cosmetic changes - * drivers/blazer_ser.c, drivers/blazer_usb.c: blazer: Fix - blazer_{ser,usb} + TESTING Those things are useless when TESTING - is defined - * docs/man/blazer-common.txt: blazer: Fix user manuals - {Serial,USB}-specific sections belong to 'Extra arguments' section - * drivers/blazer_ser.c, drivers/blazer_usb.c: blazer: Versioning - * drivers/blazer.c: blazer: Add more log infos in instcmd - -2013-10-16 Daniele Pezzini - - * docs/man/Makefile.am, docs/man/{blazer.txt => blazer-common.txt}, - docs/man/blazer_ser.txt, docs/man/blazer_usb.txt, - docs/man/index.txt, docs/man/nutupsdrv.txt: blazer: Fix {usb,ser} - manual Split the old blazer manual in two manuals named after - their executables with a common source. - * docs/man/blazer.txt: blazer: Fix user manual Fix minor errors Add - ranges Fix test.battery.start (i.e. minutes instead of seconds) - * drivers/blazer.c: blazer: Fix shutdown sequence Split stop pending - shutdown and shutdown itself so that if we have problems stopping - the shutdown (e.g. there's no shutdown pending and the UPS, because - of that, echoes back the command) we can still shutdown the UPS. - * drivers/blazer.c: blazer: Fix minor error in battery guesstimation - We need both battery.voltage.low and battery.voltage.high to - 'guesstimate' the battery charge - * drivers/blazer.c: blazer: Fix test.battery.start T00 doesn't make - any sense: the range should be 01-99 minutes - * drivers/blazer.c: blazer: Fix shutdown.return 'SnR0000' is meant - to put the UPS down and not return 'Sn' should be used instead when - ondelay is 0 - * drivers/blazer.c: blazer: Fix shutdown delay 'offdelay' as used by - this driver is meant to be in the .2-.9 (12..54 seconds) and 01-10 - (60..600 seconds) range. - -2013-11-03 Charles Lepple - - * data/driver.list.in, docs/man/.gitignore, docs/man/Makefile.am, - docs/man/index.txt, docs/man/voltronic_ser.txt, - docs/man/voltronic_usb.txt, drivers/Makefile.am, - drivers/voltronic.c, drivers/voltronic.h, drivers/voltronic_ser.c, - drivers/voltronic_usb.c, tools/nut-usbinfo.pl: Revert "Merge branch - 'voltronic-driver'" This reverts commit - de07fc7f5e7f68b91507b2bf3d4d3b92b774c3ed, reversing changes made to - a074844f88ca352780dd881b5fa3c435832d165e. The voltronic - funtionality will be a subdriver of the new blazer driver. - -2013-11-04 Daniele Pezzini - - * drivers/blzr_voltronic.c: blzr: Fix log message - * drivers/blzr_voltronic.c: blzr: Fix compile-time error Reference: - http://lists.alioth.debian.org/pipermail/nut- - upsdev/2013-November/006549.html - -2013-10-25 Daniele Pezzini - - * drivers/blzr.c: blzr: Cosmetic changes - * drivers/blzr_megatec-old.c, drivers/blzr_megatec.c, - drivers/blzr_mustek.c, drivers/blzr_zinto.c: blzr: Remove - duplicates in the testing struct - -2013-11-04 Daniele Pezzini - - * drivers/blzr_blazer-common.c, drivers/blzr_blazer-common.h: blzr: - Fix blzr_blazer-common.{c,h} header comments - -2013-10-25 Daniele Pezzini - - * docs/blzr-subdrivers.txt, docs/man/blzr.txt, drivers/Makefile.am, - drivers/blzr.c, drivers/blzr_mecer.c, drivers/blzr_mecer.h: blzr: - Add Mecer subdiver (blzr protocol=mecer) A subdriver covering an - idiom similar to the one used by the megatec subdriver, but with - these peculiarities: - if a command/query is rejected or invalid, - the UPS will reply '(NAK\r' - if a command succeeds, the UPS will - reply '(ACK\r' - -2013-10-17 Daniele Pezzini - - * docs/blzr-subdrivers.txt: blzr: Improve developer manual Add note - on how to group items in blzr2nut array. - * drivers/blzr_voltronic.c: blzr: Fix switch/case Forgot to break at - the end of the case - * docs/man/blzr.txt, drivers/blzr.c, drivers/blzr_voltronic.c: blzr: - Cosmetic changes - -2013-10-16 Daniele Pezzini - - * data/driver.list.in, docs/Makefile.am, docs/blzr-subdrivers.txt, - docs/man/Makefile.am, docs/man/blzr.txt, docs/man/index.txt, - docs/man/nutupsdrv.txt, docs/new-drivers.txt, drivers/Makefile.am, - drivers/blzr.c, drivers/blzr.h, drivers/blzr_blazer-common.c, - drivers/blzr_blazer-common.h, drivers/blzr_megatec-old.c, - drivers/blzr_megatec-old.h, drivers/blzr_megatec.c, - drivers/blzr_megatec.h, drivers/blzr_mustek.c, - drivers/blzr_mustek.h, drivers/blzr_voltronic.c, - drivers/blzr_voltronic.h, drivers/blzr_zinto.c, - drivers/blzr_zinto.h, drivers/dstate-hal.c, drivers/dstate-hal.h, - tools/nut-usbinfo.pl: blzr: New driver 'blzr' New driver for Q* - UPSes. Based on blazer, usbhid-ups and voltronic driver. This - might address Issue #25 - -2013-11-04 Charles Lepple - - * include/Makefile.am: nut_include.h: fail gracefully if git fails - Fix proposed by Jim Klimov. - -2013-11-03 Charles Lepple - - * docs/stable-hcl.txt: HCL: typos - * data/driver.list.in, docs/stable-hcl.txt: HCL: minor cleanup - Remove a duplicate Tripp Lite entry, and add a missing "a". - * docs/stable-hcl.txt: HCL documentation: reword - * data/driver.list.in, docs/acknowledgements.txt: HCL: incorporate - Tripp Lite test results Source: - http://article.gmane.org/gmane.comp.monitoring.nut.user/8173 - * docs/Makefile.am, docs/website/Makefile.am: HCL: additional - dependencies Apparently still not complete, though. - * docs/website/scripts/nut_jquery.js: HCL JavaScript: make key case- - insensitive Also special-case the spelling change for Tripp Lite. - TODO: make the value matching case-insensitive as well. - * docs/website/scripts/nut_jquery.js: HCL JavaScript: update the USB- - matching code Slightly more accurate, but later on we should - really track the connection type as a first-class attribute for - each entry in the HCL. Matching the driver name is brittle. - * docs/website/scripts/nut_jquery.js, tools/nut-hclinfo.py: HCL - generation: don't combine driver names The Python and JavaScript - code for generating the HCL was combining adjacent drivers even - when the support level was different. This clutters up the driver - list a bit, but presents a more accurate picture of support levels. - -2013-10-28 Michal Soltys - - * docs/man/apcsmart.txt: apcsmart: minor man update A short note - about availabilty of apcsmart-old. - * docs/man/apcsmart.txt, drivers/apcsmart.c, drivers/apcsmart.h: - apcsmart: string/comment/text trivial changes - -2013-10-27 Charles Lepple - - * tools/nut-scanner/nutscan-device.c: [nut-scanner] Remove unused - variable - -2013-10-18 Vaclav Krpec - - * tools/nut-scanner/nutscan-device.c, tools/nut-scanner/nutscan- - device.h, tools/nut-scanner/nutscan-display.c, tools/nut- - scanner/scan_nut.c: Nutscan fix and enhancement Closes #60 (GitHub - Pull Request via fbohe) - * docs/man/netxml-ups.txt, drivers/mge-xml.c, drivers/mge-xml.h, - drivers/netxml-ups.c: netxml: added RW access, fixed FSD/shutdown - duration bugs, etc. * Fixed bugs in resolution of FSD condition - and computation of shutdown duration. * Added System.* UPS - variables. * Enabled RW access to appropriate UPS variables. * - Added UPS veriables value convertors. * Added support for XML - protocol v3 {GET|SET}_OBJECT query implementing getvar and setvar - routines. * netxml driver man page updated to include info about - the driver-specific configuration parameters. Closes #59 (GitHub - pull request: "Enhancement for netxml driver") Pull request by: - Frédéric BOHE - * clients/upsc.c, clients/upscmd.c, clients/upslog.c, - clients/upsrw.c: Fix AIX linkage of do_upsconf_args() Closes #58 - (GitHub pull request "Fix AIX build") (cherry picked from commit - 5fc7518f97d2738d791c3c77f2257d05e3a9da3b) - -2013-10-26 Charles Lepple - - * configure.in: Define _REENTRANT for all Solaris and AIX platforms. - This is essentially the final commit in pull request #39. - -2013-10-24 Frédéric BOHE - - * drivers/mge-hid.c: Fix wrong OFF status reported when on battery. - UPS.BatterySystem.Charger.PresentStatus.Used is not related to UPS - outputs being on or off but rather to the charger being on or off. - -2013-10-16 Daniele Pezzini - - * scripts/python/Makefile.am, scripts/python/app/gui-1.3.glade, - .../app/locale/it/LC_MESSAGES/NUT-Monitor.mo, - scripts/python/app/locale/it/it.po, scripts/python/app/nut- - monitor.desktop: Add italian translation - * scripts/python/app/locale/fr/fr.po: Add source of french - translation - * scripts/python/app/gui-1.3.glade.h, scripts/python/app/locale/NUT- - Monitor.pot: Add translation sources - -2013-10-16 Frédéric BOHE - - * drivers/powerware-mib.c, drivers/snmp-ups.c, drivers/snmp-ups.h: - Fix Low Battery detection with ConnectUPS cards The low battery - OID itself cannot be read directly. Low battery alarms OID appears - in an alarm array. - -2013-10-02 Arnaud Quette - - * data/driver.list.in: [HCL] Add support for Eaton 5S Add Eaton 5S - (USB ID 0x0463:0xffff) to the list of usbhid-ups supported models - (reported by Matt Ivie) - -2013-10-02 Frédéric BOHE - - * data/driver.list.in: [HCL] update Eaton UPS - -2013-09-30 Frédéric BOHE - - * drivers/libshut.c: Increment driver revision - -2013-09-28 Alf Høgemark - - * drivers/bcmxcp.c: bcmxcp: Fix handling of date and time format The - date and time bytes are packed BCD, so it must be properly decoded. - The check for the Julian or Month:Day format was wrong Info on - format taken from http://old.networkupstools.org/protocols/eaton/XC - P_Rev_C1_Public_021309.pdf - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for some - more meters and one more command Add mapping for - PW_SET_TIME_AND_DATE command. Add mapping for input.bypass.voltage, - input.bypass.L1-N.voltage, input.bypass.L2-N.voltage, - input.bypass.L3-N.voltage. Add mapping for input.bypass.frequency. - Add mapping for ups.power.nominal if provided as meter, it was - previously only set on init. Change mapping for ups.realpower for - single phase. Tested on Eaton PW9130. - * drivers/bcmxcp.c: bcmxcp: Remove newline on debug output for - outlets - -2013-09-24 Frédéric BOHE - - * drivers/libshut.c, tools/nut-scanner/scan_eaton_serial.c: Change - RTS init level for PnP devices Setting RTS line to 1 disturbs - communication with some devices using serial plug and play feature. - So we need to initialize it to 0. - -2013-09-07 Arnaud Quette - - * data/driver.list.in: Add support for Forza FX-1500LCD Add Forza - FX-1500LCD (USB ID 0x0665:0x5161) to the list of blazer_usb - supported models (reported by Gabor Tjong A Hung) - * data/driver.list.in: Add Schneider APC AP9630 SNMP management card - Add Schneider APC AP9630 SNMP management card to the list of snmp- - ups supported models. Note that it requires the option - "privProtocol=AES" to work (reported by Tim Rice) - * drivers/.gitignore: Git ignore drivers/voltronic_{ser,usb} Add - drivers/voltronic_{ser,usb} to the list of Git ignored files - -2013-08-28 Charles Lepple - - * packaging/RedHat/.gitignore, packaging/debian/.gitignore, - packaging/mandriva/.gitignore, packaging/opensuse/.gitignore: - Remove .gitignore files from long-gone packaging directory. - -2013-08-28 Daniele Pezzini - - * docs/website/css/web-layout.css: Improve CSS readability - * docs/stable-hcl.txt, docs/website/css/web-layout.css: Address Issue - #48 Move legend out of filters' block. (HTML+CSS) - -2013-08-10 Alf Høgemark - - * drivers/bcmxcp.c: bcmxcp: Add instcmd for system test capabilities - based on what UPS support - -2013-08-09 Alf Høgemark - - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Code restructure, - declare variables at top of method After re-reading code style, - compiled with -pedantic, and got some warnings, so moved variable - declarations to the top of methods - * drivers/bcmxcp.c, drivers/bcmxcp_io.h, drivers/bcmxcp_ser.c, - drivers/bcmxcp_usb.c: bcmxcp: Reformat code, remove tabs in the - middle of lines. No code changes After re-reading the developer - code style guide, use spaces and not tabs in the middle of lines to - align text - * drivers/bcmxcp.h: bcmxcp: Reformat code, remove tabs in the middle - of lines. No code changes After re-reading the developer code - style guide, use spaces and not tabs in the middle of lines to - align text - * drivers/bcmxcp.c: bcmxcp: Refactor code, use if-else if rather than - 4 if statements - -2013-08-08 Alf Høgemark - - * drivers/bcmxcp.c: bcmxcp: Add parameter to nut_find_infoval to - control debug output We do not want debug output if - nut_find_infoval does not find a mapped value in all cases. For - example, when a command byte is not mapped to a instcmd, we do not - want debug output. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Remove - PW_UPDATE_POWER_SOURCE_STATUS_COMMAND, it seems very unlikely to be - used - * drivers/bcmxcp.h: bcmxcp: Cosmetic changes constant definitions. No - code changes. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Use command map to - control which instcmd are supported Use the command map info - retrieved from UPS to list all commands supported by the UPS at - debug level 2. Use the info from command map to set up which - instcmd the UPS supports. - * drivers/bcmxcp.c: bcmxcp: Use info_lkp_t structure for mapping - topology info Make code simpler by using the info_lkp_t structure - for mapping value from topology block to text presented to user as - ups.description - * drivers/bcmxcp.c: bcmxcp: Cosmetic commentary fixes and remove some - empty lines. No code changes - * drivers/bcmxcp.c: bcmxcp: Output unsupported alarms on debug level - 3, not level 2 The supported alarms in alarm map is outputted at - debug level 2. The unsupported alarms should be outputted at debug - level 3, it is not that interesting. Also remove debug outputted - empty line after table heading line for meter map and alarm map. - * drivers/bcmxcp.c: bcmxcp: Refactor code for setting which alarms - are supported, to avoid code duplication Refactor the code which - checks the alarm map for supported alarms, by making a new method - which checks the alarm bit to see if the alarm is supported. - * drivers/bcmxcp.c: bcmxcp: Only include ups.serial and device.part - if they have a value Only set info about ups.serial and - device.part if the UPS actually report useful info for these. - Remove the handling of space characters as meaning string - termination for ups.serial, this is not done for part number, and - according to bcmxcp spec are these both 16 byte ascii text - messages. Move Nominal output frequence handling up, placing it - just below Nominal output voltage - -2013-08-04 Charles Lepple - - * docs/man/index.txt, docs/man/voltronic_ser.txt, - docs/man/voltronic_usb.txt: voltronic* documentation updates - Add - to man page index - Reword a few sections - Fix typos - Comment out - USB section in voltronic_ser.txt Long-term, we should probably - figure out a better way to maintain two parallel driver pages like - this. The blazer man page is the same for both, with .so links for - the man pages, but then you have USB info in a serial driver page. - For now, voltronic_usb.txt is just a copy of voltronic_ser.txt with - a few _ser-to-_usb replacements. - -2013-08-01 Daniele Pezzini - - * drivers/voltronic.c: Get rid of 'god.knows' variables - -2013-07-26 Arnaud Quette - - * drivers/powercom-hid.c: Forgotten subdriver version bump - -2013-07-25 Arnaud Quette - - * docs/man/upsc.txt, docs/man/upscmd.txt, docs/man/upsrw.txt: - Complete upsclient commands usage note Add a note for scripting - usage, for upsc, upscmd and upsrw, to state the obvious: only - consider the output from stdout for data requested. stderr may - contain error messages, which can disrupt your script execution. - Address the second task and closes Github issue #30 - * clients/upsclient.c: Fix a minor regression in upsclient output - NSS support has introduced a minor regression in upsclient output. - Clients such as upsc, upscmd and upsrw were particularly affected. - This patch restores a default behavior similar to prior versions. - However, "-v" option remains to be implemented. Address the first - task of Github issue #30 - -2013-07-24 Charles Lepple - - * docs/website/web-layout.conf: Add GitHub link to website sidebar - -2013-07-24 Frédéric BOHE - - * configure.in: Fix wrong errno reported by connect on Solaris - Closes issue #43 - * clients/upsclient.c: Fix connect in multi-threaded environnement on - AIX Closes issue #42 - -2013-07-23 Frédéric BOHE - - * clients/upsclient.c: Fix nut-scanner crash on nut server scan, - upscli_sslinit calls upscli_readline which might calls - upscli_disconnect in case of error. upscli_disconnect frees - ups->host and set it to NULL, so it is illegal to use ups->host - after a call to upscli_sslinit. - -2013-07-23 Charles Lepple - - * clients/Makefile.am: Revert "Fix connect in multi-thread - environnement on Solaris" This reverts the previous commit. It - overwrites the CFLAGS which specifies one of the key include - directories. - -2013-07-23 Frédéric BOHE - - * clients/Makefile.am: Fix connect in multi-thread environnement on - Solaris - * tools/nut-scanner/nutscan-device.c, tools/nut-scanner/nutscan- - device.h, tools/nut-scanner/scan_avahi.c, tools/nut- - scanner/scan_eaton_serial.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: - [nut-scanner] Make sure to return the first device of the list. - -2013-07-22 Charles Lepple - - * docs/download.txt: Download information: reference Git - * configure.in: Bump NUT version to 2.7.1-pre1 - -2013-07-21 Charles Lepple - - * include/Makefile.am: nut_version.h: trim tag characters through - first slash - -2013-04-27 Charles Lepple - - * include/Makefile.am: nut_version.h: remove SVN plumbing This - should eliminate the "Unversioned directory" message. The source of - the version information is also listed in nut_version.h Closes - Github issue #15 - -2013-07-16 Sven Putteneers - - * scripts/python/app/NUT-Monitor: NUT-Monitor: parse battery.runtime - as float Without this patch, I get a flood of "Invalid literal for - int with base 10: '28500.00" errors. http://news.gmane.org/find- - root.php?message_id=%3c51E54B99.9030908%40gmail.com%3e - -2013-07-10 Arnaud Quette - - * docs/website/news.txt, docs/website/projects.txt: Reference walNUT - Gnome Shell extension - -2013-07-09 Charles Lepple - - * drivers/riello_ser.c, drivers/riello_usb.c: riello: suppress some - warnings about %lu versus %u - -2013-07-09 Elio Parisi - - * drivers/riello.h, drivers/riello_ser.c, drivers/riello_usb.c: - riello: whitespace fixes, and read nominal values only once Bumped - driver versions to 0.02 - -2013-07-07 Alf Høgemark - - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add support for reading - topology map and setting ups.description based on it - * drivers/bcmxcp.c: bcmxcp: Initialize variables in - calculate_ups_load method - * drivers/bcmxcp.c: bcmxcp: Output more info hardware capabilities in - debug mode Add some more debug output on driver init, to let us - know what the hardware support. Outputs length of alarm history - log, topology block length and maximum supported command length. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - input.quality to meters - * drivers/bcmxcp.c: bcmxcp: Add Alf Høgemark as one of the authors - for the driver - * drivers/bcmxcp.c: bcmxcp: Only calculate ups.load if the UPS does - not report it directly If the UPS does not report a meter mapped - to ups.load, we try to calculate the ups.load, but we do not - calculate it if the UPS can report the ups.load directly - * drivers/bcmxcp.c: bcmxcp: Use defined constants in setvar, and - handle BCMXCP_RETURN_ACCEPTED_PARAMETER_ADJUST Use the defined - constants from header file, instead of magic numbers in setvar - method. Add handling of BCMXCP_RETURN_ACCEPTED_PARAMETER_ADJUST. - Report upsdrv_comm_good on successful execution of setvar to UPS. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add handling of - BCMXCP_RETURN_ACCEPTED_PARAMETER_ADJUST and others in ACK block - Add support for handling more return statuses when exeucting - commands, the most important being - BCMXCP_RETURN_ACCEPTED_PARAMETER_ADJUST, which means the command - was executed. The others added all handles cases where command was - not executed, but you now get a more detailed entry in log as to - why it was not executed. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - output.L.power to meters Not tested on hardware, due to - lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - battery.current.total to meters Not tested on hardware, due to - lack of hardware supporting it - -2013-07-06 Alf Høgemark - - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - input.realpower to meters input.realpower is not listed in - http://www.networkupstools.org/docs/developer- - guide.chunked/apas01.html, but other drivers use it. Not tested on - hardware, due to lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - ambient.1.temperature to meters Not tested on hardware, due to - lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - input.power to meters input.power is not listed in - http://www.networkupstools.org/docs/developer- - guide.chunked/apas01.html, but other drivers use it. Not tested on - hardware, due to lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - output.powerfactor and input.powerfactor to meters - input.powerfactor is not listed in - http://www.networkupstools.org/docs/developer- - guide.chunked/apas01.html, so a bit unsure if this should be added. - Not tested on hardware, due to lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add mapping for - output.L.power.percent to meters Not tested on hardware, - due to lack of hardware supporting it - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: map ups.date and - ups.time to meters. Not testes on hardware, due to lack of - hardware supporting it - * drivers/bcmxcp.h: bcmxcp: Comment which meter map constants are - mapped to nut variables - -2013-07-05 Alf Høgemark - - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Add constants for all - bcmxmp meter map, and replace magic numbers with constants Take - all the bcmxcp meter map defined in http://old.networkupstools.org/ - protocols/eaton/XCP_Meter_Map_021309.pdf and put them into the - bcmxcp.h file. Update the bcmxcp.c file, replacing magic numbers - for meter map by using the corresponding defined constant. - -2013-07-04 Alf Høgemark - - * drivers/bcmxcp.c: bcmxcp: Let decode_instcmd_exec also handle short - read from UPS - * drivers/bcmxcp.c: bcmxcp: Add test.panel.start instcmd support - * drivers/bcmxcp.c: bcmxcp: Use one fuction to decode command - execution status in all places To avoid duplicating the logic - which checks the status of command execution at UPS, add a new - function which contains the check, and use that function whenever - we send a command to UPS and get status back from UPS. - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: Define byte for - choosing which system test to run in header file - * drivers/bcmxcp.c: bcmxcp: Fix outlet number for - outlet.x.shutdown.return if more than 2 outlets - * drivers/bcmxcp.c: bcmxcp: Let upsdrv_shutdown call instcmd for - shutting down To avoid code duplication between upsdrv_shutdown - and instcmd, let the upsdrv_shutdown method first try to issue a - shutdown.return instcmd, and then proceed with shutdown.stayoff if - the shutdown.return failed. This seems to be in line with what the - usbhid driver does. - * drivers/bcmxcp.c: bcmxcp: report upsdrv_comm_good at successful - execution of instcmd - * drivers/bcmxcp.c: bcmxcp: Return more specific error codes from - instcmd Use the available STAT_INSTCMD_FAILED and - STAT_INSTCMD_INVALID as return value from the instcmd method when - applicable, instead of always returning STAT_INSTCMD_UNKNOWN or -1. - -2013-07-03 Alf Høgemark - - * drivers/bcmxcp.c, drivers/bcmxcp.h: bcmxcp: use command map if - supplied. If UPS supplies command map, use it to control what - commands we register with dstate_addcmd. If UPS does not supply - command map, we register default commands with dstate_addcmd - * data/cmdvartab, drivers/bcmxcp.c: bcmxcp: cosmetic: make changes by - Prachi Gandhi more coherent with rest of driver - * drivers/bcmxcp.c: bcmxcp: Fix method name outputted in debug - message Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6458 - Whitespace was addressed in previous commit (clepple) - -2013-07-03 Charles Lepple - - * drivers/bcmxcp.c: bcmxcp: indentation fixes (no code changes) - -2013-07-03 Alf Høgemark - - * drivers/bcmxcp.c: bcmxcp: add ups.load and battery.voltage.low - Adapted slightly for bcmxcp branch (original patch was against - master). Bump driver version to 0.28 as well. (clepple) Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6460 - -2013-06-18 Daniele Pezzini - - * drivers/voltronic.c: Add unknown/unused and commented capability - entries Might be useful for future versions. - * data/driver.list.in: Add devices to HCL - * drivers/voltronic.c, drivers/voltronic_ser.c, - drivers/voltronic_usb.c: Fix warning flag + versioning Some UPSes - seem to reply with a \0 just before the end of the warning flag - (obtained with QWS), as a consequence of that, the string in C is 1 - char shorter than expected (the \r is not within the string). -> - Fix voltronic_warning function. Increase driver versions. - * drivers/voltronic.c, drivers/voltronic_ser.c, - drivers/voltronic_usb.c: Fix shutdown.return + versioning Fix - shutdown.return when ondelay = 0 -> split between offdelay < 60 and - offdelay > 60. Increase driver versions. - -2013-06-17 Daniele Pezzini - - * docs/man/voltronic_ser.txt, docs/man/voltronic_usb.txt: Correct - typos @shutdown.{return,stayoff} - * drivers/voltronic.c, drivers/voltronic_ser.c, - drivers/voltronic_usb.c: Imrove shutdown sequence + versioning - Split shutdown and stopping of pending shutdowns so that if there's - no shutdown pending and the UPS doesn't accept a shutdown.stop in - this situation (i.e. it replies '(NAK') the shutdown procedure - doesn't get halted. Increase version number of drivers. - * data/driver.list.in: Correct typos & add software reference in HCL - * docs/man/voltronic_ser.txt, docs/man/voltronic_usb.txt: Improve - docs layout - * drivers/voltronic_usb.c: Add USBDevice_t structure - * drivers/voltronic_usb.c: Add comment so that autogen rules have the - right comment - * drivers/voltronic_ser.c, drivers/voltronic_usb.c: Correct manpage - references - -2013-05-14 Bo Kersey - - * drivers/bestfcom.c: bestfcom: Use fc.idealbvolts for calculating - percent charge 'I have a Best Ferrups 3.1KVA and I noticed that - the percent battery voltage reported from upsc never gets above - 69.9%. I believe there is a mistake in the driver. The battery - percentage is calculated based on the High Battery Alarm Setpoint - (59.6V) instead of the Ideal Voltage which is about 54V (4 - batteries x 13.6V). I examined the source code and found that the - variable fc.fullvolts is the result of querying parameter 67 from - the UPS. This parameter is defined per Ferrups Tip 503 as: "The - battery voltage at which the UPS sound a High Battery alarm" A - better value to use in determining the percent battery voltage - would be fc.idealbvolts which is calculated in the driver source... - I propose the following patch to fix the battery.charge (% battery - full) reading.' Ref: - http://article.gmane.org/gmane.comp.monitoring.nut.user/7891 - -2013-05-13 Michal Soltys - - * docs/nut-names.txt: Add device.uptime to nut-names.txt Also fix - one typo. - * docs/man/apcsmart.txt, drivers/apcsmart.c: apcsmart: allow users to - select non-canonical tty mode The main reason behind this addition - is windows compatibility, see - http://article.gmane.org/gmane.comp.monitoring.nut.user/7762 IGNCR - has been readded earlier in commit - 20c52bee77fa0b3ea3c7f8bec25afd103b7ff4a2 - this might be enough to - handle windows behavior, but if it's not the case - using non - canonical processing (same as is present in apcsmart-old) should - solve any pressing issues. - * drivers/apcsmart_tabs.c: apcsmart: add device.uptime to vartab - -2013-04-26 Michal Soltys - - * drivers/apcsmart.c, drivers/apcsmart_tabs.h: apcsmart: remove - APC_DEPR flag APC_{MULTI, PRESENT} are both sufficient for - handling 1:n and n:1 relations - -2013-04-22 Michal Soltys - - * drivers/apcsmart.c: apcsmart: expand APC_MULTI to apc:nut 1:n cases - -2013-04-15 Michal Soltys - - * drivers/apcsmart.c, drivers/apcsmart_tabs.c: apcsmart: change - approach to 2 digit compatibility entries As reported in - http://article.gmane.org/gmane.comp.monitoring.nut.user/7762 - 2 - digit values reported through 'b' are really >255V voltage values. - So we match whole 00 - FF set as single (fake) compat entry. - -2013-04-16 Michal Soltys - - * drivers/apcsmart.c: apcsmart: remove strchr() check from - legacy_verify() As vartab doesn't contain characters from - APC_UNR_CMDS. - -2013-04-15 Michal Soltys - - * drivers/apcsmart.h: apcsmart: re-add CR to ignore sets Despite - icanon mode, windows (supposedly) is uncapable of ignoring CR in - fashion analogous to IGNCR flag. See - http://article.gmane.org/gmane.comp.monitoring.nut.user/7762 for - rationale. - * drivers/apcsmart_tabs.c: apcsmart: add regex format to - ambient.0.temperature 'T' might (on older units) also mean "ups - uptime", so we want to distinguish that case gracefully. The - formats are: uptime: 000.0 temp: 00.00 - -2013-05-03 Andrew Avdeev - - * drivers/powercom-hid.c: PowerCOM BNT-1000AP HID instant commands - Adds a few vendor-specific HID mappings for PowerCOM. Instant - commands supported on UPS [pcm]: beeper.disable - Disable the UPS - beeper beeper.enable - Enable the UPS beeper beeper.toggle - Toggle - the UPS beeper load.off - Turn off the load immediately load.on - - Turn on the load immediately shutdown.return - Turn off the load - and return when power is back shutdown.stayoff - Turn off the load - and remain off test.battery.start.quick - Start a quick battery - test http://article.gmane.org/gmane.comp.monitoring.nut.devel/6435 - -2013-04-25 Christian Wiese - - * tools/nut-scanner/Makefile.am, tools/nut-scanner/scan_usb.c: nut- - scanner: fix scan_usb to remove trailing spaces from output strings - This patch uses rtrim() from libcommon to remove trailing spaces - from serialnumber, device_name and vendor_name. see: - https://github.com/networkupstools/nut/issues/26 - -2013-04-18 Arnaud Quette - - * docs/new-drivers.txt: Add a reference to the SNMP subdrivers - chapter - -2013-04-15 Michal Soltys - - * drivers/apcsmart.c, drivers/apcsmart.h, drivers/apcsmart_tabs.c, - drivers/apcsmart_tabs.h: apcsmart: move variable regex matching - into vartab This also allows us to properly validate (in near - future) cases when single apc variable can match multiple nut - variables. Other changes: - adjust rexhlp() to follow 0 for false - and non-0 for true, like in the rest of the functions - remove - valid_cmd() as rexhlp() can be used directly with formats in the - table; furthermore the warning (in case of failure) could be - confusing when we add nut:apc n:1 case - -2013-04-11 Arnaud Quette - - * drivers/libusb.c: Set USB timeout to 5 seconds Set the low level - USB timeout back to the standard 5 seconds. This was set to 4 - seconds, for performance reasons, but is now causing issues with - some devices (reported by Stefan "stevenbg", GitHub issue #23) - -2013-04-10 Charles Lepple - - * docs/man/.gitignore: Ignore voltronic_* generated documentation - * drivers/voltronic_usb.c: voltronic_usb: switch to new - is_usb_device_supported() syntax - * tools/nut-usbinfo.pl: Add voltronic_usb driver to USB info - extractor tool - -2013-04-10 Daniele Pezzini - - * data/driver.list.in, docs/man/Makefile.am, - docs/man/voltronic_ser.txt, docs/man/voltronic_usb.txt, - drivers/Makefile.am, drivers/voltronic.c, drivers/voltronic.h, - drivers/voltronic_ser.c, drivers/voltronic_usb.c: New drivers: - voltronic_ser/voltronic_usb Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6418 - -2013-04-10 Elio Parisi - - * drivers/riello.c, drivers/riello.h, drivers/riello_ser.c, - drivers/riello_usb.c: Riello drivers: fix memset() arguments, and - use stdint.h Reference: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/6417 - -2013-04-04 Émilien Kia - - * configure.in, docs/new-clients.txt, scripts/Makefile.am, - scripts/README, scripts/java/.gitignore, scripts/java/Makefile.am, - scripts/java/README, scripts/java/jNut/.gitignore, - scripts/java/jNut/README, scripts/java/jNut/pom.xml, - .../main/java/org/networkupstools/jnut/Client.java, - .../java/org/networkupstools/jnut/Command.java, - .../main/java/org/networkupstools/jnut/Device.java, - .../org/networkupstools/jnut/NutException.java, - .../java/org/networkupstools/jnut/Scanner.java, - .../org/networkupstools/jnut/StringLineSocket.java, - .../java/org/networkupstools/jnut/Variable.java, - .../java/org/networkupstools/jnut/ClientTest.java, - .../java/org/networkupstools/jnut/ScannerTest.java, - scripts/java/jNutList/README, scripts/java/jNutList/pom.xml, - .../java/org/networkupstools/jnutlist/AppList.java, - scripts/java/jNutWebAPI/README, scripts/java/jNutWebAPI/pom.xml, - .../jnutwebapi/NutRestProvider.java, - .../jnutwebapi/RestWSApplication.java, - .../jnutwebapi/ScannerProvider.java, - .../jNutWebAPI/src/main/webapp/WEB-INF/web.xml: Remove java related - files (jNut) which will be moved to a separated repository. See - issues: - https://github.com/networkupstools/nut/issues/2 - - https://github.com/networkupstools/nut/issues/22 - -2013-03-26 Alex Lov - - * drivers/ietf-mib.c: Fix OID for input.bypass.voltage in ietf-mib.c - Ooops, forgot fix one - * drivers/ietf-mib.c: Fix OIDs for bypass group in ietf-mib.c - Reference http://tools.ietf.org/html/rfc1628#page-12 For bypass - voltage, current and power - -2013-03-13 Arnaud Quette - - * docs/FAQ.txt: Add a FAQ entry for supported but not working USB UPS - -2013-03-10 Charles Lepple - - * scripts/upower/95-upower-hid.rules: upower: update generated rules - file - -2013-03-09 Charles Lepple - - * docs/download.txt: Update VMware ESXi package link (from René - Garcia) - -2013-02-28 Charles Lepple - - * Makefile.am, tools/gitlog2changelog.py: Issue #4: Specify starting - commit to gitlog2changelog.py - -2013-02-27 Michal Soltys - - * drivers/apcsmart_tabs.c: apcsmart: add old APC 600I compatibility - entry Though without 'T' - until we handle situations when single - nut variable is able to correspond to more than one apc var. - Testet-by: Markus Pruehs - -2013-02-26 Charles Lepple - - * tools/gitlog2changelog.py: git-changelog: really fixes #4 (missing - entries) The script was discarding any commits which happened to - include the word 'commit'. - * tools/gitlog2changelog.py: git-changelog: remove re.* calls for - simple string matching - -2013-02-25 Charles Lepple - - * Makefile.am, tools/Makefile.am: git-changelog: Fix list of - distributed files - * tools/gitlog2changelog.py: Fixes issue #4: ChangeLog now includes - single-file commits. - * Makefile.am, tools/gitlog2changelog.py: Issue #4: generate - ChangeLog from git logs This seems to generate long ChangeLog - entries in the format we had with svn2cl, but some commits appear - to be missing. - * tools/gitlog2changelog.py: Import gitlog2changelog.py (2008-12-27) - https://github.com/cryos/avogadro/commit/8be9957e5b3b5675701ef2ed00 - 2aa9e718d4146e#scripts/gitlog2changelog.py - -2013-02-25 Émilien Kia - - * clients/nutclient.cpp, clients/nutclient.h: Add comparison operator - for nut::Device class. Make std::set work and not - dropping devices anymore. - -2012-11-02 Charles Lepple - - * README, scripts/upower/95-upower-hid.rules: apcupsd-ups: link to - man page from README Patch by Arnaud: https://alioth.debian.org/tr - acker/index.php?func=detail&aid=313846&group_id=30602&atid=411544 - -2012-10-30 Charles Lepple - - * docs/man/apcupsd-ups.txt: apcupsd-ups: Update man page with - variables and units - -2012-09-28 Charles Lepple - - * drivers/apcupsd-ups.c, drivers/apcupsd-ups.h: apcupsd-ups: - Additional variables - * drivers/apcupsd-ups.c, drivers/apcupsd-ups.h: apcupsd-ups: Remove - multiplier from ups.load - -2012-09-27 Charles Lepple - - * docs/man/apcupsd-ups.txt, drivers/apcupsd-ups.c: apcupsd-ups: - miscellaneous cleanup - -2012-09-27 Andreas Steinmetz - - * docs/man/Makefile.am, docs/man/apcupsd-ups.txt, - drivers/Makefile.am, drivers/apcupsd-ups.c, drivers/apcupsd-ups.h: - apcupsd client driver https://alioth.debian.org/tracker/?func=det - ail&atid=411544&aid=313846&group_id=30602 - -2013-02-23 Charles Lepple - - * drivers/bcmxcp.c: bcmxcp: remove unused variable - -2013-02-16 Charles Lepple - - * docs/website/news.txt: News: Git conversion - * docs/developers.txt: Update developer documentation for Git - repository - -2013-02-21 Arnaud Quette - - * .gitignore, scripts/HP-UX/.gitignore: Git ignored files completion - -2013-02-21 Michal Soltys - - * drivers/apcsmart_tabs.c: apcsmart: minor fixups to compat. tables - * drivers/apcsmart.c: apcsmart: verify/setup fixups legacy_verify() - - check against commands we always ignore oldapcsetup() - extra - comments, minor flow change - -2013-02-17 Charles Lepple - - * tools/git-svn.authors, tools/svn2cl.authors: Remove obsolete - authors files. - -2013-02-16 Arnaud Quette - - * .gitignore: Git ignored files completion - -2013-02-06 Frederic Bohe - - * scripts/Solaris/nut.in, scripts/Solaris/postinstall.in: [Solaris] - Fix postinstall user/group, and service start * Fix postinstall - user/group detection/creation. * Fix service start depending on the - mode, and add poweroff command. - -2013-02-04 Emilien Kia - - * include/proto.h: Move __cplusplus/extern "C" begin block before to - fix a problem of ifdef when included in real C++ code. - -2013-02-01 Frederic Bohe - - * configure.in, scripts/HP-UX/makedepot.sh, scripts/HP-UX/nut.psf.in, - scripts/HP-UX/postinstall.in: [HP-UX] : add postinstal script for - installing services files. - -2013-02-01 Arnaud Quette - - * docs/man/snmp-ups.txt: Update SNMP driver documentation Mentioning - 'mib' is not needed anymore since NUT 2.6.2. Also mention 'v3' as - an allowed value for 'snmp_version' (reported by Tim Rice) - -2013-01-29 Michal Soltys - - * drivers/apcsmart.c, drivers/apcsmart.h, drivers/apcsmart_tabs.c, - drivers/apcsmart_tabs.h: apcsmart: implement #311678 (multiple - values per variable) This is a bit more general than the original - request. All variables that return multiple comma-separated - values, are added as *.N.* where 1 <= N <= APC_PACK_MAX; the - variables are stored with temporary name *.0.* in apcsmart_tabs.c, - but only at least 1 and at most 4 are added per update run - (superfluous - if any - are removed), with *.0.* placeholder being - ignored. We assume that the particular variables cannot belong to - the capability set at the same time (as reported by user) - - otherwise we will need a bit more complex handling, including - updates to all setvar functions. - * drivers/apcsmart.c, drivers/apcsmart.h: apcsmart: update logging - logic / apc_read() - logging This mostly adds few macros that - implicitly use or pass caller's name (and in case of hard errors, - line number). This allows removal of a few "failed" / "succeeded" - lines (which in practice don't really happen), for example there is - no need for: upslogx(LOG_ERR, "preread_data: apc_write failed"); - as any hard error will be reported by apc_write() internally, - providing the place and line number it was called at. Similarly, - some upslogx / upsdebugx calls were wrapped in analogous macros to - provide caller's name automatically. Debug levels (-D) were - adjusted to require only one letter. - apc_read() It's been a bit - more scrutinized: - filling up full caller's buffer is considered - an error; shouldn't happen unless the ups is somehow damaged or - some model is capable of returning more than 512 bytes in one read - (current max I witnessed is around 270 bytes during capability - read) - timeout reads (whether it's allowed or not) cannot really - have any non-0 count, though sanity check could theoretically be - useful in non-canonical mode; commented out code was added for - reference - * drivers/apcsmart.c: apcsmart: enhance prtchr() So it can handle 4 - returns with static pointers. - * drivers/apcsmart.c: apcsmart: allow timeout on read in smartmode() - As this function is used to "nudge" ups, we should expect it to - timeout. Also avoids extra log spam. - -2013-01-29 Frederic Bohe - - * scripts/Solaris/postinstall.in: Use variables to generate Solaris - postinstall script. - * scripts/Solaris/postinstall.in: Enhance the Solaris post install - script. - -2013-01-22 Arnaud Quette - - * docs/man/Makefile.am: Remove duplicate entries for Eaton serial - scan - * include/Makefile.am, tools/nut-scanner/Makefile.am: List missing - header files to be distributed nutscan-serial.h and nut_platform.h - were missing from the distribution - * scripts/Solaris/.gitignore: Subversion ignored files completion - Mark Solaris generated packaging files as Subversion ignored (no - functional changes) - * docs/man/.gitignore, docs/man/Makefile.am, docs/man/index.txt, - docs/man/nut-scanner.txt, - docs/man/nutscan_get_serial_ports_list.txt, - docs/man/nutscan_scan_avahi.txt, - docs/man/nutscan_scan_eaton_serial.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, include/nut_platform.h, - tools/nut-scanner/Makefile.am, tools/nut-scanner/nut-scan.h, - tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan- - device.h, tools/nut-scanner/nutscan-display.c, tools/nut- - scanner/nutscan-serial.c, tools/nut-scanner/nutscan-serial.h, - tools/nut-scanner/scan_eaton_serial.c, tools/nut- - scanner/scan_nut.c: Add nut-scanner support for Eaton serial units - nut-scanner and libnutscan now provides respectively an option and - functions to detect Eaton serial devices. The following protocols - are supported: SHUT, XCP and Q1 (patch from Frederic Bohe, with - parts from Arnaud Quette, both for Eaton) - * configure.in: Fix for pthread on HP-UX pthread is compiled on a - stub when -lpthread is not explicitly added. This commit is a - duplicate of [[SVN:3801]], from Frederic Bohe (for Eaton) - * drivers/bcmxcp_ser.c: Change baud-rates ordering for auto-detection - * docs/new-drivers.txt, drivers/serial.c, drivers/serial.h: Add non- - fatal versions of ser_open / ser_set_speed - -2013-01-21 Frederic Bohe - - * scripts/Solaris/nut.in, scripts/Solaris/postinstall.in: Allow - start/stop of NUT from Solaris packages - -2013-01-13 Emilien Kia - - * clients/cgilib.h, clients/status.h, clients/upsimagearg.h, - clients/upslog.h, clients/upsmon.h, clients/upssched.h, - clients/upsstats.h, include/common.h, include/extstate.h, - include/proto.h, include/state.h, include/upsconf.h, server/conf.h, - server/desc.h, server/netcmds.h, server/netget.h, - server/netinstcmd.h, server/netlist.h, server/netmisc.h, - server/netset.h, server/netssl.h, server/netuser.h, - server/sstate.h, server/stype.h, server/upsd.h, server/upstype.h, - server/user-data.h, server/user.h, tools/nut-scanner/nut-scan.h, - tools/nut-scanner/nutscan-device.h, tools/nut-scanner/nutscan- - init.h, tools/nut-scanner/nutscan-ip.h: Protect header files for - C++ inclusion. - -2012-12-19 Arnaud Quette - - * data/driver.list.in: HCL: Add support for Lyonn CTB-1200 Add Lyonn - CTB-1200 (USB ID 0x0665:0x5161) to the list of blazer_usb supported - models (reported by Martin Sarsale) - * docs/stable-hcl.txt: Clarify expected report for shutdown testing - State explicitly that, for now, a statement that the user has - actually tested the shutdown procedure successfully is enough - (report from Martin Sarsale) - -2012-12-19 Frederic Bohe - - * scripts/HP-UX/makedepot.sh, scripts/HP-UX/nut.psf.in: Use installed - binaries to create package - -2012-12-18 Arnaud Quette - - * drivers/delta_ups-mib.c: Fix a typo error and current multiplier - factor - * data/driver.list.in, drivers/Makefile.am, drivers/delta_ups-mib.c, - drivers/delta_ups-mib.h, drivers/snmp-ups.c: Support for DeltaUPS - MIB and Socomec Netys RT 1/1 Add preliminary SNMP support for a - new MIB: DeltaUPS MIB, with sysOID ".1.3.6.1.4.1.2254.2.4". The - first known supported devices are Socomec Netys RT 1/1, equiped - with Netvision SNMP card - -2012-12-18 Michal Soltys - - * drivers/apcsmart.c: apcsmart: add update_info() No need for almost - identical update_info_normal() and update_info_all() - * drivers/apcsmart.c: apcsmart: two fixups In poll_data(): we are - not supposed to set variable after its (formally impossible) - removal In upsdrv_shutdown(): wrong comparison - -2012-12-14 Arnaud Quette - - * data/driver.list.in, drivers/powerp-txt.c, drivers/powerpanel.c: - Add support for CyberPower OL3000RMXL2U Add CyberPower - OL3000RMXL2U serial support to the powerpanel driver, text protocol - version (Alioth patch #313910, from Timothy Pearson) - -2012-12-13 Arnaud Quette - - * docs/Makefile.am, docs/new-drivers.txt, docs/snmp-subdrivers.txt, - scripts/subdriver/gen-snmp-subdriver.sh: Helper script to create - SNMP subdrivers stubs Created a new shell script - (scripts/subdriver/gen-snmp-subdriver.sh) to automatically create a - "stub" subdriver. This will make it a lot easier and quicker to - create subdrivers for snmp-ups. A new documentation chapter has - also been added ("How to make a new subdriver to support another - SNMP device") - * drivers/tripplite-hid.c: Add support for newer TrippLite - Smart1500LCD Add newer TrippLite Smart1500LCD (USB ID - 0x09ae:0x3016) to the list of usbhid-ups supported models (reported - by Steve Salier) - -2012-12-12 Frederic Bohe - - * drivers/mge-hid.c: Fix crash with debug level greater or equal to 2 - -2012-12-10 Michal Soltys - - * drivers/apcsmart.c: apcsmart: add prtchr() helper Add prtchr() - helper and simplify reporting when we check whether some APC - cmd/var character is or isn't printable. - * drivers/apcsmart_tabs.c: apcsmart: apc_cmdtab[] fixup Earlier - commit that adjusted regex checks, also changed cmd fields for all - instant commands handled by custom functions. We cannot do that, as - they are not detected as supported this way. - -2012-12-08 Arnaud Quette - - * drivers/mge-utalk.c, drivers/mge-utalk.h: Change Martin Loyer's - mail address As per Martin's request. - * drivers/mge-utalk.c: Improve mge-utalk general behavior Make two - adjustments to improve the general behavior: first, send the double - "Z" prior to "Si" command. Second, inter-commands delay has been - increased to comply with the specification - -2012-12-08 Michal Soltys - - * drivers/apcsmart.c: apcsmart: serial related stuff a bit more - strict Also: - apc_flush() now loops with >0 condition (otherwise - errored apc_read() might cause inf loop) - ser_comm_good/fail() - were kind of missing in write wrappers - * drivers/apcsmart.c, drivers/apcsmart.h: apcsmart: - sdlist/sdtype/advorder changes - verify 'advorder' with regex - - remove unused defines - as the user is directed towards man page - either way (and without it numbers are kind of meaningless), drop - SDMAX - * drivers/apcsmart.c: apcsmart: setup port after variable - sanitization in upsdrv_initups() - * drivers/apcsmart.c: apcsmart: cleanup dstate ok/stale calls - * drivers/apcsmart.c: apcsmart: getbaseinfo() fixup In extremely - unlikely case of failing write, report it up and act accordingly. - * drivers/apcsmart.c, drivers/apcsmart.h, drivers/apcsmart_tabs.c, - drivers/apcsmart_tabs.h: apcsmart: adjust regex logic A bit - simpler / tighter now. - * drivers/apcsmart.c: apcsmart: add var_string_setup() In theory - deprecate_vars() should also consider APC_STRING variables. In - practice - we don't have any variables that are both APC_MULTI and - APC_STRING - but it's more correct this way, so let's do it. - * drivers/apcsmart.c: apcsmart: cosmetics - code shuffling, - comments, flow - rename query_ups() -> legacy_verify() - add few - lines of help directing to man page - * drivers/apcsmart.c: apcsmart: simplify query_ups() / - proto_verification() Both functions rely now on common variable - verificaion function. - * drivers/apcsmart.c: apcsmart: add var_verify() The function will - be used in subsequent commit for common verification. - * drivers/apcsmart.c: apcsmart: shuffle two functions query_ups() - and oldapcsetup() - * drivers/apcsmart.c: apcsmart: simplify query_ups() This commit - changes query_ups() function and makes it rely on the same - deprecate_vars() logic that protocol_verify() requires. We can - shorten the code a bit now, and it allows us to do more - simplifications in subsequent commits. - * drivers/apcsmart.c: apcsmart: add functions informing about - [un]supported cmds/vars In unified fashion, instead of each - protocol-verification related function doing it on its own. - * drivers/apcsmart.c, drivers/apcsmart.h, drivers/apcsmart_tabs.c, - drivers/apcsmart_tabs.h: apcsmart: minor tidying up comments, - trivial changes, code shuffling ... - * drivers/apcsmart.c: apcsmart: remove unused field 'def' from cchar - In apc_ser_diff() reporting differences between - tcgetattr/tcsetattr, 'def' field was unused (along with related - defines). - -2012-12-06 Frederic Bohe - - * tools/nut-scanner/nut-scanner.c: Fix nut-scanner compilation - without pthread - -2012-12-02 Charles Lepple - - * drivers/riello_usb.c: riello_usb.c: eliminate uninitialized - variable - -2012-11-29 Arnaud Quette - - * conf/.gitignore: Subversion ignored files completion Mark - upsmon.conf.sample as Subversion ignored, since it is now generated - from a .in template file (no functional changes) - * conf/Makefile.am, conf/{upsmon.conf.sample => - upsmon.conf.sample.in}, configure.in: Adapt upsmon.conf sample to - use configured values The sample upsmon.conf provided now adapts - RUN_AS_USER value, and NOTIFYCMD / POWERDOWNFLAG base path to the - user configured values - -2012-11-28 Arnaud Quette - - * drivers/riello.c, drivers/riello_ser.c, drivers/riello_usb.c: Minor - improvements to Riello drivers Fix ups.power.nominal name in - Riello drivers, and its value for GPSER protocol(riello_ser). - device.mfr was also changed in both drivers, and revisions were - bumped to 0.02 (patch from Elio Parisi, Riello) - * data/driver.list.in, drivers/Makefile.am, drivers/openups-hid.c, - drivers/openups-hid.h, drivers/usbhid-ups.c, - scripts/upower/95-upower-hid.rules: Official support for Minibox - openUPS Intelligent UPS Add a new usbhid-ups subdriver to handle - Minibox openUPS Intelligent UPS (USB ID 0x04d8:0xd004) (patch from - Nicu Pavel, Mini-Box.Com) - -2012-11-28 Charles Lepple - - * conf/upsmon.conf.sample, docs/man/upsmon.conf.txt: Update - references to pager.txt - -2012-11-27 Frederic Bohe - - * data/driver.list.in, docs/man/genericups.txt: Add information about - Eaton Management Card Contact - -2012-11-25 Arnaud Quette - - * drivers/riello.c, drivers/riello.h, drivers/riello_ser.c, - drivers/riello_usb.c: Minor improvements to Riello drivers Fix - functions and variables names to use English language. Also fix - warnings reported by Mac OS X Buildbot and Charles Lepple (patch - from Elio Parisi, Riello) - -2012-11-21 Arnaud Quette - - * docs/acknowledgements.txt: Complete Acknowledgements with a Riello - entry Riello deserves a dedicated entry in the Supporting UPS - manufacturers, for having provided protocols information and - drivers implementations - * docs/man/.gitignore: Subversion ignored files completion Mark - riello_ser and riello_usb HTML manpages as Subversion ignored (no - functional changes) - * data/driver.list.in, docs/man/.gitignore, docs/man/Makefile.am, - docs/man/riello_ser.txt, docs/man/riello_usb.txt, - drivers/.gitignore, drivers/Makefile.am, drivers/riello.c, - drivers/riello.h, drivers/riello_ser.c, drivers/riello_usb.c, - tools/nut-usbinfo.pl: Official support for Riello serial and USB - devices Add two new drivers, riello_ser and riello_usb, to support - the whole ranges of Riello devices: IDG, IPG, WPG, NPW, NDG, DVT, - DVR, DVD, VST, VSD, SEP, SDH, SDL, SPW, SPT, MCT, MST, MCM, MCT, - MHT, MPT and MPM. This completes the official Riello protocols - publication, that happened in May 2012 (developed by Elio Parisi, - from Riello) - -2012-11-20 Arnaud Quette - - * clients/upsclient.h, server/nut_ctype.h: Fix NSS include directives - The current NSS include directives (nss/nss.h) were incorrect. - These were failing on Redhat systems, and working on some others - because of the default include path (reported by Michal Hlavinka, - from Redhat) - -2012-11-19 Arnaud Quette - - * data/driver.list.in: HCL: Add support for Aviem Power RT - 1000-3000VA Add Aviem Systems - Aviem Power RT 1000-3000VA to the - list of blazer_ser supported models (reported by Michael - Dobrovitsky) - -2012-11-19 Emilien Kia - - * tools/nut-scanner/nutscan-device.c: Fix a memory leak in scanner. - -2012-11-13 Arnaud Quette - - * docs/man/.gitignore: Complete the list of Subversion ignored files - Commit r3778 was missing generated HTML files (no functional - changes) - * docs/man/Makefile.am: Fix installation of libnutclient manual pages - Commit r3777 fixed the test target, but libnutclient manual pages - were not actually installed - * docs/man/.gitignore, lib/.gitignore: Complete the list of - Subversion ignored files The merge of NSS and libnutclient - branches have left some new generated files (no functional changes) - * docs/man/libnutclient_commands.txt, - docs/man/libnutclient_devices.txt, - docs/man/libnutclient_general.txt, docs/man/libnutclient_misc.txt, - docs/man/libnutclient_tcp.txt, docs/man/libnutclient_variables.txt: - Fix Buildbot failures on previous commit (man pages) The merge of - the libnutclient branch caused a failure of the 'distcheck-light' - test target. Manual pages documentation in this branch uses a - mechanism to generate multiple manpages from one source file. This - was however conflicting with a Makefile rule, that requires the - generated file to have the same name as the source file. Applies - the same principle by adding the content of the Header section to - the NAME commands list. Also fix a typo error in the Header section - of libnutclient_devices - -2012-11-13 Emilien Kia - - * clients/Makefile.am, clients/nutclient.cpp, clients/nutclient.h, - configure.in, docs/man/Makefile.am, docs/man/index.txt, - docs/man/libnutclient.txt, docs/man/libnutclient_commands.txt, - docs/man/libnutclient_devices.txt, - docs/man/libnutclient_general.txt, docs/man/libnutclient_misc.txt, - docs/man/libnutclient_tcp.txt, docs/man/libnutclient_variables.txt, - docs/new-clients.txt, lib/Makefile.am, lib/README, - lib/libnutclient.pc.in: Merge libnutclient (libcpp) branch Pull - Request #2: "High level C and C++ libnutclient" from - https://github.com/clepple/nut/pull/2 . Hand-merged into SVN trunk - from commit: 701cc571f4f8578e9c82b13c1e9eab509a41cd7f - -2012-11-08 Frederic Bohe - - * docs/man/usbhid-ups.txt, drivers/usbhid-ups.c: Add a command line - to usbhid-ups to activate the max_report tweak. - * drivers/apc-hid.c, drivers/libhid.c: Fix tweak for APC Back-UPS - since it seems to break Back-UPS 700 connectivity (reported by - Denis Serov). Adding some more comments on UPS which need and - which do not need the tweak. Refactored the detection code. - -2012-11-07 Arnaud Quette - - * scripts/subdriver/gen-usbhid-subdriver.sh: Fix USB HID subdriver - generation tool This tool has not been updated since timestamps - were added to driver debug traces. It was thus producing erroneous - results (reported by Nicu Pavel) - -2012-11-01 Arnaud Quette - - * drivers/snmp-ups.c: Fix a crash on outlets management snmp-ups was - crashing when the number of outlets was equal to zero - -2012-10-31 Arnaud Quette - - * docs/man/.gitignore, docs/man/blazer.txt: Fix blazer manual pages - generation to generate blazer, blazer_ser and blazer_usb manual - pages. The same manual page is now distributed and available under - these 3 names (warning to packagers) - * docs/man/Makefile.am, docs/man/asciidoc.conf: Fix manpage - refmiscinfo attributes and multiple NAME refmiscinfo attributes - were previously specified through asciidoc.conf. This approach - prevented from specifying and generating multiple manual pages from - a single source. Moreover, manversion (pointing NUT version) was - mistyped, and thus omitted. Makefile rules now directly define - refmiscinfo through attributes, and allow to solve the long - standing blazer / blazer_ser / blazer_usb related issue, and the - upcoming libnutclient one - -2012-10-19 Arnaud Quette - - * drivers/cps-hid.c, drivers/idowell-hid.c, scripts/subdriver/gen- - usbhid-subdriver.sh: Replace missing occurrences in previous commit - * docs/hid-subdrivers.txt, drivers/libhid.c, scripts/Makefile.am, - scripts/subdriver/{path-to-subdriver.sh => gen-usbhid- - subdriver.sh}: Rename usbhid subdriver generation script This - script was previously named path-to-subdriver.sh, which was not - enough meaningful. The renaming to gen-usbhid-subdriver.sh also - makes sense with a potential gen-snmp-subdriver.sh - * data/driver.list.in: HCL: Add support for Apollo 850VA Add Apollo - 850VA (USB ID 0x0665:0x5161) to the list of blazer_usb supported - models (reported by Mike Raath) - -2012-10-15 Arnaud Quette - - * configure.in, scripts/systemd/nut-driver.service.in: Fix driver - path in systemd driver unit The driver path, in nut- - driver.service, was not expanded correctly (reported by Marc - Rechté) - -2012-10-15 Michal Soltys - - * data/driver.list.in: HCL: add info about new APC models Info about - new SMT, SMX and SURTD models which require additional card for - "legacy" smart protocol. - -2012-10-15 Arnaud Quette - - * configure.in: Only fail if SSL was explicitly requested - Configuration should not abort if neither OpenSSL nor Mozilla NSS - has been found, and if SSL was not explicitly requested by the - user. This fixes the Buildbot compilation failure on Aix (build - #206) - -2012-10-12 Charles Lepple - - * tools/git-svn.authors, tools/svn2cl.authors: Update Emilien Kia's - email address - -2012-10-11 Arnaud Quette - - * docs/Makefile.am: Fix Solaris compilation failure - -2012-10-10 Arnaud Quette - - * README: Spell check fix (test) - * .gitignore, configure.in, docs/.gitignore, docs/Makefile.am, - docs/nut-qa.txt, docs/nut.dict: Spell checking framework - implementation Implement a framework to spell check documentation - source files, using Aspell. This includes an interactive build - target (make spellcheck-interactive), and an automated one (make - spellcheck), mainly for QA / Buildbot purpose. Note that a base NUT - dictionnary is also available (docs/nut.dict), providing a glossary - of terms related to power devices and management - * drivers/tripplite_usb.c: Remove POD ("Plain Old Documentation") - With the approval of the author (Charles Lepple), remove POD - ("Plain Old Documentation"). This embedded documentation was - redundant, and is probably out of date, with respect to the - AsciiDoc version - * drivers/powercom.c, drivers/powercom.h, drivers/upscode2.c: Remove - unnecessary RCS $Id lines - -2012-10-05 Arnaud Quette - - * tools/nut-scanner/nut-scan.h: Fix compilation error Define - IPMI_PRIVILEGE_LEVEL_ADMIN value, in case FreeIPMI is not available - -2012-10-04 Arnaud Quette - - * docs/man/nut-scanner.txt, drivers/nut-ipmipsu.c, tools/nut- - scanner/nut-scan.h, tools/nut-scanner/nut-scanner.c, tools/nut- - scanner/scan_ipmi.c: Support power supplies scan over the network - nut-scanner can now scan for power supplies with IPMI over LAN. - This is currently limited to IPMI 1.5 only - -2012-10-03 Arnaud Quette - - * docs/acknowledgements.txt: Update acknowledgements - -2012-09-28 Charles Lepple - - * drivers/.gitignore: Cleanup of svn:ignore list in drivers/ (no code - change) - -2012-09-27 Charles Lepple - - * tools/git-svn.authors, tools/svn2cl.authors: Welcome, Václav! (SVN - username mappings) - -2012-09-21 Arnaud Quette - - * docs/nut-qa.txt: Update the link to the Ubuntu QRT script - -2012-09-19 Arnaud Quette - - * drivers/nut-libfreeipmi.c, m4/nut_check_libfreeipmi.m4, tools/nut- - scanner/scan_ipmi.c: Support for FreeIPMI 1.1.x and 1.2.x (#2) - Prepare for supporting API changes in FreeIPMI 1.1.x and 1.2.x. - This 2nd patch, which completes [[SVN:3675]], addresses FRU API - changes, and removes code redundancy. This code has been tested - with FreeIPMI 0.8.12 and the latest [[FreeIPMI SVN]] trunk r9505 - (reported as 1.2.0.beta2 by pkgconfig) - * docs/download.txt, docs/website/news.txt: Update Windows package - publications for 2.6.5-3 - -2012-09-17 Arnaud Quette - - * docs/download.txt, docs/website/news.txt: Update Windows package - publications for 2.6.5-2 - -2012-09-12 Arnaud Quette - - * drivers/bcmxcp_usb.c: Fix data reception loop The new data - reception algorithm was trying to get more data than it should - (patch from Rich Wrenn) - -2012-09-10 Frederic Bohe - - * drivers/apc-hid.c, drivers/apc-hid.h, drivers/libhid.c: Add a tweak - for APC Back UPS ES APC Back UPS ES have a buggy firmware which - overflows on ReportID 0x0c, i.e. - UPS.PowerSummary.RemainingCapacity. This results in battery.charge - not being exposed and endless reconnections on systems with libusb - reporting EOVERFLOW. And it results on a failure to init the driver - for systems with libusb not reporting EOVERFLOW but EIO (i.e. on - Windows). - * tools/nut-scanner/nut-scanner.c: [nut-scanner] Fix a crash when no - start IP is provided. - * drivers/apc-hid.c, drivers/bcmxcp_usb.c, drivers/belkin-hid.c, - drivers/blazer_usb.c, drivers/cps-hid.c, drivers/idowell-hid.c, - drivers/liebert-hid.c, drivers/mge-hid.c, drivers/powercom-hid.c, - drivers/richcomm_usb.c, drivers/tripplite-hid.c, - drivers/tripplite_usb.c, drivers/usb-common.c, drivers/usb- - common.h: Extend USB device support check (from Arnaud Quette) Use - USBDevice_t structure in is_usb_device_supported(), instead of - direct VendorID and ProductID. This allows to pass it to the - specific processing handler for broader check - -2012-09-07 Leo Arias - - * conf/nut.conf.sample: Update nut.conf.sample (grammar and - documentation) https://alioth.debian.org/tracker/?func=detail&ati - d=411544&aid=313762&group_id=30602 - -2012-08-14 Arnaud Quette - - * NEWS, UPGRADING, configure.in, data/driver.list.in, - docs/Makefile.am, docs/configure.txt, docs/documentation.txt, - docs/download.txt, docs/images/eaton-logo.png, - docs/images/hostedby.png, docs/images/simple.png, - docs/man/.gitignore, docs/man/Makefile.am, docs/man/index.txt, - docs/man/macosx-ups.txt, docs/man/mge-shut.txt, - docs/man/nutscan.txt, docs/man/nutscan_scan_avahi.txt, - docs/man/powercom.txt, docs/man/skel.txt, docs/nut-names.txt, - docs/website/.gitignore, docs/website/Makefile.am, - docs/website/css/web-layout.css, docs/website/news.txt, - docs/website/old-news.txt, docs/website/projects.txt, - docs/website/web-layout.conf, drivers/.gitignore, - drivers/Makefile.am, drivers/macosx-ups.c, drivers/mge-hid.c, - drivers/powercom-hid.c, drivers/skel.c, drivers/usbhid-ups.c, - drivers/usbhid-ups.h, m4/nut_check_libltdl.m4: Merge from trunk - [[SVN:3679]] to [[SVN:3718]] to ssl-nss-port - -2012-08-09 Arnaud Quette - - * docs/website/.gitignore, docs/website/Makefile.am, - docs/website/news.txt, docs/website/old-news.txt: Integrate - archived news - * docs/nut-names.txt, drivers/mge-hid.c: Add shutdown ability switch - to Eaton units Eaton HID units (using usbhid-ups or [new,old]mge- - shut) were missing a data mapping to allow the change of the - shutdown ability switch. The result was that the UPS was not - powered off, even if all the protocol commands were sent (reported - by Daniel O'Connor) - * docs/download.txt, docs/website/news.txt: Update Windows package - publications for 2.6.5-1 - * docs/man/.gitignore, docs/man/index.txt: Added macosx-ups manual - page to the index Also add generated groff and HTML contents to - the list of Subversion ignored files - -2012-08-08 Arnaud Quette - - * NEWS, UPGRADING, configure.in, docs/website/news.txt: Final update - for 2.6.5 release - * drivers/.gitignore: Subversion ignored files completion Mark - oldmge-shut binary as Subversion ignored (no functional changes) - * docs/configure.txt, m4/nut_check_libltdl.m4: Complete libltdl - configuration options Add configure options to add specific cflags - (--with-libltdl-includes) and libs (--with-libltdl-libs) for - libltdl. This serves at least to point at non standard location, as - on FreeBSD (reported by David Durieux) - -2012-08-06 Arnaud Quette - - * docs/documentation.txt: Add a Wikipedia reference on Solar - controller - * docs/Makefile.am, docs/images/eaton-logo.png, - docs/images/hostedby.png, docs/website/Makefile.am, - docs/website/css/web-layout.css, docs/website/web-layout.conf: Free - NUT from Eaton website hosting NUT is no more hosted by Eaton. - Arnaud Quette (NUT project leader) has taken over NUT hosting on - his own, to give NUT back some independance. This effort is also - part of a logic to stop crediting Eaton for contributions from - others (especially Arnaud Quette, as an individual). The new - hosting service is located, as for Arnaud's blog - (http://arnaud.quette.fr) on Gandi servers, using PaaS. This will - allow more flexibility and automation of the release process - -2012-08-06 Charles Lepple - - * configure.in, docs/man/Makefile.am, docs/man/macosx-ups.txt, - drivers/Makefile.am, drivers/macosx-ups.c: macosx-ups: new OS X - Power Sources meta-driver Mac OS X provides UPS status information - in a format similar to what is shown for laptop batteries. This - driver will convert that information into a format compatible with - NUT. - -2012-08-05 Charles Lepple - - * drivers/skel.c: Update comments in skel.c Fixed a typo, and added - fatalx() as an alternative to fatal_with_errno() - * docs/man/skel.txt: Update skeleton driver man page. - -2012-08-03 Charles Lepple - - * docs/man/nutscan.txt, docs/man/nutscan_scan_avahi.txt: nutscan - documentation: editing - -2012-07-31 Arnaud Quette - - * docs/images/simple.png: Remove extraneous text - * data/driver.list.in: HCL: Add support for UNITEK Alpha650ipF and - Alpha650ipE Add UNITEK Alpha650ipF and Alpha650ipE (USB ID - 0x0f03:0x0001) to the list of blazer_usb supported models (reported - by Pascal MIRALLES) - * docs/website/projects.txt: Reference Buffalo NAS in Related - projects Add a reference in the Related projects, on Buffalo - TerraStation (Business-class) NAS range, which uses NUT for power - protection - -2012-07-30 Arnaud Quette - - * docs/download.txt, docs/website/news.txt: First NUT virtualization - package (VMware ESXI 5.0) Add the reference to the first NUT - virtualization package. This one is currently an external effort to - add VMware NUT client for ESXI 5.0. But this support will be part - of NUT in the long run - -2012-07-24 Charles Lepple - - * data/driver.list.in, docs/man/powercom.txt, drivers/powercom-hid.c: - Synchronize Powercom USB documentation and code comments. - Apparently, there are at least two different models with the USB - VID:PID of 0d9f:0004. This update is based on the following report - by Gordon Longland: http://lists.alioth.debian.org/pipermail/nut- - upsuser/2012-July/007748.html - -2012-07-23 Charles Lepple - - * docs/man/powercom.txt: powercom: Mention this driver is serial only - -2012-07-20 Frederic Bohe - - * data/driver.list.in, drivers/Makefile.am: Switch mge-shut to - oldmge-shut and newmge-shut to mge-shut - * docs/man/mge-shut.txt: Update mge-shut man page for notification - argument. - * drivers/usbhid-ups.c: Add a "notification" parameter to newmge-shut - driver. It is only here for compatibility with mge-shut driver. It - is ignored since we are always using SHUT_SYNC_OFF in libshut.c. - -2012-07-20 Emilien Kia - - * README, docs/Makefile.am, docs/config-notes.txt, docs/contact- - closure.txt, docs/macros.txt, docs/man/mge-shut.txt, - docs/man/upscli_connect.txt, docs/man/upscli_disconnect.txt, - docs/man/upscli_fd.txt, docs/man/upscli_get.txt, - docs/man/upscli_list_next.txt, docs/man/upscli_list_start.txt, - docs/man/upscli_readline.txt, docs/man/upscli_sendline.txt, - docs/man/upscli_ssl.txt, docs/man/upscli_strerror.txt, - docs/man/upscli_upserror.txt, docs/man/upsclient.txt, - docs/scheduling.txt, docs/security.txt: Fix trunk merge (pass 2). - Apply changes to doc to prepare merge to trunk. - -2012-07-19 Emilien Kia - - * clients/upsclient.c, server/netssl.c, server/netssl.h: Fix trunk - merge. Refactor and clean to prepare merge to trunk. - -2012-07-19 Frederic Bohe - - * docs/man/mge-shut.txt: Document ondelay parameter unit discrepency - for SHUT drivers mge-shut uses a ten seconds unit for ondelay - whereas newmge-shut uses seconds. - * drivers/usbhid-ups.c, drivers/usbhid-ups.h: Add a lowbatt setting - to newmge-shut in order to mimic mge-shut setting - -2012-07-19 Emilien Kia - - * server/Makefile.am, server/conf.c, server/netcmds.h, server/{ssl.c - => netssl.c}, server/{ssl.h => netssl.h}, server/upsd.c: Replace - server/ssl.[h|c] by server/netssl.[h|c] in order to prepare nss - branch merging. - -2012-07-18 Emilien Kia - - * .gitignore, INSTALL, MAINTAINERS, Makefile.am, NEWS, UPGRADING, - autogen.sh, clients/Makefile.am, clients/upsc.c, - clients/upsclient.c, clients/upsclient.h, clients/upsmon.c, - clients/upsmon.h, clients/upsrw.c, clients/upssched.c, - common/Makefile.am, common/common.c, common/parseconf.c, - common/state.c, common/upsconf.c, compile, conf/nut.conf.sample, - conf/upsd.conf.sample, configure.in, data/cmdvartab, - data/driver.list.in, docs/.gitignore, docs/FAQ.txt, - docs/Makefile.am, docs/acknowledgements.txt, docs/cables.txt, - docs/cables/apc.txt, docs/config-notes.txt, docs/configure.txt, - docs/design.txt, docs/developer-guide.txt, docs/developers.txt, - docs/documentation.txt, docs/download.txt, docs/features.txt, - docs/images/advanced.png, docs/images/bigbox.png, - docs/images/bizarre.png, docs/images/nut-logo.png, - docs/images/nut.svg, docs/images/simple.png, docs/macros.txt, - docs/maintainer-guide.txt, docs/man/.gitignore, - docs/man/Makefile.am, docs/man/apcsmart-old.txt, - docs/man/apcsmart.txt, docs/man/bcmxcp.txt, docs/man/belkinunv.txt, - docs/man/blazer.txt, docs/man/dummy-ups.txt, docs/man/index.txt, - docs/man/metasys.txt, docs/man/nut-ipmipsu.txt, docs/man/nut- - recorder.txt, docs/man/nut-scanner.txt, docs/man/nut.conf.txt, - docs/man/nutscan.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_init.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, docs/man/nutupsdrv.txt, - docs/man/oneac.txt, docs/man/powercom.txt, docs/man/snmp-ups.txt, - docs/man/ups.conf.txt, docs/man/upsc.txt, - docs/man/upscli_list_start.txt, docs/man/upsd.users.txt, - docs/man/upsmon.txt, docs/man/upsrw.txt, docs/net-protocol.txt, - docs/new-clients.txt, docs/new-drivers.txt, docs/nut-names.txt, - docs/security.txt, docs/sock-protocol.txt, docs/stable-hcl.txt, - docs/support.txt, docs/website/Makefile.am, docs/website/css/web- - layout.css, docs/website/faviconut.ico, docs/website/faviconut.png, - docs/website/news.txt, docs/website/projects.txt, docs/website/ups- - protocols.txt, docs/website/web-layout.conf, drivers/.gitignore, - drivers/Makefile.am, drivers/apc-hid.c, drivers/apc-mib.c, - drivers/apcsmart-old.c, drivers/apcsmart-old.h, drivers/apcsmart.c, - drivers/apcsmart.h, drivers/apcsmart_tabs.c, - drivers/apcsmart_tabs.h, drivers/bcmxcp.c, drivers/bcmxcp.h, - drivers/bcmxcp_ser.c, drivers/bcmxcp_usb.c, drivers/belkin-hid.c, - drivers/belkinunv.c, drivers/bestfcom.c, drivers/bestfortress.c, - drivers/bestpower-mib.c, drivers/bestups.c, drivers/blazer.c, - drivers/blazer_ser.c, drivers/blazer_usb.c, drivers/compaq-mib.c, - drivers/cps-hid.c, drivers/cyberpower-mib.c, drivers/cyberpower- - mib.h, drivers/dstate.c, drivers/dstate.h, drivers/dummy-ups.c, - drivers/dummy-ups.h, drivers/eaton-mib.c, drivers/eaton-mib.h, - drivers/etapro.c, drivers/gamatronic.c, drivers/genericups.c, - drivers/ietf-mib.c, drivers/isbmex.c, drivers/libhid.c, - drivers/libshut.c, drivers/liebert-esp2.c, drivers/liebert-hid.c, - drivers/main.c, drivers/masterguard.c, drivers/metasys.c, - drivers/mge-hid.c, drivers/mge-mib.c, drivers/mge-shut.c, - drivers/mge-utalk.c, drivers/microdowell.c, drivers/netvision- - mib.c, drivers/netxml-ups.c, drivers/nut-ipmi.h, drivers/nut- - ipmipsu.c, drivers/nut-libfreeipmi.c, drivers/oneac.c, - drivers/oneac.h, drivers/powercom-hid.c, drivers/powercom.c, - drivers/powercom.h, drivers/powerware-mib.c, drivers/raritan-pdu- - mib.c, drivers/rhino.c, drivers/safenet.c, drivers/snmp-ups.c, - drivers/snmp-ups.h, drivers/solis.c, drivers/tripplite-hid.c, - drivers/tripplite_usb.c, drivers/tripplitesu.c, drivers/upscode2.c, - drivers/upshandler.h, drivers/usb-common.c, drivers/usbhid-ups.c, - include/.gitignore, include/Makefile.am, include/common.h, - include/extstate.h, include/nut_stdint.h, include/parseconf.h, - include/state.h, lib/.gitignore, lib/Makefile.am, lib/README, - lib/libnutscan.pc.in, lib/libupsclient-config.in, - lib/libupsclient.pc.in, m4/ax_create_stdint_h.m4, - m4/nut_check_libavahi.m4, m4/nut_check_libfreeipmi.m4, - m4/nut_check_libltdl.m4, m4/nut_check_libwrap.m4, - m4/nut_check_os.m4, m4/nut_report_feature.m4, scripts/HP- - UX/.gitignore, scripts/HP-UX/makedepot.sh, scripts/HP- - UX/nut.psf.in, scripts/Makefile.am, scripts/README, - scripts/augeas/Makefile.am, scripts/augeas/README, - scripts/avahi/nut.service.in, scripts/java/Makefile.am, - scripts/java/README, scripts/java/jNut/README, - scripts/java/jNut/pom.xml, - .../main/java/org/networkupstools/jnut/Client.java, - .../java/org/networkupstools/jnut/Command.java, - .../main/java/org/networkupstools/jnut/Device.java, - .../org/networkupstools/jnut/NutException.java, - .../java/org/networkupstools/jnut/Scanner.java, - .../org/networkupstools/jnut/StringLineSocket.java, - .../java/org/networkupstools/jnut/Variable.java, - .../java/org/networkupstools/jnut/ClientTest.java, - .../java/org/networkupstools/jnut/ScannerTest.java, - scripts/java/jNutList/README, scripts/java/jNutList/pom.xml, - .../java/org/networkupstools/jnutlist/AppList.java, - scripts/java/jNutWebAPI/README, scripts/java/jNutWebAPI/pom.xml, - .../jnutwebapi/NutRestProvider.java, - .../jnutwebapi/RestWSApplication.java, - .../jnutwebapi/ScannerProvider.java, - .../jNutWebAPI/src/main/webapp/WEB-INF/web.xml, - scripts/logrotate/nutlogd, scripts/python/module/PyNUT.py, - 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, scripts/udev/.gitignore, - scripts/udev/Makefile.am, scripts/udev/README, scripts/udev/nut- - ipmipsu.rules.in, scripts/ufw/README, - scripts/ufw/nut.ufw.profile.in, scripts/upower/95-upower-hid.rules, - server/Makefile.am, server/netcmds.h, server/netget.c, - server/netget.h, server/netinstcmd.c, server/netinstcmd.h, - server/netlist.c, server/netlist.h, server/netmisc.c, - server/netmisc.h, server/netset.c, server/netset.h, - server/netssl.c, server/netssl.h, server/netuser.c, - server/netuser.h, server/{ctype.h => nut_ctype.h}, server/sstate.c, - server/sstate.h, server/upsd.c, server/upsd.h, server/user.c, - tests/Makefile.am, tests/cpputest.cpp, tests/example.cpp, - tools/Makefile.am, tools/git-svn.authors, tools/nut-hclinfo.py, - tools/{device-recorder.sh => nut-recorder.sh}, tools/nut- - scanner/Makefile.am, tools/nut-scanner/README, 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- - init.c, tools/nut-scanner/nutscan-init.h, 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, tools/svn2cl.authors: Merge from - trunk [[SVN:2848]] to [[SVN:3679]] to ssl-nss-port. Note: a - problem is occurring for server/ssl.[h|c]: they have been moved to - server/netssl.[h|c] but consider them as removed. For the branch - merging to trunk, consider paying attention to the case of these - files (removing them by hand). - -2012-07-17 Arnaud Quette - - * drivers/apc-mib.c: APC SNMP MIB update and completion Add - available high precision values, new variables - (input.transfer.reason, battery.current.total and ups.test.date), - and move ambient.{temperature,humidity}.{high,low} to ambient.1.*, - since they relate to alarm threshold of external probe 1 (patch - from Hong-Gunn Chew) - * docs/nut-names.txt: Clarify the use of multiple ambient sensors - Multiple sensors can be exposed using the indexed notation. - 'ambient.*', without index or using '0', relates to the embedded - sensor. For example: 'ambient.temperature' represent the embedded - sensor temperature. Other sensors (external, communication card, - ...) can use indexes from '1' to 'n'. For example: - 'ambient.1.temperature' for the first external sensor temperature. - * docs/nut-names.txt: NUT namespace completion Add two new variables - 'ups.test.date' and 'battery.current.total'. Also add a note on the - 'ambient' collection for supporting multiple sensors - -2012-07-16 Arnaud Quette - - * drivers/nut-ipmipsu.c, drivers/nut-libfreeipmi.c, - m4/nut_check_libfreeipmi.m4, tools/nut-scanner/nut-scanner.c, - tools/nut-scanner/scan_ipmi.c: Support for FreeIPMI 1.1.x and 1.2.x - Prepare for supporting API changes in FreeIPMI 1.1.x and 1.2.x. - This is mostly related to SDR API simplifications. A 2nd iteration - will probably address code redundancy, whenever possible - -2012-07-10 Arnaud Quette - - * data/driver.list.in, drivers/eaton-mib.c, drivers/eaton-mib.h, - drivers/snmp-ups.c, drivers/snmp-ups.h: Add support for Eaton ePDU - Switched (Pulizzi) Implement support for older Eaton / Powerware - ePDU Switched. These were once sold as Pulizzi, and have now been - replaced by newer model (Eaton Marlin implementation and others) - -2012-07-09 Emilien Kia - - * configure.in: Fix CppUnit detection. Fix inconsistent test for - CppUnit install (using pkg-config) to really enable unit tests. - -2012-07-05 Arnaud Quette - - * docs/man/nut-ipmipsu.txt: Fix an error on possible power supplies - status - -2012-07-04 Arnaud Quette - - * clients/upssched.c: Fix upssched regression Coverity branch merge - [[SVN:3555]] introduced a regression: any upssched.conf command - that takes a second argument resulted in a defective frame sent to - the parent process. Thus, the command was not executed (patch from - Oliver Schonefeld) - * Makefile.am, configure.in, tests/.gitignore, tests/Makefile.am, - tests/cpputest.cpp, tests/example.cpp: Add basic infrastructure for - unit tests Merge eki-unittests branch, with some adjustments, to - add a basic initial infrastructure for unit tests, using CppUnit - (v1.9.6+) (from Emilien Kia, from Eaton) - -2012-07-03 Arnaud Quette - - * scripts/systemd/nut-driver.service.in, - scripts/systemd/nutshutdown.in: Fix upsdrvctl call path upsdrvctl - is located in @driverexecdir@, not @SBINDIR@ (reported by Michal - Hlavinka, from Redhat) - -2012-06-15 Arnaud Quette - - * configure.in: Adapt systemd installation directory #2 Complete - previous commit by also adapting paths for service files - -2012-06-14 Arnaud Quette - - * configure.in: Adapt systemd installation directory Adapt systemd - installation directory for the shutdown script, so that it does not - try to install it in the actual system directory, but to the - pointed build directory, including a sub directory prefix - * docs/new-clients.txt: Fix broken link to upscli_*(3) HTML manual - pages - -2012-06-12 Arnaud Quette - - * configure.in: Fix WITH_SSL and WITH_NSS AM_CONDITIONAL definitions - nut_with_nss / nut_with_openssl must be set to "yes", otherwise - AM_CONDITIONAL counterpart WITH_NSS / WITH_SSL is not defined - * docs/new-drivers.txt: Forgotten mention upsdrv_info_t->name is - also published as "driver.name" variable - * docs/man/belkinunv.txt, drivers/belkinunv.c, drivers/main.c, - drivers/masterguard.c, drivers/metasys.c, drivers/mge-utalk.c, - drivers/microdowell.c, drivers/nut-ipmipsu.c, drivers/safenet.c, - drivers/tripplitesu.c, drivers/usbhid-ups.c: Remove redundant - driver.version.internal publication - * configure.in, docs/configure.txt, docs/man/nut-scanner.txt: Add - missing references to libltdl for nut-scanner nut-scanner requires - libltdl (Libtool dlopen abstraction) since NUT 2.6.3. - Documentations have been completed, and nut-scanner build status is - now exposed in the build configuration summary - * drivers/snmp-ups.c: Fix publication of driver.version.data Publish - the MIB name and version in driver.version.data, rather than merged - into driver.version.internal - * drivers/netxml-ups.c: Fix publication of driver.version.data - netxml-ups subdriver version is to be tracked in - driver.version.data, not in driver.version.internal - * docs/nut-names.txt: Add missing variable driver.version.data Add - variable driver.version.data, to track version of the internal data - mapping, for generic drivers (reported by Luiz Angelo Daros de - Luca) - * docs/nut-names.txt: Fix comment for driver.version.internal - Drivers internal version are always tracked separately, and stored - in driver.version.internal - -2012-06-11 Michal Soltys - - * drivers/apcsmart.c: apcsmart: tcsetattr/tcgetattr addendum This - small patch moves the comparison sequence into separate function. - No functional changes. Also minor retab! run on defines. - -2012-06-11 Arnaud Quette - - * data/driver.list.in: HCL: Add support for REDi Blazer Add REDi - Blazer 400VA / 600VA / 800VA to the list of blazer_ser supported - models (reported by Marius Gavrilescu) - * docs/nut-names.txt: Fix a typo error on power.minimum description - power.minimum is really the minimum seen apparent power in VA - (reported by Luiz Angelo Daros de Luca) - -2012-06-07 Arnaud Quette - - * data/driver.list.in, drivers/blazer_usb.c: HCL: Add support for - Online Zinto A to blazer_usb Add Online Zinto A (USB ID - 0x06da:0x0601) to the list of blazer_usb supported models (reported - by Carsten Burkhardt) - -2012-06-07 Charles Lepple - - * drivers/oneac.h: Remove unused constants to fix LLVM compilation - error. - -2012-06-05 Arnaud Quette - - * docs/website/news.txt, docs/website/projects.txt: WMNut updates - Update WMNut release (0.64) and hosting URL - -2012-06-04 Arnaud Quette - - * docs/download.txt, docs/website/news.txt: Update Windows package - publications for 2.6.4-1 - -2012-05-31 Arnaud Quette - - * NEWS, UPGRADING, configure.in, docs/website/news.txt: Final update - for 2.6.4 release - -2012-05-30 Arnaud Quette - - * data/driver.list.in: HCL: Add support for Cyber Power Systems - CP1000PFCLCD Add CyberPower Systems CP1000PFCLCD (USB ID - 0x0764:0x0501) to the list of usbhid-ups supported models (reported - by David Owen) - * drivers/apc-mib.c: Track more APC SNMP sysOID values, as comments - * drivers/upshandler.h: Fix code spacing (no functional change) - * drivers/bcmxcp_ser.c, drivers/bcmxcp_usb.c: Add some debug traces - on incoming / outgoing data - * INSTALL: Add missing reference to nut.conf manual page - * drivers/bestfortress.c: Improve Best Fortress LI675VA support - Apply an old missed patch: all responses are preceded and - terminated by "CR LF". But bestfortress driver discards anything - after the first "CR LF". This patch trims everything up to the - first LF. (patch from Jørgen Thomsen) - * drivers/metasys.c: Remove extraneous spaces (no functional changes) - -2012-05-30 Prachi Gandhi - - * scripts/Solaris/preinstall: Updated preinstall script for 'nut' - group, user checking - * Makefile.am, scripts/Solaris/Makefile.am, - scripts/Solaris/preinstall: Added checking for existing 'nut' - group, user and updated package name - -2012-05-29 Arnaud Quette - - * common/parseconf.c: Fix CVE-2012-2944: upsd can be remotely crashed - NUT server (upsd), from versions 2.4.0 to 2.6.3, are exposed to - crashes when receiving random data from the network. This issue is - related to the way NUT parses characters, especially from the - network. Non printable characters were missed from strings - operation (such as strlen), but still copied to the buffer, causing - an overflow. Thus, fix NUT parser, to only allow the subset Ascii - charset from Space to ~ (Reported by Sebastian Pohle, Alioth bug - #313636, CVE-2012-2944) - * data/driver.list.in: HCL: Add support for Lexis X-power Tigra 1kVA - Add Lexis X-power Tigra 1kVA to the list of blazer_ser or bestups - supported models (reported by Tmima Pliroforikis Perifereiakis - Enotitas Pierias) - * data/driver.list.in: HCL: Encourage the use of blazer_ser instead - of bestups Mention blazer_ser as prefered compared to bestups. - Recent changes to blazer_ser have made it possible to use it - instead of bestups. In the end, bestups will be replaced by - blazer_ser, as for other Megatec/Q1 drivers - -2012-05-29 Prachi Gandhi - - * Makefile.am, configure.in, tools/nut-scanner/Makefile.am, - tools/nut-scanner/nut-scan.h, tools/nut-scanner/nutscan-init.c, - tools/nut-scanner/nutscan-init.h, tools/nut-scanner/scan_snmp.c: - Changes in nut-scanner to remove Sparc 'usmAESPrivProtocol' error - while creating package - -2012-05-29 Arnaud Quette - - * drivers/blazer.c, drivers/blazer_ser.c: Improve Best UPS support in - blazer Best UPS units, which use a subset of the Megatec/Q1 - protocol, supported by the blazer drivers, can now work with - blazer_ser. This support is still limited, but already offers a - decent set of features - -2012-05-25 Arnaud Quette - - * server/user.c: Add debug traces for instcmds and actions Whenever - upsd adds an instant command or an action, from upsd.users, display - a debug trace - * docs/man/upsd.users.txt: Clarify multiple actions specification - Add more details and an example, to illustrate multiple actions - specification (reported by Emilien Kia, from Eaton) - -2012-05-24 Arnaud Quette - - * data/driver.list.in: HCL: Add support for Eaton Management Card - Contact Add Eaton Management Card Contact (ref 66104) to the list - of mge-shut or mge-utalk supported models - * drivers/compaq-mib.c: HP SNMP completion Complete HP SNMP mapping - table, with thresholds, nominal values and more commands - -2012-05-23 Arnaud Quette - - * docs/website/projects.txt: Reference Thecus NAS in Related projects - Add a reference in the Related projects, on Thecus NAS range, which - uses NUT for power protection - -2012-05-22 Arnaud Quette - - * drivers/apcsmart.c, drivers/apcsmart.h: Complete previous commit - for HP-UX HP-UX does not support VREPRINT, so make it conditional - * drivers/apcsmart.c, drivers/apcsmart.h: Fix commit [[SVN:3603]] - Commit [[SVN:3603]] (fix tcsetattr() / tcgetattr() issue) has - introduced some incompatibility with older Unix systems, such as - Solaris, Aix and HP-UX. The present commit should address it. - * scripts/java/jNut/src/main/java/org/networkupstools/jnut/Variable.j - ava: Adjust comment (no functional change) - * configure.in, docs/net-protocol.txt, server/netcmds.h, - server/netmisc.c, server/netmisc.h: Add versioning to the network - protocol Due to the number of recent evolutions to the network - protocol, along with other possible future changes, NUT network - protocol is now versioned. The chapter "Network protocol - information", of the developer guide, stores the revision history, - while a new "NETVER" command serves this information through the - protocol - -2012-05-21 Arnaud Quette - - * data/driver.list.in: HCL: Complete the supported PowerWalker ranges - Add PowerWalker Online VFI LCD, Line-Interactive VI LCD and Line- - Interactive VI models to the list of blazer_usb supported models - * data/driver.list.in: HCL: Add support for Microline C-Lion Innova - ranges Add Microline C-Lion Innova models to the list of - blazer_usb supported models - -2012-05-21 Prachi Gandhi - - * Makefile.am, scripts/HP-UX/Makefile, scripts/HP-UX/nut.psf.in, - scripts/Makefile.am: generalized 'make package' call for Solaris, - HPUX package; updated nut.psf.in for HPUX - -2012-05-21 Arnaud Quette - - * data/driver.list.in: HCL: Add support for KOLFF ranges Add KOLFF - BLACK NOVA models to the list of blazer_usb supported models - * data/driver.list.in: HCL: Add support Ippon INNOVA RT range Add - Ippon INNOVA RT models to the list of blazer_usb supported models - * data/driver.list.in: HCL: Add support for Gtec ranges Add Gtec - models to the list of blazer_ser or blazer_usb supported models - * data/driver.list.in: HCL: Complete the supported EVER ranges Add - EVER POWERLINE RT / 11 / 31 and DUO II Pro models to the list of - blazer_ser or blazer_usb supported models - * data/driver.list.in: HCL: Add support for COVER ENERGY SA ranges - Add COVER ENERGY SA models to the list of blazer_usb supported - models - * data/driver.list.in: HCL: Add support for Borri ranges Add Borri - models to the list of blazer_usb supported models - * data/driver.list.in: HCL: Add support for ARTronic ranges Add - ARTronic models, both serial and USB, to the list of blazer_ser and - blazer_usb supported models - -2012-05-21 Charles Lepple - - * drivers/belkin-hid.c: Fix Liebert firmware (incorrect exponents) - There are at least two Liebert firmware types which both report a - VID:PID of 10af:0001. The newer ones tend not to have the Belkin - broken Usage Pages (and therefore use standard HID PDC paths) but - they have incorrect exponents for some fields. This patch fixes the - values for the latter implementation - -2012-05-21 Arnaud Quette - - * data/driver.list.in, drivers/netvision-mib.c: Add 3-phases support - to Socomec Netvision MIB Improve Socomec Netvision MIB, by adding - support for 3-phases UPS (patch from Manuel Bouyer) - * data/driver.list.in: HCL: Add support for PowerShield Defender - 1200VA Add PowerShield Defender 1200VA (USB ID 0665:5161) to the - list of blazer_usb supported models (reported by Tom Clarkson) - * drivers/blazer.c, drivers/blazer_ser.c, drivers/blazer_usb.c: - beeper.status belongs to the "ups" data collection - -2012-05-16 Arnaud Quette - - * drivers/apcsmart.c, drivers/apcsmart.h: Final fix to the - tcsetattr() / tcgetattr() issue The most likely cause of all - spurious differences between what was set on the port with - tcsetattr() and what tcgetattr() shows are likely to do with the - c_local PENDIN flag, which is a status bit, not a control bit. It - will change when there's unread pending input, which can be quite - often on an APC UPS. The right way to compare struct termios - values is to clear the status flags _after_ the tcsetattr() and of - course after the tcgetattr() call and then compare the result with - what was set. Also set NOKERNINFO, if available, as we don't want - the UPS or noise on the line to accidentally trigger status output - back to the UPS, and finally make sure IEXTEN is also cleared along - with ISIG since it too can cause weird things to happen. This - change also adds some debug code to show any differences in the - structures in a logical manner in debug output (and squashes one - tiny compiler warning) (patch from Greg A. Woods) - * docs/config-notes.txt, docs/man/upsmon.txt: Whitespace fixes - Remove some extraneous spaces, suggested by "git diff --check", and - improve a bit formatting (patch #36 from Greg A. Woods) - -2012-05-15 Arnaud Quette - - * drivers/snmp-ups.c, drivers/snmp-ups.h: Remove dead code Remove - dead code, related to shutdown handling (no functional changes) - (based on patch #29 from Greg A. Woods) - -2012-05-15 Prachi Gandhi - - * scripts/Solaris/Makefile.am: Updated scripts/Solaris/Makefile.am to - remove prototype, checkinstall - -2012-05-15 Arnaud Quette - - * docs/nut-names.txt: Fix formating issue - * docs/nut-names.txt: Add missing battery.voltage data to the - namespace Add missing battery.voltage.{low,high} to the standard - NUT namespace - * docs/nut-names.txt, drivers/upscode2.c: Rename peakcurrent to - current.peak (as per RFC) Rename peakcurrent to current.peak, - since it is more coherent and suitable - * drivers/dummy-ups.c, drivers/dummy-ups.h: Update and cleanup - Convert flags defitions to bitwise left shift, convert some - comments about variables to actual values, and do a bit of cleanup - (patch #27 from Greg A. Woods) - -2012-05-15 Prachi Gandhi - - * scripts/Solaris/checkinstall, scripts/Solaris/precheck.py, - scripts/Solaris/prototype: Deleted checkinstall, prototype files - -2012-05-15 Arnaud Quette - - * drivers/blazer.c: Add comment on shutdown.return ondelay value Add - a comment reinforcing the need for ondelay=3 (partial patch #26 - from Greg A. Woods) - * docs/man/snmp-ups.txt: Complete APC SNMP compatibility information - Mention more varieties of APC SNMP cards, and mention the POWERNET - MIB (patch #25 from Greg A. Woods) - -2012-05-15 Prachi Gandhi - - * Makefile.am, scripts/Solaris/Makefile.am, - scripts/Solaris/pkginfo.in, scripts/Solaris/prepackage.py, - scripts/Solaris/preproto.pl: Added perl script to create prototype - file onsolaris platform, updated Makefile.am - * m4/nut_check_os.m4: Added perl script to create prototype file - onsolaris platform, updated Makefile.am - -2012-05-15 Arnaud Quette - - * drivers/netvision-mib.c: Fix status processing for "ECO mode" When - running in "ECO mode", the driver should report an ups.status set - to "OL", or it otherwise ends up with an empty string that confuses - upsmon (patch from Ivan Kuznetsov) - -2012-05-14 Arnaud Quette - - * docs/man/blazer.txt: Mention General Electric in blazer manual page - Mention General Electric as a user of the Megatec/Q1 protocol - (patch #24 from Greg A. Woods) - * clients/upsmon.h: Use bitwise left shift for flags definitions Use - (1 << N) to define a bit flag at bit N, which is more coherent with - other similar implementations in NUT (patch #23 from Greg A. Woods) - * clients/upsmon.c: Cosmetic changes Remove dead / redundant - #defines, and enable interesting debug traces that were commented - out (based on patch #22 from Greg A. Woods) - * drivers/apcsmart.h: Use bitwise left shift for status flags - definitions Use (1 << N) to define a bit flag at bit N, which is - more coherent with other similar implementations in NUT (patch #21 - from Greg A. Woods) - * drivers/apcsmart.c, drivers/apcsmart.h: Don't be too strict about - terminal settings Don't log an error when tcgetattr() reports - different settings on the port (patch #20 from Greg A. Woods) - * tools/nut-usbinfo.pl: Better filtering on USB related files The - current USB information extraction script is not optimal at - filtering files that need to be inspected. While waiting for a - proper rewrite, improve a bit more filenames filtering (patch #18 - from Greg A. Woods) - * drivers/blazer_ser.c: Quote the debug output for space visibility - Quote the debug output so one can see how many spaces there are - (patch #16 from Greg A. Woods) - * docs/cables/apc.txt: Update APC cabling information Update - information about APC cable model numbering and revisions (patch - #16 from Greg A. Woods) - * data/driver.list.in: HCL: GE Digital Energy updates Rename "GE" to - "GE Digital Energy", which is more appropriate in this context. - Also add GT Series 1000-3000 VA to the list of blazer_ser supported - models (patch #15 from Greg A. Woods) - * docs/developers.txt: Complete notes on spaces for alignements Add - complementary note on the use of spaces for alignements (patch #14 - from Greg A. Woods) - * docs/design.txt: Use more suitable examples Use an example driver - name matching the unified NUT drivers generic manual page name - (patch #13 from Greg A. Woods) - * drivers/mge-hid.c: Complete and update Eaton HID usages table - -2012-05-11 Arnaud Quette - - * tools/Makefile.am: Fix typo in comment Fix a typo error in comment - (reported by Fred Bohé, from Eaton) - * scripts/upower/95-upower-hid.rules: Update upower script Update - upower script with recent changes and updates (redundant with patch - #6 from Greg A. Woods) - * tools/Makefile.am: Explicit mention of Makefiles brokenness - Document that, at least, this Makefile.am is broken by design - (patch #5 from Greg A. Woods) - * docs/man/apcsmart.txt: Fix documentation wording "there're" is not - a valid contraction, especially not in a technical document (patch - #4 from Greg A. Woods) - * docs/man/apcsmart.txt: Always use upper case for the acronym "UPS" - Be consistent in using all upper case for the acronym "UPS" (Ie - Uninterruptible Power Supply) (patch #3 from Greg A. Woods) - * docs/man/apcsmart.txt: Fix SmartUPS cabling nomenclature Correct - the nomenclature of the SmartUPS cabling part numbers (patch #2 - from Greg A. Woods) - * configure.in: Fix a configure error message Asciidoc might - actually be installed but documentation might still not be build- - able (earlier messages should hint at exactly what was missing) - (patch #1 from Greg A. Woods) - * data/driver.list.in: HCL: Add support for ATEK Defensor range Add - ATEK Defensor range (Innova series) to the list of blazer_usb - supported models - * data/driver.list.in: HCL: Fix EVER brand name The correct name is - "EVER", not "EVER UPS", as per a request from the manufacturer - -2012-05-10 Arnaud Quette - - * docs/website/news.txt: Update for WMNut 0.63 publication - * docs/website/ups-protocols.txt: Official Riello protocols - publication - -2012-05-08 Prachi Gandhi - - * Makefile.am, scripts/Solaris/Makefile.am, - scripts/Solaris/prepackage.py: Added python script to create - pkginfo.in and checkinstall scripts depending upon the solaris - platform - -2012-05-03 Arnaud Quette - - * drivers/libshut.c, drivers/mge-shut.c: Forgotten driver version - bump - * clients/upsmon.c: Coverity fix on upsmon Remove an unneeded null - check, that cause a Coverity error (reported by Michal Hlavinka - from RedHat) - * drivers/libshut.c, drivers/mge-shut.c: Coverity fix on Eaton SHUT - Fix some tests that are always false, regardless of the values of - operands (reported by Michal Hlavinka from RedHat) - -2012-05-02 Arnaud Quette - - * docs/download.txt, docs/website/news.txt: Update Windows package - publications - * common/Makefile.am, include/Makefile.am: Better handling of - nut_version.h nut_version.h should not be distributed, since it is - automatically built. Moreover, hard dependency in common/ is not - needed since BUILT_SOURCES reference ensure generation before any - other target: - http://www.gnu.org/software/automake/manual/automake.html#Sources - (Reported by Regid Ichira, Debian bug #613643) - -2012-04-27 Arnaud Quette - - * data/driver.list.in, drivers/cps-hid.c: Add support for CyberPower - Systems PR6000LCDRTXL5U Add CyberPower Systems PR6000LCDRTXL5U - (USB ID 0x0764:0x0601) to the list of usbhid-ups supported models - (reported by Dax Kelson) - * data/driver.list.in: HCL: Complete HP supported devices list Add - HP UPS Management Module to the list of snmp-ups supported models. - Also complete serial compatibility for some models, using mge-shut - -2012-04-25 Arnaud Quette - - * docs/man/nut-scanner.txt: Clarify nut-scanner compilation and - distribution Document explicitely how nut-scanner is compiled, and - how its features are made available, according to its dependencies - (both compile time and runtime) - -2012-04-24 Frederic Bohe - - * tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan-init.c, - tools/nut-scanner/nutscan-init.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: Cleaner exit for nut-scanner - -2012-04-23 Frederic Bohe - - * 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: Be - more verbose when failing to dynamically load a library - -2012-04-14 Arnaud Quette - - * docs/man/.gitignore, docs/man/Makefile.am, docs/man/index.txt, - docs/man/nut-recorder.txt, tools/nut-recorder.sh: Create nut- - recorder manual page - * drivers/tripplite-hid.c: HP USB UPS completion #3 Remove R/T3000 - USB ID (0x03f0:0x1fe5) from the TrippLite HID mapping, since it is - supported by the Eaton HID mapping. This completes commit - * drivers/usbhid-ups.c: Correct Celsius temperatures that should be - in Kelvin Check if raw value is in the Kelvin range, to detect - buggy values that are already expressed in Celsius degrees, as - found on some HP devices - * docs/developer-guide.txt, tools/Makefile.am, tools/{device- - recorder.sh => nut-recorder.sh}: Rename device-recorder to nut- - recorder - * data/driver.list.in: HCL: Reorder Dell devices by connection type - -2012-04-10 Arnaud Quette - - * scripts/systemd/nut-driver.service.in, scripts/systemd/nut- - monitor.service.in, scripts/systemd/nut-server.service.in, - scripts/systemd/nutshutdown.in: Fix broken systemd integration in - the build system Step 2: add the theoretical path templates to the - systemd scripts. This however requires adjustments to the RPM - package. Namely, upsd and upsmon will have to be installed in - /sbin, instead of the current /usr/sbin - * configure.in, scripts/systemd/Makefile.am: Fix broken systemd - integration in the build system Step 1: remove Makefile rules that - were both useless, and causing warning. Generate nut-*.service - files from .in templates in configure, as it should be, which is - currently void since there is no target to substitute. This has - however required to export SBINDIR and PIDPATH through AC_SUBST, in - configure - * clients/upsrw.c, common/state.c, docs/man/upscli_list_start.txt, - docs/man/upsrw.txt, docs/net-protocol.txt, docs/new-drivers.txt, - docs/sock-protocol.txt, drivers/dstate.c, drivers/dstate.h, - include/extstate.h, include/state.h, server/netget.c, - server/netlist.c, server/netset.c, server/sstate.c, - server/sstate.h: Support of ranges of values for writable variables - It is now possible to specify one or more ranges of values for - writable variables, using dstate_addrange() in drivers. upsd also - supports the new type 'RANGE' for 'GET TYPE', along with the 'LIST - RANGE' command. Finally, users can interact through upsrw, which - displays the supported ranges, and enforces new value checking - against the provided boundaries - * drivers/mge-hid.c: HP USB UPS completion #2 Address HP USB/HID - devices, that use the Eaton HID definitions. This includes the - latest products range (USB IDs 0x1fe5, 0x1fe6, 0x1fe7 and 0x1fe8), - and few more variables and commands - * drivers/mge-hid.c: Fix Eaton / MGE outlet.2.switchable flags - outlet.2.switchable should only be writable to enable ECO mode on - Ellipse ECO, Protection Station and some 3S. Other models should - only expose it as read only (reported by Prachi Gandhi from Eaton, - Alioth bug #313587) - -2012-04-04 Arnaud Quette - - * scripts/Makefile.am, scripts/logrotate/nutlogd: Provide log - rotation configuration for NUT Provide a basic configuration file - for managing rotation (logrotate) of NUT log files, generated by - upslog - -2012-04-02 Arnaud Quette - - * docs/nut-names.txt: Update the namespace Complete the namespace - with missing variables and commands, that are either known or have - had an RFC - * docs/man/.gitignore: Subversion ignored files completion Mark - nutscan_init.html as Subversion ignored (no functional changes) - -2012-03-31 Arnaud Quette - - * data/driver.list.in: HCL: Add support for AEG Power Solutions - PROTECT HOME Add AEG Power Solutions PROTECT HOME (USB ID - 0x0665:0x5161) to the list of blazer_ser and blazer_usb supported - models (reported by Joachim Schiele) - -2012-03-30 Arnaud Quette - - * drivers/bcmxcp_usb.c: Add debug traces for read / write commands - * common/common.c, include/common.h: Improve support functions for - trimming strings Enforce verifications in rtrim, and add an ltrim - function - -2012-03-29 Arnaud Quette - - * data/driver.list.in, drivers/blazer_usb.c: Add support Innova - online UPS family Add Innova T (0x06da:0x0201), Innova RT - (0x06da:0x0005) and Innova 3/1 T (0x06da:0x0004) to the list of of - blazer_usb and blazer_ser supported models. Innova series are - online UPS supporting Q1 for compatibility, and many more commands. - Better support, either through blazer_* rewrite or through a new - driver, is considered as a future possibility - -2012-03-24 Arnaud Quette - - * configure.in, docs/Makefile.am, docs/security.txt, - scripts/Makefile.am, scripts/ufw/.gitignore, scripts/ufw/README, - scripts/ufw/nut.ufw.profile.in: Uncomplicated Firewall (UFW) - support Provide an Uncomplicated Firewall (UFW) profile - (nut.ufw.profile) to tightly integrate NUT, along with some - documentation completion for the Security chapter of the user - manual - -2012-03-23 Arnaud Quette - - * conf/nut.conf.sample, docs/man/nut.conf.txt: Fix nut.conf - documentation and sample file Since nut.conf is intended to be - sourced by shell scripts, spaces must not be added around the equal - sign. Fix documentation and sample file to conform to this purpose, - and add bold warning (reported by Tim Rice, Alioth bug #312452) - * clients/upsmon.c, server/upsd.c: Detect duplicate instances of upsd - / upsmon Fix a long standing issue, that is the lack of detection - of duplicate upsd / upsmon instances when starting another one of - these daemons. This previously resulted in inconsistencies, such as - being unable to stop the daemon, due to its .pid file being removed - by the newly started instance (last reported by Andrew Min Chang) - -2012-03-21 Frederic Bohe - - * drivers/libshut.c: Avoid stack corruption on invalid frame In the - protocol, the frame size can be 8 bytes max. That is why the frame - buffer is only 8 bytes long. If the frame is corrupted, the size - read may be up to 15, which may corrupt the stack while writing - into the frame buffer. This patch add a simple sanity check on the - size to avoid a crash and enforce protocol limitation. - * drivers/libshut.c: Fix SHUT variables read (from Arnaud Quette) - * drivers/bcmxcp.c, drivers/bcmxcp.h, drivers/bcmxcp_usb.c: Change - timeout for PW9120 Current timeout (1 sec) is too short for - PW9120: numerous frames are lost. Setting this to 2 seconds fix - this. - * drivers/libshut.c: Deactivate UPS notification Currently this - driver is ignoring notification by automatically sending NACK when - they are received. Nevertheless,this behavior creates communication - errors with some UPS (M2200). So this patch completly disable the - sending of notification from the UPS. Ideally we should correclty - implement notifications managment for optimal performance, but with - this patch, at least, communiaton works. - * drivers/libshut.c: Fix shut notification mask - -2012-03-09 Arnaud Quette - - * docs/config-notes.txt: Emphasize special characters - * data/driver.list.in, drivers/tripplite-hid.c: HP USB UPS completion - #1 Address HP USB/HID devices, that use the TrippLite HID - definitions. This includes new ProductIDs, and few more variables - and commands - * drivers/oneac.h: Remove extraneous comment start - -2012-03-08 Frederic Bohe - - * common/parseconf.c, common/upsconf.c, docs/config-notes.txt: More - flexible '=' character managment in conf files This allow to - support the following forms : 'foo = bar', 'foo=bar', 'foo =bar' - and 'foo= bar' - -2012-03-06 Arnaud Quette - - * docs/man/oneac.txt, drivers/oneac.c, drivers/oneac.h: Improve - general OneAC support (oneac 0.80) Improve support for all - families of Oneac (EG, ON, OZ and OB), including support for more - data and instant commands (patch from Bill Elliot) - -2012-03-05 Arnaud Quette - - * drivers/blazer.c, drivers/blazer_ser.c, drivers/blazer_usb.c: - Guesstimate battery high and low voltages Add an automatic - estimation for high and low voltages, to be able to determine - battery charge. This should cover most cases, but a bold mention - has been added at driver startup, to inform the user. Driver - version (USB and serial) have been bumped to reflect this change - * drivers/blazer.c: Set 'FSD' status flag upon need As per the - recent decision to allow driver to set 'FSD' status flag, set 'FSD' - upon "Shutdown imminent" detection - -2012-03-02 Arnaud Quette - - * autogen.sh, scripts/augeas/Makefile.am: Sanity check before python - script execution Only generate Augeas ups.conf lens if we can - import required Python modules (re,glob,codecs) - * docs/man/blazer.txt: Fix typo error in runtimecal example values - * docs/stable-hcl.txt: Improve formating - * docs/new-drivers.txt: Formalize the use of the FSD status flag As - an exception, drivers are now allowed to set the "FSD" (Forced - ShutDown) status flag when an imminent shutdown has been detected - -2012-02-29 Arnaud Quette - - * clients/upsc.c, docs/man/upsc.txt: Client side implementation of - "LIST CLIENT" Implement "LIST CLIENT" in upsc, using "-c " - * docs/net-protocol.txt, server/netlist.c: Adjust server side - implementation of "LIST CLIENT" Commands of the "LIST" family have - to be coherent with the command name. Ie, "LIST CLIENT" should use - the same "CLIENT" prefix, or it will otherwise break client side - verification mechanism - * server/netlist.c: Adjust "LIST CLIENTS" implementation Adjust - "LIST CLIENTS" implementation to be more coherent with other - network protocol commands - * docs/net-protocol.txt: Document new "LIST CLIENTS" command - * server/upsd.c, server/upsd.h: Remove upsd "info" command Adjust - initial "LIST CLIENTS" commit, by removing the upsd "info" command, - which is not suitable, and redundant with the "LIST CLIENT" command - of the network protocol [Fixed compilation error] - -2012-02-29 Charles Lepple - - * scripts/python/module/PyNUT.py: Add support for LIST CLIENTS, etc. - to PyNUT. Patch by Rene Martín Rodríguez . - Merged with typo fixes in repository. Covers LIST CLIENTS, FSD, - HELP and VER. Module version bumped to 1.2.2. Discussion: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/5871 - * server/netlist.c, server/upsd.c, server/upsd.h: Add new "LIST - CLIENTS" command to NUT protocol. Patch by Rene Martín Rodríguez - , with indentation changed to tabs. - Discussion: - http://article.gmane.org/gmane.comp.monitoring.nut.devel/5870 - * drivers/blazer.c: Update URL to Megatec protocol description. - -2012-02-28 Arnaud Quette - - * drivers/liebert-hid.c: UPower optimization Always spell - manufacturer names the same way across the various USB drivers. - This avoids duplication of manufacturer entries in - scripts/upower/95-upower-hid.rules, during automatic generation - -2012-02-27 Arnaud Quette - - * data/driver.list.in, drivers/cps-hid.c: Add support for CyberPower - OR700LCDRM1U Add CyberPower OR700LCDRM1U (0x0764:0x0601) to the - list of usbhid-ups supported models (reported by Brian McCann) - -2012-02-22 Michal Soltys - - * drivers/apcsmart.c: drivers/apcsmart.c: setvar_string() and - apc_write_long() bugfixes setvar_string() couldn't function - properly, due to the use of wrong variable. Not associated with - any bugreport (reported directly to email). - * drivers/apcsmart.c: drivers/apcsmart.c: make - tcsetattr()/tcgetattr() difference not fatal This is follow up - from earlier bug report (#313395). Earlier commit should have fixed - the issue, but the original submitter never commented on it. Just - in case - instead of making it fatal, we only log the issue. - -2012-02-20 Arnaud Quette - - * drivers/snmp-ups.c, tools/nut-scanner/scan_snmp.c: Better handling - of Net-SNMP AES PrivProtocol Handle smartly issues related to Net- - SNMP support and declaration of AES PrivProtocol - -2012-02-19 Charles Lepple - - * drivers/snmp-ups.c, drivers/snmp-ups.h: Don't allocate storage for - variables in snmp-ups.h The header files should declare variables - as extern, and they should be allocated in only one .c file (not - all of the files which include the .h file). While this is not an - immediate problem when only one .c file includes the .h file, it - still should be fixed in case that changes in the future. Patch by - Daniel Macks: http://fink.cvs.sourceforge.net/viewvc/fink/experimen - tal/dmacks/finkinfo/nut.patch?revision=1.1&view=markup - * drivers/bcmxcp.c, drivers/bcmxcp.h: Don't allocate storage for - variables in bcmxcp.h The header files should declare variables as - extern, and they should be allocated in only one .c file (not all - of the files which include the .h file). This was causing multiple - symbol definitions on Mac OS X. Patch by Daniel Macks: http://fink - .cvs.sourceforge.net/viewvc/fink/experimental/dmacks/finkinfo/nut.p - atch?revision=1.1&view=markup - -2012-02-16 Arnaud Quette - - * data/driver.list.in, drivers/blazer_usb.c: Add support for Online - Yunto YQ450 Add Online Yunto YQ450 (0x06da:0x0002) to the list of - blazer_usb supported models (reported by Thomas Maisl) - -2012-02-16 Charles Lepple - - * tools/git-svn.authors, tools/svn2cl.authors: Update SVN username - mappings - -2012-02-14 Arnaud Quette - - * data/driver.list.in: Add support for Tripp-Lite OMNISMART500 Add - Tripp-Lite OMNISMART500 (productID 0001) to the list of - tripplite_usb supported models (reported by Matt Schulte) - -2012-02-10 Arnaud Quette - - * data/driver.list.in: Support for Dell UPS Network Management Card - Add Dell UPS Network Management Card to the list of snmp-ups and - netxml-ups supported models. SNMP support currently relies on IETF - (RFC-1628) MIB, and not on Dell UPS MIB - -2012-02-09 Frederic Bohe - - * tools/nut-scanner/scan_snmp.c: Remove useless lib_mutex and buggy - dev_mutex - -2012-02-03 Arnaud Quette - - * Makefile.am: Update ChangeLog generation and fix text wrapping - Adapt the ChangeLog file generation process to correctly wrap text, - even with the new 'git style' format, used for Subversion commit - messages - -2012-02-02 Arnaud Quette - - * drivers/bcmxcp.c, drivers/bcmxcp.h: Improve XCP support for battery - status Add support for battery test publication in - ups.test.result, and RB (replace battery) in ups.status - -2012-01-31 Arnaud Quette - - * drivers/bestfortress.c: Add more debug traces Add more debug - traces, again, to work on the checksum corruption issue - -2012-01-23 Arnaud Quette - - * drivers/mge-mib.c: Clean and complete MGE MIB Complete MGE MIB for - status, variables and commands, using IETF MIB OIDs when needed. - Macro have also been replaced by actual numeric OID paths for - better clarity. - * drivers/snmp-ups.c, drivers/snmp-ups.h: snmp-ups shutdown support - snmp-ups now provides support for UPS shutdown, based on usbhid-ups - mechanisms (composite commands and fallback). Composite commands - are also supported. This means, for example, that if - 'shutdown.return' is not supported, a combination of 'load.off' + - 'load.on' may be used. - * drivers/ietf-mib.c: Fix invalid variable name Beeper status - belongs to the 'ups' data collection - * drivers/snmp-ups.c: Check validity of instant commands before - addition Prior to adding new instant commands, referenced OIDs are - now checked for existance. This avoid adding commands that are not - supported - * docs/man/upsmon.txt: Fix upsmon synopsis Add the missing '-K' - (Test for the shutdown flag) to upsmon synopsis (reported by Regid - Ichira) - -2012-01-20 Arnaud Quette - - * data/driver.list.in: Support for Riello Netman Plus 102 SNMP Card - Add Riello Netman Plus 102 SNMP Card, and attached Sentinel SDL - 6000-7 and Sentinel Dual SDH 1000-7 UPS, to the list of snmp-ups - supported models (reported by Rainer Stumbaum) - -2012-01-19 Arnaud Quette - - * drivers/bestfortress.c: Add more debug traces, to work on the - checksum corruption issue - -2012-01-18 Arnaud Quette - - * docs/nut-names.txt, drivers/usbhid-ups.c: Adjust ups.start.auto - value for shutdown commands When present, ups.start.auto value - needs to be adjusted for shutdown.{return,stayoff} to behave as - expected. This is limited to Eaton devices (reported by Rich Wrenn) - -2012-01-11 Arnaud Quette - - * UPGRADING: Cleanup garbage line Remove garbage line that was added - by accident during the AsciiDoc branch merge or work - * tools/nut-scanner/Makefile.am, tools/nut-scanner/nutscan-init.c, - tools/nut-scanner/scan_nut.c: Move libupsclient to weak runtime - dependencies libupsclient, as other libraries used by nut-scanner, - is now a weak runtime dependency, through the use of lt_dl*() - functions. This means that libupsclient is not anymore required, - but only suggested. This should also solve the distcheck-light - compilation on Aix (on behalf of Frédéric Bohe, from Eaton) - -2012-01-10 Michal Hlavinka - - * drivers/dstate.c: do not forget to check send_to_one return value - send_to_one free()s connection, we can't use it after failure. - * drivers/bcmxcp.c: do not call getinfo twice, use returned value for - parsing result was stored, but never used. Another dstate_getinfo - call was used instead of stored value. Probably result of copy- - paste. - * tools/nut-scanner/scan_xml_http.c: do not use unterminated string - in strlen recvfrom returns raw data without null termination, this - string can't be used in strlen. Use number of recieved bytes - returned by recvfrom instead of strlen. - * clients/upssched.c: do not send garbage on retry because write and - read commands shared one buffer, on retry we did not send command - again, but last read data - * drivers/tripplite_usb.c: prevent buffer overflow in hexascdump - haxascdump uses fixed size static buffer, but it had no checks to - assure result can fit into that buffer. - * tools/nut-scanner/scan_nut.c: ups variable was allocated, but not - free()d - * drivers/rhino.c, drivers/solis.c: use automatic time_t variable - instead of allocated one time_t value is small enough to be - automatic variable instead of allocated one. It eliminates risk we - forget to free it again. - * drivers/bcmxcp.c: do not forget to free pTmp even if len is zero, - pTmp should be freed - * drivers/mge-utalk.c: prevent null pointer dereference in strchr in - some cases p can be null causing null pointer dereference of v - (initialized to 0) in strchr command - * drivers/bcmxcp_usb.c: Fix condition in re-try loop making error - checking unreachable for loop with condition retry <= MAX_TRIES - ends with retry = MAX_TRIES+1. This breaks following error check - with retry == MAX_TRIES condition, because it's true only in case - when last retry actualy succeeded. - -2012-01-09 Arnaud Quette - - * drivers/bestups.c: Add the missing driver variable "battvoltmult" - (patch from Sadara Kael) - -2012-01-06 Arnaud Quette - - * drivers/snmp-ups.c: Reword the message when sysOID detection fails - * drivers/compaq-mib.c: Add the sysOID value, and bump the MIB - version to 1.1 (reported by Jack Challen) - * docs/download.txt: Remove inline SHA-256 sum, and provide links to - MD5 and SHA-256 sums - -2012-01-05 Arnaud Quette - - * server/netget.c: GET UPSDESC does not need device sanity checks - (i.e. connected, with fresh data) to answer (reported by Emilien - Kia, Alioth bug #313323) - * data/driver.list.in: Add Dynamix 1000VA USB to the list of - blazer_usb supported models (requires "langid_fix=0x0409" in - ups.conf; reported by Glen Ogilvie) - -2012-01-04 Arnaud Quette - - * docs/download.txt: Add the missing SHA-256 sum on the Download page - / section (needs to be generated after the distribution package) - * docs/website/news.txt: Update 2.6.3 release date - -2012-01-03 Arnaud Quette - - * NEWS, UPGRADING, configure.in, docs/website/news.txt: Final update - for 2.6.3 release - -2012-01-03 Frederic Bohe - - * docs/config-notes.txt: Add a note about file names with space - characters in the documentation. - -2012-01-03 Arnaud Quette - - * drivers/dummy-ups.c: Add a comment for further processing - -2012-01-03 Frederic Bohe - - * tools/nut-scanner/nut-scanner.c: Fix nut scanner SNMP v3 help - message. - * docs/man/nut-scanner.txt: Fix nut scanner SNMP v3 documentation. - -2011-12-30 Prachi Gandhi - - * configure.in, scripts/Solaris/Makefile.am, - scripts/Solaris/checkinstall, scripts/Solaris/nut.in, - scripts/Solaris/pkginfo.in, scripts/Solaris/postinstall.in, - scripts/Solaris/postremove, scripts/Solaris/preinstall, - scripts/Solaris/preremove.in, scripts/Solaris/prototype: Added - Solaris Packaging scripts - -2011-12-17 Arnaud Quette - - * drivers/blazer_usb.c: Actually apply the langid_fix value, ... - ...when calling usb_get_string (reported by Charles Lepple) - * data/driver.list.in, docs/man/blazer.txt, drivers/blazer_usb.c: Try - to fix language ID support for USB units from LDLC, Dynamix ... - ...and no names in blazer_usb (reworked patch, from Brian R. Smith - and Aurélien Grenotton) - -2011-12-16 Arnaud Quette - - * scripts/HP-UX/.gitignore: Add the generated HP-UX packaging script - (.psf) to the list of ignored files - * drivers/eaton-mib.c, drivers/snmp-ups.c: Fix newer Eaton ePDU OIDs - declaration ordering, ... ...so that it better supports the - various models (switched or advanced monitored) - -2011-12-15 Arnaud Quette - - * clients/upsclient.c, drivers/belkinunv.c, drivers/etapro.c, - drivers/gamatronic.c, drivers/isbmex.c, drivers/libshut.c, - drivers/metasys.c, drivers/mge-shut.c, drivers/microdowell.c, - drivers/nut-libfreeipmi.c, drivers/rhino.c, drivers/solis.c: Fix - set but not used variables [-Wunused-but-set-variable] (including - patch from Regid Ichira) - -2011-12-13 Arnaud Quette - - * compile: Update compile script, as per the latest version available - in Automake (1.11) - * docs/man/.gitignore: Add the generated nutscan_init.3 Groff manual - page... ...to the list of ignored files - * tools/nut-scanner/Makefile.am, tools/nut-scanner/scan_ipmi.c: Add - IPMI power supplies discovery to nut-scanner - * drivers/nut-libfreeipmi.c, m4/nut_check_libfreeipmi.m4: Separate - IPMI requirements, between FRU lookup and monitoring. This way, we - can at least compile nut-scanner with IPMI support and a limited - (no monitoring) version of nut-ipmipsu, using older (pre 1.0.1) - FreeIPMI versions - -2011-12-12 Frederic Bohe - - * tools/nut-scanner/Makefile.am: Unconditional compile of scan_* - source code... ...since now they contains the relevant stub - function. - * tools/nut-scanner/scan_avahi.c, tools/nut-scanner/scan_snmp.c, - tools/nut-scanner/scan_usb.c, tools/nut-scanner/scan_xml_http.c: - Clean call to nutscan include files - * tools/nut-scanner/nutscan-init.c: Fix wrong variable name - * tools/nut-scanner/nut-scanner.c: Fix wrong call to - nutscan_scan_avahi - * tools/nut-scanner/Makefile.am: Forgot to include nutscan-init.h in - Makefile - * docs/man/Makefile.am, docs/man/nutscan_init.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: - Update documentation - * 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: - Make sure not to call any non-initialized function pointers. - * tools/nut-scanner/Makefile.am, tools/nut-scanner/nut-scan.h, - tools/nut-scanner/nut-scanner.c, tools/nut-scanner/nutscan-init.c, - tools/nut-scanner/nutscan-init.h, tools/nut-scanner/scan_avahi.c, - tools/nut-scanner/scan_ipmi.c, tools/nut-scanner/scan_snmp.c, - tools/nut-scanner/scan_usb.c, tools/nut-scanner/scan_xml_http.c: - Keep the same API whatever the library are at compile time... - ...(so some scan functions may be stub only) Add an init function + - variable to know the available scan method at run time. Update - nut-scanner accordingly. - -2011-12-09 Arnaud Quette - - * Makefile.am, configure.in, libltdl/COPYING.LIB, - libltdl/Makefile.am, libltdl/Makefile.in, libltdl/Makefile.inc, - libltdl/README, libltdl/aclocal.m4, libltdl/argz.c, - libltdl/argz_.h, libltdl/config-h.in, libltdl/config/compile, - libltdl/config/config.guess, libltdl/config/config.sub, - libltdl/config/depcomp, libltdl/config/edit-readme-alpha, - libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, - libltdl/config/install-sh, libltdl/config/ltmain.m4sh, - libltdl/config/ltmain.sh, libltdl/config/mdate-sh, - libltdl/config/missing, libltdl/config/mkstamp, - libltdl/config/texinfo.tex, libltdl/configure, - libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, - libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, - libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, - libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, - libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, - libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, - libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, - libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, - libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, - libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, - libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, - libltdl/m4/argz.m4, libltdl/m4/autobuild.m4, libltdl/m4/libtool.m4, - libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, - libltdl/m4/ltversion.in, libltdl/m4/ltversion.m4, - libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libltdl/stamp-mk, - m4/nut_check_libltdl.m4, tools/nut-scanner/Makefile.am: Delete the - bundled version of libltdl, ... and add detection and integration - for the system provided version. nut-scanner build now depends on - the existence of libltdl on the system - * autogen.sh: Revert commit [[SVN:3344]], ...since it causes - problems with documentation build, due to INSTALL being overwritten - -2011-12-09 Charles Lepple - - * autogen.sh: Force files to be overwritten (especially for libtool) - -2011-12-07 Frederic Bohe - - * Makefile.am, configure.in, libltdl/COPYING.LIB, - libltdl/Makefile.am, libltdl/Makefile.in, libltdl/Makefile.inc, - libltdl/README, libltdl/aclocal.m4, libltdl/argz.c, - libltdl/argz_.h, libltdl/config-h.in, libltdl/config/compile, - libltdl/config/config.guess, libltdl/config/config.sub, - libltdl/config/depcomp, libltdl/config/edit-readme-alpha, - libltdl/config/general.m4sh, libltdl/config/getopt.m4sh, - libltdl/config/install-sh, libltdl/config/ltmain.m4sh, - libltdl/config/ltmain.sh, libltdl/config/mdate-sh, - libltdl/config/missing, libltdl/config/mkstamp, - libltdl/config/texinfo.tex, libltdl/configure, - libltdl/configure.ac, libltdl/libltdl/lt__alloc.h, - libltdl/libltdl/lt__dirent.h, libltdl/libltdl/lt__glibc.h, - libltdl/libltdl/lt__private.h, libltdl/libltdl/lt__strl.h, - libltdl/libltdl/lt_dlloader.h, libltdl/libltdl/lt_error.h, - libltdl/libltdl/lt_system.h, libltdl/libltdl/slist.h, - libltdl/loaders/dld_link.c, libltdl/loaders/dlopen.c, - libltdl/loaders/dyld.c, libltdl/loaders/load_add_on.c, - libltdl/loaders/loadlibrary.c, libltdl/loaders/preopen.c, - libltdl/loaders/shl_load.c, libltdl/lt__alloc.c, - libltdl/lt__dirent.c, libltdl/lt__strl.c, libltdl/lt_dlloader.c, - libltdl/lt_error.c, libltdl/ltdl.c, libltdl/ltdl.h, - libltdl/m4/argz.m4, libltdl/m4/autobuild.m4, libltdl/m4/libtool.m4, - libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4, libltdl/m4/ltsugar.m4, - libltdl/m4/ltversion.in, libltdl/m4/ltversion.m4, - libltdl/m4/lt~obsolete.m4, libltdl/slist.c, libltdl/stamp-mk, - tools/nut-scanner/Makefile.am, tools/nut-scanner/scan_avahi.c, - tools/nut-scanner/scan_snmp.c, tools/nut-scanner/scan_usb.c, - tools/nut-scanner/scan_xml_http.c: First set of modification to - include libltdl - -2011-12-05 Arnaud Quette - - * data/driver.list.in, docs/man/snmp-ups.txt, drivers/Makefile.am, - drivers/cyberpower-mib.c, drivers/cyberpower-mib.h, drivers/snmp- - ups.c: Add Cyber Power Systems with SNMP RMCARD (100, 201, 202 and - 301) ... ...to the list of snmp-ups supported models (patch from - Eric Schultz) - * drivers/snmp-ups.c: Remove the Eaton Marlin hook, for base outlet - index ... ...since it has been fixed by a new firmware revision - -2011-11-29 Arnaud Quette - - * tools/nut-snmpinfo.py: Fix indentation and use open() instead of - file(), to better support Python 3 (Alioth bug #313446, patch from - Bohdan Popovych) - -2011-11-25 Arnaud Quette - - * drivers/nut-ipmi.h: Fix wrong prototype declaration, that was - causing a compilation warning (implicit declaration of function - ‘nut_ipmi_get_sensors_status’) - -2011-11-24 Arnaud Quette - - * scripts/Solaris/pkginfo.in: BASEDIR must also be adapted from - configure settings - * scripts/Solaris/Makefile.am: Add missing dependencies, and - distribution rules - * scripts/Makefile.am: There is no need to list Solaris/pkginfo.in - there, ... ...since 'Solaris' is listed in SUBDIRS, and - 'pkginfo.in' is listed in configure.in - * scripts/Solaris/Makefile.am: Remove makelocal.sh from - check_SCRIPTS, ... ...since it is not meant to be run at "make - check" time - -2011-11-24 Prachi Gandhi - - * Makefile.am, configure.in, scripts/Makefile.am, - scripts/Solaris/Makefile.am, scripts/Solaris/makelocal.sh, - scripts/Solaris/pkginfo.in, scripts/Solaris/prototype: Reverted - changes made for Solaris packaging files in [[SVN:3326]] ... added - files in NUT_packaging branch - * Makefile.am, configure.in, scripts/Makefile.am, - scripts/Solaris/Makefile.am, scripts/Solaris/makelocal.sh, - scripts/Solaris/pkginfo.in, scripts/Solaris/prototype: Solaris NUT - package files added - * Makefile.am, configure.in, scripts/Makefile.am, - scripts/Solaris/Makefile.am, scripts/Solaris/makelocal.sh, - scripts/Solaris/pkginfo.in, scripts/Solaris/prototype: Solaris NUT - package files added - -2011-11-15 Arnaud Quette - - * drivers/blazer_usb.c, drivers/usb-common.h: Revert commit - [[SVN:2993]] and [[SVN:2994]]. This enables again inclusion of - buggy USB Device and Vendor IDs, supported by blazer_usb, in udev - rules file (Reported by Stanislav Brabec, from Suse) - * tools/Makefile.am: Add missing comment - -2011-11-12 Arnaud Quette - - * drivers/mge-mib.c: Add upsmgBatteryLowCondition OID to the status - mapping (reported by Kiss Gabor (Bitman)) - -2011-11-11 Praveen Kumar - - * scripts/HP-UX/makedepot.sh: script file to create package (depot) - for HP-UX - -2011-11-08 Arnaud Quette - - * docs/website/web-layout.conf: Complete search keywords - * docs/website/web-layout.conf: Final fix for the displaying of the - legend, to work on all browsers, ... ...while still being - conforming to W3C validation - -2011-11-07 Arnaud Quette - - * docs/website/web-layout.conf: Fix displaying of the legend - -2011-11-05 Michal Soltys - - * docs/cables.txt, docs/man/apcsmart.txt: apcsmart.txt: minor - documentation update Broken diagram link and 940-0024E cable - mention (reported by Jonathan Laventhol). - -2011-11-05 Arnaud Quette - - * conf/upsd.conf.sample, server/upsd.c: Don't fail to start if at - least one of the listening interface is available. This is needed - on systems where either IPv4 or IPv6 is disabled, and no explicit - LISTEN directive has been specified (Reported by Pavel Zubkou, - Debian bug #598741) - -2011-11-02 Praveen Kumar - - * configure.in, scripts/HP-UX/nut.psf.in: Adding packaging script for - HPUX - -2011-10-31 Arnaud Quette - - * docs/download.txt, docs/website/news.txt: Publish update jNut 0.2, - along with the new jNutWebAPI (contributed by Emilien Kia, from - Eaton) - -2011-10-28 Emilien Kia - - * scripts/java/README, scripts/java/jNutWebAPI/README, - scripts/java/jNutWebAPI/pom.xml, - .../jnutwebapi/NutRestProvider.java, - .../jnutwebapi/RestWSApplication.java, - .../jnutwebapi/ScannerProvider.java, - .../jNutWebAPI/src/main/webapp/WEB-INF/web.xml: Initial commit of - jNutWebAPI. - * scripts/java/jNut/.gitignore, scripts/java/jNut/src/main/java/org/n - etworkupstools/jnut/Scanner.java: Fix a little bug with function - namming (get instead of set). - -2011-10-27 Arnaud Quette - - * docs/maintainer-guide.txt: Create a basic NUT maintainer guide, ... - to start tracking and improving maintenance workflow - * drivers/bcmxcp_usb.c: Handle disconnection issues and reconnection - mechanism (bug reported by Rich Wrenn) - -2011-10-25 Emilien Kia - - * .../test/java/org/networkupstools/jnut/ClientTest.java: Add licence - information. - * scripts/java/jNut/README, scripts/java/jNut/pom.xml, - .../java/org/networkupstools/jnut/Scanner.java, - .../java/org/networkupstools/jnut/ScannerTest.java: Add nut- - scanner. - -2011-10-25 Frederic Bohe - - * tools/nut-scanner/scan_snmp.c: Add sanity checks - * tools/nut-scanner/scan_avahi.c: Remove unused variable - -2011-10-25 Michal Soltys - - * drivers/apcsmart.c: drivers/apcsmart.c: minor correction Assigning - 0 directly was wrong (actually, a leftover from earlier version of - the code that was removed) - ser_set_speed() prepares the port - initially, we only adjust certain options. - -2011-10-24 Frederic Bohe - - * docs/man/nut-scanner.txt, tools/nut-scanner/nut-scanner.c: Forgot - to document "-q" option (thanks to Emilien Kia for reporting this) - -2011-10-21 Frederic Bohe - - * tools/nut-scanner/nut-scanner.c: Trivial layout consistency - * docs/man/nut-scanner.txt: Update man page with -V and -a option - * tools/nut-scanner/nut-scanner.c: Add an option to display available - bus (usefull for wrapper). - * tools/nut-scanner/nut-scanner.c: return -1 on bad command line - option - -2011-10-19 Frederic Bohe - - * tools/nut-scanner/nutscan-ip.c: Fix crash on 32bits systems - * tools/nut-scanner/nut-scanner.c: Add a switch to display NUT - version. - -2011-10-19 Charles Lepple - - * docs/FAQ.txt: Add FAQ entry for LISTEN directive - -2011-10-18 Arnaud Quette - - * drivers/eaton-mib.c: Fix outlets reported current, ... ...which - were off by 100 in aphel_genesisII MIB, and bump MIB version to - 0.46 (patch from Sven Nilsson) - -2011-10-14 Arnaud Quette - - * docs/Makefile.am, docs/images/nut-logo.png, docs/images/nut.svg, - docs/website/Makefile.am, docs/website/css/web-layout.css, - docs/website/faviconut.ico, docs/website/faviconut.png, - docs/website/web-layout.conf: Add the new NUT logo (contributed by - Luc Descotils, from Eaton) - * docs/website/web-layout.conf: Fix another W3C validator error - (there is no attribute "language" anymore for