From 27d2c7383f18d0f59b0d096f156ed6cb1677642b Mon Sep 17 00:00:00 2001 From: Pádraig Brady Date: Fri, 26 Sep 2014 15:46:28 +0100 Subject: dd: use more robust SIGUSR1 handling * src/dd.c (ifd_reopen): A new wrapper to ensure we don't exit upon receiving a SIGUSR1 in a blocking open() on a fifo for example. (iftruncate): Likewise for ftruncate(). (iread): Process signals also after a short read. (install_signal_handlers): Install SIGINFO/SIGUSR1 handler even if set to SIG_IGN, as this is what the parent can easily set from a shell script that can send SIGUSR1 without the possiblity of inadvertently killing the dd process. * doc/coreutils.texi (dd invocation): Improve the example to show robust usage wrt signal races and short reads. * tests/dd/stats.sh: A new test for various signal races. * tests/local.mk: Reference the new test. * NEWS: Mention the fix. --- tests/local.mk | 1 + 1 file changed, 1 insertion(+) (limited to 'tests/local.mk') diff --git a/tests/local.mk b/tests/local.mk index 97bf5edda..8498acbbe 100644 --- a/tests/local.mk +++ b/tests/local.mk @@ -490,6 +490,7 @@ all_tests = \ tests/dd/stderr.sh \ tests/dd/unblock.pl \ tests/dd/unblock-sync.sh \ + tests/dd/stats.sh \ tests/df/total-verify.sh \ tests/du/2g.sh \ tests/du/8gb.sh \ -- cgit v1.2.3-70-g09d2