<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/contrib/strutl.cc, branch 2.9.1</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.9.1</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.9.1'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2024-02-20T12:49:04Z</updated>
<entry>
<title>Modernize standard library includes</title>
<updated>2024-02-20T12:49:04Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2024-02-20T12:43:08Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=40a75722c43ae24cb9a99d6730a3b25b65819c49'/>
<id>urn:sha1:40a75722c43ae24cb9a99d6730a3b25b65819c49</id>
<content type='text'>
This was automated with sed and git-clang-format, and then I had to
fix up the top of policy.cc by hand as git-clang-format accidentally
indented it by two spaces.
</content>
</entry>
<entry>
<title>Address statements of public domain</title>
<updated>2023-03-06T09:57:55Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2023-02-27T16:58:33Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d9039b2409e69e651bf0d7ba582dbf528086332d'/>
<id>urn:sha1:d9039b2409e69e651bf0d7ba582dbf528086332d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Replace PrintStatus with SendMessage usage</title>
<updated>2021-02-04T10:00:00Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-28T18:52:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=96dc40b19623621a9cc2c5541fb3adbbceb553b1'/>
<id>urn:sha1:96dc40b19623621a9cc2c5541fb3adbbceb553b1</id>
<content type='text'>
varg API is a nightmare as the symbols seems different on ever other
arch, but more importantly SendMessage does a few checks on the content
of the message and it is all outputted via C++ iostreams and not mixed
in FILE* which is handy for overriding the streams.
</content>
</entry>
<entry>
<title>Forbid negative values in unsigned StrToNum explicitly</title>
<updated>2021-02-03T16:36:46Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-05-13T07:07:19Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=e0743a85c5f5f2f83d91c305450e8ba192194cd8'/>
<id>urn:sha1:e0743a85c5f5f2f83d91c305450e8ba192194cd8</id>
<content type='text'>
strtoul(l) surprises us with parsing negative values which should not
exist in the places we use to parse them, so we can just downright
refuse them rather than trying to work with them by having them promoted
to huge positive values.
</content>
</entry>
<entry>
<title>Remove Word size limit from ParseQuote and CWord</title>
<updated>2021-02-03T16:36:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-12-03T10:12:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6630c3e5b6af77205b043208ef15720cf270075c'/>
<id>urn:sha1:6630c3e5b6af77205b043208ef15720cf270075c</id>
<content type='text'>
It isn't super likely that we will encounter such big words in the real
world, but we can return arbitrary length, so lets just do that as that
also means we don't have to work with a second buffer.
</content>
</entry>
<entry>
<title>Don't parse \x and \0 past the end in DeEscapeString</title>
<updated>2021-02-03T16:36:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-12-03T09:44:27Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=ed192f410da36aedf5e54bb3f967e6613ab4bb51'/>
<id>urn:sha1:ed192f410da36aedf5e54bb3f967e6613ab4bb51</id>
<content type='text'>
This has no attack surface though as the loop is to end very soon anyhow
and the method only used while reading CD-ROM mountpoints which seems
like a very unlikely attack vector…
</content>
</entry>
<entry>
<title>Fix incorrect base64 encoding due to int promotion</title>
<updated>2021-02-03T16:36:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-12-03T09:41:43Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=10f13938bbf1474451fadcd62e1c31c4b5f5b3d7'/>
<id>urn:sha1:10f13938bbf1474451fadcd62e1c31c4b5f5b3d7</id>
<content type='text'>
For \xff and friends with the highest bit set and hence being a negative
value on signed char systems the wrong encoding is produced as we run
into undefined behaviour accessing negative array indexes.
We can avoid this problem simply by using an unsigned data type.
</content>
</entry>
<entry>
<title>Replace whitelist/blacklist with allowlist/denylist</title>
<updated>2020-08-04T10:12:11Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2020-07-14T14:34:20Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=7d8bb855487d6821b0cd6bf5d2270ed8fda3d1a3'/>
<id>urn:sha1:7d8bb855487d6821b0cd6bf5d2270ed8fda3d1a3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix various compiler warnings</title>
<updated>2020-02-26T17:59:31Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2020-02-26T17:26:13Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=d36b06d7eb300ca5cbee22b4fcedaefc80585da1'/>
<id>urn:sha1:d36b06d7eb300ca5cbee22b4fcedaefc80585da1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>strutl: Add APT::String::DisplayLength() function</title>
<updated>2019-11-25T16:02:47Z</updated>
<author>
<name>Алексей Шилин</name>
<email>rootlexx@mail.ru</email>
</author>
<published>2019-11-22T21:56:46Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=6ad35af2b63b32f9070c622b69da1c05535086a0'/>
<id>urn:sha1:6ad35af2b63b32f9070c622b69da1c05535086a0</id>
<content type='text'>
Returns string length, but unlike std::string::size() it honors
multibyte characters. This allows to properly calculate visible
sizes of console messages.
</content>
</entry>
</feed>
