<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/methods/connect.cc, branch 1.5_alpha1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.5_alpha1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.5_alpha1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-06-28T15:34:51Z</updated>
<entry>
<title>Introduce Acquire::AllowTLS to turn off TLS support</title>
<updated>2017-06-28T15:34:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-28T15:17:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=147ac0fc90d972a11f5e91521ba3d385015b5945'/>
<id>urn:sha1:147ac0fc90d972a11f5e91521ba3d385015b5945</id>
<content type='text'>
As requested by Henrique de Moraes Holschuh, here comes
an option to disable TLS support. If the option is set
to false, the internal TLS layer is disabled.
</content>
</entry>
<entry>
<title>methods: http: Drain pending data before selecting</title>
<updated>2017-06-28T13:52:38Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-28T11:20:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f806530b9ea858ca6bda8fb8f43d988aba02dab3'/>
<id>urn:sha1:f806530b9ea858ca6bda8fb8f43d988aba02dab3</id>
<content type='text'>
GnuTLS can already have data pending in its buffers, we need
to to drain that first otherwise select() might block
indefinitely.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>methods: Add HTTPS support to http method, using GnuTLS</title>
<updated>2017-06-28T13:52:38Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-28T08:55:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=2851ec6cf037d552118b885be0dd7796d74730c6'/>
<id>urn:sha1:2851ec6cf037d552118b885be0dd7796d74730c6</id>
<content type='text'>
The http method will eventually replace the curl-based
https method, but for now, this is an opt-in experiment
that can be enabled by setting Dir::Bin::Methods::https
to "http".

Known issues:
- We do not support HTTPS proxies yet
- We do not support proxying HTTPS connections yet (CONNECT)
- IssuerCert and SslForceVersion are unsupported

Gbp-Dch: Full
</content>
</entry>
<entry>
<title>methods: connect: Switch from int fds to new MethodFd</title>
<updated>2017-06-28T13:52:38Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-28T08:55:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5666084ecfe140aaa3f89388de557c2f875b4244'/>
<id>urn:sha1:5666084ecfe140aaa3f89388de557c2f875b4244</id>
<content type='text'>
Use std::unique_ptr&lt;MethodFd&gt; everywhere we used an
integer-based file descriptor before. This allows us
to implement stuff like TLS support easily.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>methods: connect: Change PkgAcqMethod to aptMethod</title>
<updated>2017-06-28T13:52:38Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-27T18:47:47Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b4afd84a59578965120f175b410ea325d60bcb58'/>
<id>urn:sha1:b4afd84a59578965120f175b410ea325d60bcb58</id>
<content type='text'>
This will allow us to access ConfigFind() and stuff which makes
it possible for us to implement TLS support.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>abort connection on '.' target replies in SRV</title>
<updated>2016-09-04T20:00:48Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-09-04T16:53:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=99fdd8034b4a5cdb0100a33d0b3d5e26079c1695'/>
<id>urn:sha1:99fdd8034b4a5cdb0100a33d0b3d5e26079c1695</id>
<content type='text'>
Commit 3af3ac2f5ec007badeded46a94be2bd06b9917a2 (released in 1.3~pre1)
implements proper fallback for SRV, but that works actually too good
as the RFC defines that such an SRV record should indicate that the
server doesn't provide this service and apt should respect this.

The solution is hence to fail again as requested even if that isn't what
the user (and perhaps even the server admins) wanted. At least we will
print a message now explicitly mentioning SRV to point people in the
right direction.

Reported-In: https://bugs.kali.org/view.php?id=3525
Reported-By: Raphaël Hertzog
</content>
</entry>
<entry>
<title>methods/connect.cc: Only use AI_IDN if defined</title>
<updated>2016-08-26T13:49:14Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-08-23T12:57:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8265d6c8fdc2dd835d9cf2a47af13461fa421389'/>
<id>urn:sha1:8265d6c8fdc2dd835d9cf2a47af13461fa421389</id>
<content type='text'>
Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>block direct connections to .onion domains (RFC7687)</title>
<updated>2016-08-10T23:34:39Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-06T11:53:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8665dceb5cf2a197ae270b08066f05c8a2870223'/>
<id>urn:sha1:8665dceb5cf2a197ae270b08066f05c8a2870223</id>
<content type='text'>
Doing a direct connect to an .onion address (if you don't happen to use
it as a local domain, which you shouldn't) is bound to fail and does
leak the information that you do use Tor and which hidden service you
wanted to connect to to a DNS server. Worse, if the DNS is poisoned and
actually resolves tricking a user into believing the setup would work
correctly…

This does block also the usage of wrappers like torsocks with apt, but
with native support available and advertised in the error message this
shouldn't really be an issue.

Inspired-by: https://bugzilla.mozilla.org/show_bug.cgi?id=1228457
</content>
</entry>
<entry>
<title>keep trying with next if connection to a SRV host failed</title>
<updated>2016-07-06T13:53:59Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-07-06T12:49:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3af3ac2f5ec007badeded46a94be2bd06b9917a2'/>
<id>urn:sha1:3af3ac2f5ec007badeded46a94be2bd06b9917a2</id>
<content type='text'>
Instead of only trying the first host we get via SRV, we try them all as
we are supposed to and if that isn't working we try to connect to the
host itself as if we hadn't seen any SRV records. This was already the
intend of the old code, but it failed to hide earlier problems for the
next call, which would unconditionally fail then resulting in an all
around failure to connect. With proper stacking we can also keep the
error messages of each call around (and in the order tried) so if the
entire connection fails we can report all the things we have tried while
we discard the entire stack if something works out in the end.
</content>
</entry>
<entry>
<title>Do not remove a not working SrvRecords server twice</title>
<updated>2016-01-05T19:49:19Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@debian.org</email>
</author>
<published>2016-01-05T19:49:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=0b7d34ee9dd467b23835377f911af47019d8f713'/>
<id>urn:sha1:0b7d34ee9dd467b23835377f911af47019d8f713</id>
<content type='text'>
The PopFromSrvRecs() already removed the entry from the active
list, so the extra SrvRecords.erase() was incorrect.

Git-Dch: ignore
</content>
</entry>
</feed>
