summaryrefslogtreecommitdiffstats
path: root/meta-phosphor/recipes-phosphor/flash/phosphor-image-signing.bb
blob: bce98536039716c5395decb9bd31011431b88bcf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
SUMMARY = "OpenBMC image signing public key"
DESCRIPTION = "Public key information to be included in images for image verification."
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${PHOSPHORBASE}/COPYING.apache-2.0;md5=34400b68072d710fecd0a2940a0d1658"

inherit allarch

INSECURE_KEY = "${@'${SIGNING_KEY}' == '${STAGING_DIR_NATIVE}${datadir}/OpenBMC.priv'}"

DEPENDS += "openssl-native"
DEPENDS += "${@oe.utils.conditional('INSECURE_KEY', 'True', 'phosphor-insecure-signing-key-native', '', d)}"

FILES_${PN} += "${sysconfdir}/activationdata/"

SIGNING_KEY ?= "${STAGING_DIR_NATIVE}${datadir}/OpenBMC.priv"
SIGNING_KEY_TYPE = "${@os.path.splitext(os.path.basename('${SIGNING_KEY}'))[0]}"

do_install() {
	openssl pkey -in "${SIGNING_KEY}" -pubout -out ${WORKDIR}/publickey
	echo HashType=RSA-SHA256 > "${WORKDIR}/hashfunc"

	idir="${D}${sysconfdir}/activationdata/${SIGNING_KEY_TYPE}"

	install -d ${idir}
	install -m 644 ${WORKDIR}/publickey ${idir}
	install -m 644 ${WORKDIR}/hashfunc ${idir}
}

SYSROOT_DIRS_append = " ${sysconfdir}"
OpenPOWER on IntegriCloud