On Sun, Feb 07, 2021 at 09:39:39AM -0500, Thara Gopinath wrote:
+ /*
+ * The crypto engine does not support any two keys
+ * being the same for triple des algorithms. The
+ * verify_skcipher_des3_key does not check for all the
+ * below conditions. Return -ENOKEY in case any two keys
+ * are the same. Revisit to see if a fallback cipher
+ * is needed to handle this condition.
+ */
+ memcpy(_key, key, DES3_EDE_KEY_SIZE);
+ if (!((_key[0] ^ _key[2]) | (_key[1] ^ _key[3])) |
+ !((_key[2] ^ _key[4]) | (_key[3] ^ _key[5])) |
+ !((_key[0] ^ _key[4]) | (_key[1] ^ _key[5])))
+ return -ENOKEY;
This introduces a sparse warning:
CHECK ../drivers/crypto/qce/skcipher.c
../drivers/crypto/qce/skcipher.c:241:58: warning: dubious: !x | !y
../drivers/crypto/qce/skcipher.c:242:58: warning: dubious: x | !y
Please make sure that you test your patches with C=1 so that
you don't introduce new sparse warnings.
Thanks,
--
Email: Herbert Xu [off-list ref]
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt