summaryrefslogtreecommitdiff
path: root/kde-frameworks/kcoreaddons/files/kcoreaddons-5.104.0-prevent-leak-signalfd-fds.patch
blob: b5f1c4d0e0dadf57f93dfe56a22f36666732a7ab (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
From 3e0d5fe16650b48b6002a167bb822b48596bc129 Mon Sep 17 00:00:00 2001
From: Vlad Zahorodnii <vlad.zahorodnii@kde.org>
Date: Wed, 8 Mar 2023 15:45:36 +0000
Subject: [PATCH] Prevent KSignalHandler leaking signalfd file descriptors

We need SOCK_CLOEXEC otherwise the file descriptors will be leaked to
the child processes.

(cherry picked from commit 6a3cf7fe658da22e2c98af681204666b27fc8d56)
---
 src/lib/util/ksignalhandler.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/lib/util/ksignalhandler.cpp b/src/lib/util/ksignalhandler.cpp
index a051088c..1a644805 100644
--- a/src/lib/util/ksignalhandler.cpp
+++ b/src/lib/util/ksignalhandler.cpp
@@ -34,7 +34,7 @@ KSignalHandler::KSignalHandler()
 {
     d->q = this;
 #ifndef Q_OS_WIN
-    if (::socketpair(AF_UNIX, SOCK_STREAM, 0, KSignalHandlerPrivate::signalFd)) {
+    if (::socketpair(AF_UNIX, SOCK_STREAM | SOCK_CLOEXEC, 0, KSignalHandlerPrivate::signalFd)) {
         qCWarning(KCOREADDONS_DEBUG) << "Couldn't create a socketpair";
         return;
     }
-- 
2.40.0