<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/acquire-method.h, branch 1.3_rc2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.3_rc2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.3_rc2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2015-08-10T15:25:25Z</updated>
<entry>
<title>make all d-pointer * const pointers</title>
<updated>2015-08-10T15:25:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-06-17T07:29:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6c55f07a5fa3612a5d59c61a17da5fe640eadc8b'/>
<id>urn:sha1:6c55f07a5fa3612a5d59c61a17da5fe640eadc8b</id>
<content type='text'>
Doing this disables the implicit copy assignment operator (among others)
which would cause hovac if used on the classes as it would just copy the
pointer, not the data the d-pointer points to. For most of the classes
we don't need a copy assignment operator anyway and in many classes it
was broken before as many contain a pointer of some sort.

Only for our Cacheset Container interfaces we define an explicit copy
assignment operator which could later be implemented to copy the data
from one d-pointer to the other if we need it.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>add d-pointer, virtual destructors and de-inline de/constructors</title>
<updated>2015-06-16T14:22:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-06-16T14:22:46Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c8a4ce6cbed57ae108dc955d4a850f9b129a0693'/>
<id>urn:sha1:c8a4ce6cbed57ae108dc955d4a850f9b129a0693</id>
<content type='text'>
To have a chance to keep the ABI for a while we need all three to team
up. One of them missing and we might loose, so ensuring that they are
available is a very tedious but needed task once in a while.

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>check patch hashes in rred worker instead of in the handler</title>
<updated>2015-06-09T10:57:36Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-06-06T17:16:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3679515479136179e0d95325a6559fcc6d0af7f8'/>
<id>urn:sha1:3679515479136179e0d95325a6559fcc6d0af7f8</id>
<content type='text'>
rred is responsible for unpacking and reading the patch files in one go,
but we currently only have hashes for the uncompressed patch files, so
the handler read the entire patch file before dispatching it to the
worker which would read it again – both with an implicit uncompress.
Worse, while the workers operate in parallel the handler is the central
orchestration unit, so having it busy with work means the workers do
(potentially) nothing.

This means rred is working with 'untrusted' data, which is bad. Yet,
having the unpack in the handler meant that the untrusted uncompress was
done as root which isn't better either. Now, we have it at least
contained in a binary which we can harden a bit better. In the long run,
we want hashes for the compressed patch files through to be safe.
</content>
</entry>
<entry>
<title>prepare ABI for feature/socketpair</title>
<updated>2014-11-05T16:53:20Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2014-11-05T16:53:20Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=da6f750f4586af16f2df3fb85cd6eb35a2a8227d'/>
<id>urn:sha1:da6f750f4586af16f2df3fb85cd6eb35a2a8227d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>do not inline virtual destructors with d-pointers</title>
<updated>2014-10-13T09:29:39Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-10-13T06:05:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=862bafea48af2ceaf96345db237b461307a021f6'/>
<id>urn:sha1:862bafea48af2ceaf96345db237b461307a021f6</id>
<content type='text'>
Reimplementing an inline method is opening a can of worms we don't want
to open if we ever want to us a d-pointer in those classes, so we do the
only thing which can save us from hell: move the destructors into the cc
sources and we are good.

Technically not an ABI break as the methods inline or not do the same
(nothing), so a program compiled against the old version still works
with the new version (beside that this version is still in experimental,
so nothing really has been build against this library anyway).

Git-Dch: Ignore
</content>
</entry>
<entry>
<title>make expected-size a maximum-size check as this is what we want at this point</title>
<updated>2014-10-07T15:47:30Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2014-10-07T15:47:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c48eea97b93920062ea26001081d4fdf7eb967e3'/>
<id>urn:sha1:c48eea97b93920062ea26001081d4fdf7eb967e3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>make http size check work</title>
<updated>2014-10-06T15:42:39Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@ubuntu.com</email>
</author>
<published>2014-10-06T15:42:39Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=a2d40703e4a5590a689ace4466f92e590434944d'/>
<id>urn:sha1:a2d40703e4a5590a689ace4466f92e590434944d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>methods: Fail if we cannot drop privileges</title>
<updated>2014-09-24T19:49:19Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2014-09-24T19:49:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7b18d5592fd5e0bb173e193d1e6693a66065f971'/>
<id>urn:sha1:7b18d5592fd5e0bb173e193d1e6693a66065f971</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Pass ExpectedSize to tthe backend method</title>
<updated>2014-08-27T02:08:37Z</updated>
<author>
<name>Michael Vogt</name>
<email>mvo@debian.org</email>
</author>
<published>2014-08-27T02:08:37Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=dcd5856b11c685ca6d4629212d2978ce196ea65c'/>
<id>urn:sha1:dcd5856b11c685ca6d4629212d2978ce196ea65c</id>
<content type='text'>
This ensures that we can stop downloading if the server send
too much data by accident (or by a malicious attempt)
</content>
</entry>
<entry>
<title>tell download methods the expected hashes</title>
<updated>2014-05-09T11:06:27Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2014-04-27T21:02:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d003a557a516e3063de3190950e911c61c3dd53e'/>
<id>urn:sha1:d003a557a516e3063de3190950e911c61c3dd53e</id>
<content type='text'>
Now that we have all hashes in the acquire system, pass the info down to
the methods, so that it can use it in the request and/or to precheck the
response.
</content>
</entry>
</feed>
