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>] [day] [month] [year] [list]
Date:   Wed, 5 Oct 2022 09:44:42 +0800
From:   kernel test robot <lkp@...el.com>
To:     Ard Biesheuvel <ardb@...nel.org>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org
Subject: [ardb:libgcm 1/1] drivers/crypto/caam/caamalg.c:656:12: error:
 conflicting types for 'gcm_setkey'; have 'int(struct crypto_aead *, const u8
 *, unsigned int)' {aka 'int(struct crypto_aead *, const unsigned char *,
 unsigned int)'}

tree:   git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git libgcm
head:   62f6cba4ec493aa44d6dbb3854bd91804afaf3b9
commit: 62f6cba4ec493aa44d6dbb3854bd91804afaf3b9 [1/1] crypto: gcm - Provide minimal library implementation
config: arm-defconfig
compiler: arm-linux-gnueabi-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git/commit/?id=62f6cba4ec493aa44d6dbb3854bd91804afaf3b9
        git remote add ardb git://git.kernel.org/pub/scm/linux/kernel/git/ardb/linux.git
        git fetch --no-tags ardb libgcm
        git checkout 62f6cba4ec493aa44d6dbb3854bd91804afaf3b9
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=arm SHELL=/bin/bash drivers/crypto/caam/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>

All errors (new ones prefixed by >>):

>> drivers/crypto/caam/caamalg.c:656:12: error: conflicting types for 'gcm_setkey'; have 'int(struct crypto_aead *, const u8 *, unsigned int)' {aka 'int(struct crypto_aead *, const unsigned char *, unsigned int)'}
     656 | static int gcm_setkey(struct crypto_aead *aead,
         |            ^~~~~~~~~~
   In file included from drivers/crypto/caam/compat.h:36,
                    from drivers/crypto/caam/caamalg.c:49:
   include/crypto/gcm.h:73:5: note: previous declaration of 'gcm_setkey' with type 'int(struct gcm_ctx *, const u8 *, unsigned int,  unsigned int)' {aka 'int(struct gcm_ctx *, const unsigned char *, unsigned int,  unsigned int)'}
      73 | int gcm_setkey(struct gcm_ctx *ctx, const u8 *key,
         |     ^~~~~~~~~~
>> drivers/crypto/caam/caamalg.c:1573:12: error: conflicting types for 'gcm_encrypt'; have 'int(struct aead_request *)'
    1573 | static int gcm_encrypt(struct aead_request *req)
         |            ^~~~~~~~~~~
   include/crypto/gcm.h:76:6: note: previous declaration of 'gcm_encrypt' with type 'void(const struct gcm_ctx *, u8 *, const u8 *, int,  const u8 *, int,  const u8 *)' {aka 'void(const struct gcm_ctx *, unsigned char *, const unsigned char *, int,  const unsigned char *, int,  const unsigned char *)'}
      76 | void gcm_encrypt(const struct gcm_ctx *ctx, u8 *dst, const u8 *src,
         |      ^~~~~~~~~~~
>> drivers/crypto/caam/caamalg.c:1578:12: error: conflicting types for 'gcm_decrypt'; have 'int(struct aead_request *)'
    1578 | static int gcm_decrypt(struct aead_request *req)
         |            ^~~~~~~~~~~
   include/crypto/gcm.h:79:5: note: previous declaration of 'gcm_decrypt' with type 'int(const struct gcm_ctx *, u8 *, const u8 *, int,  const u8 *, int,  const u8 *)' {aka 'int(const struct gcm_ctx *, unsigned char *, const unsigned char *, int,  const unsigned char *, int,  const unsigned char *)'}
      79 | int gcm_decrypt(const struct gcm_ctx *ctx, u8 *dst, const u8 *src,
         |     ^~~~~~~~~~~


vim +656 drivers/crypto/caam/caamalg.c

1b52c40919e60c Herbert Xu     2019-04-11  655  
3ef8d945d0dafd Tudor Ambarus  2014-10-23 @656  static int gcm_setkey(struct crypto_aead *aead,
3ef8d945d0dafd Tudor Ambarus  2014-10-23  657  		      const u8 *key, unsigned int keylen)
3ef8d945d0dafd Tudor Ambarus  2014-10-23  658  {
3ef8d945d0dafd Tudor Ambarus  2014-10-23  659  	struct caam_ctx *ctx = crypto_aead_ctx(aead);
3ef8d945d0dafd Tudor Ambarus  2014-10-23  660  	struct device *jrdev = ctx->jrdev;
836d8f43c5e529 Iuliana Prodan 2019-07-31  661  	int err;
836d8f43c5e529 Iuliana Prodan 2019-07-31  662  
836d8f43c5e529 Iuliana Prodan 2019-07-31  663  	err = aes_check_keylen(keylen);
674f368a952c48 Eric Biggers   2019-12-30  664  	if (err)
836d8f43c5e529 Iuliana Prodan 2019-07-31  665  		return err;
3ef8d945d0dafd Tudor Ambarus  2014-10-23  666  
6e005503199b9b Sascha Hauer   2019-05-23  667  	print_hex_dump_debug("key in @"__stringify(__LINE__)": ",
3ef8d945d0dafd Tudor Ambarus  2014-10-23  668  			     DUMP_PREFIX_ADDRESS, 16, 4, key, keylen, 1);
3ef8d945d0dafd Tudor Ambarus  2014-10-23  669  
3ef8d945d0dafd Tudor Ambarus  2014-10-23  670  	memcpy(ctx->key, key, keylen);
7e0880b9fbbe7d Horia Geantă   2017-12-19  671  	dma_sync_single_for_device(jrdev, ctx->key_dma, keylen, ctx->dir);
db57656b007241 Horia Geantă   2016-11-22  672  	ctx->cdata.keylen = keylen;
3ef8d945d0dafd Tudor Ambarus  2014-10-23  673  
bbf2234494afd1 Horia Geantă   2017-02-10  674  	return gcm_set_sh_desc(aead);
3ef8d945d0dafd Tudor Ambarus  2014-10-23  675  }
3ef8d945d0dafd Tudor Ambarus  2014-10-23  676  

:::::: The code at line 656 was first introduced by commit
:::::: 3ef8d945d0dafd272e77c01099bc4975c5297a5a crypto: caam - add support for gcm(aes)

:::::: TO: Tudor Ambarus <tudor.ambarus@...escale.com>
:::::: CC: Herbert Xu <herbert@...dor.apana.org.au>

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

View attachment "config" of type "text/plain" (260418 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ