Blame SOURCES/0032-datatype-add-stolen-verdict.patch

bacbc8
From 14c526641e1fdec01f345c8d9f22fff809e59790 Mon Sep 17 00:00:00 2001
bacbc8
From: Florian Westphal <fw@strlen.de>
bacbc8
Date: Tue, 12 Jun 2018 18:39:13 +0200
bacbc8
Subject: [PATCH] datatype: add stolen verdict
bacbc8
bacbc8
using fwd statement causes crash when using nft trace:
bacbc8
bacbc8
 trace id ddbbaae2 netdev vpn ingress_out packet: iif "enp2s0" ether saddr 78:54:00:29:bb:aa ether daddr 52:54:00:01:53:9f ip saddr 85.14.236.41 ip daddr 17.25.63.98 ip dscp cs0 ip ecn not-ect ip ttl 64 ip id 49036 ip length 84 icmp type echo-reply icmp code 0 icmp id 16947 icmp sequence 4
bacbc8
 trace id ddbbaae2 netdev vpn ingress_out rule ip saddr 85.14.236.41 nftrace set 1 (verdict continue)
bacbc8
 trace id ddbbaae2 netdev vpn ingress_out rule ip saddr 85.14.236.41 ether saddr set aa:bb:00:18:cc:dd ether daddr set 00:00:5e:00:00:11 fwd to "enp1s0"
bacbc8
 BUG: invalid verdict value 2
bacbc8
 nft: datatype.c:282: verdict_type_print: Assertion `0' failed.
bacbc8
bacbc8
ADd stolen verdict (2) and remove the BUG statement.
bacbc8
bacbc8
Closes: https://bugzilla.netfilter.org/show_bug.cgi?id=1261
bacbc8
Signed-off-by: Florian Westphal <fw@strlen.de>
bacbc8
(cherry picked from commit bbbed9f3175c5260332ae7e6800b3a6791418fd2)
bacbc8
Signed-off-by: Phil Sutter <psutter@redhat.com>
bacbc8
---
bacbc8
 src/datatype.c | 6 +++++-
bacbc8
 1 file changed, 5 insertions(+), 1 deletion(-)
bacbc8
bacbc8
diff --git a/src/datatype.c b/src/datatype.c
bacbc8
index c77d228e95a1e..209044539bb84 100644
bacbc8
--- a/src/datatype.c
bacbc8
+++ b/src/datatype.c
bacbc8
@@ -280,8 +280,12 @@ static void verdict_type_print(const struct expr *expr, struct output_ctx *octx)
bacbc8
 		case NF_QUEUE:
bacbc8
 			nft_print(octx, "queue");
bacbc8
 			break;
bacbc8
+		case NF_STOLEN:
bacbc8
+			nft_print(octx, "stolen");
bacbc8
+			break;
bacbc8
 		default:
bacbc8
-			BUG("invalid verdict value %u\n", expr->verdict);
bacbc8
+			nft_print(octx, "unknown verdict value %u", expr->verdict);
bacbc8
+			break;
bacbc8
 		}
bacbc8
 	}
bacbc8
 }
bacbc8
-- 
bacbc8
2.21.0
bacbc8