Subject: Re: linux-next: build warning after merge of the final tree

From: Herbert Xu <[email-masked]>
Date: Tue, 16 Aug 2011 14:04:10 +0800

On Tue, Aug 16, 2011 at 03:22:34PM +1000, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the final tree, today's linux-next build (powerpc
> allyesconfig) produced this warning:
> 
> In file included from security/integrity/ima/../integrity.h:16:0,
>                  from security/integrity/ima/ima.h:27,
>                  from security/integrity/ima/ima_policy.c:20:
> include/crypto/sha.h:86:10: warning: 'struct shash_desc' declared inside parameter list
> include/crypto/sha.h:86:10: warning: its scope is only this definition or declaration, which is probably not what you want
> 
> Introduced by commit 7c390170b493 ("crypto: sha1 - export sha1_update for
> reuse").  I guess you need to include crypto/hash.h in crypto/sha.h.

Thanks for the report.

Does this patch fix the problem?

commit 4619b6bdb71362d95810f475cc61a6de9d0b1904
Author: Herbert Xu <[email-masked]>
Date:   Tue Aug 16 14:03:05 2011 +0800

    crypto: sha - Fix build error due to crypto_sha1_update
    
    On Tue, Aug 16, 2011 at 03:22:34PM +1000, Stephen Rothwell wrote:
    >
    > After merging the final tree, today's linux-next build (powerpc
    > allyesconfig) produced this warning:
    >
    > In file included from security/integrity/ima/../integrity.h:16:0,
    >                  from security/integrity/ima/ima.h:27,
    >                  from security/integrity/ima/ima_policy.c:20:
    > include/crypto/sha.h:86:10: warning: 'struct shash_desc' declared inside parameter list
    > include/crypto/sha.h:86:10: warning: its scope is only this definition or declaration, which is probably not what you want
    >
    > Introduced by commit 7c390170b493 ("crypto: sha1 - export sha1_update for
    > reuse").  I guess you need to include crypto/hash.h in crypto/sha.h.
    
    This patch fixes this by providing a declaration for struct shash_desc.
    
    Reported-by: Stephen Rothwell <[email-masked]>
    Signed-off-by: Herbert Xu <[email-masked]>

diff --git a/include/crypto/sha.h b/include/crypto/sha.h
index 83e6be5..c6c9c1f 100644
--- a/include/crypto/sha.h
+++ b/include/crypto/sha.h
@@ -82,6 +82,8 @@ struct sha512_state {
 	u8 buf[SHA512_BLOCK_SIZE];
 };
 
+struct shash_desc;
+
 extern int crypto_sha1_update(struct shash_desc *desc, const u8 *data,
 			      unsigned int len);
 
Cheers,
-- 
Email: Herbert Xu <[email-masked]>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt