Skip to content
This repository was archived by the owner on Nov 8, 2023. It is now read-only.

Commit 22e46f6

Browse files
jluebbemasahir0y
authored andcommitted
kbuild: modinst: Fix build error when CONFIG_MODULE_SIG_KEY is a PKCS#11 URI
When CONFIG_MODULE_SIG_KEY is PKCS#11 URI (pkcs11:*), signing of modules fails: scripts/sign-file sha256 /.../linux/pkcs11:token=foo;object=bar;pin-value=1111 certs/signing_key.x509 /.../kernel/crypto/tcrypt.ko Usage: scripts/sign-file [-dp] <hash algo> <key> <x509> <module> [<dest>] scripts/sign-file -s <raw sig> <hash algo> <x509> <module> [<dest>] First, we need to avoid adding the $(srctree)/ prefix to the URL. Second, since the kconfig string values no longer include quotes, we need to add them again when passing a PKCS#11 URI to sign-file. This avoids splitting by the shell if the URI contains semicolons. Fixes: 4db9c2e ("kbuild: stop using config_filename in scripts/Makefile.modsign") Fixes: 129ab0d ("kbuild: do not quote string values in include/config/auto.conf") Signed-off-by: Jan Luebbe <jlu@pengutronix.de> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
1 parent b1c3d2b commit 22e46f6

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

scripts/Makefile.modinst

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,13 @@ endif
6666
# Don't stop modules_install even if we can't sign external modules.
6767
#
6868
ifeq ($(CONFIG_MODULE_SIG_ALL),y)
69+
ifeq ($(filter pkcs11:%, $(CONFIG_MODULE_SIG_KEY)),)
6970
sig-key := $(if $(wildcard $(CONFIG_MODULE_SIG_KEY)),,$(srctree)/)$(CONFIG_MODULE_SIG_KEY)
71+
else
72+
sig-key := $(CONFIG_MODULE_SIG_KEY)
73+
endif
7074
quiet_cmd_sign = SIGN $@
71-
cmd_sign = scripts/sign-file $(CONFIG_MODULE_SIG_HASH) $(sig-key) certs/signing_key.x509 $@ \
75+
cmd_sign = scripts/sign-file $(CONFIG_MODULE_SIG_HASH) "$(sig-key)" certs/signing_key.x509 $@ \
7276
$(if $(KBUILD_EXTMOD),|| true)
7377
else
7478
quiet_cmd_sign :=

0 commit comments

Comments
 (0)