• Arnd Bergmann's avatar
    crypto: marvell/cesa - Fix type mismatch warning · efbc7764
    Arnd Bergmann authored
    Commit df8fc4e9 ("kbuild: Enable -fstrict-flex-arrays=3") uncovered
    a type mismatch in cesa 3des support that leads to a memcpy beyond the
    end of a structure:
    
    In function 'fortify_memcpy_chk',
        inlined from 'mv_cesa_des3_ede_setkey' at drivers/crypto/marvell/cesa/cipher.c:307:2:
    include/linux/fortify-string.h:583:25: error: call to '__write_overflow_field' declared with attribute warning: detected write beyond size of field (1st parameter); maybe use struct_group()? [-Werror=attribute-warning]
      583 |                         __write_overflow_field(p_size_field, size);
          |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    This is probably harmless as the actual data that is copied has the correct
    type, but clearly worth fixing nonetheless.
    
    Fixes: 4ada4839 ("crypto: marvell/cesa - add Triple-DES support")
    Cc: Kees Cook <keescook@chromium.org>
    Cc: Gustavo A. R. Silva" <gustavoars@kernel.org>
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Reviewed-by: default avatarKees Cook <keescook@chromium.org>
    Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
    efbc7764
cipher.c 21.2 KB