From: Sudhakar Kuppusamy <sudhakar@linux.ibm.com>
To: grub-devel@gnu.org
Cc: dja@axtens.net, jan.setjeeilers@oracle.com,
julian.klode@canonical.com, mate.kukri@canonical.com,
pjones@redhat.com, msuchanek@suse.com, mlewando@redhat.com,
stefanb@linux.ibm.com, avnish@linux.ibm.com, nayna@linux.ibm.com,
ssrish@linux.ibm.com, sridharm@linux.ibm.com,
Sudhakar Kuppusamy <sudhakar@linux.ibm.com>,
Vladimir Serbinenko <phcoder@gmail.com>,
Daniel Kiper <daniel.kiper@oracle.com>
Subject: [PATCH v13 02/20] crypto: Move storage for grub_crypto_pk_* to crypto.c
Date: Tue, 30 Sep 2025 17:09:56 +0530 [thread overview]
Message-ID: <20250930114018.78215-3-sudhakar@linux.ibm.com> (raw)
In-Reply-To: <20250930114018.78215-1-sudhakar@linux.ibm.com>
From: Daniel Axtens <dja@axtens.net>
The way gcry_rsa and friends (the asymmetric ciphers) are loaded for the
pgp module is a bit quirky.
include/grub/crypto.h contains:
extern struct gcry_pk_spec *grub_crypto_pk_rsa;
commands/pgp.c contains the actual storage:
struct gcry_pk_spec *grub_crypto_pk_rsa;
And the module itself saves to the storage in pgp.c:
GRUB_MOD_INIT(gcry_rsa)
{
grub_crypto_pk_rsa = &_gcry_pubkey_spec_rsa;
}
This is annoying: gcry_rsa now has a dependency on pgp!
We want to be able to bring in gcry_rsa without bringing in PGP, so move the
storage to crypto.c.
Previously, gcry_rsa depended on pgp and mpi. Now it depends on crypto and mpi.
As pgp depends on crypto, this doesn't add any new module dependencies using
the PGP verfier.
[FWIW, the story is different for the symmetric ciphers. cryptodisk and friends
(zfs encryption etc) use grub_crypto_lookup_cipher_by_name() to get a cipher
handle. That depends on grub_ciphers being populated by people calling
grub_cipher_register. import_gcry.py ensures that the symmetric ciphers call it.]
Signed-off-by: Daniel Axtens <dja@axtens.net>
Signed-off-by: Sudhakar Kuppusamy <sudhakar@linux.ibm.com>
Reviewed-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Vladimir Serbinenko <phcoder@gmail.com>
Reviewed-by: Avnish Chouhan <avnish@linux.ibm.com>
Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
---
grub-core/commands/pgp.c | 4 ----
grub-core/lib/crypto.c | 4 ++++
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/grub-core/commands/pgp.c b/grub-core/commands/pgp.c
index e61887862..251ed1b06 100644
--- a/grub-core/commands/pgp.c
+++ b/grub-core/commands/pgp.c
@@ -136,10 +136,6 @@ struct signature_v4_header
grub_uint16_t hashed_sub;
} GRUB_PACKED;
-struct gcry_pk_spec *grub_crypto_pk_dsa;
-struct gcry_pk_spec *grub_crypto_pk_ecdsa;
-struct gcry_pk_spec *grub_crypto_pk_rsa;
-
struct
{
const char *name;
diff --git a/grub-core/lib/crypto.c b/grub-core/lib/crypto.c
index dd60dd4ac..292b747b2 100644
--- a/grub-core/lib/crypto.c
+++ b/grub-core/lib/crypto.c
@@ -170,6 +170,10 @@ grub_md_unregister (gcry_md_spec_t *cipher)
}
}
+struct gcry_pk_spec *grub_crypto_pk_dsa;
+struct gcry_pk_spec *grub_crypto_pk_ecdsa;
+struct gcry_pk_spec *grub_crypto_pk_rsa;
+
void
grub_crypto_hash (const gcry_md_spec_t *hash, void *out, const void *in,
grub_size_t inlen)
--
2.50.1 (Apple Git-155)
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel
next prev parent reply other threads:[~2025-09-30 11:46 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-09-30 11:39 [PATCH v13 00/20] Appended Signature Secure Boot Support for PowerPC Sudhakar Kuppusamy
2025-09-30 11:39 ` [PATCH v13 01/20] powerpc-ieee1275: Add support for signing GRUB with an appended signature Sudhakar Kuppusamy
2025-09-30 11:39 ` Sudhakar Kuppusamy [this message]
2025-09-30 11:39 ` [PATCH v13 03/20] pgp: Rename OBJ_TYPE_PUBKEY to OBJ_TYPE_GPG_PUBKEY Sudhakar Kuppusamy
2025-09-30 11:39 ` [PATCH v13 04/20] grub-install: Support embedding x509 certificates Sudhakar Kuppusamy
2025-09-30 11:39 ` [PATCH v13 05/20] appended signatures: Import GNUTLS's ASN.1 description files Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 06/20] appended signatures: Parse ASN1 node Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 07/20] appended signatures: Parse PKCS#7 signed data Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 08/20] appended signatures: Parse X.509 certificates Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 09/20] powerpc_ieee1275: Enter lockdown based on /ibm, secure-boot Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 10/20] appended signatures: Support verifying appended signatures Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 11/20] powerpc_ieee1275: Read the db and dbx secure boot variables Sudhakar Kuppusamy
2025-10-01 15:52 ` Daniel Kiper
2025-09-30 11:40 ` [PATCH v13 12/20] appended signatures: Introducing key management environment variable Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 13/20] appended signatures: Create db and dbx lists Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 14/20] appended signatures: Using db and dbx lists for signature verification Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 15/20] appended signatures: GRUB commands to manage the certificates Sudhakar Kuppusamy
2025-10-01 9:10 ` Sridhar Markonda
2025-09-30 11:40 ` [PATCH v13 16/20] appended signatures: GRUB commands to manage the hashes Sudhakar Kuppusamy
2025-10-01 9:09 ` Sridhar Markonda
2025-09-30 11:40 ` [PATCH v13 17/20] appended signatures: Verification tests Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 18/20] docs/grub: Document signing GRUB under UEFI Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 19/20] docs/grub: Document signing GRUB with an appended signature Sudhakar Kuppusamy
2025-09-30 11:40 ` [PATCH v13 20/20] docs/grub: Document " Sudhakar Kuppusamy
2025-10-02 8:52 ` [PATCH v13 00/20] Appended Signature Secure Boot Support for PowerPC Avnish Chouhan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250930114018.78215-3-sudhakar@linux.ibm.com \
--to=sudhakar@linux.ibm.com \
--cc=avnish@linux.ibm.com \
--cc=daniel.kiper@oracle.com \
--cc=dja@axtens.net \
--cc=grub-devel@gnu.org \
--cc=jan.setjeeilers@oracle.com \
--cc=julian.klode@canonical.com \
--cc=mate.kukri@canonical.com \
--cc=mlewando@redhat.com \
--cc=msuchanek@suse.com \
--cc=nayna@linux.ibm.com \
--cc=phcoder@gmail.com \
--cc=pjones@redhat.com \
--cc=sridharm@linux.ibm.com \
--cc=ssrish@linux.ibm.com \
--cc=stefanb@linux.ibm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).