<feed xmlns='http://www.w3.org/2005/Atom'>
<title>apt/apt-pkg/contrib/srvrec.cc, branch 2.7.2</title>
<subtitle>Debians commandline package manager</subtitle>
<id>https://git.kalnischkies.de/apt/atom?h=2.7.2</id>
<link rel='self' href='https://git.kalnischkies.de/apt/atom?h=2.7.2'/>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/'/>
<updated>2021-03-20T19:33:34Z</updated>
<entry>
<title>srvrec: Keep support for older resolver</title>
<updated>2021-03-20T19:33:34Z</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2021-03-20T19:33:34Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=f98c12b9f04ef3a9daec822c210044095b41a0ac'/>
<id>urn:sha1:f98c12b9f04ef3a9daec822c210044095b41a0ac</id>
<content type='text'>
Some C libraries e.g. musl do not implement the new res_n* APIs
therefore keep the old implementation as fallback and check __RES
version macro to determine the API level

Signed-off-by: Khem Raj &lt;raj.khem@gmail.com&gt;
Cc: Julian Andres Klode &lt;julian.klode@canonical.com&gt;
</content>
</entry>
<entry>
<title>Reorder config check before result looping for SRV parsing debug</title>
<updated>2020-07-02T16:57:11Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2020-06-30T08:11:09Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=1bfc0907c987758529bcdc4ebfb34364702a2d8b'/>
<id>urn:sha1:1bfc0907c987758529bcdc4ebfb34364702a2d8b</id>
<content type='text'>
It isn't needed to iterate over all results if we will be doing nothing
anyhow as it isn't that common to have that debug option enabled.
</content>
</entry>
<entry>
<title>srvrec: Use re-entrant resolver functions</title>
<updated>2019-08-22T11:11:00Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>julian.klode@canonical.com</email>
</author>
<published>2019-08-22T11:11:00Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=b9127ca07c37288f16b1fdc267d3f106721ed301'/>
<id>urn:sha1:b9127ca07c37288f16b1fdc267d3f106721ed301</id>
<content type='text'>
This should probably make those functions thread-safe, which
might be useful for some external users.
</content>
</entry>
<entry>
<title>don't try SRV requests based on IP addresses</title>
<updated>2018-05-11T12:35:30Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2018-05-11T12:35:30Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=5935ef0d212c588547f10031192ddee3418dfe7b'/>
<id>urn:sha1:5935ef0d212c588547f10031192ddee3418dfe7b</id>
<content type='text'>
IP addresses are by definition not a domain so in the best case the
requests will just fail; we can do better than that on our own.
</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>ensure a good clock() value for usage and tests</title>
<updated>2016-08-12T09:12:10Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2016-08-12T08:02:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=379a36f43d3f4db4afa5ad4fb6f79b89824c999c'/>
<id>urn:sha1:379a36f43d3f4db4afa5ad4fb6f79b89824c999c</id>
<content type='text'>
We use clock() as a very cheap way of getting a "random" value, but the
manpage warns that this could return -1, so we should be dealing with
this. Additionally, e.g. on hurd-i386 the value increases only slowly –
to slow for our fast running tests for randomness hence producing the
same range in both samples, so we introduce a simple busy-wait loop (as
clock is counting processor time used by the program) in the test which
delays the second sample just enough making our randomness a bit more
predictable.
</content>
</entry>
<entry>
<title>srvrec: Do not expose C++11 tuple use in header</title>
<updated>2015-10-30T13:44:52Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-10-30T13:44:52Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=3129bd50d30dad985764436f147ad44bc54f2005'/>
<id>urn:sha1:3129bd50d30dad985764436f147ad44bc54f2005</id>
<content type='text'>
This makes non-C++11 reverse deps wishing to use it FTBFS.
</content>
</entry>
<entry>
<title>GetSrvRecords: Make thread-safe</title>
<updated>2015-10-30T13:20:09Z</updated>
<author>
<name>Julian Andres Klode</name>
<email>jak@debian.org</email>
</author>
<published>2015-10-23T18:31:12Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=308d0cf53f4b7ad1750fb1efb42b908c8e336b9f'/>
<id>urn:sha1:308d0cf53f4b7ad1750fb1efb42b908c8e336b9f</id>
<content type='text'>
Gbp-Dch: ignore
</content>
</entry>
<entry>
<title>avoid triggering the c++11 erase api change on travis</title>
<updated>2015-09-02T10:35:22Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-02T10:35:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=c7609dd7a418428ffbca4c81a7950c4f53c92450'/>
<id>urn:sha1:c7609dd7a418428ffbca4c81a7950c4f53c92450</id>
<content type='text'>
Git-Dch: Ignore
</content>
</entry>
<entry>
<title>use clock() as source for SRV randomness</title>
<updated>2015-09-01T17:01:45Z</updated>
<author>
<name>David Kalnischkies</name>
<email>david@kalnischkies.de</email>
</author>
<published>2015-09-01T16:32:22Z</published>
<link rel='alternate' type='text/html' href='https://git.kalnischkies.de/apt/commit/?id=76abe9a5aad69eb7e67295588c6825cdae0341af'/>
<id>urn:sha1:76abe9a5aad69eb7e67295588c6825cdae0341af</id>
<content type='text'>
Initializing a random number generator with the time since epoch could
be good enough, but reaches its limits in test code as the 100
iterations might very well happen in the same second and hence the seed
number is always the same… clock() has a way lower resolution so it
changes more often and not unimportant: If many users start the update
at the same time it isn't to unlikely the SRV record will be ordered in
the same second choosing the same for them all, but it seems less likely
that the exact same clock() time has passed for them.

And if I have to touch this, lets change a few other things as well to
make me and/or compilers a bit happier (clang complained about the usage
of a GNU extension in the testcase for example).
</content>
</entry>
</feed>
