Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
258 commits
Select commit Hold shift + click to select a range
1ceb24f
NEWS.adoc: document PyNUTClient extension to use STARTTLS and added N…
jimklimov Mar 16, 2026
81d84fc
tests/NIT/nit.sh: setenv_ssl_python(): fix NUT_FORCESSL and NUT_CERTV…
jimklimov Mar 18, 2026
c5da033
scripts/python/module/*: introduce support for NUT_KEYPASS (envvar an…
jimklimov Mar 18, 2026
571cb4f
scripts/python/module/test_nutclient.py.in: fix NUT_FORCESSL and NUT_…
jimklimov Mar 18, 2026
fa46c96
tests/NIT/nit.sh: extend rootca.pem generation with common extensions…
jimklimov Mar 18, 2026
14a44a8
tests/NIT/nit.sh: remove TESTCERT_PATHs before setting them up [#1711]
jimklimov Mar 18, 2026
a0fbe94
tests/NIT/nit.sh: get_group_id(): always return a number (even if -1)
jimklimov Mar 17, 2026
7c15548
tests/NIT/nit.sh: setenv_ssl_python(): fix typos in message [#1600, #…
jimklimov Mar 18, 2026
6ab404b
tests/NIT/nit.sh, tests/NIT/Makefile.am: when generating test certifi…
jimklimov Mar 19, 2026
b186a6b
tests/NIT/nit.sh: use "openssl req -config" instead of "-extfile" for…
jimklimov Mar 19, 2026
05834c6
tests/NIT/nit.sh: add localhost IP addresses as DNS.* aliases, for ol…
jimklimov Mar 19, 2026
a4ca413
tests/NIT/nit.sh, tests/NIT/Makefile.am: add support for WITH_SSL_TES…
jimklimov Mar 19, 2026
43c6ec8
tests/NIT/nit.sh: abort if WITH_SSL_TESTS=required-conditional (and N…
jimklimov Mar 19, 2026
804dd76
docs/config-prereqs.txt: add openssl and nss tools as footprint for F…
jimklimov Mar 19, 2026
26c9c19
Merge pull request #3352 from jimklimov/pynut-ssl
jimklimov Mar 20, 2026
94418a6
Merge branch 'master' into nit-ssl
jimklimov Mar 20, 2026
c6fc9b2
Merge pull request #3351 from jimklimov/nit-ssl
jimklimov Mar 20, 2026
3fe862e
Introduce libnutclient C++ support for SSL (NUT STARTTLS) and tests […
jimklimov Mar 16, 2026
0c7e00a
tests/NIT/nit.sh: use setenv_ssl_python() also for cppnit [#1711, #1599]
jimklimov Mar 17, 2026
1bfe424
clients/nutclient.{cpp,h}, tests/cpputest-client.cpp: add getters for…
jimklimov Mar 17, 2026
fe2fb2a
clients/nutclient.{cpp,h}: add certverify to constructor and connect(…
jimklimov Mar 17, 2026
2376d03
clients/nutclient.{cpp,h}: handle certverify with NSS callbacks [#159…
jimklimov Mar 17, 2026
3eedead
clients/nutclient.cpp: Socket::startTLS(): SSL args are only unused i…
jimklimov Mar 17, 2026
e1aa3c9
clients/Makefile.am: bump libnutclient ABI version [#1599]
jimklimov Mar 17, 2026
79c8c55
clients/nutclient.{cpp,h}: introduce SSLException* family for startTL…
jimklimov Mar 17, 2026
22d1cfa
clients/nutclient.{cpp,h}, tests/cpputest-client.cpp: pass force_ssl …
jimklimov Mar 17, 2026
932a518
clients/nutclient.{cpp,h}, tests/cpputest-client.cpp: do not reset ss…
jimklimov Mar 17, 2026
9ccc6fb
clients/nutclient.{cpp,h}: rename use_ssl => try_ssl as sounds more r…
jimklimov Mar 17, 2026
5aa1830
clients/nutclient.{cpp,h}: revise TCPClient constructor with auto-con…
jimklimov Mar 17, 2026
f9c49bb
clients/nutclient.{cpp,h}: add a TCPClient::connect() variant with ex…
jimklimov Mar 17, 2026
2bf5230
tests/cpputest-client.cpp: update tests to match recent library chang…
jimklimov Mar 17, 2026
dbf1e51
clients/nutclient.{cpp,h}: TcpClient: add individual setters for SSL …
jimklimov Mar 17, 2026
6330077
clients/nutclient.cpp: complete (more of) NSS support [#1599]
jimklimov Mar 17, 2026
f2a1426
clients/nutclient.{cpp,h}: TcpClient: internally handle SSL-related f…
jimklimov Mar 17, 2026
a5ed529
docs/man/Makefile.am, docs/man/libnutclient_tcp.txt: add basic mentio…
jimklimov Mar 17, 2026
ea1086e
tests/cpputest-client.cpp: report SSL setup before connection attempt…
jimklimov Mar 17, 2026
65d311a
libnutclient (C++): introduce nutclient_tcp_get_ssl_caps() and TcpCli…
jimklimov Mar 17, 2026
d863330
tests/NIT/nit.sh: separate setenv_ssl_cppnit() from setenv_ssl_python…
jimklimov Mar 17, 2026
61e3bc2
tests/cpputest-client.cpp: refactor with setupClientSSL(); support KE…
jimklimov Mar 17, 2026
cf56f99
tests/cpputest-client.cpp: ingest envvars for setSSLConfig_NSS() [#15…
jimklimov Mar 17, 2026
99f2618
configure.ac: support --with-ssl=(nss|openssl) as used in GitHub acti…
jimklimov Mar 18, 2026
2e0525b
libnutclient (C++): introduce key_pass and its OpenSSL handling; sepa…
jimklimov Mar 17, 2026
7a5dc2e
docs/man/Makefile.am: fix LIBNUTCLIENT_TCP_DEPS which can get generat…
jimklimov Mar 18, 2026
5ba53dd
configure.ac: fix C++ builds in Termux environment [#1599, #1711]
jimklimov Mar 19, 2026
b8b0929
clients/nutclient.cpp: fix some NULL=>nullptr cases [#1599]
jimklimov Mar 19, 2026
bc05d1f
docs/man/Makefile.am: refactor with $(LIBNUTCLIENT_TCP_DEPS_SUB) [#1599]
jimklimov Mar 19, 2026
3bd9ac4
tests/Makefile.am: add LIBSSL_LIBS to consumers of libnutclient [#159…
jimklimov Mar 20, 2026
eeb31ef
clients/nutclient.{cpp,h}, docs, tests: there is no separate CERTIDEN…
jimklimov Mar 20, 2026
9774c48
clients/nutclient.{cpp,h}: drop TcpClient constructors with a list of…
jimklimov Mar 20, 2026
8b4b7a1
clients/nutclient.{cpp,h}: introduce the SSLConfig helper class famil…
jimklimov Mar 20, 2026
d12af9f
clients/nutclient.h, tests/cpputest-client.cpp: hide setSSLConfig_NSS…
jimklimov Mar 20, 2026
18116ea
clients/nutclient.{cpp,h}: fix destructor for concrete SSLConfig clas…
jimklimov Mar 20, 2026
e276a50
tests/cpputest-client.cpp: fix use of new SSLConfig_NSS() [#1599, #1711]
jimklimov Mar 20, 2026
8a5f958
tests/cpputest-client.cpp: setupClientSSL(): avoid mixing char* and s…
jimklimov Mar 20, 2026
7f147cb
clients/nutclient.h: use a simpler way to construct SSLConfig* from c…
jimklimov Mar 21, 2026
2956cc6
clients/nutclient.cpp, tests/cpputest-client.cpp: per CodeQL, "new" m…
jimklimov Mar 21, 2026
1211c56
Merge pull request #3353 from jimklimov/cpp-ssl
jimklimov Mar 21, 2026
b47cf64
NEWS.adoc: Adjusted C++ header search path on Termux [#3353]
jimklimov Mar 21, 2026
b3c171d
NEWS.adoc: fix typo
jimklimov Mar 21, 2026
704bf17
conf/ups.conf.sample: clarify run-time group nuances [#3356]
jimklimov Mar 22, 2026
0faed3a
configure.ac, clients/Makefile.am, tests/Makefile.am: refactor with L…
jimklimov Mar 22, 2026
65b977f
configure.ac: generalize fix for LIBSSL_CXXFLAGS when -isystem is inv…
jimklimov Mar 22, 2026
722fb00
configure.ac, clients/nutclient.{cpp,h}, tests/cpputest-client.cpp, c…
jimklimov Mar 22, 2026
9e341df
configure.ac: extend detection of LIBSSL_CXXFLAGS on MSYS2 [#1599]
jimklimov Mar 22, 2026
0a6d278
clients/nutclient.cpp: fix includes for non-NSS builds [#1599]
jimklimov Mar 22, 2026
4254b3a
clients/nutclient.h: drop commented-away undefine of NSS/OPENSSL when…
jimklimov Mar 22, 2026
c825380
NEWS.adoc: highlight that PR #3233 also fixes fallout of #3008
jimklimov Mar 23, 2026
73fc502
Makefile.am: reformat spellcheck rule shell scriptlet
jimklimov Mar 23, 2026
7eb3358
docs/Makefile.am: move NEWS.adoc and UPGRADING.adoc to top of SPELLCH…
jimklimov Mar 23, 2026
8187a55
docs/Makefile.am: spellcheck: debug SPELLCHECK_SRCDIR and SPELLCHECK_…
jimklimov Mar 23, 2026
2c87f42
docs/Makefile.am: spellcheck: prioritize certain SPELLCHECK_NOEXT_DOC…
jimklimov Mar 23, 2026
ccdea76
Makefile.am: revise tracing of SUBDIR-MAKE reports to make them consi…
jimklimov Mar 23, 2026
2bd16d3
Makefile.am: fix "make check" done from scratch [#2871, #3039]
jimklimov Mar 23, 2026
e17d8a7
docs/FAQ.txt: expand the section on driver inability to connect to a …
jimklimov Mar 23, 2026
a22f8a9
GitIgnore .all.*-generated.timestamp files [#2871]
jimklimov Mar 23, 2026
15c2094
Makefile.am, docs/man/Makefile.am: apply ticks similar to those for g…
jimklimov Mar 23, 2026
a8d05cd
Merge pull request #3363 from jimklimov/cpp-ssl
jimklimov Mar 25, 2026
e109a95
Makefile.am: fix typo (generated-generated) in rule names
jimklimov Mar 25, 2026
11b3126
Makefile.am: rename "generated-headers-with-a-touch" => "generated-so…
jimklimov Mar 25, 2026
e667125
tests/NIT/nit.sh, NEWS.adoc: add optional DUMMY_UPS_SWARM_COUNT suppo…
jimklimov Mar 21, 2026
39b1d50
drivers/upsdrvctl.c: more logging around forkexec() and sleeps/waits …
jimklimov Mar 21, 2026
b79b5d7
tests/NIT/nit.sh: customize a short maxstartdelay=1 for upsdrvctl [#3…
jimklimov Mar 21, 2026
19b9546
server/upsd.c: fix looping over more than MAXSYSCONN FDs [#3302]
jimklimov Mar 21, 2026
77b4f0f
tests/NIT/nit.sh: bump MAXCONN in upsd.conf with non-trivial DUMMY_UP…
jimklimov Mar 21, 2026
debae5f
tests/NIT/nit.sh: adjust testcase expectations to possibility of DUMM…
jimklimov Mar 21, 2026
c8bc229
common/common.c: vupslog(): Ensure line buffering for sane logs on Wi…
jimklimov Mar 22, 2026
cd93aa1
tests/NIT/nit.sh, NEWS.adoc: introduce `UPSLOG_SWARM_COUNT` for clien…
jimklimov Mar 22, 2026
9f62d7b
server/upsd.c: mainloop(): revise chunked select - first try with zer…
jimklimov Mar 22, 2026
dfaf681
common/common.c: background(): when reporting "Startup successful", a…
jimklimov Mar 23, 2026
ff66dbe
Merge pull request #3367 from jimklimov/issue-3302
jimklimov Mar 25, 2026
0d999aa
tests/NIT/nit.sh: our MAXCONN requirement scales much faster than tho…
jimklimov Mar 24, 2026
85235b1
tests/NIT/nit.sh: setenv_ssl_cppnit()/setenv_ssl_python(): neuter NUT…
jimklimov Mar 24, 2026
e098c1c
tests/NIT/nit.sh: die() not exit() upon hiccups in SSL setup to help …
jimklimov Mar 24, 2026
c0bd954
tests/NIT/nit.sh: work around crashes and serial number clashes with …
jimklimov Mar 24, 2026
85b7646
scripts/python/module/PyNUT.py.in: consider NUT_DEFAULT_CONNECT_TIMEO…
jimklimov Mar 24, 2026
e3ea82d
clients/nutclient.cpp: Socket(): consider NUT_DEFAULT_CONNECT_TIMEOUT…
jimklimov Mar 24, 2026
b8902e8
tests/NIT/nit.sh: bump NUT_DEFAULT_CONNECT_TIMEOUT when testing with …
jimklimov Mar 24, 2026
02f6685
tests/NIT/nit.sh: request NSS server cert with SubjAltName extension …
jimklimov Mar 24, 2026
1d6c12a
tests/NIT/nit.sh: revise certutil signing to satisfy python 3.13+ [#1…
jimklimov Mar 25, 2026
0cb0539
Merge pull request #3372 from jimklimov/ssl-new-req
jimklimov Mar 25, 2026
6035097
Introduce NUT_DEBUG_PROCNAME envvar (handled for debug logging if set…
jimklimov Mar 24, 2026
58d58d9
drivers/main.c: use setproctag() to identify upsname in debug logs [#…
jimklimov Mar 24, 2026
6a98e19
server/upsd.c: use setproctag() to identify upsd in debug logs [#3302…
jimklimov Mar 24, 2026
060cc10
clients/upslog.c: use setproctag() to identify the client in debug lo…
jimklimov Mar 24, 2026
c23b936
clients/upsc.c, clients/upscmd.c, clients/upsrw.c: setproctag() initi…
jimklimov Mar 24, 2026
0c53222
tools/nut-scanner/nut-scanner.c, tools/nut-scanner/Makefile.am: PoC u…
jimklimov Mar 24, 2026
73fd5a2
tools/nut-scanner/nut-scanner.c: revise use of setproctag() avoiding …
jimklimov Mar 24, 2026
29e8f7b
Merge pull request #3373 from jimklimov/setproctag-more
jimklimov Mar 25, 2026
d25dde3
common/common.c: hide `if (strlen(EXEEXT))` from "-Wunreachable-code"…
jimklimov Mar 24, 2026
6ed111f
clients/upsc.c: move usage() to top like in other clients [#3378]
jimklimov Mar 27, 2026
724ba4b
Clients and daemons with command-line options: converge to using geto…
jimklimov Mar 27, 2026
9ee23d2
clients/ups{c,cmd,rw}.c: converge to naming the help() method same wa…
jimklimov Mar 27, 2026
53a8e26
Clients and daemons with command-line options: converge to using opt_…
jimklimov Mar 27, 2026
5bcfc01
clients/ups{c,cmd,rw}.c, man pages, NEWS.adoc: add "-D" option suppor…
jimklimov Mar 27, 2026
6a1acba
NEWS.adoc: rephrase change about upsset [#3164]
jimklimov Mar 27, 2026
2499ec0
Makefile.am: add {all,check,install}-quick goals integrated with NUT …
jimklimov Mar 28, 2026
315e39b
Makefile.am, NEWS.adoc: Added `make .libs-dev-PATH` recipe to help de…
jimklimov Mar 28, 2026
fd80163
common/common.c, include/common.h: introduce xbasename_no_ext() to re…
jimklimov Mar 27, 2026
1949cb3
clients/upsmon.c: refactor with xbasename_no_ext() [#3373]
jimklimov Mar 27, 2026
1cd13c9
drivers/main.c: refactor with xbasename_no_ext() [#3373]
jimklimov Mar 27, 2026
b09dcf2
server/upsd.c: refactor with xbasename_no_ext() [#3373]
jimklimov Mar 27, 2026
2fedb98
drivers/main.c: define optstring near help_msg() to match other sourc…
jimklimov Mar 27, 2026
2192271
drivers/main.c: comment the complexity of many debug-level vars [#3378]
jimklimov Mar 27, 2026
d115b44
drivers/main.c: rename "drv_pipe_name" for maintainability (WIN32) [#…
jimklimov Mar 27, 2026
c027677
common/common.c, include/common.h: introduce xbasename_no_ext_default…
jimklimov Mar 27, 2026
8362709
Refactor various NUT programs to use getprogname_argv0_default(), and…
jimklimov Mar 27, 2026
9b5af3e
tools/nut-scanner/nut-scanner.c, tools/nut-scanner/Makefile.am: refac…
jimklimov Mar 27, 2026
6bd4768
tools/nutconf/nutconf-cli.cpp: refactor to use getprogname_argv0_defa…
jimklimov Mar 27, 2026
1caea03
common/nutstream.cpp: NutSocket::Address::Address() copier: sanity-ch…
jimklimov Mar 26, 2026
cd533a2
drivers/main.c: refactor to use getprogname_argv0_default(), get rid …
jimklimov Mar 27, 2026
9811e99
clients/upslog.c: handle "-D" option before others, so it can impact …
jimklimov Mar 27, 2026
d05efaa
tools/nut-scanner/*, docs/man/*: introduce nutscan_{g,s}et_debug_leve…
jimklimov Mar 27, 2026
a2dca60
tools/nut-scanner/nut-scanner.c: stop using nut_debug_level directly:…
jimklimov Mar 27, 2026
fed66e0
tools/nutconf/nutconf-cli.cpp, docs: support "-D" and `NUT_DEBUG_LEVE…
jimklimov Mar 27, 2026
60fedc7
clients/upsclient.{c,h}, docs: expose upscli_{g,s}etproctag() [#3379]
jimklimov Mar 27, 2026
f3ef790
tools/nut-scanner/*, docs: expose nutscan_{g,s}etproctag() [#3379]
jimklimov Mar 27, 2026
6e18069
tools/nut-scanner/nut-scanner.c: convert to using nutscan_setproctag(…
jimklimov Mar 27, 2026
9a19e3c
tools/nutconf/nutconf-cli.cpp: convert to using nutscan_setproctag() …
jimklimov Mar 27, 2026
17ed855
common/common.c, include/common.h: refactor with upslog_start_sync() …
jimklimov Mar 27, 2026
3295054
clients/upsclient.{c,h}, docs: expose upscli_upslog_start_sync() [#3378]
jimklimov Mar 27, 2026
578a370
tools/nut-scanner/*, docs: expose nutscan_upslog_start_sync() [#3378]
jimklimov Mar 27, 2026
4717ca5
tools/nutconf/nutconf-cli.cpp: init common timestamps with *upslog_st…
jimklimov Mar 27, 2026
37ac756
Introduce private setproctag_lib() for libupsclient and libnutscan [#…
jimklimov Mar 28, 2026
ef8582e
common/common.c: debug first run of setproctag() and runs of proctag_…
jimklimov Mar 28, 2026
abf3fb8
tools/nut-scanner/scan_nut.c: nutscan_upscli*(): avoid calls after li…
jimklimov Mar 28, 2026
32209a1
common/common.c: xbasename_no_ext(): keep or even add ext for "nut.ex…
jimklimov Mar 28, 2026
d3ea1ad
common/common.c: vupslog(): only warn about buffer realloc at high ve…
jimklimov Mar 28, 2026
2c350ac
common/common.c: ensure that proctag_cleanup() does its work before p…
jimklimov Mar 28, 2026
19ee993
tools/nut-scanner/nutscan-init.c: debug-log starting/ending of nutsca…
jimklimov Mar 29, 2026
1763001
common/common.c: vupslog(): handle reported invalid inputs for vsnpri…
jimklimov Mar 29, 2026
2b889a6
common/common.c: track procname_cleanup_registered; report what conte…
jimklimov Mar 29, 2026
6785626
common/common.c: debug-log registrations of atexit() handlers [#3384]
jimklimov Mar 29, 2026
6083a8c
tools/nutconf/nutconf-cli.cpp: limit calls to nutscan_* to builds WIT…
jimklimov Mar 29, 2026
d91f613
common/common.c: introduce nut_common_atexit() to clean-up once and i…
jimklimov Mar 29, 2026
106c0a5
tools/nutconf/nutconf-cli.cpp: hack for early enough nutscan_free() t…
jimklimov Mar 29, 2026
cfc6106
common/common.c: proctag_cleanup(): clarify in log messages if it is …
jimklimov Mar 29, 2026
f5d66bf
common/common.c: proctag_cleanup()/procname_cleanup(): simplify "star…
jimklimov Mar 29, 2026
29ad53e
drivers/main.c: fix preprocessor macro indentation of DRIVERS_MAIN_WI…
jimklimov Mar 29, 2026
d826e43
clients/*.c: for consumers of libupsclient, start with initialization…
jimklimov Mar 29, 2026
439a418
common/common.c: proctag_cleanup()/procname_cleanup(): log "finished"…
jimklimov Mar 29, 2026
19c888b
clients/upsc.c: revise main processing loop to setproctag(prog) once …
jimklimov Mar 29, 2026
271e266
NUT common code, libupsclient, libnutscan: expose setmyprocname() to …
jimklimov Mar 29, 2026
b774830
NUT consumers of libupsclient/libnutscan: call *_setprocname() early …
jimklimov Mar 29, 2026
afaa8d1
clients/*.c: redefine setproctag() to cover both in-program common co…
jimklimov Mar 29, 2026
e0179db
drivers/dummy-ups.c: as a libupsclient consumer, use upscli_upslog_st…
jimklimov Mar 29, 2026
29351e0
drivers/main.c: setproctag(prognames[0]) as soon as we can, so CLI/CO…
jimklimov Mar 29, 2026
671ab21
common/common.c: satisfy compilers where default char is signed [#3379]
jimklimov Mar 29, 2026
9c6278d
clients/*.c: diligently call upscli_cleanup() to minimize valgrind al…
jimklimov Mar 30, 2026
024a1ec
Rename libnutscan and libupsclient API methods related to logging wit…
jimklimov Mar 30, 2026
11ecd94
drivers/dummy-ups.c: diligently call upscli_cleanup() to minimize val…
jimklimov Mar 30, 2026
7e4b163
drivers/dummy-ups.c: fix upsdrv_tweak_prognames() to only set upscli …
jimklimov Mar 30, 2026
bb1e5a4
drivers/main.{c,h}, drivers/dummy-ups.c: introduce *upsdrv_callback_s…
jimklimov Mar 30, 2026
32510ab
tools/nutconf/nutconf-cli.cpp: fix NULL=>nullptr [#3379]
jimklimov Mar 30, 2026
989ead9
common/common.c: xbasename_no_ext(): use ubiquitous strcasecmp() for …
jimklimov Mar 31, 2026
f1cd757
Merge pull request #3382 from jimklimov/issue-3378
jimklimov Apr 1, 2026
7de1200
docs/*: update dictionary and rephrase clumsy texts, cater to MSYS2 a…
jimklimov Mar 30, 2026
7b65cf2
docs/config-prereqs.txt: update MSYS2 chapter with notes on symlink e…
jimklimov Mar 30, 2026
a5bc20b
docs/FAQ.txt: update about generated tarballs [#1400]
jimklimov Mar 26, 2026
dff408d
docs/FAQ.txt: stress that MODE from nut.conf is important for nutshut…
jimklimov Mar 26, 2026
9a397d6
Jenkinsfile-dynamatrix: leave a commented-away toggle for dynamatrixG…
jimklimov Mar 14, 2026
162864e
server/upsd.c: mainloop(): report chosen/seen socket counts per type …
jimklimov Mar 24, 2026
79c3de3
server/upsd.c: mainloop(): log how many hits polling returned (POSIX)…
jimklimov Mar 26, 2026
4bca811
server/upsd.c: mainloop(): log incoming connections/data events for P…
jimklimov Mar 26, 2026
bebdabf
server/upsd.c: mainloop(): add a comment for future rework of WIN32 l…
jimklimov Mar 26, 2026
f51f2ef
drivers/upsdrvctl.c: fix broken debug message and update comments
jimklimov Apr 1, 2026
3cfcc40
drivers/dummy-ups.c: pepper parse_data_file() with debug tracing logs…
jimklimov Mar 25, 2026
b71b4d8
server/netssl.c: try to get PR_ErrorToName()/PR_ErrorToString() for a…
jimklimov Mar 25, 2026
1f90382
clients/ups{cmd,rw}.c: make the "OK" without "TRACKING" warning visib…
jimklimov Apr 1, 2026
bd16db4
Adjust POWERDOWNFLAG explantion of temp file system
dlangille Apr 2, 2026
f3b8dc6
clients/upsmon.c: loadconfig(): add a special message for lack of POW…
jimklimov Apr 2, 2026
881f4d5
docs/config-notes.txt: more clarifications about POWERDOWNFLAG file […
jimklimov Apr 2, 2026
a13da91
clients/upsmon.c, NEWS.adoc: loadconfig(): extend the special message…
jimklimov Apr 3, 2026
7189ab5
Rename "nut.svg" and other logo variants more structurally
jimklimov Apr 3, 2026
05f3a90
Add docs/images/nut-logo-256x256.png rendition and distribute this an…
jimklimov Apr 3, 2026
01820e8
server/netssl.c: nss_error(): only allocate buffer for PR_GetErrorTex…
jimklimov Mar 26, 2026
d954981
server/netssl.c: nss_error(): wrap printout lines to help sync with o…
jimklimov Mar 26, 2026
b729192
clients/upsclient.c: resync nss_error() implementation with server/ne…
jimklimov Mar 26, 2026
1c6e550
clients/nutclient.cpp: resync nss_error() implementation with server/…
jimklimov Mar 26, 2026
a245b7e
clients/upsclient.c: upscli_strerror(): detail NSS errors more [#3379…
jimklimov Mar 31, 2026
d6cf1a6
server/conf.c: parse_upsd_conf_args(): debug-log keywords that are re…
jimklimov Mar 26, 2026
7b22155
server/netssl.c: net_starttls(): debug-trace calls into NSS, to profi…
jimklimov Mar 31, 2026
d25a1a2
server/netssl.c: net_starttls(): update comment about SSL_ForceHandsh…
jimklimov Mar 31, 2026
bc64132
server/upsd.c: client_disconnect(): sleep a bit if dropping a semi-in…
jimklimov Mar 31, 2026
f02ca92
drivers/dstate.c: send_to_one(): revise log messages [#3302]
jimklimov Mar 30, 2026
8fef6a5
clients/upsclient.c: pepper read/write and SSL init operations with d…
jimklimov Mar 31, 2026
6cf0224
clients/upsclient.c: net_read()/net_write(): set ups->upserror=UPSCLI…
jimklimov Mar 31, 2026
f1ff222
clients/upsclient.c: upscli_select_write()/upscli_select_read(): trac…
jimklimov Mar 31, 2026
09ce833
clients/upsclient.c: upscli_sslinit(): track and report upscli_strerr…
jimklimov Mar 31, 2026
c7b49a8
clients/upsclient.c: upscli_sendline_timeout()/upscli_readline_timeou…
jimklimov Mar 31, 2026
fc6d27a
clients/upsclient.c: update comments about "built-in(blocking)" conne…
jimklimov Apr 1, 2026
6e0580b
clients/upsclient.c: upscli_disconnect(): after LOGOUT, let the serve…
jimklimov Mar 24, 2026
b198324
Introduce upscli_sendline_timeout_may_disconnect() and upscli_readlin…
jimklimov Mar 31, 2026
bd2c06b
.github/workflows/01-make-dist.yml: add GH notifications for download…
jimklimov Apr 4, 2026
e715b07
appveyor.yml: customize GH notification message template and add a me…
jimklimov Apr 4, 2026
b1ee34a
appveyor.yml: do not repeat commit info in 7Z URL message [#1400]
jimklimov Apr 4, 2026
d22da5f
.github/workflows/00-preclean.yml: Introduce GHA workflow to clean aw…
jimklimov Apr 4, 2026
15572e3
autotools: pass tar-pax to AM_INIT_AUTOMAKE
EchterAgo Apr 4, 2026
ff629ee
Merge pull request #3394 from networkupstools/gha-comment
jimklimov Apr 4, 2026
7ea7280
Merge pull request #3393 from jimklimov/shuffle-nut-logo
jimklimov Apr 4, 2026
2660a73
Merge pull request #3391 from dlangille/POWERDOWNFLAG
jimklimov Apr 4, 2026
2e9d0fb
Merge pull request #3392 from jimklimov/upsmon-pdflag-conditional
jimklimov Apr 4, 2026
da58012
Merge pull request #3389 from jimklimov/issue-3383
jimklimov Apr 4, 2026
fe26f86
Merge pull request #3388 from jimklimov/issue-3302-logs-comments
jimklimov Apr 4, 2026
cb2fa50
Merge pull request #3396 from EchterAgo/autotools_fix_tar_uid_range
jimklimov Apr 4, 2026
d17abdc
apc_modbus: Fix log message register range
EchterAgo Mar 27, 2026
50ec847
apc_modbus: Add outlet group timers
EchterAgo Apr 4, 2026
0a13208
apc_modbus: Fix outlet group command handling to be dynamic
EchterAgo Apr 4, 2026
50821d4
common/wincompat.c, include/wincompat.h: fix (C) heading [#3302]
jimklimov Apr 5, 2026
181fabd
common/wincompat.c: fix whitespaces around parentheses and commas [#3…
jimklimov Apr 5, 2026
c85477e
common/wincompat.c: settle on pipe_full_name variable names; fix styl…
jimklimov Apr 5, 2026
8cebf8f
common/wincompat.c: move variable declarations to top of methods [#3302]
jimklimov Apr 5, 2026
46aa6cf
common/wincompat.c: use TABs in variable declarations [#3302]
jimklimov Apr 5, 2026
e674f5a
drivers/dstate.c: fix style of CreateNamedPipe() etc. args for mainta…
jimklimov Apr 5, 2026
7bcbe45
drivers/dstate.c: fix whitespaces around parentheses and commas (WIN3…
jimklimov Apr 5, 2026
2409d2a
Merge pull request #3395 from EchterAgo/apc_modbus_outlet_fix
jimklimov Apr 6, 2026
04937e9
drivers/apc_modbus.c: apc_modbus_outlet_cmd_suffixes[]: avoid literal…
jimklimov Apr 5, 2026
8a76ed4
.github/workflows/01-make-dist.yml: convert tarball URL messages to o…
jimklimov Apr 5, 2026
ea3bb12
NEWS.adoc: note dual-byte command support in apcsmart [#3327]
jimklimov Apr 6, 2026
c0a264d
Merge pull request #3397 from jimklimov/issue-3302-wincompat-whitespace
jimklimov Apr 6, 2026
e5ade96
NEWS.adoc: drop "planned porting of reference packaging from 42ITy pr…
jimklimov Jan 29, 2026
784219a
NEWS.adoc, UPGRADING.adoc, docs/docinfo.xml.in: finalize text before …
jimklimov Jan 29, 2026
b037407
NEWS.adoc: remove "PLANNED" from section title before NUT v2.8.5 release
jimklimov Jan 29, 2026
4ad962c
docs/docinfo.xml.in: add docs increment summary for NUT v2.8.5 release
jimklimov Jan 29, 2026
93f8671
Update versions for release of NUT v2.8.5
jimklimov Jan 29, 2026
5746386
docs/Makefile.am: spellcheck: fix tracking of FAILED state for SPELLC…
jimklimov Apr 7, 2026
a50ea6c
docs/maintainer-guide.txt: clarify last check of driver version bumps
jimklimov Apr 7, 2026
f69066b
docs/nut.dict: add APC models from recent NEWS.adoc bumps [#3227, #3395]
jimklimov Apr 7, 2026
26776a7
NEWS.adoc: fix indentation [#3395]
jimklimov Apr 7, 2026
0e051f9
docs/maintainer-guide.txt: add "make -j 8 distcheck-completeness" int…
jimklimov Apr 7, 2026
27b11ed
Merge tag 'v2.8.5' into FTY-remerge-20260407
jimklimov Apr 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 38 additions & 0 deletions .github/workflows/00-preclean.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: "GHA-00: Pre-clean"

on:
push:
branches: [ "master", "FTY", "fightwarn", "FTY-obs" ]
tags:
- v*
pull_request_target:
# The branches below must be a subset of the branches above
# Note that for PRs this runs the copy of workflow in the
# target branch (and only then gets some of the permissions
# listed below), and identification/naming of PR source vs.
# a pushed branch (e.g. master updated by a PR merge) is
# tricky.
branches: [ "master", "FTY", "fightwarn", "FTY-obs" ]
workflow_dispatch:
# Allow manually running the action, e.g. if disabled after some quietness in the source

permissions:
checks: write
contents: write
issues: write
pull-requests: write

jobs:
clean:
runs-on: ubuntu-latest
steps:
- name: pr-deleter
if: github.event.pull_request.number > 0
uses: maheshrayas/action-pr-comment-delete@v3.0
with:
github_token: '${{ secrets.GITHUB_TOKEN }}'
org: networkupstools # '${{context.repo.owner}}'
repo: nut # '${{context.repo.repo}}'
user: 'AppVeyorBot'
# user: 'github-actions[bot]' #commented by the userid
issue: '${{github.event.number}}'
28 changes: 28 additions & 0 deletions .github/workflows/01-make-dist.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,19 @@ jobs:
echo "github.ref='${{ github.ref }}'" || true
echo "github.ref_name='${{ github.ref_name }}'" || true

- name: "GHA-01: Create/Update new GH PR comment for future link"
if: github.event.pull_request.number > 0
continue-on-error: true
env:
ref: ${{ github.event.pull_request.head.sha || github.sha }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
uses: thollander/actions-comment-pull-request@v3
with:
message: |
Preparing a ZIP file with standard source tarball and another tarball with pre-built docs for commit ${{ env.ref }} ...
comment-tag: tarball-url
github-token: ${{ env.GITHUB_TOKEN }}

# Make build identification more useful (so we use no fallbacks in script)
- name: Try to get more Git metadata
run: |
Expand Down Expand Up @@ -267,6 +280,21 @@ jobs:
compression-level: 0
overwrite: true

- name: "GHA-01: Create/update new GH PR comment with link"
if: github.event.pull_request.number > 0
continue-on-error: true
env:
artifact_name: "NUT-tarballs-${{ steps.subst-github-ref-name.outputs.result }}.zip"
artifact_url: ${{ steps.upload_artifact.outputs.artifact-url }}
ref: ${{ github.event.pull_request.head.sha || github.sha }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
uses: thollander/actions-comment-pull-request@v3
with:
message: |
A ZIP file with standard source tarball and another tarball with pre-built docs for commit ${{ env.ref }} is temporarily available: [${{ env.artifact_name }}](${{ env.artifact_url }}).
comment-tag: tarball-url
github-token: ${{ env.GITHUB_TOKEN }}

# NOTE: Despite the docs examples, due to GH API changes in Mar 2025
# this action can no longer update an existing check, only create a
# new one. Also calls authenticated with "github-actions" GH App may
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/08-PyNUTClient.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ jobs:
{ TAG_NAME="$(git describe --tags --match 'v[0-9]*.[0-9]*.[0-9]' --exclude '*-signed' --exclude '*rc*' --exclude '*alpha*' --exclude '*beta*')" \
|| TAG_NAME="$(git describe --tags --exclude '*rc*' --exclude '*alpha*' --exclude '*beta*' --exclude '*Windows*' --exclude '*IPM*')" ; } \
&& test -n "${TAG_NAME}" \
|| TAG_NAME="2.8.4-`TZ=UTC date +%s`" ;
|| TAG_NAME="2.8.5-`TZ=UTC date +%s`" ;
fi >&2 ;
TAG_NAME="$(echo "$TAG_NAME" | sed -e 's/^v\([0-9]\)/\1/' -e 's,^.*/,,' -e 's/^v//' -e 's/-g.*$//' -e 's/-/./g')" ;
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_OUTPUT
Expand Down
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
Makefile
Makefile.in
tags
.all.*-generated.timestamp

## Parent directory only
/aclocal.m4
Expand Down Expand Up @@ -51,6 +52,7 @@ tags
/VERSION_FORCED
/VERSION_FORCED_SEMVER
/install-sh
/.libs-dev-PATH
/libtool
/ltmain.sh
/missing
Expand Down
5 changes: 3 additions & 2 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,9 @@
# Everyone deserves credit, including those who haven't added any code.
# Ideas, clues, and helping out on the mailing lists all count too.
#
# This is a blatant ripoff of the fields found in the Linux kernel's CREDITS
# file. If we need more data, those fields can always be added later.
# This is a blatant ripoff of the fields found in the CREDITS file of
# the Linux kernel. If we need more data, those fields can always be
# added later.
#
# N = name, E = email, W = web address, D = description, P = PGP info,
# S = snailmail address, etc.
Expand Down
1 change: 1 addition & 0 deletions Jenkinsfile-dynamatrix
Original file line number Diff line number Diff line change
Expand Up @@ -1457,6 +1457,7 @@ def stageNameFunc_ShellcheckCustom(DynamatrixSingleBuildConfig dsbc) {
if ( env?.BRANCH_NAME ==~ /.*verbose.*/ )
{
dynamatrixGlobalState.enableDebugTrace = true
//dynamatrixGlobalState.enableDebugTraceResolver = true
dynamatrixGlobalState.enableDebugErrors = true
dynamatrixGlobalState.enableDebugMilestones = true
dynamatrixGlobalState.enableDebugMilestonesDetails = true
Expand Down
Loading
Loading