<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/methods/connect.cc, branch 1.5_beta1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.5_beta1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.5_beta1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2017-07-03T13:06:26Z</updated>
<entry>
<title>don't set ip addresses as server names for SNI</title>
<updated>2017-07-03T13:06:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-06-30T11:10:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=405189f2a794ded622a4ae3a83a9b70917faf894'/>
<id>urn:sha1:405189f2a794ded622a4ae3a83a9b70917faf894</id>
<content type='text'>
It is kinda unlikely that apt will ever encounter a certificate for an
IP and a user actually using it, but the API documentation for
gnutls_server_name_set explicitly says that "IPv4 or IPv6 addresses are
not permitted to be set by this function.", so we should follow it.

[jak@d.o: Slightly rebased]
</content>
</entry>
<entry>
<title>Swap file descriptors before the handshake</title>
<updated>2017-07-03T13:06:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-03T12:33:15Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f3b9e58cc5e6878daff9cf127bd00587d1f715d3'/>
<id>urn:sha1:f3b9e58cc5e6878daff9cf127bd00587d1f715d3</id>
<content type='text'>
This makes more sense. If the handshake failed midway, we still
should run the gnutls bye stuff. The thinking here is to only
set the fd after the session setup, as we do not modify it
before, so if it fails in session setup, you retain a usable
file descriptor.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>Do not error out, only warn if ca certificates are not available</title>
<updated>2017-07-03T13:06:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-03T12:31:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=55673e5476f86ffae8969bfc3a47237f3eeb7720'/>
<id>urn:sha1:55673e5476f86ffae8969bfc3a47237f3eeb7720</id>
<content type='text'>
This probably makes more sense if Verify-Peer is set to off.
</content>
</entry>
<entry>
<title>tls: Add more details to error messages, and detect more errors</title>
<updated>2017-07-03T13:06:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-03T12:29:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a742bac161759e2b265a4d4d5f5527f6035d8e58'/>
<id>urn:sha1:a742bac161759e2b265a4d4d5f5527f6035d8e58</id>
<content type='text'>
This should make it easier to figure out what was
going on.
</content>
</entry>
<entry>
<title>Make Verify-Host and Verify-Peer independent again</title>
<updated>2017-07-01T13:51:55Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-01T13:51:55Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9a34c8557ac02e691bc66a5313103569a5e646ac'/>
<id>urn:sha1:9a34c8557ac02e691bc66a5313103569a5e646ac</id>
<content type='text'>
We can actually just pass null as a hostname, so let's just
do that when Verify-Host is set to false.
</content>
</entry>
<entry>
<title>TLS support: Error out on unsupported curl options</title>
<updated>2017-06-30T15:20:21Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-30T15:20:21Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6a0e7acbf01e22665d89a9c6556f3a8220a78756'/>
<id>urn:sha1:6a0e7acbf01e22665d89a9c6556f3a8220a78756</id>
<content type='text'>
Silently ignoring the options might be a security issue,
so produce an error instead.
</content>
</entry>
<entry>
<title>Improve closing the TLS connection</title>
<updated>2017-06-30T15:12:11Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-30T15:12:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=8f5db6b513b90b6ee5b625131a25b146fa912e0d'/>
<id>urn:sha1:8f5db6b513b90b6ee5b625131a25b146fa912e0d</id>
<content type='text'>
If gnutls_session_bye() exited with an error, we never closed
the underlying file descriptor, causing the method to think the
connection was still open. This caused problems especially in
test-partial-file-support where we checked that a "complete"
file and an incomplete file work. The first GET returns a 416
with Connection: close, and the next GET request then accidentally
reads the body of the 416 as the header for its own request.
</content>
</entry>
<entry>
<title>Allow running the TLS stack on any lower connection</title>
<updated>2017-06-30T12:57:54Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-30T11:51:32Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4b1d19fe5619ef46c952ca84531759a981741482'/>
<id>urn:sha1:4b1d19fe5619ef46c952ca84531759a981741482</id>
<content type='text'>
This is especially needed if we use an HTTPS proxy to CONNECT
to an HTTPS URI, as we run TLS-inside-TLS then.
</content>
</entry>
<entry>
<title>Reset failure reason when connection was successful</title>
<updated>2017-06-30T09:05:48Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-30T09:02:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d3a70c3e5ae68a0e5a3d4667dd1d0fc0887e6263'/>
<id>urn:sha1:d3a70c3e5ae68a0e5a3d4667dd1d0fc0887e6263</id>
<content type='text'>
When APT was trying multiple addresses, any later error
somewhere else would be reported with ConnectionRefused
or ConnectionTimedOut as the FailReason because that
was set by early connect attempts. This causes APT to
handle the failures differently, leading to some weirdly
breaking test cases (like the changed one).

Add debugging to the previously failing test case so
we can find out when something goes wrong there again.
</content>
</entry>
<entry>
<title>Don't read CaInfo if not specified (missing else)</title>
<updated>2017-06-30T07:46:29Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-06-30T07:46:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=425e2dff0e4013edac6663a34a6359c98f4e8477'/>
<id>urn:sha1:425e2dff0e4013edac6663a34a6359c98f4e8477</id>
<content type='text'>
This fixes a regression from ~alpha2.

Closes: #866559
Gbp-Dch: Full
</content>
</entry>
</feed>
