* [PATCH] kbuild: make FIT public key overwritable
@ 2022-07-20 10:15 Stefano Manni
2022-08-09 7:06 ` Sascha Hauer
0 siblings, 1 reply; 2+ messages in thread
From: Stefano Manni @ 2022-07-20 10:15 UTC (permalink / raw)
To: barebox
The path to the public key used to verify FIT images can be
specified with Kconfig variable. For a better build system
integration we also want to be able to specify the path in
environment variables.
Signed-off-by: Stefano Manni <stefano.manni@gmail.com>
---
common/Kconfig | 17 +++++++++++++++++
scripts/Makefile.lib | 8 +++++++-
2 files changed, 24 insertions(+), 1 deletion(-)
diff --git a/common/Kconfig b/common/Kconfig
index 658437f..ceacf28 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -643,6 +643,21 @@ config BOOTM_FITIMAGE_SIGNATURE
Additionally the barebox device tree needs a /signature node with the
public key with which the image has been signed.
+config BOOTM_FITIMAGE_PUBKEY_ENV
+ bool "Specify path to public key in environment"
+ depends on BOOTM_FITIMAGE_SIGNATURE
+ help
+ If this option is enabled the path to the public key for verifying
+ FIT images signature is taken from environment which allows for
+ better integration with build systems.
+
+ The environment variable has the same name as the corresponding
+ Kconfig variable:
+
+ CONFIG_BOOTM_FITIMAGE_PUBKEY
+
+if BOOTM_FITIMAGE_SIGNATURE && !BOOTM_FITIMAGE_PUBKEY_ENV
+
config BOOTM_FITIMAGE_PUBKEY
string "Path to dtsi containing pubkey"
default "../fit/pubkey.dtsi"
@@ -652,6 +667,8 @@ config BOOTM_FITIMAGE_PUBKEY
snippet can then be included in a device tree with
"#include CONFIG_BOOTM_FITIMAGE_PUBKEY".
+endif
+
config BOOTM_FORCE_SIGNED_IMAGES
bool
prompt "Force booting of signed images"
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
index 3799e77..891b8dd 100644
--- a/scripts/Makefile.lib
+++ b/scripts/Makefile.lib
@@ -479,6 +479,11 @@ overwrite-hab-env = $(shell set -e; \
test -n "$$$(1)"; \
echo -D$(1)=\\\"$(shell echo $$$(1))\\\")
+overwrite-fit-env = $(shell set -e; \
+ test -n "$(CONFIG_BOOTM_FITIMAGE_PUBKEY_ENV)"; \
+ test -n "$$$(1)"; \
+ echo -D$(1)=\\\"$(shell echo $$$(1))\\\")
+
imxcfg_cpp_flags = -Wp,-MD,$(depfile) -nostdinc -x assembler-with-cpp \
-I $(srctree)/include -I $(srctree)/arch/arm/mach-imx/include \
-include include/generated/autoconf.h \
@@ -487,7 +492,8 @@ imxcfg_cpp_flags = -Wp,-MD,$(depfile) -nostdinc -x assembler-with-cpp \
$(call overwrite-hab-env,CONFIG_HABV3_IMG_CRT_DER) \
$(call overwrite-hab-env,CONFIG_HABV4_TABLE_BIN) \
$(call overwrite-hab-env,CONFIG_HABV4_CSF_CRT_PEM) \
- $(call overwrite-hab-env,CONFIG_HABV4_IMG_CRT_PEM)
+ $(call overwrite-hab-env,CONFIG_HABV4_IMG_CRT_PEM) \
+ $(call overwrite-fit-env,CONFIG_BOOTM_FITIMAGE_PUBKEY) \
dcd-tmp = $(subst $(comma),_,$(dot-target).dcd.tmp)
--
2.7.4
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH] kbuild: make FIT public key overwritable
2022-07-20 10:15 [PATCH] kbuild: make FIT public key overwritable Stefano Manni
@ 2022-08-09 7:06 ` Sascha Hauer
0 siblings, 0 replies; 2+ messages in thread
From: Sascha Hauer @ 2022-08-09 7:06 UTC (permalink / raw)
To: Stefano Manni; +Cc: barebox
On Wed, Jul 20, 2022 at 12:15:22PM +0200, Stefano Manni wrote:
> The path to the public key used to verify FIT images can be
> specified with Kconfig variable. For a better build system
> integration we also want to be able to specify the path in
> environment variables.
>
> Signed-off-by: Stefano Manni <stefano.manni@gmail.com>
> ---
> common/Kconfig | 17 +++++++++++++++++
> scripts/Makefile.lib | 8 +++++++-
> 2 files changed, 24 insertions(+), 1 deletion(-)
Nice. This makes it more consistent to the way the HABv4 files can be
specified as well.
Applied, thanks
Sascha
>
> diff --git a/common/Kconfig b/common/Kconfig
> index 658437f..ceacf28 100644
> --- a/common/Kconfig
> +++ b/common/Kconfig
> @@ -643,6 +643,21 @@ config BOOTM_FITIMAGE_SIGNATURE
> Additionally the barebox device tree needs a /signature node with the
> public key with which the image has been signed.
>
> +config BOOTM_FITIMAGE_PUBKEY_ENV
> + bool "Specify path to public key in environment"
> + depends on BOOTM_FITIMAGE_SIGNATURE
> + help
> + If this option is enabled the path to the public key for verifying
> + FIT images signature is taken from environment which allows for
> + better integration with build systems.
> +
> + The environment variable has the same name as the corresponding
> + Kconfig variable:
> +
> + CONFIG_BOOTM_FITIMAGE_PUBKEY
> +
> +if BOOTM_FITIMAGE_SIGNATURE && !BOOTM_FITIMAGE_PUBKEY_ENV
> +
> config BOOTM_FITIMAGE_PUBKEY
> string "Path to dtsi containing pubkey"
> default "../fit/pubkey.dtsi"
> @@ -652,6 +667,8 @@ config BOOTM_FITIMAGE_PUBKEY
> snippet can then be included in a device tree with
> "#include CONFIG_BOOTM_FITIMAGE_PUBKEY".
>
> +endif
> +
> config BOOTM_FORCE_SIGNED_IMAGES
> bool
> prompt "Force booting of signed images"
> diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib
> index 3799e77..891b8dd 100644
> --- a/scripts/Makefile.lib
> +++ b/scripts/Makefile.lib
> @@ -479,6 +479,11 @@ overwrite-hab-env = $(shell set -e; \
> test -n "$$$(1)"; \
> echo -D$(1)=\\\"$(shell echo $$$(1))\\\")
>
> +overwrite-fit-env = $(shell set -e; \
> + test -n "$(CONFIG_BOOTM_FITIMAGE_PUBKEY_ENV)"; \
> + test -n "$$$(1)"; \
> + echo -D$(1)=\\\"$(shell echo $$$(1))\\\")
> +
> imxcfg_cpp_flags = -Wp,-MD,$(depfile) -nostdinc -x assembler-with-cpp \
> -I $(srctree)/include -I $(srctree)/arch/arm/mach-imx/include \
> -include include/generated/autoconf.h \
> @@ -487,7 +492,8 @@ imxcfg_cpp_flags = -Wp,-MD,$(depfile) -nostdinc -x assembler-with-cpp \
> $(call overwrite-hab-env,CONFIG_HABV3_IMG_CRT_DER) \
> $(call overwrite-hab-env,CONFIG_HABV4_TABLE_BIN) \
> $(call overwrite-hab-env,CONFIG_HABV4_CSF_CRT_PEM) \
> - $(call overwrite-hab-env,CONFIG_HABV4_IMG_CRT_PEM)
> + $(call overwrite-hab-env,CONFIG_HABV4_IMG_CRT_PEM) \
> + $(call overwrite-fit-env,CONFIG_BOOTM_FITIMAGE_PUBKEY) \
>
> dcd-tmp = $(subst $(comma),_,$(dot-target).dcd.tmp)
>
> --
> 2.7.4
>
>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-08-09 7:34 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-20 10:15 [PATCH] kbuild: make FIT public key overwritable Stefano Manni
2022-08-09 7:06 ` Sascha Hauer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox