Message ID | 20200504115758.283914-5-laurent@vivier.eu |
---|---|
State | New |
Headers | show |
Series | [PULL,01/20] scsi/esp-pci: add g_assert() for fix clang analyzer warning in esp_pci_io_write() | expand |
Hi Chen, This patch triggered a build failure in QEMU about discarding the "const" qualifier. IOW, the type conversion is not redundant after all - it is required in order to explicitly discard "const". I believe we can probably fix this by changing qcrypto_cipher_aes_ecb_(en|de)crypt() methods so that they also have a "const" qualifier on the AES_KEY parameter. On Mon, May 04, 2020 at 01:57:42PM +0200, Laurent Vivier wrote: > From: Chen Qun <kuhn.chenqun@huawei.com> > > Fix: eaec903c5b8 > > Reported-by: Euler Robot <euler.robot@huawei.com> > Signed-off-by: Chen Qun <kuhn.chenqun@huawei.com> > Acked-by: Daniel P. Berrangé <berrange@redhat.com> > Reviewed-by: Laurent Vivier <laurent@vivier.eu> > Message-Id: <20200325092137.24020-4-kuhn.chenqun@huawei.com> > Signed-off-by: Laurent Vivier <laurent@vivier.eu> > --- > crypto/cipher-builtin.c | 6 ++---- > 1 file changed, 2 insertions(+), 4 deletions(-) > > diff --git a/crypto/cipher-builtin.c b/crypto/cipher-builtin.c > index bf8413e71a6e..99d6280a1669 100644 > --- a/crypto/cipher-builtin.c > +++ b/crypto/cipher-builtin.c > @@ -133,8 +133,7 @@ static void qcrypto_cipher_aes_xts_encrypt(const void *ctx, > { > const QCryptoCipherBuiltinAESContext *aesctx = ctx; > > - qcrypto_cipher_aes_ecb_encrypt((AES_KEY *)&aesctx->enc, > - src, dst, length); > + qcrypto_cipher_aes_ecb_encrypt(&aesctx->enc, src, dst, length); > } > > > @@ -145,8 +144,7 @@ static void qcrypto_cipher_aes_xts_decrypt(const void *ctx, > { > const QCryptoCipherBuiltinAESContext *aesctx = ctx; > > - qcrypto_cipher_aes_ecb_decrypt((AES_KEY *)&aesctx->dec, > - src, dst, length); > + qcrypto_cipher_aes_ecb_decrypt(&aesctx->dec, src, dst, length); > } > > > -- > 2.26.2 > Regards, Daniel
>-----Original Message----- >From: Daniel P. Berrangé [mailto:berrange@redhat.com] >Sent: Monday, May 4, 2020 8:58 PM >To: Chenqun (kuhn) <kuhn.chenqun@huawei.com> >Cc: qemu-devel@nongnu.org; Michael Tokarev <mjt@tls.msk.ru>; qemu- >trivial@nongnu.org; Laurent Vivier <laurent@vivier.eu>; Euler Robot ><euler.robot@huawei.com> >Subject: Re: [PULL 04/20] crypto: Redundant type conversion for AES_KEY >pointer > >Hi Chen, > >This patch triggered a build failure in QEMU about discarding the "const" >qualifier. > >IOW, the type conversion is not redundant after all - it is required in order to >explicitly discard "const". > Yes, you are right! Thank you for pointing it out ! It is my carelessness, this patch is not complete. >I believe we can probably fix this by changing >qcrypto_cipher_aes_ecb_(en|de)crypt() methods so that they also have a "const" >qualifier on the AES_KEY parameter. > It's a good point. I will update the patch later. Thanks.
diff --git a/crypto/cipher-builtin.c b/crypto/cipher-builtin.c index bf8413e71a6e..99d6280a1669 100644 --- a/crypto/cipher-builtin.c +++ b/crypto/cipher-builtin.c @@ -133,8 +133,7 @@ static void qcrypto_cipher_aes_xts_encrypt(const void *ctx, { const QCryptoCipherBuiltinAESContext *aesctx = ctx; - qcrypto_cipher_aes_ecb_encrypt((AES_KEY *)&aesctx->enc, - src, dst, length); + qcrypto_cipher_aes_ecb_encrypt(&aesctx->enc, src, dst, length); } @@ -145,8 +144,7 @@ static void qcrypto_cipher_aes_xts_decrypt(const void *ctx, { const QCryptoCipherBuiltinAESContext *aesctx = ctx; - qcrypto_cipher_aes_ecb_decrypt((AES_KEY *)&aesctx->dec, - src, dst, length); + qcrypto_cipher_aes_ecb_decrypt(&aesctx->dec, src, dst, length); }