Compare commits
29 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d71ed2aa54 | ||
|
|
f2445acf01 | ||
|
|
c2ac98a585 | ||
|
|
583cb0b03b | ||
|
|
8a2cf41162 | ||
|
|
89ca1eea99 | ||
|
|
cb33d36eae | ||
|
|
cb14d73ce6 | ||
|
|
289b8ada59 | ||
|
|
063db992f5 | ||
|
|
42e9efbb5f | ||
|
|
c5aa870a6e | ||
|
|
8aca3335ef | ||
|
|
325ee1c78c | ||
|
|
5d22797bc1 | ||
|
|
e5f8421257 | ||
|
|
8e55767a3a | ||
|
|
dd4047ce0a | ||
|
|
76adc1d87c | ||
|
|
e9ceaea260 | ||
|
|
d02bbffc60 | ||
|
|
1cbb103fdb | ||
|
|
779e741458 | ||
|
|
8f5ac90905 | ||
|
|
3d82f65c42 | ||
|
|
fdc6fd1f93 | ||
|
|
513fee665f | ||
|
|
a8a7b6eef1 | ||
|
|
ebecec4c08 |
6 changed files with 188 additions and 19 deletions
11
.gitignore
vendored
11
.gitignore
vendored
|
|
@ -1,7 +1,4 @@
|
|||
apcupsd-3.14.8.tar.gz
|
||||
/apcupsd-3.14.9.tar.gz
|
||||
/apcupsd-3.14.10.tar.gz
|
||||
/apcupsd-3.14.11.tar.gz
|
||||
/apcupsd-3.14.12.tar.gz
|
||||
/apcupsd-3.14.13.tar.gz
|
||||
/apcupsd-3.14.14.tar.gz
|
||||
/apcupsd-*.tar.gz
|
||||
/apcupsd-*.src.rpm
|
||||
/apcupsd-*/
|
||||
/results_*/
|
||||
|
|
|
|||
61
99-apcupsd-xfer-glitch.patch
Normal file
61
99-apcupsd-xfer-glitch.patch
Normal file
|
|
@ -0,0 +1,61 @@
|
|||
diff -aruN apcupsd-3.14.14.orig/src/drivers/usb/usb.c apcupsd-3.14.14/src/drivers/usb/usb.c
|
||||
--- apcupsd-3.14.14.orig/src/drivers/usb/usb.c 2024-02-24 20:22:42.007641242 +0100
|
||||
+++ apcupsd-3.14.14/src/drivers/usb/usb.c 2024-02-24 20:23:03.824987965 +0100
|
||||
@@ -42,7 +42,9 @@
|
||||
UpsDriver(ups),
|
||||
_quirk_old_backups_pro(false),
|
||||
_prev_time((struct timeval){0}),
|
||||
- _bpcnt(0)
|
||||
+ _bpcnt(0),
|
||||
+ _bacnt(0),
|
||||
+ _brcnt(0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -410,8 +412,13 @@
|
||||
break;
|
||||
|
||||
case CI_NeedReplacement:
|
||||
- if (uval->iValue)
|
||||
- _ups->set_replacebatt(uval->iValue);
|
||||
+ if (uval->iValue) {
|
||||
+ if (_brcnt++) {
|
||||
+ _ups->set_replacebatt(uval->iValue);
|
||||
+ }
|
||||
+ } else {
|
||||
+ _brcnt = 0;
|
||||
+ }
|
||||
Dmsg(200, "ReplaceBatt=%d\n", uval->iValue);
|
||||
break;
|
||||
|
||||
@@ -569,11 +576,15 @@
|
||||
* delayed. C'est la vie.
|
||||
*/
|
||||
if (uval->iValue) {
|
||||
- if (_bpcnt++)
|
||||
+ if (_bpcnt++) {
|
||||
+ _bacnt = 0;
|
||||
_ups->set_battpresent();
|
||||
+ }
|
||||
} else {
|
||||
- _bpcnt = 0;
|
||||
- _ups->clear_battpresent();
|
||||
+ if (_bacnt++) {
|
||||
+ _bpcnt = 0;
|
||||
+ _ups->clear_battpresent();
|
||||
+ }
|
||||
}
|
||||
Dmsg(200, "BatteryPresent=%d\n", uval->iValue);
|
||||
break;
|
||||
diff -aruN apcupsd-3.14.14.orig/src/drivers/usb/usb.h apcupsd-3.14.14/src/drivers/usb/usb.h
|
||||
--- apcupsd-3.14.14.orig/src/drivers/usb/usb.h 2024-02-24 20:22:42.007641242 +0100
|
||||
+++ apcupsd-3.14.14/src/drivers/usb/usb.h 2024-02-24 20:23:01.754956355 +0100
|
||||
@@ -86,6 +86,8 @@
|
||||
bool _quirk_old_backups_pro;
|
||||
struct timeval _prev_time;
|
||||
int _bpcnt;
|
||||
+ int _bacnt;
|
||||
+ int _brcnt;
|
||||
};
|
||||
|
||||
/* Max rate to update volatile data */
|
||||
|
|
@ -5,7 +5,7 @@ After=network-online.target
|
|||
|
||||
[Service]
|
||||
ExecStartPre=-/bin/rm -f /etc/apcupsd/powerfail
|
||||
ExecStart=/sbin/apcupsd -b -f /etc/apcupsd/apcupsd.conf
|
||||
ExecStart=/usr/bin/apcupsd -b -f /etc/apcupsd/apcupsd.conf
|
||||
KillMode=process
|
||||
|
||||
[Install]
|
||||
|
|
|
|||
102
apcupsd.spec
102
apcupsd.spec
|
|
@ -1,13 +1,13 @@
|
|||
# A change in RPM 4.15 causes the make_build macro to misbuild this package.
|
||||
# See https://github.com/rpm-software-management/rpm/issues/798
|
||||
%global make_build %{__make} %{?_make_output_sync} %{?_smp_mflags}
|
||||
%global _make_verbose %nil
|
||||
|
||||
Name: apcupsd
|
||||
Version: 3.14.14
|
||||
Release: 20%{?dist}
|
||||
Release: 40%{?dist}
|
||||
Summary: APC UPS Power Control Daemon
|
||||
|
||||
License: GPLv2
|
||||
License: GPL-2.0-only
|
||||
URL: http://www.apcupsd.com
|
||||
Source0: https://downloads.sourceforge.net/apcupsd/apcupsd-%version.tar.gz
|
||||
Source1: apcupsd.service
|
||||
|
|
@ -20,13 +20,31 @@ Source5: apcupsd64x64.png
|
|||
Patch0: apcupsd-3.14.9-fixgui.patch
|
||||
# Halt without powering off, rhbz#1442577
|
||||
Patch1: apcupsd-3.14.4-shutdown.patch
|
||||
# Fix format-security error so we can enable the checks
|
||||
Patch2: patch-format-security
|
||||
Patch3: disable_nologin.patch
|
||||
# fixes "increasing NUMXFERS" bug:
|
||||
# https://sourceforge.net/p/apcupsd/mailman/apcupsd-users/thread/ad9afb27-30f9-443f-a9fb-982c41ad1325%40okazoo.eu/
|
||||
# https://www.reddit.com/r/homelab/comments/1c3eo9n/apcupsd_and_proxmox_frequent_battery_disconnected/
|
||||
# patch source: https://sourceforge.net/p/apcupsd/mailman/message/58741334/
|
||||
Patch4: 99-apcupsd-xfer-glitch.patch
|
||||
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: glibc-devel, gd-devel
|
||||
BuildRequires: net-snmp-devel, libusb-devel
|
||||
%if %{defined fedora} || (%{defined rhel} && 0%{?rhel} > 9)
|
||||
BuildRequires: libusb-compat-0.1-devel
|
||||
%endif
|
||||
%if (%{defined rhel} && 0%{?rhel} <= 9)
|
||||
BuildRequires: libusb-devel
|
||||
%endif
|
||||
BuildRequires: net-snmp-devel,
|
||||
BuildRequires: gtk2-devel, GConf2-devel, desktop-file-utils
|
||||
# /sbin/shutdown is required to be present when building
|
||||
# Somehow in F36 systemd is installed in mock but not in koji
|
||||
BuildRequires: systemd
|
||||
# This is part of util-linux in Fedora, but on EL7 it's in sysvinit-tools.
|
||||
BuildRequires: /usr/bin/wall
|
||||
BuildRequires: make
|
||||
Requires: /bin/mail /usr/bin/wall
|
||||
%{?systemd_requires}
|
||||
|
||||
|
|
@ -66,15 +84,10 @@ A GUI interface to the APC UPS monitoring daemon.
|
|||
printf 'install:\n\techo skipped\n' > platforms/redhat/Makefile
|
||||
|
||||
%build
|
||||
%global _hardened_build 1
|
||||
cp -p /usr/lib/rpm/config.{guess,sub} autoconf/
|
||||
export CPPFLAGS="$RPM_OPT_FLAGS -DNETSNMP_NO_LEGACY_DEFINITIONS -Wno-format-security -Wno-error=format-security"
|
||||
export CXXFLAGS="$CPPFLAGS"
|
||||
export CFLAGS="$CPPFLAGS"
|
||||
%configure \
|
||||
--sysconfdir="/etc/apcupsd" \
|
||||
--with-cgi-bin="/var/www/apcupsd" \
|
||||
--sbindir=/sbin \
|
||||
--sbindir=%{_bindir} \
|
||||
--enable-cgi \
|
||||
--enable-pthreads \
|
||||
--enable-net \
|
||||
|
|
@ -131,7 +144,11 @@ rm examples/*.in
|
|||
%config(noreplace) /etc/apcupsd/onbattery
|
||||
%config(noreplace) /etc/logrotate.d/apcupsd
|
||||
/usr/share/hal/fdi/policy/20thirdparty/80-apcupsd-ups-policy.fdi
|
||||
%attr(0755,root,root) /sbin/*
|
||||
%{_bindir}/apcaccess
|
||||
%{_bindir}/apctest
|
||||
%{_bindir}/apcupsd
|
||||
%exclude %{_bindir}/smtp
|
||||
|
||||
%{_mandir}/*/*
|
||||
|
||||
%files cgi
|
||||
|
|
@ -164,6 +181,69 @@ rm examples/*.in
|
|||
|
||||
|
||||
%changelog
|
||||
* Fri Jan 16 2026 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-40
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
|
||||
|
||||
* Wed Jul 23 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-39
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
|
||||
|
||||
* Thu May 22 2025 Gwyn Ciesla <gwync@protonmail.com> - 3.14.14-38
|
||||
- Don't ship /usr/bin/smtp, not used, conflicts with opensmtpd.
|
||||
|
||||
* Fri May 09 2025 Gwyn Ciesla <gwync@protonmail.com> - 3.14.14-37
|
||||
- Move binaries from sbin to bin, 2365293.
|
||||
|
||||
* Wed Apr 23 2025 Davide Cavalca <dcavalca@fedoraproject.org> - 3.14.14-36
|
||||
- Fix libusb conditional to make it build on EPEL 10
|
||||
Fixes: RHBZ#2337139
|
||||
|
||||
* Wed Apr 09 2025 Germano Massullo <germano.massullo@gmail.com> - 3.14.14-35
|
||||
- Adds 99-apcupsd-xfer-glitch.patch
|
||||
|
||||
* Thu Jan 16 2025 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-34
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
|
||||
|
||||
* Fri Nov 08 2024 Germano Massullo <germano.massullo@gmail.com> - 3.14.14-33
|
||||
- Adds distinction between Fedora and EL <= 9 for BuildRequires: libusb
|
||||
|
||||
* Fri Nov 08 2024 Germano Massullo <germano.massullo@gmail.com> - 3.14.14-32
|
||||
- release bump
|
||||
|
||||
* Fri Nov 08 2024 Germano Massullo <germano.massullo@gmail.com> - 3.14.14-31
|
||||
- Adds disable_nologin.patch
|
||||
|
||||
* Sun Jan 07 2024 Germano Massullo <germano.massullo@gmail.com> - 3.14.14-30
|
||||
- disables apcupsd-3.14.4-shutdown.patch
|
||||
|
||||
* Wed Jul 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-29
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
||||
|
||||
* Wed Jan 18 2023 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-28
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
||||
|
||||
* Tue Aug 02 2022 Jason L Tibbitts III <j@tib.bs> - 3.14.14-27
|
||||
- Depend on libusb-compat-0.1-devel to avoid build breakage.
|
||||
|
||||
* Wed Jul 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-26
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
||||
|
||||
* Tue Jan 25 2022 Jason L Tibbitts III <j@tib.bs> - 3.14.14-25
|
||||
- Explicitly require systemd at build time to ensure that /sbin/shutdown is
|
||||
present.
|
||||
|
||||
* Wed Jan 19 2022 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-24
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
||||
|
||||
* Wed Jul 21 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-23
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Sat Jan 30 2021 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.14.14-22
|
||||
- Fix build on F33+.
|
||||
- Allow build with format-security checking enabled.
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-21
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.14.14-20
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
|
|
|||
18
disable_nologin.patch
Normal file
18
disable_nologin.patch
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
diff -urNr apcupsd-3.14.14-orig/src/action.c apcupsd-3.14.14/src/action.c
|
||||
--- apcupsd-3.14.14-orig/src/action.c 2015-03-20 04:59:41.000000000 +0100
|
||||
+++ apcupsd-3.14.14/src/action.c 2024-11-08 16:48:46.095910557 +0100
|
||||
@@ -189,13 +189,7 @@
|
||||
|
||||
static void prohibit_logins(UPSINFO *ups)
|
||||
{
|
||||
- if (ups->nologin_file)
|
||||
- return; /* already done */
|
||||
-
|
||||
- logonfail(ups, 0);
|
||||
- ups->nologin_file = true;
|
||||
-
|
||||
- log_event(ups, LOG_ALERT, "User logins prohibited");
|
||||
+ return;
|
||||
}
|
||||
|
||||
static void do_shutdown(UPSINFO *ups, int cmdtype)
|
||||
13
patch-format-security
Normal file
13
patch-format-security
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
diff --git a/src/gapcmon/gapcmon.c b/src/gapcmon/gapcmon.c
|
||||
index 40bf29d..111fe1f 100644
|
||||
--- a/src/gapcmon/gapcmon.c
|
||||
+++ b/src/gapcmon/gapcmon.c
|
||||
@@ -2938,7 +2938,7 @@ static void gapc_util_log_app_msg(gchar * pch_func, gchar * pch_topic,
|
||||
|
||||
pch = g_strdup_printf("%s(%s) emsg=%s", pch_func, pch_topic, pch_emsg);
|
||||
|
||||
- g_message(pch);
|
||||
+ g_message("%s", pch);
|
||||
|
||||
g_free(pch);
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue