qt6-bb10/tests/auto/corelib/io/qprocess
Thiago Macieira bd32c7d705 QProcess/Unix: block all Unix signals between vfork() and exec()
This is similar to and extends the prevention of thread cancellation
introduced by commit ba05af82d3. This
prevents the situation in which a signal gets delivered (usually because
of a crash) and the parent process' handler is run, doing things it
shouldn't between vfork() and execve().

Most C libraries (all that I've investigated) unblock SIGABRT on
abort(), so this doesn't affect them. Likewise, on most OSes, crashes
ignore the signal block and terminate the application -- Darwin appears
to be an exception, but vfork() is not enabled there. Both situations
are tested by terminateInChildProcessModifier().

Task-number: QTBUG-113822
Change-Id: Ib5ce7a497e034ebabb2cfffd17628ca33969b7af
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
2023-06-28 00:16:31 -07:00
..
fileWriterProcess tests: Remove remains of qmake conversion from CMakeLists.txt files 2023-02-17 21:56:49 +01:00
test QProcess: add testUnixProcessParameters as a dep. for tst_qprocess 2023-06-18 20:32:30 +03:00
testBatFiles Moving relevant tests to corelib/io 2011-08-31 10:08:38 +02:00
testDetached tests: Remove remains of qmake conversion from CMakeLists.txt files 2023-02-17 21:56:49 +01:00
testExitCodes tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testForwarding QThread: add sleep(std::chrono::nanoseconds) overload 2023-03-13 23:26:28 +02:00
testForwardingHelper tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testGuiProcess tests: Remove remains of qmake conversion from CMakeLists.txt files 2023-02-17 21:56:49 +01:00
testProcessCrash tst_QProcess: move the crasher code to a header 2023-06-07 17:09:52 -07:00
testProcessDeadWhileReading tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEOF tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEcho tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEcho2 tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEcho3 tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEchoGui tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessEnvironment tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessHang tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessNormal tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessOutput tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testProcessSpacesArgs tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testSetNamedPipeHandleState tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testSetWorkingDirectory tests: Remove remains of qmake conversion from CMakeLists.txt files 2023-02-17 21:56:49 +01:00
testSoftExit tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testSpaceInName tst_QProcess: don't link non-Qt helpers to QtCore 2023-04-25 18:53:30 -07:00
testUnixProcessParameters QProcess/Unix: update the close-file-descriptors feature with a minimum 2023-06-09 17:27:48 -07:00
.gitignore test: Moving tst_QProcess::echoTest_performance() 2012-10-19 02:43:05 +02:00
BLACKLIST Update for failures only on dev branch. Use general platform names 2019-08-19 18:22:11 +02:00
CMakeLists.txt QProcess/Unix: add setUnixProcessParameters() 2023-05-22 10:43:50 -07:00
crasher.h tst_QProcess: move the crasher code to a header 2023-06-07 17:09:52 -07:00
tst_qprocess.cpp QProcess/Unix: block all Unix signals between vfork() and exec() 2023-06-28 00:16:31 -07:00