summaryrefslogtreecommitdiffstats
path: root/tests/posix/exec_sigmask.sh
blob: d1192a4c04900bd970ef45df26004c3612dea164 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Regression test: restore the signal mask after fork()

cd "$TEST"
mkfifo p1 p2

{
    # Get the PID of `sh`
    read -r pid <p1
    # Send SIGTERM -- this will hang forever if signals are blocked
    kill $pid
} &

# Write the `sh` PID to p1, then hang reading p2 until we're killed
! invoke_bfs p1 -exec sh -c 'echo $$ >p1 && read -r _ <p2' {} + || fail

wait