=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/ftp/fetch.c,v retrieving revision 1.209 retrieving revision 1.210 diff -c -r1.209 -r1.210 *** src/usr.bin/ftp/fetch.c 2022/09/08 11:12:44 1.209 --- src/usr.bin/ftp/fetch.c 2022/09/15 12:47:10 1.210 *************** *** 1,4 **** ! /* $OpenBSD: fetch.c,v 1.209 2022/09/08 11:12:44 claudio Exp $ */ /* $NetBSD: fetch.c,v 1.14 1997/08/18 10:20:20 lukem Exp $ */ /*- --- 1,4 ---- ! /* $OpenBSD: fetch.c,v 1.210 2022/09/15 12:47:10 millert Exp $ */ /* $NetBSD: fetch.c,v 1.14 1997/08/18 10:20:20 lukem Exp $ */ /*- *************** *** 173,186 **** return (epath); } - /* ARGSUSED */ - static void - tooslow(int signo) - { - dprintf(STDERR_FILENO, "%s: connect taking too long\n", __progname); - _exit(2); - } - /* * Copy a local file (used by the OpenBSD installer). * Returns -1 on failure, 0 on success --- 173,178 ---- *************** *** 604,617 **** } #endif /* !SMALL */ ! if (connect_timeout) { ! (void)signal(SIGALRM, tooslow); ! alarmtimer(connect_timeout); ! } ! ! for (error = connect(fd, res->ai_addr, res->ai_addrlen); ! error != 0 && errno == EINTR; error = connect_wait(fd)) ! continue; if (error != 0) { save_errno = errno; close(fd); --- 596,603 ---- } #endif /* !SMALL */ ! error = timed_connect(fd, res->ai_addr, res->ai_addrlen, ! connect_timeout); if (error != 0) { save_errno = errno; close(fd); *************** *** 700,710 **** } #endif - if (connect_timeout) { - signal(SIGALRM, SIG_DFL); - alarmtimer(0); - } - /* * Construct and send the request. Proxy requests don't want leading /. */ --- 686,691 ---- *************** *** 1242,1248 **** { const char errmsg[] = "\nfetch aborted.\n"; - alarmtimer(0); write(fileno(ttyout), errmsg, sizeof(errmsg) - 1); longjmp(httpabort, 1); } --- 1223,1228 ----