1. 16 Feb, 2023 1 commit
    • Kees Cook's avatar
      wifi: brcmfmac: p2p: Introduce generic flexible array frame member · 1a30a6b2
      Kees Cook authored
      Silence run-time memcpy() false positive warning when processing
      management frames:
      
        memcpy: detected field-spanning write (size 27) of single field "&mgmt_frame->u" at drivers/net/wireless/broadcom/brcm80211/brcmfmac/p2p.c:1469 (size 26)
      
      Due to this (soon to be fixed) GCC bug[1], FORTIFY_SOURCE (via
      __builtin_dynamic_object_size) doesn't recognize that the union may end
      with a flexible array, and returns "26" (the fixed size of the union),
      rather than the remaining size of the allocation. Add an explicit
      flexible array member and set it as the destination here, so that we
      get the correct coverage for the memcpy().
      
      [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101832Reported-by: default avatarArd Biesheuvel <ardb@kernel.org>
      Cc: Arend van Spriel <aspriel@gmail.com>
      Cc: Franky Lin <franky.lin@broadcom.com>
      Cc: Hante Meuleman <hante.meuleman@broadcom.com>
      Cc: Kalle Valo <kvalo@kernel.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Eric Dumazet <edumazet@google.com>
      Cc: Jakub Kicinski <kuba@kernel.org>
      Cc: Paolo Abeni <pabeni@redhat.com>
      Cc: Johannes Berg <johannes@sipsolutions.net>
      Cc: "Jason A. Donenfeld" <Jason@zx2c4.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: "Darrick J. Wong" <djwong@kernel.org>
      Cc: Colin Ian King <colin.i.king@gmail.com>
      Cc: Brian Henriquez <brian.henriquez@cypress.com>
      Cc: linux-wireless@vger.kernel.org
      Cc: brcm80211-dev-list.pdl@broadcom.com
      Cc: SHA-cyfmac-dev-list@infineon.com
      Cc: netdev@vger.kernel.org
      Signed-off-by: default avatarKees Cook <keescook@chromium.org>
      Link: https://lore.kernel.org/r/20230215224110.never.022-kees@kernel.org
      [rename 'frame' to 'body']
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      1a30a6b2
  2. 15 Feb, 2023 10 commits
  3. 14 Feb, 2023 29 commits