From nobody Sun Feb 8 06:49:44 2026 Received: from mail-wr1-f44.google.com (mail-wr1-f44.google.com [209.85.221.44]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id EA0A136997C for ; Tue, 11 Nov 2025 15:49:54 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.221.44 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762876197; cv=none; b=mqNc+6vemaMnvzxY8kRT9AYrFBF2h3OD8qaqMF6+w8wpraJFH7jhT4RRgjydSld8LSi9qoRWeST7KoZ8F/rO17jceHR4e+kZso2+0ym5UExtcTEcHGRA+bOTlKA+qHQZziS3YBqj7l5gjhhNUcpSP+nlglKSAGozr1jNsaUkR9w= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762876197; c=relaxed/simple; bh=qD6zIG+QFIh9H5gMT+JWHMXeNqgfXO8dSPuiOhs9AzU=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=qqy9+bXImihLc/ugfZI6xAgu6QXVgIghMHOXUW8Vycdn/m5N658z5SozUY/jLj/VhYSmpjICVLhnnvwK64o8XFl2SFuzha5QUk/aBAe+cErtbG320BamWXbhur31ATmtvbFV/sa4R+C6MRt4uEq7TpYt9it5d2egLUyrewuVZ+8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=N1FeMUeh; arc=none smtp.client-ip=209.85.221.44 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="N1FeMUeh" Received: by mail-wr1-f44.google.com with SMTP id ffacd0b85a97d-42b3720e58eso2409250f8f.3 for ; Tue, 11 Nov 2025 07:49:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1762876193; x=1763480993; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ldB0OPyDE9pZ9lZi6t4J5SC+CGo/82OY1zC0z4qhuPw=; b=N1FeMUeh9AbsTM9znheALQWUQ0YwCaX4LeGGr8D6SzzXCIUYQDpDAhZNqkuJ8sryUN 0DFf6jahTH593gBhtp0cr5VKwo7F0deKFMWPn9s4KCzqVUuoiVLzJljuzmWC4KjcpqeT eM/OXo/jfbuYwcrpXbQZVwZLa9wrzpWgwRIZ58tThg+gJcUgYx/2E6l2ndiVtOIx4XUx hH60Y+byANhUcvaOM1QRL20kL3C5x1jW2yNcsTd1KpQRqcT7spbE82kOWcO8PVP4+rTI YYQuh1Sx/HYWU6NgrszHSIq9jy9YLs/V4wxTqkjjnixmTGfTJTAyKZ33c8WY5bIc/GKW 3oDw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762876193; x=1763480993; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=ldB0OPyDE9pZ9lZi6t4J5SC+CGo/82OY1zC0z4qhuPw=; b=P9Otkxz4y9F3HQn2xeezGmAshbURSbKKoWnGVNpKu7jXZn2POccAx+6vB0s5pkFbA1 FkOmL5U8vWdu6+p+cJhVnV7Quvdd44lcsl/IHqGsrfFR5qC1wogOqz2v+XZg2S2CWp9v J3Z4rfQ0G/31wJKb2IMewaVfIE+Ai7q+ZmKEQjU9WD+SX8UEQ/NcQ0x+W8ciAZBBp/+X RsqB+Z1OtL6qyzv62urI6cBBDAsmkuLq2cmS5CZYygCJvmU5fNcxPHKiX9ljtTTZQ5Ll 8ao+9vDX0KlpB4RqpDHyn6/NNDaxdOIbFYb/1U1NBoKUJXkt4h+9wlz4IIPXksI7k3+v YYtg== X-Forwarded-Encrypted: i=1; AJvYcCWvTransXuO8LA5iqFzSlSSJ29OkiWxMGdUu+5O6dRuzi69lzLLeSq5AgAAI130at7HTSRxOB5zKQXQrEI=@vger.kernel.org X-Gm-Message-State: AOJu0YyD31k9FqduRyh9QZ3vKNf8RDHEeXiKN8WS4qMQD9404eNxp6qH j+jY140FXl5AidwBfesTlqhaCg2VVYCdcDwKr6MSbuRl5+34cn0/0ImO+Nr5jJJgHrw= X-Gm-Gg: ASbGncvyn4SD2O6k7I/gs4d18cOW4U/NC31k4eXLR5xjCEaS3H54GXdwaOIDNtPsns0 mAVhQjwohIcn6Sd2Mr5RmagkeUDx9ORj410JVwUG1phOP/4gRuxNStNdKwdSEAbdm/+9AhmQFUG nsbMs8yg9/iGc0MLpvHXWV5sRZpm3nBhGjAWHvjk4ZZeAO/7IH1j4MWQu4Rb0tIt8B77GpYNevF NA4n2Dw5UILbzA0Hh6KbOxCcCAdVbZsyaWENzjQM7FRQeI1fL/Ud+8VDgKP2JMvZ/PPNZ4feghb PORpnfLHh4okwAnb9EopCQmoaw8ccyrc37igpwKEQjJsk3hFj/Z9fVJ++Iq9ggUKdsmTW3V+cpE HVOO1YgDQPQhPq5UTYPiyrJBOkGoTxMeDaljcSYSLEQ4d3oXMG46dmQw1rkf/k/2smPQgaoxDbo z9HrjFmAHnDAyl8iPPsQ== X-Google-Smtp-Source: AGHT+IEOSm7C5wtpa4ZrHjhS6rbYwvS1yk5B9tIcVm28eW4cAMJObZ0VcTOXc0R/m5W6dUpuHdMeIQ== X-Received: by 2002:a5d:5f42:0:b0:429:bca4:6b44 with SMTP id ffacd0b85a97d-42b2dc1f4e9mr11678592f8f.13.1762876193119; Tue, 11 Nov 2025 07:49:53 -0800 (PST) Received: from zovi.suse.cz (nat2.prg.suse.com. [195.250.132.146]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42abe62b23csm28269916f8f.10.2025.11.11.07.49.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 07:49:52 -0800 (PST) From: Petr Pavlu To: David Howells , David Woodhouse , Luis Chamberlain , Petr Pavlu , Daniel Gomez , Sami Tolvanen , Aaron Tomlin Cc: keyrings@vger.kernel.org, linux-modules@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/2] module: Remove SHA-1 support for module signing Date: Tue, 11 Nov 2025 16:48:31 +0100 Message-ID: <20251111154923.978181-2-petr.pavlu@suse.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251111154923.978181-1-petr.pavlu@suse.com> References: <20251111154923.978181-1-petr.pavlu@suse.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" SHA-1 is considered deprecated and insecure due to vulnerabilities that can lead to hash collisions. Most distributions have already been using SHA-2 for module signing because of this. The default was also changed last year from SHA-1 to SHA-512 in commit f3b93547b91a ("module: sign with sha512 instead of sha1 by default"). This was not reported to cause any issues. Therefore, it now seems to be a good time to remove SHA-1 support for module signing. Commit 16ab7cb5825f ("crypto: pkcs7 - remove sha1 support") previously removed support for reading PKCS#7/CMS signed with SHA-1, along with the ability to use SHA-1 for module signing. This change broke iwd and was subsequently completely reverted in commit 203a6763ab69 ("Revert "crypto: pkcs7 - remove sha1 support""). However, dropping only the support for using SHA-1 for module signing is unrelated and can still be done separately. Note that this change only removes support for new modules to be SHA-1 signed, but already signed modules can still be loaded. Signed-off-by: Petr Pavlu Reviewed-by: Aaron Tomlin Reviewed-by: Sami Tolvanen --- kernel/module/Kconfig | 5 ----- 1 file changed, 5 deletions(-) diff --git a/kernel/module/Kconfig b/kernel/module/Kconfig index 2a1beebf1d37..be74917802ad 100644 --- a/kernel/module/Kconfig +++ b/kernel/module/Kconfig @@ -299,10 +299,6 @@ choice possible to load a signed module containing the algorithm to check the signature on that module. =20 -config MODULE_SIG_SHA1 - bool "SHA-1" - select CRYPTO_SHA1 - config MODULE_SIG_SHA256 bool "SHA-256" select CRYPTO_SHA256 @@ -332,7 +328,6 @@ endchoice config MODULE_SIG_HASH string depends on MODULE_SIG || IMA_APPRAISE_MODSIG - default "sha1" if MODULE_SIG_SHA1 default "sha256" if MODULE_SIG_SHA256 default "sha384" if MODULE_SIG_SHA384 default "sha512" if MODULE_SIG_SHA512 --=20 2.51.1 From nobody Sun Feb 8 06:49:44 2026 Received: from mail-wm1-f52.google.com (mail-wm1-f52.google.com [209.85.128.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 88FDB36A011 for ; Tue, 11 Nov 2025 15:49:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762876197; cv=none; b=ch8wUWxc6azaAoBq+QZtYsEEtwiT2GCqAoa9vSp2eFs9N7rFPXyyIwZynnIBEAsdeOTblY95zEWkWTJP9wGmee2PQBd2du+FdJCWnUK8zJal7oOXiGX1COJ+2vKxPg9QwF7L6e/GARz5Na/lUbMzHODrtgWMhlbJ17WGYfhRmCc= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1762876197; c=relaxed/simple; bh=ArffcqoJndIyYbZ2n+iylx2lu7vSzFeJ4OJe4C6LVPs=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=cImWLuGdBgefHBYKSUrWRqQiXavE9XZOr8xbvcjW3C0V6X0+dxrIDWaJgpovboFtjDNLTBRmibiq9ZgAu7gTkQFknfiBfbuA5ObI3o0aP7yEp3VN/ZoxK7aGxqidcTXeuE9WwxpDoGrtSGtPhZGiPCvM7QrRzi8kgUlkrcMc8hA= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com; spf=pass smtp.mailfrom=suse.com; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b=aZulMhDE; arc=none smtp.client-ip=209.85.128.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=suse.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=suse.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=suse.com header.i=@suse.com header.b="aZulMhDE" Received: by mail-wm1-f52.google.com with SMTP id 5b1f17b1804b1-47118259fd8so31047965e9.3 for ; Tue, 11 Nov 2025 07:49:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.com; s=google; t=1762876194; x=1763480994; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=r30esyx8yD0HScczwGrkXPHaGSEXpXn8hasnGYmqj/c=; b=aZulMhDE3YOhVELKLbkzv831DFFjyrUiCLrLBYfMj7kUw0alDVXbfLpuI7JpDAe5a2 xuN69UjJl6GxYHDg9TUyKkJuPphO5TT6zSuk/bKj/u2hgun75gfXZjRtQblxS2BIbBge Mz3vXHMG7bB3jPSNpxoDNjhnbLmkrkwi0TAJ2oTkPhB1RN0Fea4FjagA1clLIjfdhjDp aVP9TosgbHr72fHNLXc+n8Ki5O5WC/XYNxNN8/5fl6+EaErx4cbkRrQmPuX5mYNuB1SK /13CkowaAsq7/1aPN/kBuz+CNDnhrWz5XhTbunGvdD5/syY7+nEGHWnDiB4SEPuIhPiK sguQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1762876194; x=1763480994; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=r30esyx8yD0HScczwGrkXPHaGSEXpXn8hasnGYmqj/c=; b=tlNFx14RoGUBj8ETcWheML/1Yyp0PtvftY9+7VqKHWOrKjVy2HVnxJgaIPYgENObD4 M72B2GcQAiCdUqSoNns/v4Tii712gCkymMkOLDbFKi3DUmrhRYrQnMAluPWC06yU0G+A XszUjsj5MTgcoN2HKPepHFbd8cTsnkAvvgX2CVh9px/2h/tzEzCXKsslOLGdVAEL0mhy Yap36L597+kypGfyOQ32zsoFlcAaD2Q21XqCb8S/etUgsYMY3Z6SYDYhq6nDZ0qMs4UN tLvwus4gLvmce68T9deePwrcG5vhxbZU/M57KCxD5ABVPmytwuXc5Jgp+cl9YjKTd3Te ASmg== X-Forwarded-Encrypted: i=1; AJvYcCXI5yK49YxU89StSpcN6GvGUtp9HG9d4bzkpuqanoXgvjmH9gMTAr241Cl6vEzsXCMfv2TUm5oScGKZ0qM=@vger.kernel.org X-Gm-Message-State: AOJu0YwcX/k/iIEfWmn3BxF2f5+iykYgMnFRmY5ksOGjRhXQMnalPi/1 vcAnXnX6xTaGCY8Oujf8XDuQeFBwIxnwVMZFbbyWmwq2z1j6PsJZ8SHISrPq1Ggfznk= X-Gm-Gg: ASbGncsW9bvaImTD4BVd+9PJp59RFLfokOcUOLqIgKnKPa39MvDZdZkODjXyopcJAAb x8XvNJcXxTyP1FdnkOvYOG/zRQJaIt/ZaJDgKaU3ZJj78GsLFzHeawGn6QM6wxuiZBoJT/FgMDf 37CPvIMiHeBQKoCVejZvEOUP6ODCgywBUFjL+anzm676McBaPeTX6Y7e/Wqosv0AuRffIizVFM0 xeAIwhaciQtuX9harARE1cPHjIyUXblhOF04PvIjtFWDpW0++3RedIVCfn9v3Lts0+5zMnI1Wsk isO3ghEvsPDb6Fhl8/9MhA5vlb1+wpJTfvrK4ypAKe3NFGjE3q7/yOZv70NSz69QukU0bvOSQ7g Rt581kHg+egxMRzgA/W7TFjtN7bvToR+yBaxjTul5w36+B2lKuxvlIqTNnZ2E2CE91sev54cEDj djzcro2QgolfO5/Yr52Q== X-Google-Smtp-Source: AGHT+IExhQ/+BzedT09U+yGaxQf13zai+5Vmb9vWg/D2+w5V1sfzVsL0jINrbBSLXD9+jVM64JUSgw== X-Received: by 2002:a05:600c:35c8:b0:477:7a1a:4b82 with SMTP id 5b1f17b1804b1-4777a1a4d15mr84388275e9.8.1762876193779; Tue, 11 Nov 2025 07:49:53 -0800 (PST) Received: from zovi.suse.cz (nat2.prg.suse.com. [195.250.132.146]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42abe62b23csm28269916f8f.10.2025.11.11.07.49.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 11 Nov 2025 07:49:53 -0800 (PST) From: Petr Pavlu To: David Howells , David Woodhouse , Luis Chamberlain , Petr Pavlu , Daniel Gomez , Sami Tolvanen , Aaron Tomlin Cc: keyrings@vger.kernel.org, linux-modules@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/2] sign-file: Remove support for signing with PKCS#7 Date: Tue, 11 Nov 2025 16:48:32 +0100 Message-ID: <20251111154923.978181-3-petr.pavlu@suse.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251111154923.978181-1-petr.pavlu@suse.com> References: <20251111154923.978181-1-petr.pavlu@suse.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The PKCS#7 code in sign-file allows for signing only with SHA-1. Since SHA-1 support for module signing has been removed, drop PKCS#7 support in favor of using only CMS. The use of the PKCS#7 code is selected by the following: #if defined(LIBRESSL_VERSION_NUMBER) || \ OPENSSL_VERSION_NUMBER < 0x10000000L || \ defined(OPENSSL_NO_CMS) #define USE_PKCS7 #endif Looking at the individual ifdefs: * LIBRESSL_VERSION_NUMBER: LibreSSL added the CMS implementation from OpenSSL in 3.1.0, making the ifdef no longer relevant. This version was released on April 8, 2020. * OPENSSL_VERSION_NUMBER < 0x10000000L: OpenSSL 1.0.0 was released on March 29, 2010. Supporting earlier versions should no longer be necessary. The file Documentation/process/changes.rst already states that at least version 1.0.0 is required to build the kernel. * OPENSSL_NO_CMS: OpenSSL can be configured with "no-cms" to disable the CMS support. In this case, sign-file will no longer be usable. The CMS support is now required. In practice, since distributions now typically sign modules with SHA-2, for which sign-file already required CMS support, removing PKCS#7 shouldn't cause any issues. Signed-off-by: Petr Pavlu Reviewed-by: Sami Tolvanen --- scripts/sign-file.c | 66 +++------------------------------------------ 1 file changed, 3 insertions(+), 63 deletions(-) diff --git a/scripts/sign-file.c b/scripts/sign-file.c index 7070245edfc1..16f2bf2e1e3c 100644 --- a/scripts/sign-file.c +++ b/scripts/sign-file.c @@ -24,6 +24,7 @@ #include #include #include +#include #include #include #include @@ -39,29 +40,6 @@ #endif #include "ssl-common.h" =20 -/* - * Use CMS if we have openssl-1.0.0 or newer available - otherwise we have= to - * assume that it's not available and its header file is missing and that = we - * should use PKCS#7 instead. Switching to the older PKCS#7 format restri= cts - * the options we have on specifying the X.509 certificate we want. - * - * Further, older versions of OpenSSL don't support manually adding signer= s to - * the PKCS#7 message so have to accept that we get a certificate included= in - * the signature message. Nor do such older versions of OpenSSL support - * signing with anything other than SHA1 - so we're stuck with that if suc= h is - * the case. - */ -#if defined(LIBRESSL_VERSION_NUMBER) || \ - OPENSSL_VERSION_NUMBER < 0x10000000L || \ - defined(OPENSSL_NO_CMS) -#define USE_PKCS7 -#endif -#ifndef USE_PKCS7 -#include -#else -#include -#endif - struct module_signature { uint8_t algo; /* Public-key crypto algorithm [0] */ uint8_t hash; /* Digest algorithm [0] */ @@ -228,15 +206,10 @@ int main(int argc, char **argv) bool raw_sig =3D false; unsigned char buf[4096]; unsigned long module_size, sig_size; - unsigned int use_signed_attrs; const EVP_MD *digest_algo; EVP_PKEY *private_key; -#ifndef USE_PKCS7 CMS_ContentInfo *cms =3D NULL; unsigned int use_keyid =3D 0; -#else - PKCS7 *pkcs7 =3D NULL; -#endif X509 *x509; BIO *bd, *bm; int opt, n; @@ -246,21 +219,13 @@ int main(int argc, char **argv) =20 key_pass =3D getenv("KBUILD_SIGN_PIN"); =20 -#ifndef USE_PKCS7 - use_signed_attrs =3D CMS_NOATTR; -#else - use_signed_attrs =3D PKCS7_NOATTR; -#endif - do { opt =3D getopt(argc, argv, "sdpk"); switch (opt) { case 's': raw_sig =3D true; break; case 'p': save_sig =3D true; break; case 'd': sign_only =3D true; save_sig =3D true; break; -#ifndef USE_PKCS7 case 'k': use_keyid =3D CMS_USE_KEYID; break; -#endif case -1: break; default: format(); } @@ -289,14 +254,6 @@ int main(int argc, char **argv) replace_orig =3D true; } =20 -#ifdef USE_PKCS7 - if (strcmp(hash_algo, "sha1") !=3D 0) { - fprintf(stderr, "sign-file: %s only supports SHA1 signing\n", - OPENSSL_VERSION_TEXT); - exit(3); - } -#endif - /* Open the module file */ bm =3D BIO_new_file(module_name, "rb"); ERR(!bm, "%s", module_name); @@ -314,7 +271,6 @@ int main(int argc, char **argv) digest_algo =3D EVP_get_digestbyname(hash_algo); ERR(!digest_algo, "EVP_get_digestbyname"); =20 -#ifndef USE_PKCS7 /* Load the signature message from the digest buffer. */ cms =3D CMS_sign(NULL, NULL, NULL, NULL, CMS_NOCERTS | CMS_PARTIAL | CMS_BINARY | @@ -323,19 +279,12 @@ int main(int argc, char **argv) =20 ERR(!CMS_add1_signer(cms, x509, private_key, digest_algo, CMS_NOCERTS | CMS_BINARY | - CMS_NOSMIMECAP | use_keyid | - use_signed_attrs), + CMS_NOSMIMECAP | CMS_NOATTR | + use_keyid), "CMS_add1_signer"); ERR(CMS_final(cms, bm, NULL, CMS_NOCERTS | CMS_BINARY) !=3D 1, "CMS_final"); =20 -#else - pkcs7 =3D PKCS7_sign(x509, private_key, NULL, bm, - PKCS7_NOCERTS | PKCS7_BINARY | - PKCS7_DETACHED | use_signed_attrs); - ERR(!pkcs7, "PKCS7_sign"); -#endif - if (save_sig) { char *sig_file_name; BIO *b; @@ -344,13 +293,8 @@ int main(int argc, char **argv) "asprintf"); b =3D BIO_new_file(sig_file_name, "wb"); ERR(!b, "%s", sig_file_name); -#ifndef USE_PKCS7 ERR(i2d_CMS_bio_stream(b, cms, NULL, 0) !=3D 1, "%s", sig_file_name); -#else - ERR(i2d_PKCS7_bio(b, pkcs7) !=3D 1, - "%s", sig_file_name); -#endif BIO_free(b); } =20 @@ -377,11 +321,7 @@ int main(int argc, char **argv) module_size =3D BIO_number_written(bd); =20 if (!raw_sig) { -#ifndef USE_PKCS7 ERR(i2d_CMS_bio_stream(bd, cms, NULL, 0) !=3D 1, "%s", dest_name); -#else - ERR(i2d_PKCS7_bio(bd, pkcs7) !=3D 1, "%s", dest_name); -#endif } else { BIO *b; =20 --=20 2.51.1