summaryrefslogtreecommitdiffstats
path: root/debian/patches/upstream/lsns-fix-netns-use.patch
blob: 1d1c8b6c10d319246c91514909c2fac7be27d232 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
From: Karel Zak <kzak@redhat.com>
Date: Mon, 22 Apr 2024 14:28:52 +0200
Subject: lsns: fix netns use

 # ip netns add vpn
 # lsns -T -t net
 Segmentation fault (core dumped)

The function interpolate_missing_namespaces() reads data from /proc.
However, in the case of a persistent namespace, there is no procfs
entry for the namespace. Therefore, this function should ignore it.

Fixes: https://github.com/util-linux/util-linux/issues/2982
Signed-off-by: Karel Zak <kzak@redhat.com>
(cherry picked from commit 42880f54894c1d7fd113552ff8474566a2595a0d)
---
 sys-utils/lsns.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/sys-utils/lsns.c b/sys-utils/lsns.c
index 4ea01d2..6c87c47 100644
--- a/sys-utils/lsns.c
+++ b/sys-utils/lsns.c
@@ -793,6 +793,9 @@ static void interpolate_missing_namespaces(struct lsns *ls, struct lsns_namespac
 	int fd_orphan, fd_missing;
 	struct stat st;
 
+	if (!orphan->proc)
+		return;
+
 	orphan->related_ns[rela] = get_namespace(ls, orphan->related_id[rela]);
 	if (orphan->related_ns[rela])
 		return;