<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libfetch/ftp.c, branch release/6.3.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F6.3.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F6.3.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2007-05-16T07:04:02Z</updated>
<entry>
<title>MFC: the new FTP_COMBINE_CWDS define allows libfetch to attempt to change</title>
<updated>2007-05-16T07:04:02Z</updated>
<author>
<name>Nate Lawson</name>
<email>njl@FreeBSD.org</email>
</author>
<published>2007-05-16T07:04:02Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3ea0ec794fe88faee44d7769f3bd3f7c4737aa9d'/>
<id>urn:sha1:3ea0ec794fe88faee44d7769f3bd3f7c4737aa9d</id>
<content type='text'>
directories all at once, saving latency.

Tested by:	des
</content>
</entry>
<entry>
<title>MFC: (1.92, 1.94) use CDUP</title>
<updated>2006-07-22T06:01:58Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2006-07-22T06:01:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=80b0c9a8e66e30524891069db429c2ae55eddfd7'/>
<id>urn:sha1:80b0c9a8e66e30524891069db429c2ae55eddfd7</id>
<content type='text'>
     (1.93) ignore MODE failure
     (1.95) respect FETCH_BIND_ADDRESS
</content>
</entry>
<entry>
<title>Update copyright years.</title>
<updated>2004-09-21T18:35:21Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2004-09-21T18:35:21Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=2cbbf9dac9829e7e3d2e1f150dc78901b67829ae'/>
<id>urn:sha1:2cbbf9dac9829e7e3d2e1f150dc78901b67829ae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't close a FILE * which we know is bogus.</title>
<updated>2003-08-29T15:54:12Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2003-08-29T15:54:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fd8f6d2269833a632960a8a72049e970a77e9320'/>
<id>urn:sha1:fd8f6d2269833a632960a8a72049e970a77e9320</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Some servers respond to RETR in active mode with 125 (connection already</title>
<updated>2003-08-19T11:43:11Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2003-08-19T11:43:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=39082bb4a5783c679bef4a1a0098543563e33a73'/>
<id>urn:sha1:39082bb4a5783c679bef4a1a0098543563e33a73</id>
<content type='text'>
open) rather than 150 (opening connection).  There's no reason why we
shouldn't accept that.

PR:		misc/42172
MFC in:		3 days
</content>
</entry>
<entry>
<title>The flags passed in to _ftp_get_proxy may be null</title>
<updated>2003-03-19T21:39:00Z</updated>
<author>
<name>Mike Makonnen</name>
<email>mtm@FreeBSD.org</email>
</author>
<published>2003-03-19T21:39:00Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4418f9df3027bf6a443be027c86f9338540cf6d3'/>
<id>urn:sha1:4418f9df3027bf6a443be027c86f9338540cf6d3</id>
<content type='text'>
Approved by:	des, markm (mentor)(implicit)
</content>
</entry>
<entry>
<title>Don't parse the proxy URL unless we're actually going to use it.  No real</title>
<updated>2003-03-11T08:20:58Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2003-03-11T08:20:58Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b91d6074d447f2436e03f3930fa5e882a7240249'/>
<id>urn:sha1:b91d6074d447f2436e03f3930fa5e882a7240249</id>
<content type='text'>
functional difference, but debugging output will be less confusing.
</content>
</entry>
<entry>
<title>style(9): add parentheses to sizeof even when not strictly required.</title>
<updated>2003-01-28T08:04:40Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2003-01-28T08:04:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=930105c1e9a553c4faa1364d56f79f3fbdd383fb'/>
<id>urn:sha1:930105c1e9a553c4faa1364d56f79f3fbdd383fb</id>
<content type='text'>
MFC after:	3 days
</content>
</entry>
<entry>
<title>Hook in the .netrc code + don't use pointers as if they were booleans.</title>
<updated>2003-01-22T17:54:49Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2003-01-22T17:54:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9f808a4dd09d10191d25692ed072e53978ebe7f5'/>
<id>urn:sha1:9f808a4dd09d10191d25692ed072e53978ebe7f5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>The FTP connection caching needs a better interface -- connections are</title>
<updated>2002-10-25T01:17:32Z</updated>
<author>
<name>Nate Lawson</name>
<email>njl@FreeBSD.org</email>
</author>
<published>2002-10-25T01:17:32Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=13cc1c8394eba4cc00865f84b898d6d1718a5e48'/>
<id>urn:sha1:13cc1c8394eba4cc00865f84b898d6d1718a5e48</id>
<content type='text'>
closed through _fetch_close() which is the only one who knows the connection
REALLY was closed (since ref -&gt; 0).  However, FTP keeps its own local
cached_connection and checks if it is valid by comparing it to NULL.  This
is bogus since it may have been freed elsewhere by _fetch_close().

This change checks if we are closing the cached_connection and the ref is 1
(soon to be 0).  If so, set cached_connection to NULL so we don't
accidentally reuse it.  The REAL fix should be to move connection caching
to the common.c level (_fetch_* functions) and NULL the cache(s) in
_fetch_close().  Then all layers could benefit from caching.
</content>
</entry>
</feed>
