From 6c81eb523e10c41a04a98cd08889e5915847d697 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dag-Erling=20Sm=C3=B8rgrav?= Date: Wed, 6 Dec 2000 09:23:27 +0000 Subject: [PATCH] Somewhere along the line, I misunderstood the whole FTP_PASSIVE_MODE debate and had libfetch selecting passive mode even when FTP_PASSIVE_MODE was not set at all, which is really quite surprising unless you know about it. So change it to the agreed default behaviour of selecting passive mode if FTP_PASSIVE_MODE is set, but not "no". --- lib/libfetch/fetch.3 | 6 +++--- lib/libfetch/ftp.c | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/libfetch/fetch.3 b/lib/libfetch/fetch.3 index 5f5acb0d4925..9c21fcd9b60b 100644 --- a/lib/libfetch/fetch.3 +++ b/lib/libfetch/fetch.3 @@ -422,9 +422,9 @@ and message, e.g. "File is not available (404 Not Found)" .Sh ENVIRONMENT .Bl -tag -width FTP_PASSIVE_MODE .It Ev FTP_PASSIVE_MODE -The FTP code selects passive mode by default. -To force active mode FTP, set this variable to -.Ql no . +If set to anything but +.Ql no , +forces the FTP code to use passive mode. .It Ev FTP_PASSWORD Default FTP password if the remote server requests one and none was provided in the URL. diff --git a/lib/libfetch/ftp.c b/lib/libfetch/ftp.c index d9f624ef4852..59d71908d29e 100644 --- a/lib/libfetch/ftp.c +++ b/lib/libfetch/ftp.c @@ -464,7 +464,7 @@ _ftp_transfer(int cd, char *oper, char *file, /* passive mode */ if (!pasv) - pasv = ((s = getenv("FTP_PASSIVE_MODE")) == NULL || + pasv = ((s = getenv("FTP_PASSIVE_MODE")) != NULL && strncasecmp(s, "no", 2) != 0); /* find our own address, bind, and listen */