<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt, branch 1.4_beta2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.4_beta2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.4_beta2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2016-12-08T14:21:23Z</updated>
<entry>
<title>Release 1.4~beta2 security update</title>
<updated>2016-12-08T14:21:23Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-12-08T14:21:23Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=196d70466490dc32a7b25e8a8b06216c8cdc8d3f'/>
<id>urn:sha1:196d70466490dc32a7b25e8a8b06216c8cdc8d3f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>releasing package apt version 1.4~beta2</title>
<updated>2016-12-08T14:20:59Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-12-08T14:20:59Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=fbed9c177f442270f791db920f66b2b22670c230'/>
<id>urn:sha1:fbed9c177f442270f791db920f66b2b22670c230</id>
<content type='text'>
</content>
</entry>
<entry>
<title>gpgv: Flush the files before checking for errors</title>
<updated>2016-12-08T14:19:30Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-12-06T08:35:11Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6212ee84a517ed68217429022bd45c108ecf9f85'/>
<id>urn:sha1:6212ee84a517ed68217429022bd45c108ecf9f85</id>
<content type='text'>
This is a follow up to the previous issue where we did not check
if getline() returned -1 due to an end of file or due to an error
like memory allocation, treating both as end of file.

Here we ensure that we also handle buffered writes correctly by
flushing the files before checking for any errors in our error
stack.

Buffered writes themselves were introduced in 1.1.9, but the
function was never called with a buffered file from inside
apt until commit 46c4043d741cb2c1d54e7f5bfaa234f1b7580f6c
which was first released with apt 1.2.10. The function is
public, though, so fixing this is a good idea anyway.

Affected: &gt;= 1.1.9
</content>
</entry>
<entry>
<title>SECURITY UPDATE: gpgv: Check for errors when splitting files (CVE-2016-1252)</title>
<updated>2016-12-08T14:19:21Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-12-05T22:01:25Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=51be550c5c38a2e1ddfc2af50a9fab73ccf78026'/>
<id>urn:sha1:51be550c5c38a2e1ddfc2af50a9fab73ccf78026</id>
<content type='text'>
This fixes a security issue where signatures of the
InRelease files could be circumvented in a man-in-the-middle
attack, giving attackers the ability to serve any packages
they want to a system, in turn giving them root access.

It turns out that getline() may not only return EINVAL
as stated in the documentation - it might also return
in case of an error when allocating memory.

This fix not only adds a check that reading worked
correctly, it also implicitly checks that all writes
worked by reporting any other error that occurred inside
the loop and was logged by apt.

Affected: &gt;= 0.9.8
Reported-By: Jann Horn &lt;jannh@google.com&gt;
Thanks: Jann Horn, Google Project Zero for reporting the issue
LP: #1647467
</content>
</entry>
<entry>
<title>bash-completion: Only complete understood file paths for install</title>
<updated>2016-11-30T11:15:08Z</updated>
<author>
<name>John R. Lenton</name>
<email>jlenton@gmail.com</email>
</author>
<published>2016-11-30T09:28:27Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6761dae5d0c372d132b0df91753120b59e30fd0e'/>
<id>urn:sha1:6761dae5d0c372d132b0df91753120b59e30fd0e</id>
<content type='text'>
Previouosly apt's bash completion was such that, given

    $ mkdir xyzzz
    $ touch xyzzy.deb xyzzx.two.deb

you'd get

    $ apt install xyzz&lt;tab&gt;
    xyzzx.two.deb  xyzzz/
    $ apt install /tmp/foo/xyzz&lt;tab&gt;
    xyzzx.two.deb  xyzzz/

this is inconsistent (xyzzx.two.deb is listed but not xyzzy.deb), but
worse than that it offered things that apt would not actually
recognise as candidates for install:

    $ sudo apt install xyzzx.two.deb
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    E: Unable to locate package xyzzx.two.deb
    E: Couldn't find any package by glob 'xyzzx.two.deb'
    E: Couldn't find any package by regex 'xyzzx.two.deb'

With this small (trival, really) change, apt's bash completion will
only offer things apt understands, and won't recquire an aditional
period in the filename to offer it:

    $ apt install xyzz&lt;tab&gt;^C
    $ # (no completions!)
    $ apt install ./xyzz&lt;tab&gt;
    xyzzx.two.deb  xyzzy.deb      xyzzz/
    $ apt install /tmp/foo/xyzz
    xyzzx.two.deb  xyzzy.deb      xyzzz/

fixes #28

LP: #1645815
</content>
</entry>
<entry>
<title>Release 1.4~beta1</title>
<updated>2016-11-25T22:50:48Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-11-25T22:47:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7d5234ab88b4cd6b172f13d0912c585983c3410b'/>
<id>urn:sha1:7d5234ab88b4cd6b172f13d0912c585983c3410b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add apt-pkg/tagfile-keys.cc to the gitignore file</title>
<updated>2016-11-25T22:49:26Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-11-25T22:48:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=4976699bc30a9255f62a553d46da4d50f039b6dd'/>
<id>urn:sha1:4976699bc30a9255f62a553d46da4d50f039b6dd</id>
<content type='text'>
This is output of triehash.

Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>gpgv: Untrust SHA1, RIPE-MD/160, but allow downgrading to weak</title>
<updated>2016-11-25T22:45:19Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2016-11-25T12:12:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=33d7a8d672c8c720947e81158de4a5a07be05b72'/>
<id>urn:sha1:33d7a8d672c8c720947e81158de4a5a07be05b72</id>
<content type='text'>
Change the trust level check to allow downgrading an Untrusted
option to weak (APT::Hashes::SHA1::Weak "yes";), so it prints
a warning instead of an error; and change the default values
for SHA1 and RIPE-MD/160 from Weak to Untrusted.
</content>
</entry>
<entry>
<title>show output as documented for APT::Periodic::Verbose 2</title>
<updated>2016-11-25T12:05:44Z</updated>
<author>
<name>Paul Wise</name>
<email>pabs@debian.org</email>
</author>
<published>2016-11-25T09:53:10Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=250687865e2d27dc949b810e59b07161a4c8f762'/>
<id>urn:sha1:250687865e2d27dc949b810e59b07161a4c8f762</id>
<content type='text'>
The documentation of APT::Periodic::Verbose doesn't match the code,
specifically level 2 should apply some things differently to level 1
but does not because it uses `-le 2` instead of `-lt 2` or `-le 1`.

Closes: 845599
</content>
</entry>
<entry>
<title>optional write aptwebserver log to client specific files</title>
<updated>2016-11-24T23:15:13Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-11-24T11:14:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e1ae0531bfad0fce8590c26d1e38825df22d812a'/>
<id>urn:sha1:e1ae0531bfad0fce8590c26d1e38825df22d812a</id>
<content type='text'>
The test test-handle-redirect-as-used-mirror-change serves multiple
clients at the same time, so the order of the output is undefined and
once in a while the two clients will intermix their lines causing the
grep we perform on it later to fail making our tests fail.

Solved by introducing client-specific logfiles which we all grep and
sort the result to have the results more stable.

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