<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libfetch/common.c, branch release/13.1.0</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=release%2F13.1.0</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=release%2F13.1.0'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2020-11-24T22:10:33Z</updated>
<entry>
<title>Remove support for SSLv3 from fetch(3).</title>
<updated>2020-11-24T22:10:33Z</updated>
<author>
<name>Jung-uk Kim</name>
<email>jkim@FreeBSD.org</email>
</author>
<published>2020-11-24T22:10:33Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fe85238ef758d1adead72be009d07c597fdba0bb'/>
<id>urn:sha1:fe85238ef758d1adead72be009d07c597fdba0bb</id>
<content type='text'>
Support for SSLv3 was already removed from OpenSSL (r361392).

Differential Revision:	https://reviews.freebsd.org/D24947
</content>
</entry>
<entry>
<title>Replace literal uses of /usr/local in C sources with _PATH_LOCALBASE</title>
<updated>2020-10-27T11:29:11Z</updated>
<author>
<name>Stefan Eßer</name>
<email>se@FreeBSD.org</email>
</author>
<published>2020-10-27T11:29:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1f474190fc280d4a4ef0c214e4d7fff0d1237e22'/>
<id>urn:sha1:1f474190fc280d4a4ef0c214e4d7fff0d1237e22</id>
<content type='text'>
Literal references to /usr/local exist in a large number of files in
the FreeBSD base system. Many are in contributed software, in configuration
files, or in the documentation, but 19 uses have been identified in C
source files or headers outside the contrib and sys/contrib directories.

This commit makes it possible to set _PATH_LOCALBASE in paths.h to use
a different prefix for locally installed software.

In order to avoid changes to openssh source files, LOCALBASE is passed to
the build via Makefiles under src/secure. While _PATH_LOCALBASE could have
been used here, there is precedent in the construction of the path used to
a xauth program which depends on the LOCALBASE value passed on the compiler
command line to select a non-default directory.

This could be changed in a later commit to make the openssh build
consistently use _PATH_LOCALBASE. It is considered out-of-scope for this
commit.

Reviewed by:	imp
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D26942
</content>
</entry>
<entry>
<title>fetch(3): plug some leaks</title>
<updated>2020-02-21T18:21:57Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-21T18:21:57Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5ac6a2c94d36c885f1cdfd473b3bdcdf4c446082'/>
<id>urn:sha1:5ac6a2c94d36c885f1cdfd473b3bdcdf4c446082</id>
<content type='text'>
In the successful case, sockshost is not freed prior to return.

The failure case can now be hit after fetch_reopen(), which was not true
before. Thus, we need to make sure to clean up all of the conn resources
which will also close sd. For all of the points prior to fetch_reopen(), we
continue to just close sd.

CID:		1419598, 1419616
</content>
</entry>
<entry>
<title>fetch(3): don't leak sockshost on failure</title>
<updated>2020-02-15T19:47:49Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-15T19:47:49Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=86fd2105dcebdecbcaf36d634d79515ace012e8f'/>
<id>urn:sha1:86fd2105dcebdecbcaf36d634d79515ace012e8f</id>
<content type='text'>
fetch_socks5_getenv will allocate memory for the host (or set it to NULL) in
all cases through the function; the caller is responsible for freeing it if
we end up allocating.

While I'm here, I've eliminated a label that just jumps to the next line...
</content>
</entry>
<entry>
<title>fetch(3): fix regression in IPv6:port spec from r357977</title>
<updated>2020-02-15T19:39:50Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-15T19:39:50Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3dc455e8974c1a4723f6703f47b2f667a61c934b'/>
<id>urn:sha1:3dc455e8974c1a4723f6703f47b2f667a61c934b</id>
<content type='text'>
In case the port was specified, we never actually populated *host. Do so
now.

Pointy hat:	kevans
</content>
</entry>
<entry>
<title>fetch(3): move bits of fetch_socks5_getenv around</title>
<updated>2020-02-15T19:31:40Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-15T19:31:40Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=0f3fa96016c82f700733941d4c148cefff4c4f1c'/>
<id>urn:sha1:0f3fa96016c82f700733941d4c148cefff4c4f1c</id>
<content type='text'>
This commit separates out port parsing and validation from grabbing the host
from the env var. The only related bit really is that we need to be more
specific with the delimiter in the IPv6 case.
</content>
</entry>
<entry>
<title>fetch(3): Add SOCKS5 support</title>
<updated>2020-02-15T18:03:16Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-02-15T18:03:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=c44be5aa0a9e889c2ebde73986acabdaab952c65'/>
<id>urn:sha1:c44be5aa0a9e889c2ebde73986acabdaab952c65</id>
<content type='text'>
This change adds SOCKS5 support to the library fetch(3) and updates the man
page.

Details: Within the fetch_connect() function, fetch(3) checks if the
SOCKS5_PROXY environment variable is set. If so, it connects to this host
rather than the end-host. It then initializes the SOCKS5 connection in
accordance with RFC 1928 and returns the resulting conn_t (file descriptor)
for usage by the regular FTP/HTTP handlers.

Design Decision: This change defaults all DNS resolutions through the proxy
by sending all IPs as hostnames. Going forward, another feature might be to
create another environmental variable to toggle resolutions through the
proxy or not..

One may set the SOCKS5_PROXY environment variable in any of the formats:

SOCKS5_PROXY=proxy.example.com
SOCKS5_PROXY=proxy.example.com:1080
SOCKS5_PROXY=192.0.2.0
SOCKS5_PROXY=198.51.100.0:1080
SOCKS5_PROXY=[2001:db8::1]
SOCKS5_PROXY=[2001:db8::2]:1080

Then perform a request with fetch(1).

(note by kevans)
I've since been informed that Void Linux/xbps has a fork of libfetch that
also implements SOCKS5. I may compare/contrast the two in the mid-to-near
future.

Submitted by:	Farhan Khan &lt;farhan farhan codes&gt;
Differential Revision:	https://reviews.freebsd.org/D18908
</content>
</entry>
<entry>
<title>[libfetch] Fix compilation with WITHOUT_CRYPT.</title>
<updated>2019-05-03T06:06:39Z</updated>
<author>
<name>Adrian Chadd</name>
<email>adrian@FreeBSD.org</email>
</author>
<published>2019-05-03T06:06:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=819082e103c82d49b3239d732656e0ce3b3f0f48'/>
<id>urn:sha1:819082e103c82d49b3239d732656e0ce3b3f0f48</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Improve URL parsing.  In particular, convert scheme and host to lowercase.</title>
<updated>2018-11-27T10:45:14Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2018-11-27T10:45:14Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8d9de5b10a24bd2d79ed99f139c0ac28c09b15ca'/>
<id>urn:sha1:8d9de5b10a24bd2d79ed99f139c0ac28c09b15ca</id>
<content type='text'>
MFC after:	1 week
</content>
</entry>
<entry>
<title>Make libfetch buildable.</title>
<updated>2018-09-19T07:04:15Z</updated>
<author>
<name>Jung-uk Kim</name>
<email>jkim@FreeBSD.org</email>
</author>
<published>2018-09-19T07:04:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3fd49fe2d4843ceaa8c9b3bc4c77bafe1a0e5091'/>
<id>urn:sha1:3fd49fe2d4843ceaa8c9b3bc4c77bafe1a0e5091</id>
<content type='text'>
</content>
</entry>
</feed>
