Subject: CVS commit: [netbsd-3] src/usr.bin/ftp
To: None <source-changes@NetBSD.org>
From: Matthias Scheler <tron@netbsd.org>
List: source-changes
Date: 05/09/2005 17:01:58
Module Name:	src
Committed By:	tron
Date:		Mon May  9 17:01:58 UTC 2005

Modified Files:
	src/usr.bin/ftp [netbsd-3]: util.c

Log Message:
Pull up revision 1.118 (requested by lukem in ticket #265):
Implement a timeout on the accept(2) in dataconn() and the
connect(2) in xconnect() by temporarily setting O_NONBLOCK
on the socket and using xpoll() to wait for the operation
to succeed.
The timeout used is the '-q quittime' argument (defaults to
60s for accept(2), and the system default for connect(2)).
Idea inspired by discussion with Chuck Cranor.
This may (indirectly) fix various problems with timeouts
in active mode through broken firewalls.
Implement xpoll() as a wrapper around poll(2), to make it
easier to replace on systems without a functional poll(2).
Unconditionally use xpoll() instead of conditionally using
select(2) or poll(2).


To generate a diff of this commit:
cvs rdiff -r1.117 -r1.117.2.1 src/usr.bin/ftp/util.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.