qt6-bb10/tests/auto
Giuseppe D'Angelo 9a77171ccc QHash security fix (1.5/2): qHash two arguments overload support
Algorithmic complexity attacks against hash tables have been known
since 2003 (cf. [1, 2]), and they have been left unpatched for years
until the 2011 attacks [3] against many libraries /
(reference) implementations of programming languages.

This patch adds a qHash overload taking two arguments: the value to
be hashed, and a uint to be used as a seed for the hash function
itself (support the global QHash seed was added in a previous patch).
The seed itself is not used just yet; instead, 0 is passed.

Compatibility with the one-argument qHash(T) implementation is kept
through a catch-all template.

[1] http://www.cs.rice.edu/~scrosby/hash/CrosbyWallach_UsenixSec2003.pdf
[2] http://perldoc.perl.org/perlsec.html#Algorithmic-Complexity-Attacks
[3] http://www.ocert.org/advisories/ocert-2011-003.html

Task-number: QTBUG-23529
Change-Id: I1d0a84899476d134db455418c8043a349a7e5317
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-04-04 13:02:58 +02:00
..
compilerwarnings/data Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
concurrent Remove commented code from qtconcurrentmap autotest. 2012-03-14 07:51:45 +01:00
corelib QHash security fix (1.5/2): qHash two arguments overload support 2012-04-04 13:02:58 +02:00
dbus Don't hardcode the order of elements in QHashes 2012-03-28 04:07:16 +02:00
gui Merge master into api_changes 2012-03-27 19:22:48 +02:00
guiapplauncher
network Port to the new QUrl API 2012-03-30 01:19:59 +02:00
opengl EGLFS: Integrate building into configure. 2012-03-21 03:03:29 +01:00
other Port to the new QUrl API 2012-03-30 01:19:59 +02:00
printsupport QPrinterInfo: remove a test that is too early 2012-03-24 17:07:52 +01:00
shared Refactor input context tests 2012-02-22 13:54:13 +01:00
sql Fix compilation of tst_QSqlThread: no need to use QBasicAtomicInt here 2012-03-24 17:07:52 +01:00
testlib Add a remainingTime() method to the public interface of the QTimer class 2012-04-03 15:10:05 +02:00
tools Stop relying on QHash ordering 2012-04-03 23:56:10 +02:00
widgets Remove WA_PaintOutsidePaintEvent 2012-03-28 11:22:11 +02:00
xml Stop relying on QHash ordering 2012-04-03 23:56:10 +02:00
auto.pro Disable some tests and examples when --no-widgets is specified 2012-03-19 20:16:04 +01:00
network-settings.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
platformquirks.h Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
test.pl Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00