$ git diff --patch-with-stat --summary d0d44f70543c9bfe36d12f1d9f1075b188f1f0b5..593005c4cda024b5c4572f369caf55c46353f36a
.abf.yml | 2 +-
firewalld-python3-jit-fix.patch | 12 ++++++++++++
firewalld.spec | 28 ++++++++++++++++++++++------
3 files changed, 35 insertions(+), 7 deletions(-)
create mode 100644 firewalld-python3-jit-fix.patch
diff --git a/.abf.yml b/.abf.yml
index 86514c0..9cb3903 100644
--- a/.abf.yml
+++ b/.abf.yml
@@ -1,2 +1,2 @@
sources:
- firewalld-1.3.0.tar.gz: 17cf2efe697a56ed942e1ada65c2f87bbd057aff
+ firewalld-2.4.3.tar.bz2: 24c97128d99fb1e5a4ba91693927f3e03e98c1b1
diff --git a/firewalld-python3-jit-fix.patch b/firewalld-python3-jit-fix.patch
new file mode 100644
index 0000000..8ef46af
--- /dev/null
+++ b/firewalld-python3-jit-fix.patch
@@ -0,0 +1,12 @@
+diff -uraN firewalld-2.4.3/config/firewalld.service.in omv-firewalld-2.4.3/config/firewalld.service.in
+--- firewalld-2.4.3/config/firewalld.service.in 2026-06-24 19:51:15.000000000 +0200
++++ omv-firewalld-2.4.3/config/firewalld.service.in 2026-07-25 22:02:52.922394214 +0200
+@@ -18,7 +18,7 @@
+ DevicePolicy=closed
+ KeyringMode=private
+ LockPersonality=yes
+-MemoryDenyWriteExecute=yes
++MemoryDenyWriteExecute=no
+ PrivateDevices=yes
+ ProtectClock=yes
+ ProtectControlGroups=yes
diff --git a/firewalld.spec b/firewalld.spec
index 719a9f5..43dfadf 100644
--- a/firewalld.spec
+++ b/firewalld.spec
@@ -1,15 +1,29 @@
Summary: A dynamic firewall daemon
Name: firewalld
-Version: 1.3.0
-Release: 1
+Version: 2.4.3
+Release: 2
License: GPLv2+
Group: System/Base
URL: https://github.com/t-woerner/firewalld/
-Source0: https://github.com/firewalld/firewalld/archive/%{name}-%{version}.tar.gz
+Source0: https://github.com/firewalld/firewalld/releases/download/v%{version}/%{name}-%{version}.tar.bz2
Source1: %{name}.rpmlintrc
# (tpg) try to keep nfs and samba enabled for default zones
Patch1: firewalld-0.3.13-enable-nfs-and-samba.patch
+# (Angry-P) Set MemoryDenyWriteExecute=no in firewalld.service.in.
+# Python JIT compiler requires the ability
+# to map memory segments as both writable and executable.
+# With MemoryDenyWriteExecute enabled, systemd blocks this behavior,
+# causing firewalld to immediately crash on startup with a
+# "RuntimeWarning: JIT unable to protect executable memory (13)"
+# and exit with status 1/FAILURE.
+Patch2: firewalld-python3-jit-fix.patch
+
BuildArch: noarch
+BuildRequires: autoconf
+BuildRequires: automake
+BuildRequires: libtool-base
+BuildRequires: slibtool
+BuildRequires: make
BuildRequires: desktop-file-utils
BuildRequires: gettext
BuildRequires: intltool
@@ -147,10 +161,12 @@ rm -rf %{buildroot}%{_prefix}/lib/firewalld/services/kodi-eventserver.xml
%{_prefix}/lib/%{name}/ipsets/README.md
%{_prefix}/lib/%{name}/services/*.xml
%{_prefix}/lib/%{name}/zones/*.xml
+%{_prefix}/lib/firewalld/xmlschema/
+%{_prefix}/lib/firewalld/policies/gateway-*
%{_prefix}/lib/firewalld/policies/allow-host-ipv6.xml
%dir %{_sysconfdir}/%{name}
%config(noreplace) %{_sysconfdir}/%{name}/%{name}.conf
-%config(noreplace) %{_sysconfdir}/%{name}/lockdown-whitelist.xml
+#config(noreplace) %{_sysconfdir}/%{name}/lockdown-whitelist.xml
%dir %{_sysconfdir}/%{name}/icmptypes
%dir %{_sysconfdir}/%{name}/services
%dir %{_sysconfdir}/%{name}/zones
@@ -192,7 +208,7 @@ rm -rf %{buildroot}%{_prefix}/lib/firewalld/services/kodi-eventserver.xml
%{_datadir}/applications/firewall-config.desktop
%{_datadir}/icons/hicolor/*/apps/firewall-config*.*
%{_datadir}/glib-2.0/schemas/org.fedoraproject.FirewallConfig.gschema.xml
-%{_datadir}/metainfo/firewall-config.appdata.xml
+%{_datadir}/metainfo/org.firewalld.firewall-config.metainfo.xml
%doc %{_mandir}/man1/firewall-config*.1*
%files -n firewalld-test
@@ -205,4 +221,4 @@ rm -rf %{buildroot}%{_prefix}/lib/firewalld/services/kodi-eventserver.xml
%{_datadir}/firewalld/testsuite/python/firewalld_config.py
%{_datadir}/firewalld/testsuite/python/firewalld_direct.py
%{_datadir}/firewalld/testsuite/python/firewalld_rich.py
-%{_datadir}/firewalld/testsuite/python/firewalld_test.py
+%{_datadir}/firewalld/testsuite/python/firewalld_misc.py