This structure definition is used outside the kernel proper. For example in kmod and the kernel build environment.
To allow reuse, move it to a new UAPI header. While it is not a true UAPI, it is a common practice to have non-UAPI interface definitions in the kernel's UAPI headers. This came up as part of my CONFIG_MODULE_HASHES series [0]. But it is useful on its own and so we get it out of the way. [0] https://lore.kernel.org/lkml/aZ3OfJJSJgfOb0rJ@levanger/ Signed-off-by: Thomas Weißschuh <[email protected]> --- Thomas Weißschuh (8): extract-cert: drop unused definition of PKEY_ID_PKCS7 module: Drop unused signature types module: Give 'enum pkey_id_type' a more specific name module: Give MODULE_SIG_STRING a more descriptive name modules: Move 'struct module_signature' to UAPI tools uapi headers: add linux/module_signature.h sign-file: use 'struct module_signature' from the UAPI headers selftests/bpf: verify_pkcs7_sig: Use 'struct module_signature' from the UAPI headers arch/s390/kernel/machine_kexec_file.c | 6 ++-- certs/extract-cert.c | 2 -- include/linux/module_signature.h | 30 +--------------- include/uapi/linux/module_signature.h | 41 +++++++++++++++++++++ kernel/module/signing.c | 4 +-- kernel/module_signature.c | 2 +- scripts/Makefile | 1 + scripts/sign-file.c | 19 +++------- security/integrity/ima/ima_modsig.c | 6 ++-- tools/include/uapi/linux/module_signature.h | 42 ++++++++++++++++++++++ .../selftests/bpf/prog_tests/verify_pkcs7_sig.c | 28 ++------------- 11 files changed, 101 insertions(+), 80 deletions(-) --- base-commit: 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f change-id: 20260302-module-signature-uapi-61fa80b1e2bb Best regards, -- Thomas Weißschuh <[email protected]>

