summaryrefslogtreecommitdiffstats
path: root/discover/pxe-parser.c
diff options
context:
space:
mode:
authortpearson@raptorengineering.com <tpearson@raptorengineering.com>2016-08-18 04:45:47 -0500
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2016-08-26 13:23:01 +1000
commit86c9d34380b0074dab1ba89a569a94280d6999c4 (patch)
tree22cf0cccbd4022d150e231adcb360b3bcf528cda /discover/pxe-parser.c
parent5496eee36f70631ae45403f90ed7b4dc143f27c0 (diff)
downloadtalos-petitboot-86c9d34380b0074dab1ba89a569a94280d6999c4.tar.gz
talos-petitboot-86c9d34380b0074dab1ba89a569a94280d6999c4.zip
Add support for GPG signature enforcement on booted
kernels and related blobs This can be used to implement a form of organization-controlled secure boot, whereby kernels may be loaded from a variety of sources but they will only boot if a valid signature file is found for each component, and only if the signature is listed in the /etc/pb-lockdown file. Signed-off-by: Timothy Pearson <tpearson@raptorengineering.com> Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com> (Minor build fixes and gpgme.m4, comment on secure boot in gpg.c)
Diffstat (limited to 'discover/pxe-parser.c')
-rw-r--r--discover/pxe-parser.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/discover/pxe-parser.c b/discover/pxe-parser.c
index 4481e5d..4aae8b1 100644
--- a/discover/pxe-parser.c
+++ b/discover/pxe-parser.c
@@ -166,6 +166,13 @@ static void pxe_process_pair(struct conf_context *ctx,
url = pxe_url_join(ctx->dc, ctx->dc->conf_url, value);
opt->boot_image = create_url_resource(opt, url);
+ char* args_sigfile_default = talloc_asprintf(opt,
+ "%s.cmdline.sig", value);
+ url = pxe_url_join(ctx->dc, ctx->dc->conf_url,
+ args_sigfile_default);
+ opt->args_sig_file = create_url_resource(opt, url);
+ talloc_free(args_sigfile_default);
+
} else if (streq(name, "INITRD")) {
url = pxe_url_join(ctx->dc, ctx->dc->conf_url, value);
opt->initrd = create_url_resource(opt, url);
OpenPOWER on IntegriCloud