Re: [PATCH 1/3] lib80211: Handle const struct lib80211_crypto_ops in lib80211

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Le 11/05/2024 à 23:47, Christophe JAILLET a écrit :
Le 11/05/2024 à 22:31, Simon Horman a écrit :
On Sat, May 11, 2024 at 06:32:38PM +0200, Christophe JAILLET wrote:
lib80211_register_crypto_ops() and lib80211_unregister_crypto_ops() don't
modify their "struct lib80211_crypto_ops *ops" argument. So, it can be
declared as const.

Doing so, some adjustments are needed to also constify some date in
"struct lib80211_crypt_data", "struct lib80211_crypto_alg" and the
return value of lib80211_get_crypto_ops().

Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
---
Compile tested only.

Hi Christophe,

Unfortunately allmodconfig W=1 build on x86_64 with Clang says:

.../libipw_wx.c:587:6: error: assigning to 'struct lib80211_crypto_ops *' from 'const struct lib80211_crypto_ops *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
  587 |         ops = lib80211_get_crypto_ops(alg);
      |             ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.../libipw_wx.c:590:7: error: assigning to 'struct lib80211_crypto_ops *' from 'const struct lib80211_crypto_ops *' discards qualifiers [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
  590 |                 ops = lib80211_get_crypto_ops(alg);
      |                     ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Hi,

I'll dig more tomorrow, but I don't see this error (with gcc), even with W=1.

The following part of the patch is here to avoid the exact compilation error that you see.

Strange.

CJ


Ok, got it.
Thanks for the pointer.

I don't know how I missed this one. :(

I'll send a v2.

CJ




[Index of Archives]     [Linux Driver Development]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux