Re: Linux 4.3-rc1 build error on CentOS 5.11 "scripts/sign-file.c:23:25: fatal error: openssl/cms.h: No such file or directory"

From: Vinson Lee
Date: Tue Sep 15 2015 - 18:01:34 EST


On Tue, Sep 15, 2015 at 6:40 AM, David Howells <dhowells@xxxxxxxxxx> wrote:
> Does this patch fix the problem?
>
> David
> ---
> commit 8c8ed9de80bc1bbfd0f1e9a018a0feffcf3c11f8
> Author: David Howells <dhowells@xxxxxxxxxx>
> Date: Tue Sep 15 13:57:08 2015 +0100
>
> MODSIGN: Change from CMS to PKCS#7 signing if the openssl is too old
>
> The sign-file.c program actually uses CMS rather than PKCS#7 to sign a file
> since that allows the target X.509 certificate to be specified by
> subjectKeyId rather than by issuer + serialNumber.
>
> However, older versions of the OpenSSL crypto library (such as may be found
> in CentOS 5.11) don't support CMS. Assume everything prior to OpenSSL-1.0.0
> doesn't support CMS and switch to using PKCS#7 in that case.
>
> The compiler gives the following error:
>
> HOSTCC scripts/sign-file
> scripts/sign-file.c:23:25: fatal error: openssl/cms.h: No such file or directory
> #include <openssl/cms.h>
>
> Reported-by: Vinson Lee <vlee@xxxxxxxxxxxxxxxx>
> Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
> Acked-by: David Woodhouse <David.Woodhouse@xxxxxxxxx>
>

This patch results in this build error on CentOS 5.11.

HOSTCC scripts/sign-file
scripts/sign-file.c: In function âmainâ:
scripts/sign-file.c:255:23: error: âPKCS7_PARTIALâ undeclared (first
use in this function)
PKCS7_NOCERTS | PKCS7_PARTIAL | PKCS7_BINARY |
^
scripts/sign-file.c:255:23: note: each undeclared identifier is
reported only once for each function it appears in
scripts/sign-file.c:259:2: warning: implicit declaration of function
âPKCS7_sign_add_signerâ [-Wimplicit-function-declaration]
ERR(!PKCS7_sign_add_signer(pkcs7, x509, private_key, digest_algo,
^
scripts/sign-file.c:263:2: warning: implicit declaration of function
âPKCS7_finalâ [-Wimplicit-function-declaration]
ERR(PKCS7_final(pkcs7, bm, PKCS7_NOCERTS | PKCS7_BINARY) < 0,
^
scripts/sign-file.c:278:3: warning: implicit declaration of function
âi2d_PKCS7_bio_streamâ [-Wimplicit-function-declaration]
ERR(i2d_PKCS7_bio_stream(b, pkcs7, NULL, 0) < 0,
^
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/