<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/jhash.h, branch v5.5-rc2</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v5.5-rc2</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v5.5-rc2'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2019-06-10T11:00:24Z</updated>
<entry>
<title>Update my email address</title>
<updated>2019-06-10T11:00:24Z</updated>
<author>
<name>Jozsef Kadlecsik</name>
<email>kadlec@blackhole.kfki.hu</email>
</author>
<published>2019-06-10T11:00:24Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=fe03d4745675cbd678cb8c50d951df0abafdcaee'/>
<id>urn:sha1:fe03d4745675cbd678cb8c50d951df0abafdcaee</id>
<content type='text'>
It's better to use my kadlec@netfilter.org email address in
the source code. I might not be able to use
kadlec@blackhole.kfki.hu in the future.

Signed-off-by: Jozsef Kadlecsik &lt;kadlec@netfilter.org&gt;
Signed-off-by: Jozsef Kadlecsik &lt;kadlec@blackhole.kfki.hu&gt;
</content>
</entry>
<entry>
<title>jhash: fix -Wimplicit-fallthrough warnings</title>
<updated>2017-07-17T16:22:34Z</updated>
<author>
<name>Jakub Kicinski</name>
<email>jakub.kicinski@netronome.com</email>
</author>
<published>2017-07-15T06:03:49Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=13c401f33e19c20431d9888a91d9ea82e5133bd9'/>
<id>urn:sha1:13c401f33e19c20431d9888a91d9ea82e5133bd9</id>
<content type='text'>
GCC 7 added a new -Wimplicit-fallthrough warning.  It's only enabled
with W=1, but since linux/jhash.h is included in over hundred places
(including other global headers) it seems worthwhile fixing this
warning.

Signed-off-by: Jakub Kicinski &lt;jakub.kicinski@netronome.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>jhash: Update jhash_[321]words functions to use correct initval</title>
<updated>2015-04-03T16:52:29Z</updated>
<author>
<name>Alexander Duyck</name>
<email>alexander.h.duyck@redhat.com</email>
</author>
<published>2015-03-31T21:19:10Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=2e7056c433216f406b90a003aa0ba42e19d3bdcf'/>
<id>urn:sha1:2e7056c433216f406b90a003aa0ba42e19d3bdcf</id>
<content type='text'>
Looking over the implementation for jhash2 and comparing it to jhash_3words
I realized that the two hashes were in fact very different.  Doing a bit of
digging led me to "The new jhash implementation" in which lookup2 was
supposed to have been replaced with lookup3.

In reviewing the patch I noticed that jhash2 had originally initialized a
and b to JHASH_GOLDENRATIO and c to initval, but after the patch a, b, and
c were initialized to initval + (length &lt;&lt; 2) + JHASH_INITVAL.  However the
changes in jhash_3words simply replaced the initialization of a and b with
JHASH_INITVAL.

This change corrects what I believe was an oversight so that a, b, and c in
jhash_3words all have the same value added consisting of initval + (length
&lt;&lt; 2) + JHASH_INITVAL so that jhash2 and jhash_3words will now produce the
same hash result given the same inputs.

Fixes: 60d509c823cca ("The new jhash implementation")
Signed-off-by: Alexander Duyck &lt;alexander.h.duyck@redhat.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>The new jhash implementation</title>
<updated>2010-12-10T04:17:07Z</updated>
<author>
<name>Jozsef Kadlecsik</name>
<email>kadlec@blackhole.kfki.hu</email>
</author>
<published>2010-12-03T02:39:01Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=60d509c823cca21e77d537bd356785f7cfe8f0d1'/>
<id>urn:sha1:60d509c823cca21e77d537bd356785f7cfe8f0d1</id>
<content type='text'>
The current jhash.h implements the lookup2() hash function by Bob Jenkins.
However, lookup2() is outdated as Bob wrote a new hash function called
lookup3(). The patch replaces the lookup2() implementation of the 'jhash*'
functions with that of lookup3().

You can read a longer comparison of the two and other hash functions at
http://burtleburtle.net/bob/hash/doobs.html.

Signed-off-by: Jozsef Kadlecsik &lt;kadlec@blackhole.kfki.hu&gt;
Acked-by: Rusty Russell &lt;rusty@rustcorp.com.au&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Fix spelling mistake in jhash</title>
<updated>2010-08-18T08:19:52Z</updated>
<author>
<name>Anton Blanchard</name>
<email>anton@samba.org</email>
</author>
<published>2010-08-17T23:48:31Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=3d529946ce292336793b85198bd59afc75e16bd4'/>
<id>urn:sha1:3d529946ce292336793b85198bd59afc75e16bd4</id>
<content type='text'>
Fix a spelling mistake.

Signed-off-by: Anton Blanchard &lt;anton@samba.org&gt;
Signed-off-by: Jiri Kosina &lt;jkosina@suse.cz&gt;
</content>
</entry>
<entry>
<title>[JHASH]: Use const in jhash2</title>
<updated>2007-04-26T05:25:52Z</updated>
<author>
<name>Patrick McHardy</name>
<email>kaber@trash.net</email>
</author>
<published>2007-03-14T23:42:29Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8e87e014ec881ce353e1f43340157f519b5d9f30'/>
<id>urn:sha1:8e87e014ec881ce353e1f43340157f519b5d9f30</id>
<content type='text'>
Use const to avoid forcing users to cast const data.

Signed-off-by: Patrick McHardy &lt;kaber@trash.net&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>[JHASH]: Make key arg const in jhash().</title>
<updated>2004-02-26T03:50:43Z</updated>
<author>
<name>Simon Horman</name>
<email>horms@verge.net.au</email>
</author>
<published>2004-02-26T03:50:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=d46067dc2a2545bd715f39e82981bbd631492ac2'/>
<id>urn:sha1:d46067dc2a2545bd715f39e82981bbd631492ac2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[NET]: Cosmetic cleanups of jhash code.</title>
<updated>2003-05-03T03:01:33Z</updated>
<author>
<name>James Morris</name>
<email>jmorris@intercode.com.au</email>
</author>
<published>2003-05-03T03:01:33Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=df5432ba285560e807afdf607643a7fadbf3727a'/>
<id>urn:sha1:df5432ba285560e807afdf607643a7fadbf3727a</id>
<content type='text'>
- Consistent naming (i.e. jhash_xxx)
- Reduces the 2&amp;1 word variants to call jhash_3words()
- Replaces __inline__ with inline.
</content>
</entry>
<entry>
<title>[NET]: Fix hashing exploits in ipv4 routing, IP conntrack, and TCP synq.</title>
<updated>2003-05-02T17:43:27Z</updated>
<author>
<name>David S. Miller</name>
<email>davem@nuts.ninka.net</email>
</author>
<published>2003-05-02T17:43:27Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8b1309d93d3b3bd413567a76dbe0ba0a23814dd6'/>
<id>urn:sha1:8b1309d93d3b3bd413567a76dbe0ba0a23814dd6</id>
<content type='text'>
Several hash table implementations in the networking were
remotely exploitable.  Remote attackers could launch attacks
whereby, using carefully choosen forged source addresses, make
every routing cache entry get hashed into the same hash chain.

Netfilter's IP conntrack module and the TCP syn-queue implementation
had identical vulnerabilities and have been fixed too.

The choosen solution to the problem involved using Bob's Jenkins
hash along with a randomly choosen input.  For the ipv4 routing
cache we take things one step further and periodically choose a
new random secret.  By default this happens every 10 minutes, but
this is configurable by the user via sysctl knobs.
</content>
</entry>
</feed>
