File 0001-fix-nftables-set-correctly-match-iifname-oifname.patch of Package firewalld.36786

From 445f0b81cb5de8c536e8e225c668b7159a1b1976 Mon Sep 17 00:00:00 2001
From: Peter Turner <pturner@uwalumni.com>
Date: Thu, 17 Oct 2024 13:26:16 -0500
Subject: [PATCH 1/2] fix(nftables): set: correctly match iifname/oifname

For sets that match iface, the match for iifname/oifname was backwards.

https://github.com/firewalld/firewalld/issues/1399#issuecomment-2420036920
---
 src/firewall/core/nftables.py |    2 +-
 src/tests/cli/firewall-cmd.at |    6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)

--- a/src/firewall/core/nftables.py
+++ b/src/firewall/core/nftables.py
@@ -1647,7 +1647,7 @@ class nftables(object):
                 fragments.append({"payload": {"protocol": self._set_get_family(name),
                                               "field": "daddr" if match_dest else "saddr"}})
             elif format == "iface":
-                fragments.append({"meta": {"key": "iifname" if match_dest else "oifname"}})
+                fragments.append({"meta": {"key": "oifname" if match_dest else "iifname"}})
             elif format == "mark":
                 fragments.append({"meta": {"key": "mark"}})
             else:
--- a/src/tests/cli/firewall-cmd.at
+++ b/src/tests/cli/firewall-cmd.at
@@ -1031,9 +1031,9 @@ FWD_START_TEST([ipset])
     NFT_LIST_RULES([inet], [filter_INPUT_POLICIES], 0, [dnl
         table inet firewalld {
             chain filter_INPUT_POLICIES {
-                ip saddr . oifname @foobar jump filter_IN_policy_allow-host-ipv6
-                ip saddr . oifname @foobar jump filter_IN_internal
-                ip saddr . oifname @foobar reject with icmpx admin-prohibited
+                ip saddr . iifname @foobar jump filter_IN_policy_allow-host-ipv6
+                ip saddr . iifname @foobar jump filter_IN_internal
+                ip saddr . iifname @foobar reject with icmpx admin-prohibited
                 jump filter_IN_policy_allow-host-ipv6
                 jump filter_IN_public
                 reject with icmpx admin-prohibited
openSUSE Build Service is sponsored by