shells: testcase: add another test for EINTR on fifo open

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2025-08-11 14:10:17 +02:00
parent e660eab458
commit d18c9eadf0
4 changed files with 32 additions and 0 deletions

View file

@ -0,0 +1,2 @@
Hello
Done:0

View file

@ -0,0 +1,14 @@
rm -f test.fifo
mkfifo test.fifo
(sleep 1; kill -chld $$) &
(sleep 2; echo Hello >test.fifo) &
# We get open("test.fifo") interrupted by SIGCHLD from the first subshell.
# The shell MUST retry the open (no printing of error messages).
# Then, the second subshell opens fifo for writing and open unblocks and succeeds.
read HELLO <test.fifo
echo "$HELLO"
echo "Done:$?"
rm -f test.fifo

View file

@ -0,0 +1,2 @@
Hello
Done:0

View file

@ -0,0 +1,14 @@
rm -f test.fifo
mkfifo test.fifo
(sleep 1; kill -chld $$) &
(sleep 2; echo Hello >test.fifo) &
# We get open("test.fifo") interrupted by SIGCHLD from the first subshell.
# The shell MUST retry the open (no printing of error messages).
# Then, the second subshell opens fifo for writing and open unblocks and succeeds.
read HELLO <test.fifo
echo "$HELLO"
echo "Done:$?"
rm -f test.fifo