summaryrefslogtreecommitdiff
path: root/scp.c
diff options
context:
space:
mode:
authorDamien Miller <djm@mindrot.org>2001-02-18 13:04:23 +1100
committerDamien Miller <djm@mindrot.org>2001-02-18 13:04:23 +1100
commit0318e2e0fb0be94b61f618e92ddd5101d2f06d1a (patch)
tree6d56e9539e1cbba400d6af6cf6cce5823d2f5318 /scp.c
parent8609332558d7130f0e4a71eba8bcad6fdebddcd5 (diff)
downloadopenssh-git-0318e2e0fb0be94b61f618e92ddd5101d2f06d1a.tar.gz
- (djm) Use SA_INTERRUPT along SA_RESTART if present (equivalent for
SunOS)
Diffstat (limited to 'scp.c')
-rw-r--r--scp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/scp.c b/scp.c
index 268643b5..834deb69 100644
--- a/scp.c
+++ b/scp.c
@@ -1224,8 +1224,12 @@ progressmeter(int flag)
struct sigaction sa;
sa.sa_handler = updateprogressmeter;
sigemptyset((sigset_t *)&sa.sa_mask);
+ sa.sa_flags = 0;
#ifdef SA_RESTART
- sa.sa_flags = SA_RESTART;
+ sa.sa_flags |= SA_RESTART;
+#endif
+#ifdef SA_INTERRUPT
+ sa.sa_flags |= SA_INTERRUPT;
#endif
sigaction(SIGALRM, &sa, NULL);
alarmtimer(1);