Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Oct 2011 17:26:41 +0000 (UTC)
From:      Dag-Erling Smorgrav <des@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org
Subject:   svn commit: r226015 - stable/9/lib/libfetch
Message-ID:  <201110041726.p94HQflE071877@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: des
Date: Tue Oct  4 17:26:40 2011
New Revision: 226015
URL: http://svn.freebsd.org/changeset/base/226015

Log:
  MFH r225810 r225812: make passive mode the default.
  
  Approved by:	re (kib)

Modified:
  stable/9/lib/libfetch/fetch.3
  stable/9/lib/libfetch/ftp.c
Directory Properties:
  stable/9/lib/libfetch/   (props changed)

Modified: stable/9/lib/libfetch/fetch.3
==============================================================================
--- stable/9/lib/libfetch/fetch.3	Tue Oct  4 17:14:59 2011	(r226014)
+++ stable/9/lib/libfetch/fetch.3	Tue Oct  4 17:26:40 2011	(r226015)
@@ -318,9 +318,19 @@ and
 implement the FTP protocol as described in RFC959.
 .Pp
 If the
+.Ql P
+(not passive) flag is specified, an active (rather than passive)
+connection will be attempted.
+.Pp
+The
 .Ql p
-(passive) flag is specified, a passive (rather than active) connection
-will be attempted.
+flag is supported for compatibility with earlier versions where active
+connections were the default.
+It has precedence over the
+.Ql P
+flag, so if both are specified,
+.Nm
+will use a passive connection.
 .Pp
 If the
 .Ql l
@@ -475,9 +485,11 @@ connections will be bound.
 .It Ev FTP_LOGIN
 Default FTP login if none was provided in the URL.
 .It Ev FTP_PASSIVE_MODE
-If set to anything but
+If set to
 .Ql no ,
-forces the FTP code to use passive mode.
+forces the FTP code to use active mode.
+If set to any other value, forces passive mode even if the application
+requested active mode.
 .It Ev FTP_PASSWORD
 Default FTP password if the remote server requests one and none was
 provided in the URL.

Modified: stable/9/lib/libfetch/ftp.c
==============================================================================
--- stable/9/lib/libfetch/ftp.c	Tue Oct  4 17:14:59 2011	(r226014)
+++ stable/9/lib/libfetch/ftp.c	Tue Oct  4 17:26:40 2011	(r226015)
@@ -633,13 +633,12 @@ ftp_transfer(conn_t *conn, const char *o
 
 	/* check flags */
 	low = CHECK_FLAG('l');
-	pasv = CHECK_FLAG('p');
+	pasv = CHECK_FLAG('p') || !CHECK_FLAG('P');
 	verbose = CHECK_FLAG('v');
 
 	/* passive mode */
-	if (!pasv)
-		pasv = ((s = getenv("FTP_PASSIVE_MODE")) != NULL &&
-		    strncasecmp(s, "no", 2) != 0);
+	if ((s = getenv("FTP_PASSIVE_MODE")) != NULL)
+		pasv = (strncasecmp(s, "no", 2) != 0);
 
 	/* isolate filename */
 	filename = ftp_filename(file, &filenamelen, &type);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201110041726.p94HQflE071877>