summaryrefslogtreecommitdiffstats
path: root/ftp
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2008-09-03 15:32:54 +0000
committerobrien <obrien@FreeBSD.org>2008-09-03 15:32:54 +0000
commitce24a641b5d9213cf8076f687dd52cc0a9c28fd3 (patch)
tree8827b40c742b475a706b3cb966802f9009406386 /ftp
parentde9a1ec50fe01f9dc464f6853f31b7119930b693 (diff)
downloadFreeBSD-ports-ce24a641b5d9213cf8076f687dd52cc0a9c28fd3.zip
FreeBSD-ports-ce24a641b5d9213cf8076f687dd52cc0a9c28fd3.tar.gz
Somewhere along the way of 8-CURRENT, we seem to have diverged in
functionality from other Unixen (including FreeBSD 7.0): NcFTP's sio library function, _SConnect, wants to select() for one descriptor. It creates fd_set structures for writable fds and exception fds, with each fd set having only one bit set corresponding to the single descriptor it is selecting. select() then returns 2, rather than 1. NcFTP was checking if select returned 1, and if so, OK, if not 1, error. Since 2 was returned, this was causing a problem. Submitted by: Mike Gleason <mgleason@ncftp.com>
Diffstat (limited to 'ftp')
-rw-r--r--ftp/ncftp3/Makefile2
-rw-r--r--ftp/ncftp3/files/patch-SConnect.c11
2 files changed, 12 insertions, 1 deletions
diff --git a/ftp/ncftp3/Makefile b/ftp/ncftp3/Makefile
index e4f3c6b..265a54c 100644
--- a/ftp/ncftp3/Makefile
+++ b/ftp/ncftp3/Makefile
@@ -8,7 +8,7 @@
PORTNAME= ncftp
PORTVERSION= 3.2.2
-PORTREVISION?= 0
+PORTREVISION?= 1
CATEGORIES= ftp ipv6
MASTER_SITES= ftp://ftp.ncftp.com/ncftp/
DISTNAME= ncftp-${PORTVERSION}-src
diff --git a/ftp/ncftp3/files/patch-SConnect.c b/ftp/ncftp3/files/patch-SConnect.c
new file mode 100644
index 0000000..e3575b8
--- /dev/null
+++ b/ftp/ncftp3/files/patch-SConnect.c
@@ -0,0 +1,11 @@
+--- sio/SConnect.c.orig 2007-10-27 11:14:05.000000000 -0700
++++ sio/SConnect.c 2008-09-03 08:25:45.000000000 -0700
+@@ -154,7 +154,7 @@ _SConnect(const int sfd, const struct so
+ tv.tv_sec = (tv_sec_t) tlen;
+ tv.tv_usec = 0;
+ result = select(sfd + 1, NULL, SELECT_TYPE_ARG234 &ss, SELECT_TYPE_ARG234 &xx, SELECT_TYPE_ARG5 &tv);
+- if (result == 1) {
++ if (result >= 1) {
+ /* ready */
+ break;
+ } else if (result == 0) {
OpenPOWER on IntegriCloud