lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202602111040.PumsMipt-lkp@intel.com>
Date: Wed, 11 Feb 2026 10:26:01 +0800
From: kernel test robot <lkp@...el.com>
To: markatbritain@...il.com, gregkh@...uxfoundation.org
Cc: oe-kbuild-all@...ts.linux.dev, straube.linux@...il.com,
	dan.carpenter@...aro.org, linux-staging@...ts.linux.dev,
	linux-kernel@...r.kernel.org, Mark Wu <markatbritain@...il.com>
Subject: Re: [PATCH] staging: rtl8723bs: remove NDIS_802_11 types and cleanup
 style

Hi,

kernel test robot noticed the following build errors:

[auto build test ERROR on staging/staging-testing]

url:    https://github.com/intel-lab-lkp/linux/commits/markatbritain-gmail-com/staging-rtl8723bs-remove-NDIS_802_11-types-and-cleanup-style/20260211-062107
base:   staging/staging-testing
patch link:    https://lore.kernel.org/r/20260210221556.73872-1-markatbritain%40gmail.com
patch subject: [PATCH] staging: rtl8723bs: remove NDIS_802_11 types and cleanup style
config: um-randconfig-r073-20260211 (https://download.01.org/0day-ci/archive/20260211/202602111040.PumsMipt-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
smatch version: v0.5.0-8994-gd50c5a4c
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260211/202602111040.PumsMipt-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@...el.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202602111040.PumsMipt-lkp@intel.com/

All errors (new ones prefixed by >>):

   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c: In function 'rtw_cfg80211_set_encryption':
>> drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:787:72: error: initialization of 'struct ieee_crypt_arg *' from incompatible pointer type 'struct <anonymous> *' [-Wincompatible-pointer-types]
     787 |                                         struct ieee_crypt_arg *crypt = &param->u.crypt;
         |                                                                        ^
   In file included from include/linux/kernel.h:28,
                    from include/linux/skbuff.h:13,
                    from include/linux/if_ether.h:19,
                    from include/linux/etherdevice.h:20,
                    from drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:8:
>> drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:788:60: error: invalid use of undefined type 'struct ieee_crypt_arg'
     788 |                                         u32 len = min(crypt->key_len, 16U);
         |                                                            ^~
   include/linux/minmax.h:92:20: note: in definition of macro '__careful_cmp_once'
      92 |         auto ux = (x); auto uy = (y);                   \
         |                    ^
   include/linux/minmax.h:105:25: note: in expansion of macro '__careful_cmp'
     105 | #define min(x, y)       __careful_cmp(min, x, y)
         |                         ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:788:51: note: in expansion of macro 'min'
     788 |                                         u32 len = min(crypt->key_len, 16U);
         |                                                   ^~~
   In file included from <command-line>:
   include/linux/compiler.h:168:17: error: '__UNIQUE_ID_x__656' undeclared (first use in this function); did you mean '__UNIQUE_ID_y__657'?
     168 |         __PASTE(__UNIQUE_ID_,                                   \
         |                 ^~~~~~~~~~~~
   include/linux/compiler_types.h:610:23: note: in definition of macro '__compiletime_assert'
     610 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   include/linux/compiler_types.h:630:9: note: in expansion of macro '_compiletime_assert'
     630 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |         ^~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
      39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
         |                                     ^~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:93:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |         ^~~~~~~~~~~~~~~~
   include/linux/minmax.h:49:25: note: in expansion of macro 'is_signed_type'
      49 | #define __sign_use(ux) (is_signed_type(typeof(ux)) ? \
         |                         ^~~~~~~~~~~~~~
   include/linux/minmax.h:75:10: note: in expansion of macro '__sign_use'
      75 |         (__sign_use(ux) & __sign_use(uy))
         |          ^~~~~~~~~~
   include/linux/minmax.h:93:27: note: in expansion of macro '__types_ok'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |                           ^~~~~~~~~~
   include/linux/minmax.h:98:9: note: in expansion of macro '__careful_cmp_once'
      98 |         __careful_cmp_once(op, x, y, __UNIQUE_ID(x_), __UNIQUE_ID(y_))
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:16:23: note: in expansion of macro '___PASTE'
      16 | #define __PASTE(a, b) ___PASTE(a, b)
         |                       ^~~~~~~~
   include/linux/compiler.h:168:9: note: in expansion of macro '__PASTE'
     168 |         __PASTE(__UNIQUE_ID_,                                   \
         |         ^~~~~~~
   include/linux/minmax.h:98:38: note: in expansion of macro '__UNIQUE_ID'
      98 |         __careful_cmp_once(op, x, y, __UNIQUE_ID(x_), __UNIQUE_ID(y_))
         |                                      ^~~~~~~~~~~
   include/linux/minmax.h:105:25: note: in expansion of macro '__careful_cmp'
     105 | #define min(x, y)       __careful_cmp(min, x, y)
         |                         ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:788:51: note: in expansion of macro 'min'
     788 |                                         u32 len = min(crypt->key_len, 16U);
         |                                                   ^~~
   include/linux/compiler.h:168:17: note: each undeclared identifier is reported only once for each function it appears in
     168 |         __PASTE(__UNIQUE_ID_,                                   \
         |                 ^~~~~~~~~~~~
   include/linux/compiler_types.h:610:23: note: in definition of macro '__compiletime_assert'
     610 |                 if (!(condition))                                       \
         |                       ^~~~~~~~~
   include/linux/compiler_types.h:630:9: note: in expansion of macro '_compiletime_assert'
     630 |         _compiletime_assert(condition, msg, __compiletime_assert_, __COUNTER__)
         |         ^~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
      39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
         |                                     ^~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:93:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |         ^~~~~~~~~~~~~~~~
   include/linux/minmax.h:49:25: note: in expansion of macro 'is_signed_type'
      49 | #define __sign_use(ux) (is_signed_type(typeof(ux)) ? \
         |                         ^~~~~~~~~~~~~~
   include/linux/minmax.h:75:10: note: in expansion of macro '__sign_use'
      75 |         (__sign_use(ux) & __sign_use(uy))
         |          ^~~~~~~~~~
   include/linux/minmax.h:93:27: note: in expansion of macro '__types_ok'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |                           ^~~~~~~~~~
   include/linux/minmax.h:98:9: note: in expansion of macro '__careful_cmp_once'
      98 |         __careful_cmp_once(op, x, y, __UNIQUE_ID(x_), __UNIQUE_ID(y_))
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:16:23: note: in expansion of macro '___PASTE'
      16 | #define __PASTE(a, b) ___PASTE(a, b)
         |                       ^~~~~~~~
   include/linux/compiler.h:168:9: note: in expansion of macro '__PASTE'
     168 |         __PASTE(__UNIQUE_ID_,                                   \
         |         ^~~~~~~
   include/linux/minmax.h:98:38: note: in expansion of macro '__UNIQUE_ID'
      98 |         __careful_cmp_once(op, x, y, __UNIQUE_ID(x_), __UNIQUE_ID(y_))
         |                                      ^~~~~~~~~~~
   include/linux/minmax.h:105:25: note: in expansion of macro '__careful_cmp'
     105 | #define min(x, y)       __careful_cmp(min, x, y)
         |                         ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:788:51: note: in expansion of macro 'min'
     788 |                                         u32 len = min(crypt->key_len, 16U);
         |                                                   ^~~
   include/linux/minmax.h:71:17: error: first argument to '__builtin_choose_expr' not a constant
      71 |         (typeof(__builtin_choose_expr(sizeof(ux) > 4, 1LL, 1L)))(ux) >= 0)
         |                 ^~~~~~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:610:23: note: in definition of macro '__compiletime_assert'
--
         |         ^~~~~~~~~~~~~~~~~~~
   include/linux/build_bug.h:39:37: note: in expansion of macro 'compiletime_assert'
      39 | #define BUILD_BUG_ON_MSG(cond, msg) compiletime_assert(!(cond), msg)
         |                                     ^~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:93:9: note: in expansion of macro 'BUILD_BUG_ON_MSG'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |         ^~~~~~~~~~~~~~~~
   include/linux/minmax.h:70:25: note: in expansion of macro 'statically_true'
      70 | #define __is_nonneg(ux) statically_true( \
         |                         ^~~~~~~~~~~~~~~
   include/linux/minmax.h:50:14: note: in expansion of macro '__is_nonneg'
      50 |         (2 + __is_nonneg(ux)) : (1 + 2 * (sizeof(ux) < 4)))
         |              ^~~~~~~~~~~
   include/linux/minmax.h:75:10: note: in expansion of macro '__sign_use'
      75 |         (__sign_use(ux) & __sign_use(uy))
         |          ^~~~~~~~~~
   include/linux/minmax.h:93:27: note: in expansion of macro '__types_ok'
      93 |         BUILD_BUG_ON_MSG(!__types_ok(ux, uy),           \
         |                           ^~~~~~~~~~
   include/linux/minmax.h:98:9: note: in expansion of macro '__careful_cmp_once'
      98 |         __careful_cmp_once(op, x, y, __UNIQUE_ID(x_), __UNIQUE_ID(y_))
         |         ^~~~~~~~~~~~~~~~~~
   include/linux/minmax.h:105:25: note: in expansion of macro '__careful_cmp'
     105 | #define min(x, y)       __careful_cmp(min, x, y)
         |                         ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:804:51: note: in expansion of macro 'min'
     804 |                                         u32 len = min(crypt->key_len, 16U);
         |                                                   ^~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:806:57: error: invalid use of undefined type 'struct ieee_crypt_arg'
     806 |                                         if (strcmp(crypt->alg, "TKIP") == 0 ||
         |                                                         ^~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:807:57: error: invalid use of undefined type 'struct ieee_crypt_arg'
     807 |                                             strcmp(crypt->alg, "CCMP") == 0) {
         |                                                         ^~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:84: error: invalid use of undefined type 'struct ieee_crypt_arg'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                                                    ^~
   include/linux/fortify-string.h:628:34: note: in definition of macro '__fortify_memcpy_chk'
     628 |         const size_t __p_size = (p_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:17: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:809:61: error: invalid use of undefined type 'struct ieee_crypt_arg'
     809 |                                                        crypt->key, len);
         |                                                             ^~
   include/linux/fortify-string.h:629:34: note: in definition of macro '__fortify_memcpy_chk'
     629 |         const size_t __q_size = (q_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:35: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:84: error: invalid use of undefined type 'struct ieee_crypt_arg'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                                                    ^~
   include/linux/fortify-string.h:630:40: note: in definition of macro '__fortify_memcpy_chk'
     630 |         const size_t __p_size_field = (p_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:17: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:809:61: error: invalid use of undefined type 'struct ieee_crypt_arg'
     809 |                                                        crypt->key, len);
         |                                                             ^~
   include/linux/fortify-string.h:631:40: note: in definition of macro '__fortify_memcpy_chk'
     631 |         const size_t __q_size_field = (q_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:35: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:84: error: invalid use of undefined type 'struct ieee_crypt_arg'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                                                    ^~
   include/linux/fortify-string.h:645:27: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                           ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:809:61: error: invalid use of undefined type 'struct ieee_crypt_arg'
     809 |                                                        crypt->key, len);
         |                                                             ^~
   include/linux/fortify-string.h:645:30: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                              ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:808:49: note: in expansion of macro 'memcpy'
     808 |                                                 memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
         |                                                 ^~~~~~
>> drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:62: error: 'struct security_priv' has no member named 'dot18021XGrptxmickey'; did you mean 'dot118021XGrptxmickey'?
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                              ^~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:628:34: note: in definition of macro '__fortify_memcpy_chk'
     628 |         const size_t __p_size = (p_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:17: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:88: error: invalid use of undefined type 'struct ieee_crypt_arg'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                                                        ^~
   include/linux/fortify-string.h:628:34: note: in definition of macro '__fortify_memcpy_chk'
     628 |         const size_t __p_size = (p_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:17: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:812:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     812 |                                                        &crypt->key[16], 8);
         |                                                              ^~
   include/linux/fortify-string.h:629:34: note: in definition of macro '__fortify_memcpy_chk'
     629 |         const size_t __q_size = (q_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:35: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
>> drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:62: error: 'struct security_priv' has no member named 'dot18021XGrptxmickey'; did you mean 'dot118021XGrptxmickey'?
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                              ^~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:630:40: note: in definition of macro '__fortify_memcpy_chk'
     630 |         const size_t __p_size_field = (p_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:17: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:88: error: invalid use of undefined type 'struct ieee_crypt_arg'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                                                        ^~
   include/linux/fortify-string.h:630:40: note: in definition of macro '__fortify_memcpy_chk'
     630 |         const size_t __p_size_field = (p_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:17: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:812:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     812 |                                                        &crypt->key[16], 8);
         |                                                              ^~
   include/linux/fortify-string.h:631:40: note: in definition of macro '__fortify_memcpy_chk'
     631 |         const size_t __q_size_field = (q_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:35: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
>> drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:62: error: 'struct security_priv' has no member named 'dot18021XGrptxmickey'; did you mean 'dot118021XGrptxmickey'?
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                              ^~~~~~~~~~~~~~~~~~~~
   include/linux/fortify-string.h:645:27: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                           ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:88: error: invalid use of undefined type 'struct ieee_crypt_arg'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                                                        ^~
   include/linux/fortify-string.h:645:27: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                           ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:812:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     812 |                                                        &crypt->key[16], 8);
         |                                                              ^~
   include/linux/fortify-string.h:645:30: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                              ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:811:49: note: in expansion of macro 'memcpy'
     811 |                                                 memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:89: error: invalid use of undefined type 'struct ieee_crypt_arg'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                                                         ^~
   include/linux/fortify-string.h:628:34: note: in definition of macro '__fortify_memcpy_chk'
     628 |         const size_t __p_size = (p_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:17: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:815:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     815 |                                                        &crypt->key[24], 8);
         |                                                              ^~
   include/linux/fortify-string.h:629:34: note: in definition of macro '__fortify_memcpy_chk'
     629 |         const size_t __q_size = (q_size);                               \
         |                                  ^~~~~~
   include/linux/fortify-string.h:691:35: note: in expansion of macro '__struct_size'
     691 |                 __struct_size(p), __struct_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:89: error: invalid use of undefined type 'struct ieee_crypt_arg'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                                                         ^~
   include/linux/fortify-string.h:630:40: note: in definition of macro '__fortify_memcpy_chk'
     630 |         const size_t __p_size_field = (p_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:17: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                 ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:815:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     815 |                                                        &crypt->key[24], 8);
         |                                                              ^~
   include/linux/fortify-string.h:631:40: note: in definition of macro '__fortify_memcpy_chk'
     631 |         const size_t __q_size_field = (q_size_field);                   \
         |                                        ^~~~~~~~~~~~
   include/linux/fortify-string.h:692:35: note: in expansion of macro '__member_size'
     692 |                 __member_size(p), __member_size(q),                     \
         |                                   ^~~~~~~~~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:89: error: invalid use of undefined type 'struct ieee_crypt_arg'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                                                         ^~
   include/linux/fortify-string.h:645:27: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                           ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:815:62: error: invalid use of undefined type 'struct ieee_crypt_arg'
     815 |                                                        &crypt->key[24], 8);
         |                                                              ^~
   include/linux/fortify-string.h:645:30: note: in definition of macro '__fortify_memcpy_chk'
     645 |         __underlying_##op(p, q, __copy_size);                           \
         |                              ^
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:814:49: note: in expansion of macro 'memcpy'
     814 |                                                 memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
         |                                                 ^~~~~~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:818:81: error: invalid use of undefined type 'struct ieee_crypt_arg'
     818 |                                                 psec->dot118021XGrpKeyid = crypt->idx;
         |                                                                                 ^~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:819:82: error: invalid use of undefined type 'struct ieee_crypt_arg'
     819 |                                                 rtw_set_key(padapter, psec, crypt->idx, 1, true);
         |                                                                                  ^~
   drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c:820:64: error: invalid use of undefined type 'struct ieee_crypt_arg'
     820 |                                         } else if (strcmp(crypt->alg, "BIP") == 0) {


vim +787 drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c

   697	
   698	static int rtw_cfg80211_set_encryption(struct net_device *dev, struct ieee_param *param, u32 param_len)
   699	{
   700		int ret = 0;
   701		u8 max_idx;
   702		u32 wep_key_idx, wep_key_len;
   703		struct adapter *padapter = rtw_netdev_priv(dev);
   704		struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
   705		struct security_priv *psecuritypriv = &padapter->securitypriv;
   706	
   707		param->u.crypt.err = 0;
   708		param->u.crypt.alg[IEEE_CRYPT_ALG_NAME_LEN - 1] = '\0';
   709	
   710		if (param_len < (u32)((u8 *)param->u.crypt.key - (u8 *)param) + param->u.crypt.key_len) {
   711			ret =  -EINVAL;
   712			goto exit;
   713		}
   714	
   715		if (param->sta_addr[0] != 0xff || param->sta_addr[1] != 0xff ||
   716		    param->sta_addr[2] != 0xff || param->sta_addr[3] != 0xff ||
   717		    param->sta_addr[4] != 0xff || param->sta_addr[5] != 0xff) {
   718			ret = -EINVAL;
   719			goto exit;
   720		}
   721	
   722		if (strcmp(param->u.crypt.alg, "WEP") == 0)
   723			max_idx = WEP_KEYS - 1;
   724		else
   725			max_idx = BIP_MAX_KEYID;
   726	
   727		if (param->u.crypt.idx > max_idx) {
   728			netdev_err(dev, "Error crypt.idx %d > %d\n", param->u.crypt.idx, max_idx);
   729			ret = -EINVAL;
   730			goto exit;
   731		}
   732	
   733		if (strcmp(param->u.crypt.alg, "WEP") == 0) {
   734			wep_key_idx = param->u.crypt.idx;
   735			wep_key_len = param->u.crypt.key_len;
   736	
   737			if (wep_key_len <= 0) {
   738				ret = -EINVAL;
   739				goto exit;
   740			}
   741	
   742			if (psecuritypriv->bWepDefaultKeyIdxSet == 0) {
   743				/* wep default key has not been set, so use this key index as default key. */
   744	
   745				wep_key_len = wep_key_len <= 5 ? 5 : 13;
   746	
   747				psecuritypriv->ndisencryptstatus = NDIS_802_11_ENCRYPTION_ENABLED;
   748				psecuritypriv->dot11PrivacyAlgrthm = _WEP40_;
   749				psecuritypriv->dot118021XGrpPrivacy = _WEP40_;
   750	
   751				if (wep_key_len == 13) {
   752					psecuritypriv->dot11PrivacyAlgrthm = _WEP104_;
   753					psecuritypriv->dot118021XGrpPrivacy = _WEP104_;
   754				}
   755	
   756				psecuritypriv->dot11PrivacyKeyIndex = wep_key_idx;
   757			}
   758	
   759			memcpy(&(psecuritypriv->dot11DefKey[wep_key_idx].skey[0]), param->u.crypt.key, wep_key_len);
   760	
   761			psecuritypriv->dot11DefKeylen[wep_key_idx] = wep_key_len;
   762	
   763			rtw_set_key(padapter, psecuritypriv, wep_key_idx, 0, true);
   764	
   765			goto exit;
   766		}
   767	
   768		if (padapter->securitypriv.dot11AuthAlgrthm == dot11AuthAlgrthm_8021X) { /*  802_1x */
   769			struct sta_info *psta, *pbcmc_sta;
   770			struct sta_priv *pstapriv = &padapter->stapriv;
   771	
   772			if (check_fwstate(pmlmepriv, WIFI_STATION_STATE | WIFI_MP_STATE) == true) { /* sta mode */
   773				psta = rtw_get_stainfo(pstapriv, get_bssid(pmlmepriv));
   774				if (psta) {
   775					/* Jeff: don't disable ieee8021x_blocked while clearing key */
   776					if (strcmp(param->u.crypt.alg, "none") != 0)
   777						psta->ieee8021x_blocked = false;
   778	
   779					if ((padapter->securitypriv.ndisencryptstatus ==
   780					     NDIS_802_11_ENCRYPTION_2_ENABLED) ||
   781					    (padapter->securitypriv.ndisencryptstatus ==
   782					     NDIS_802_11_ENCRYPTION_3_ENABLED)) {
   783						psta->dot118021XPrivacy = padapter->securitypriv.dot11PrivacyAlgrthm;
   784					}
   785	
   786					if (param->u.crypt.set_tx == 1) { /* pairwise key */
 > 787						struct ieee_crypt_arg *crypt = &param->u.crypt;
 > 788						u32 len = min(crypt->key_len, 16U);
   789	
   790						memcpy(psta->dot118021x_UncstKey.skey,
   791						       crypt->key, len);
   792						if (strcmp(param->u.crypt.alg, "TKIP") == 0) { /* set mic key */
   793							memcpy(psta->dot11tkiptxmickey.skey, &(param->u.crypt.key[16]), 8);
   794							memcpy(psta->dot11tkiprxmickey.skey, &(param->u.crypt.key[24]), 8);
   795	
   796							padapter->securitypriv.busetkipkey = false;
   797							/* _set_timer(&padapter->securitypriv.tkip_timer, 50); */
   798						}
   799	
   800						rtw_setstakey_cmd(padapter, psta, true, true);
   801					} else { /* group key */
   802						struct security_priv *psec = &padapter->securitypriv;
   803						struct ieee_crypt_arg *crypt = &param->u.crypt;
   804						u32 len = min(crypt->key_len, 16U);
   805	
   806						if (strcmp(crypt->alg, "TKIP") == 0 ||
   807						    strcmp(crypt->alg, "CCMP") == 0) {
   808							memcpy(psec->dot118021XGrpKey[crypt->idx].skey,
   809							       crypt->key, len);
   810	
 > 811							memcpy(psec->dot18021XGrptxmickey[crypt->idx].skey,
   812							       &crypt->key[16], 8);
   813	
   814							memcpy(psec->dot118021XGrprxmickey[crypt->idx].skey,
   815							       &crypt->key[24], 8);
   816	
   817							psec->binstallGrpkey = true;
   818							psec->dot118021XGrpKeyid = crypt->idx;
   819							rtw_set_key(padapter, psec, crypt->idx, 1, true);
   820						} else if (strcmp(crypt->alg, "BIP") == 0) {
   821							/* save the IGTK key, length 16 bytes */
   822							memcpy(psec->dot11wBIPKey[crypt->idx].skey,
   823							       crypt->key, len);
   824							psec->dot11wBIPKeyid = crypt->idx;
   825							psec->binstallBIPkey = true;
   826						}
   827					}
   828				}
   829	
   830				pbcmc_sta = rtw_get_bcmc_stainfo(padapter);
   831				if (pbcmc_sta) {
   832					/* Jeff: don't disable ieee8021x_blocked while clearing key */
   833					if (strcmp(param->u.crypt.alg, "none") != 0)
   834						pbcmc_sta->ieee8021x_blocked = false;
   835	
   836					if ((padapter->securitypriv.ndisencryptstatus ==
   837					     NDIS_802_11_ENCRYPTION_2_ENABLED) ||
   838					    (padapter->securitypriv.ndisencryptstatus ==
   839					     NDIS_802_11_ENCRYPTION_3_ENABLED)) {
   840						pbcmc_sta->dot118021XPrivacy = padapter->securitypriv.dot11PrivacyAlgrthm;
   841					}
   842				}
   843			} else if (check_fwstate(pmlmepriv, WIFI_ADHOC_STATE)) { /* adhoc mode */
   844			}
   845		}
   846	
   847	exit:
   848	
   849		return ret;
   850	}
   851	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ