fcron: Update to version 3.4.0

Message ID 20250813205301.2936038-3-adolf.belka@ipfire.org
State Staged
Commit 55f491b11d743837de3089869cc807fcbf393270
Headers
Series fcron: Update to version 3.4.0 |

Commit Message

Adolf Belka 13 Aug 2025, 8:53 p.m. UTC
- Update from version 3.2.1 to 3.4.0
- Update of the rootfile
- Changelog
    3.4.0
	Changed the default "From" header of emails sent by fcron, to be
	 RFC5322-compliant. This is done (and can be reverted if needed) via the new
	 fcron.conf option maildisplayname.
	Changed the default fcron reload delay from 60s to 5s.
	Better doc and logging on bootrun jobs.
    3.3.3
	Fixed infinite loop when an lavg job reaches its 'until' deadline and gets
	 rescheduled as the next job to run.
	Improved signal safety.
	Improved log messages for: indentation, resume after suspend, child task
	 completion.
	Fixed compilation warnings: SELinux, signal handling.
	Updated copyright years.
    3.3.2
	Add compilation option (configure's '--with-max-fcrontab-reload-delay-seconds')
	 to allow faster or even instant reload for non-root users (thanks Elliot Wolk).
	Added fcron.conf option 'maildisplayname', to configure the displayname fcron
	 uses when sending email. This allows fcron to be configured ot be
	 RFC5322-compliant (thanks Marco Emilio "sphakka" Poleggi)
	Fixed fcrondyn output issue where two lines would be joined due to a long
	 shell command.
	Improve documentation wording (thanks Michael Kopp)
    3.3.1
	Updated SELinux code to stop using deprecated headers (fixes build on more
	 recent systems)
	Install programs with R/W perms for the owner
	Fixed @reboot when using systemd
	Various other fixes and improvements in doc, install and boot scripts (in
	 particular under systemd)
    3.3.0
	fcron now handles computer suspend/resume. On Linux systems, fcron can detect
	 resumes and measure the suspend time. On other OSes, a script must be run at
	 suspend and resume via system hooks.
	Added a new option 'runatresume' (as well as a Vixie-cron-style '@resume'
	 shortcut), to run a job when the system resumes from suspend/hibernation.
	Refactored the socket (for fcrondyn), suspend and select code.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/common/fcron | 125 +++++++++++++++++-----------------
 lfs/fcron                     |  35 +++++-----
 2 files changed, 78 insertions(+), 82 deletions(-)
  

Patch

diff --git a/config/rootfiles/common/fcron b/config/rootfiles/common/fcron
index 30823b004..3d6a099ab 100644
--- a/config/rootfiles/common/fcron
+++ b/config/rootfiles/common/fcron
@@ -2,7 +2,6 @@  etc/fcron.allow
 etc/fcron.conf
 #etc/fcron.cyclic
 etc/fcron.cyclic/info.txt
-#etc/fcron.daily
 etc/fcron.daily/info.txt
 etc/fcron.deny
 #etc/fcron.hourly
@@ -15,69 +14,67 @@  etc/fcron.weekly/info.txt
 usr/bin/fcronsighup
 usr/bin/fcrontab
 usr/sbin/fcron
-#usr/share/doc/fcron-3.2.1
-#usr/share/doc/fcron-3.2.1/en
-#usr/share/doc/fcron-3.2.1/en/HTML
-#usr/share/doc/fcron-3.2.1/en/HTML/LEGALNOTICE.html
-#usr/share/doc/fcron-3.2.1/en/HTML/changes.html
-#usr/share/doc/fcron-3.2.1/en/HTML/faq.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fcron.8.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fcron.conf.5.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fcrondyn.1.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fcrontab.1.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fcrontab.5.html
-#usr/share/doc/fcron-3.2.1/en/HTML/fdl.html
-#usr/share/doc/fcron-3.2.1/en/HTML/gpl.html
-#usr/share/doc/fcron-3.2.1/en/HTML/how-and-why.html
-#usr/share/doc/fcron-3.2.1/en/HTML/index.html
-#usr/share/doc/fcron-3.2.1/en/HTML/install.html
-#usr/share/doc/fcron-3.2.1/en/HTML/manpages.html
-#usr/share/doc/fcron-3.2.1/en/HTML/readme.html
-#usr/share/doc/fcron-3.2.1/en/HTML/relnotes.html
-#usr/share/doc/fcron-3.2.1/en/HTML/thanks.html
-#usr/share/doc/fcron-3.2.1/en/HTML/todo.html
-#usr/share/doc/fcron-3.2.1/en/HTML/using-fcron.html
-#usr/share/doc/fcron-3.2.1/en/txt
-#usr/share/doc/fcron-3.2.1/en/txt/changes.txt
-#usr/share/doc/fcron-3.2.1/en/txt/faq.txt
-#usr/share/doc/fcron-3.2.1/en/txt/gpl.txt
-#usr/share/doc/fcron-3.2.1/en/txt/install.txt
-#usr/share/doc/fcron-3.2.1/en/txt/readme.txt
-#usr/share/doc/fcron-3.2.1/en/txt/relnotes.txt
-#usr/share/doc/fcron-3.2.1/en/txt/thanks.txt
-#usr/share/doc/fcron-3.2.1/en/txt/todo.txt
-#usr/share/doc/fcron-3.2.1/fr
-#usr/share/doc/fcron-3.2.1/fr/HTML
-#usr/share/doc/fcron-3.2.1/fr/HTML/LEGALNOTICE.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/changes.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/faq.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fcron.8.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fcron.conf.5.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fcrondyn.1.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fcrontab.1.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fcrontab.5.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/fdl.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/gpl.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/how-and-why.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/index.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/install.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/manpages.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/readme.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/relnotes.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/thanks.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/todo.html
-#usr/share/doc/fcron-3.2.1/fr/HTML/using-fcron.html
-#usr/share/doc/fcron-3.2.1/fr/txt
-#usr/share/doc/fcron-3.2.1/fr/txt/changes.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/faq.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/gpl.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/install.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/readme.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/relnotes.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/thanks.txt
-#usr/share/doc/fcron-3.2.1/fr/txt/todo.txt
-#usr/share/man/fr
-#usr/share/man/fr/man1
+#usr/share/doc/fcron-3.4.0
+#usr/share/doc/fcron-3.4.0/en
+#usr/share/doc/fcron-3.4.0/en/HTML
+#usr/share/doc/fcron-3.4.0/en/HTML/LEGALNOTICE.html
+#usr/share/doc/fcron-3.4.0/en/HTML/changes.html
+#usr/share/doc/fcron-3.4.0/en/HTML/faq.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fcron.8.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fcron.conf.5.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fcrondyn.1.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fcrontab.1.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fcrontab.5.html
+#usr/share/doc/fcron-3.4.0/en/HTML/fdl.html
+#usr/share/doc/fcron-3.4.0/en/HTML/gpl.html
+#usr/share/doc/fcron-3.4.0/en/HTML/how-and-why.html
+#usr/share/doc/fcron-3.4.0/en/HTML/index.html
+#usr/share/doc/fcron-3.4.0/en/HTML/install.html
+#usr/share/doc/fcron-3.4.0/en/HTML/manpages.html
+#usr/share/doc/fcron-3.4.0/en/HTML/readme.html
+#usr/share/doc/fcron-3.4.0/en/HTML/relnotes.html
+#usr/share/doc/fcron-3.4.0/en/HTML/thanks.html
+#usr/share/doc/fcron-3.4.0/en/HTML/todo.html
+#usr/share/doc/fcron-3.4.0/en/HTML/using-fcron.html
+#usr/share/doc/fcron-3.4.0/en/txt
+#usr/share/doc/fcron-3.4.0/en/txt/changes.txt
+#usr/share/doc/fcron-3.4.0/en/txt/faq.txt
+#usr/share/doc/fcron-3.4.0/en/txt/gpl.txt
+#usr/share/doc/fcron-3.4.0/en/txt/install.txt
+#usr/share/doc/fcron-3.4.0/en/txt/readme.txt
+#usr/share/doc/fcron-3.4.0/en/txt/relnotes.txt
+#usr/share/doc/fcron-3.4.0/en/txt/thanks.txt
+#usr/share/doc/fcron-3.4.0/en/txt/todo.txt
+#usr/share/doc/fcron-3.4.0/fr
+#usr/share/doc/fcron-3.4.0/fr/HTML
+#usr/share/doc/fcron-3.4.0/fr/HTML/LEGALNOTICE.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/changes.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/faq.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fcron.8.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fcron.conf.5.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fcrondyn.1.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fcrontab.1.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fcrontab.5.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/fdl.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/gpl.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/how-and-why.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/index.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/install.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/manpages.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/readme.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/relnotes.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/thanks.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/todo.html
+#usr/share/doc/fcron-3.4.0/fr/HTML/using-fcron.html
+#usr/share/doc/fcron-3.4.0/fr/txt
+#usr/share/doc/fcron-3.4.0/fr/txt/changes.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/faq.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/gpl.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/install.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/readme.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/relnotes.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/thanks.txt
+#usr/share/doc/fcron-3.4.0/fr/txt/todo.txt
 #usr/share/man/fr/man1/fcrondyn.1
 #usr/share/man/fr/man1/fcrontab.1
 #usr/share/man/fr/man3
diff --git a/lfs/fcron b/lfs/fcron
index afcbda1b5..f8edd096e 100644
--- a/lfs/fcron
+++ b/lfs/fcron
@@ -1,7 +1,7 @@ 
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2018  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2025  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 3.2.1
+VER        = 3.4.0
 
 THISAPP    = fcron-$(VER)
 DL_FILE    = $(THISAPP).src.tar.gz
@@ -43,7 +43,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = 184b74f9d64186b7d3aae87d48ed0107525fd0c73bb8db86408bd246592ff4fbcbc04f8ca0064868a8555d7c6be2f183172d62daeed75275cd836517da504d0f
+$(DL_FILE)_BLAKE2 = 6af224b5c41005f15970be553d9d80e2de809f35d79bcfb35e33ae3a9e9d6f81d058d3e2a52c0c5b960fff7e9f444f8e95f60ccce5392a6031f35a114ea87dbc
 
 install : $(TARGET)
 
@@ -74,21 +74,20 @@  $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
 	@$(PREBUILD)
 	@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
 	cd $(DIR_APP) && ./configure \
-		--prefix=/usr \
-		--without-sendmail \
-		--with-spooldir=/var/spool/cron \
-		--with-fifodir=/var/run \
-		--with-piddir=/var/run \
-		--sysconfdir=/etc \
-		--with-username=cron \
-		--with-groupname=cron \
-		--with-run-non-privileged=no \
-		--with-fcrondyn=no \
-		--with-sysfcrontab=no \
-		--with-boot-install=no \
-		--with-pam=no \
-		--with-selinux=no
-
+				--prefix=/usr \
+				--without-sendmail \
+				--with-spooldir=/var/spool/cron \
+				--with-fifodir=/var/run \
+				--with-piddir=/var/run \
+				--sysconfdir=/etc \
+				--with-username=cron \
+				--with-groupname=cron \
+				--with-run-non-privileged=no \
+				--with-fcrondyn=no \
+				--with-sysfcrontab=no \
+				--with-boot-install=no \
+				--with-pam=no \
+				--with-selinux=no
 	cd $(DIR_APP) && make $(MAKETUNING)
 	cd $(DIR_APP) && make install
 	echo "root" > /etc/fcron.allow