diff -up openssh-5.8p2/ssh-keyscan.c.sigpipe openssh-5.8p2/ssh-keyscan.c --- openssh-5.8p2/ssh-keyscan.c.sigpipe 2011-08-23 18:30:33.873025916 +0200 +++ openssh-5.8p2/ssh-keyscan.c 2011-08-23 18:32:24.574025362 +0200 @@ -715,6 +715,9 @@ main(int argc, char **argv) if (maxfd > fdlim_get(0)) fdlim_set(maxfd); fdcon = xcalloc(maxfd, sizeof(con)); + + signal(SIGPIPE, SIG_IGN); + read_wait = xcalloc(maxfd, sizeof(struct pollfd)); for (j = 0; j < maxfd; j++) read_wait[j].fd = -1;