]> git.baikalelectronics.ru Git - kernel.git/commit
ima: Fix ima digest hash table key calculation
authorKrzysztof Struczynski <krzysztof.struczynski@huawei.com>
Tue, 28 Apr 2020 07:30:10 +0000 (09:30 +0200)
committerMimi Zohar <zohar@linux.ibm.com>
Fri, 8 May 2020 02:54:07 +0000 (22:54 -0400)
commit3a8f6f40faa7d0862f047b5c504baa7a44ec67c9
tree039561d120c6fa750e4473bef48047f9ca29c5c5
parenta7c33fb19b9999f6a691cc55a789f9ecc1bf3e45
ima: Fix ima digest hash table key calculation

Function hash_long() accepts unsigned long, while currently only one byte
is passed from ima_hash_key(), which calculates a key for ima_htable.

Given that hashing the digest does not give clear benefits compared to
using the digest itself, remove hash_long() and return the modulus
calculated on the first two bytes of the digest with the number of slots.
Also reduce the depth of the hash table by doubling the number of slots.

Cc: stable@vger.kernel.org
Fixes: 3b6f847b5444 ("integrity: IMA as an integrity service provider")
Co-developed-by: Roberto Sassu <roberto.sassu@huawei.com>
Signed-off-by: Roberto Sassu <roberto.sassu@huawei.com>
Signed-off-by: Krzysztof Struczynski <krzysztof.struczynski@huawei.com>
Acked-by: David.Laight@aculab.com (big endian system concerns)
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
security/integrity/ima/ima.h