<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/test/interactive-helper, branch 1.8.0_rc4</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=1.8.0_rc4</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=1.8.0_rc4'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2019-02-10T12:16:27Z</updated>
<entry>
<title>Fix various typos in the documentation</title>
<updated>2019-02-10T12:16:27Z</updated>
<author>
<name>Jakub Wilk</name>
<email>jwilk@jwilk.net</email>
</author>
<published>2019-02-10T11:51:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=9a702b150c8ddeafa8c10c9f120dafdeb08ef93b'/>
<id>urn:sha1:9a702b150c8ddeafa8c10c9f120dafdeb08ef93b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow to override the directory of a request in aptwebserver</title>
<updated>2018-11-25T16:22:53Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-11-25T15:44:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b38060dba0273f1981caba4502eb1ffc9f8fac0e'/>
<id>urn:sha1:b38060dba0273f1981caba4502eb1ffc9f8fac0e</id>
<content type='text'>
The filename can be overridden, but sometimes it is useful to do it only
for the directory-part of the filename – e.g. if you want to let a flat
archive directory (like /var/cache/apt/archives) serve a pool-based
request like /pool/a/apt_version.deb.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>aptwebserver: Prevent XSS in debug and file listing</title>
<updated>2018-11-25T16:22:35Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-10-10T10:38:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=85399d2b28ba0bbd3b66e1ab50fde43a9f301f68'/>
<id>urn:sha1:85399d2b28ba0bbd3b66e1ab50fde43a9f301f68</id>
<content type='text'>
We sometimes autogenerate HTML pages e.g. for listing files in a
directory or for various error codes. If this would be a serious
webserver this would be a security problem (althrough a bit hard to
exploit), but as it is not shipped and intended to be used by our
testcases only the world hasn't ended &amp;amp; we can ignore it for
changelog and fix it for brownie points.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>aptwebserver: Guess Content-Type from filename extension</title>
<updated>2018-11-25T16:22:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-09-18T14:09:03Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=62fd535c5f77cea773652fa2f371025c4fd1f32c'/>
<id>urn:sha1:62fd535c5f77cea773652fa2f371025c4fd1f32c</id>
<content type='text'>
Browsing pages served via aptwebserver is working better if we tell the
browser the Content-Type which for this simple usecase we can just do by
guessing based on the file extension – and because hardcoding a list
would be boring we just reuse the mime.types data from mime-support if
available and allow it to be overridden by files and config.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>aptwebserver: Prefetch compressors to avoid thread crashes</title>
<updated>2018-08-19T15:25:26Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-07-09T14:12:31Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d298701bd765357905705aa133c3fdb2d1a4835c'/>
<id>urn:sha1:d298701bd765357905705aa133c3fdb2d1a4835c</id>
<content type='text'>
If multiple threads act on requests (like if connection comes from a
webbrowser) a thread might request the supported compressors while
another thread is still working on creating the list to be stored in the
static cache variable.

As the price to pay for atomic and co seems to high for the fringe
usecase of manual usage of aptwebserver the patch just makes a call to
generate the list while still single threaded.

Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>implement Acquire::Retries support for all items</title>
<updated>2017-12-13T22:56:29Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-10-25T23:09:48Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=dff555d40bb9776b5b809e06527e46b15e78736c'/>
<id>urn:sha1:dff555d40bb9776b5b809e06527e46b15e78736c</id>
<content type='text'>
Moving the Retry-implementation from individual items to the worker
implementation not only gives every file retry capability instead of
just a selected few but also avoids needing to implement it in each item
(incorrectly).
</content>
</entry>
<entry>
<title>remove pointless va_copy to avoid cleanup dance</title>
<updated>2017-10-05T15:30:25Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-10-05T12:49:27Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=50920fca5eff021f810d5de0cc9d2fa4d6068c50'/>
<id>urn:sha1:50920fca5eff021f810d5de0cc9d2fa4d6068c50</id>
<content type='text'>
A va_copy call needs to be closed in all branches with va_end, so these
functions would need to be reworked slightly, but we don't actually need
to copy the va_list as we don't work on it, we just push it forward, so
dropping the copy and everyone is happy.

Reported-By: cppcheck
Gbp-Dch: Ignore
</content>
</entry>
<entry>
<title>Use C++11 threading support instead of pthread</title>
<updated>2017-07-20T18:50:05Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-20T18:50:05Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b28636e54f682dc65aef169f201a34a8e2893369'/>
<id>urn:sha1:b28636e54f682dc65aef169f201a34a8e2893369</id>
<content type='text'>
This makes the code easier to read.
</content>
</entry>
<entry>
<title>Reformat and sort all includes with clang-format</title>
<updated>2017-07-12T11:57:51Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2017-07-12T11:40:41Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=87274d0f22e1dfd99b2e5200e2fe75c1b804eac3'/>
<id>urn:sha1:87274d0f22e1dfd99b2e5200e2fe75c1b804eac3</id>
<content type='text'>
This makes it easier to see which headers includes what.

The changes were done by running

    git grep -l '#\s*include'  \
        | grep -E '.(cc|h)$' \
        | xargs sed -i -E 's/(^\s*)#(\s*)include/\1#\2 include/'

To modify all include lines by adding a space, and then running
./git-clang-format.sh.
</content>
</entry>
<entry>
<title>deal with 3xx httpcodes as required by HTTP/1.1 spec</title>
<updated>2017-06-26T21:31:15Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2017-05-29T11:28:01Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=42654d08c2ca1bee18b6947a39228a35c2409deb'/>
<id>urn:sha1:42654d08c2ca1bee18b6947a39228a35c2409deb</id>
<content type='text'>
An unknown code should be handled the same as the x00 code of this
group, but for redirections we used to treat 300 (and a few others)
as an error while unknown codes were considered redirections.

Instead we check now explicitly for the redirection codes we support for
redirecting (and add the 308 defined in RFC 7538) to avoid future
problems if new 3xx codes are added expecting certain behaviours.

Potentially strange would have been e.g. "305 Use Proxy" sending a
Location for the proxy to use – which wouldn't have worked and resulted
in an error anyhow, but probably confused users in the process.
</content>
</entry>
</feed>
