Commit 04a7279f authored by Johannes Berg's avatar Johannes Berg

cfg80211: ship certificates as hex files

Not only does this remove the need for the hexdump code in most
normal kernel builds (still there for the extra directory), but
it also removes the need to ship binary files, which apparently
is somewhat problematic, as Randy reported.

While at it, also add the generated files to clean-files.
Reported-by: default avatarRandy Dunlap <rdunlap@infradead.org>
Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
parent 958a1b5a
...@@ -23,27 +23,14 @@ ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),) ...@@ -23,27 +23,14 @@ ifneq ($(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR),)
cfg80211-y += extra-certs.o cfg80211-y += extra-certs.o
endif endif
$(obj)/shipped-certs.c: $(wildcard $(srctree)/$(src)/certs/*.x509) $(obj)/shipped-certs.c: $(wildcard $(srctree)/$(src)/certs/*.hex)
@$(kecho) " GEN $@" @$(kecho) " GEN $@"
@(set -e; \ @(echo '#include "reg.h"'; \
allf=""; \ echo 'const u8 shipped_regdb_certs[] = {'; \
for f in $^ ; do \ cat $^ ; \
# similar to hexdump -v -e '1/1 "0x%.2x," "\n"' \ echo '};'; \
thisf=$$(od -An -v -tx1 < $$f | \ echo 'unsigned int shipped_regdb_certs_len = sizeof(shipped_regdb_certs);'; \
sed -e 's/ /\n/g' | \ ) > $@
sed -e 's/^[0-9a-f]\+$$/\0/;t;d' | \
sed -e 's/^/0x/;s/$$/,/'); \
# file should not be empty - maybe command substitution failed? \
test ! -z "$$thisf";\
allf=$$allf$$thisf;\
done; \
( \
echo '#include "reg.h"'; \
echo 'const u8 shipped_regdb_certs[] = {'; \
echo "$$allf"; \
echo '};'; \
echo 'unsigned int shipped_regdb_certs_len = sizeof(shipped_regdb_certs);'; \
) > $@)
$(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \ $(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \
$(wildcard $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%)/*.x509) $(wildcard $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%)/*.x509)
...@@ -67,3 +54,5 @@ $(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \ ...@@ -67,3 +54,5 @@ $(obj)/extra-certs.c: $(CONFIG_CFG80211_EXTRA_REGDB_KEYDIR:"%"=%) \
echo '};'; \ echo '};'; \
echo 'unsigned int extra_regdb_certs_len = sizeof(extra_regdb_certs);'; \ echo 'unsigned int extra_regdb_certs_len = sizeof(extra_regdb_certs);'; \
) > $@) ) > $@)
clean-files += shipped-certs.c extra-certs.c
/* Seth Forshee's regdb certificate */
0x30, 0x82, 0x02, 0xa4, 0x30, 0x82, 0x01, 0x8c,
0x02, 0x09, 0x00, 0xb2, 0x8d, 0xdf, 0x47, 0xae,
0xf9, 0xce, 0xa7, 0x30, 0x0d, 0x06, 0x09, 0x2a,
0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x0b,
0x05, 0x00, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0f,
0x06, 0x03, 0x55, 0x04, 0x03, 0x0c, 0x08, 0x73,
0x66, 0x6f, 0x72, 0x73, 0x68, 0x65, 0x65, 0x30,
0x20, 0x17, 0x0d, 0x31, 0x37, 0x31, 0x30, 0x30,
0x36, 0x31, 0x39, 0x34, 0x30, 0x33, 0x35, 0x5a,
0x18, 0x0f, 0x32, 0x31, 0x31, 0x37, 0x30, 0x39,
0x31, 0x32, 0x31, 0x39, 0x34, 0x30, 0x33, 0x35,
0x5a, 0x30, 0x13, 0x31, 0x11, 0x30, 0x0f, 0x06,
0x03, 0x55, 0x04, 0x03, 0x0c, 0x08, 0x73, 0x66,
0x6f, 0x72, 0x73, 0x68, 0x65, 0x65, 0x30, 0x82,
0x01, 0x22, 0x30, 0x0d, 0x06, 0x09, 0x2a, 0x86,
0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01, 0x01, 0x05,
0x00, 0x03, 0x82, 0x01, 0x0f, 0x00, 0x30, 0x82,
0x01, 0x0a, 0x02, 0x82, 0x01, 0x01, 0x00, 0xb5,
0x40, 0xe3, 0x9c, 0x28, 0x84, 0x39, 0x03, 0xf2,
0x39, 0xd7, 0x66, 0x2c, 0x41, 0x38, 0x15, 0xac,
0x7e, 0xa5, 0x83, 0x71, 0x25, 0x7e, 0x90, 0x7c,
0x68, 0xdd, 0x6f, 0x3f, 0xd9, 0xd7, 0x59, 0x38,
0x9f, 0x7c, 0x6a, 0x52, 0xc2, 0x03, 0x2a, 0x2d,
0x7e, 0x66, 0xf4, 0x1e, 0xb3, 0x12, 0x70, 0x20,
0x5b, 0xd4, 0x97, 0x32, 0x3d, 0x71, 0x8b, 0x3b,
0x1b, 0x08, 0x17, 0x14, 0x6b, 0x61, 0xc4, 0x57,
0x8b, 0x96, 0x16, 0x1c, 0xfd, 0x24, 0xd5, 0x0b,
0x09, 0xf9, 0x68, 0x11, 0x84, 0xfb, 0xca, 0x51,
0x0c, 0xd1, 0x45, 0x19, 0xda, 0x10, 0x44, 0x8a,
0xd9, 0xfe, 0x76, 0xa9, 0xfd, 0x60, 0x2d, 0x18,
0x0b, 0x28, 0x95, 0xb2, 0x2d, 0xea, 0x88, 0x98,
0xb8, 0xd1, 0x56, 0x21, 0xf0, 0x53, 0x1f, 0xf1,
0x02, 0x6f, 0xe9, 0x46, 0x9b, 0x93, 0x5f, 0x28,
0x90, 0x0f, 0xac, 0x36, 0xfa, 0x68, 0x23, 0x71,
0x57, 0x56, 0xf6, 0xcc, 0xd3, 0xdf, 0x7d, 0x2a,
0xd9, 0x1b, 0x73, 0x45, 0xeb, 0xba, 0x27, 0x85,
0xef, 0x7a, 0x7f, 0xa5, 0xcb, 0x80, 0xc7, 0x30,
0x36, 0xd2, 0x53, 0xee, 0xec, 0xac, 0x1e, 0xe7,
0x31, 0xf1, 0x36, 0xa2, 0x9c, 0x63, 0xc6, 0x65,
0x5b, 0x7f, 0x25, 0x75, 0x68, 0xa1, 0xea, 0xd3,
0x7e, 0x00, 0x5c, 0x9a, 0x5e, 0xd8, 0x20, 0x18,
0x32, 0x77, 0x07, 0x29, 0x12, 0x66, 0x1e, 0x36,
0x73, 0xe7, 0x97, 0x04, 0x41, 0x37, 0xb1, 0xb1,
0x72, 0x2b, 0xf4, 0xa1, 0x29, 0x20, 0x7c, 0x96,
0x79, 0x0b, 0x2b, 0xd0, 0xd8, 0xde, 0xc8, 0x6c,
0x3f, 0x93, 0xfb, 0xc5, 0xee, 0x78, 0x52, 0x11,
0x15, 0x1b, 0x7a, 0xf6, 0xe2, 0x68, 0x99, 0xe7,
0xfb, 0x46, 0x16, 0x84, 0xe3, 0xc7, 0xa1, 0xe6,
0xe0, 0xd2, 0x46, 0xd5, 0xe1, 0xc4, 0x5f, 0xa0,
0x66, 0xf4, 0xda, 0xc4, 0xff, 0x95, 0x1d, 0x02,
0x03, 0x01, 0x00, 0x01, 0x30, 0x0d, 0x06, 0x09,
0x2a, 0x86, 0x48, 0x86, 0xf7, 0x0d, 0x01, 0x01,
0x0b, 0x05, 0x00, 0x03, 0x82, 0x01, 0x01, 0x00,
0x87, 0x03, 0xda, 0xf2, 0x82, 0xc2, 0xdd, 0xaf,
0x7c, 0x44, 0x2f, 0x86, 0xd3, 0x5f, 0x4c, 0x93,
0x48, 0xb9, 0xfe, 0x07, 0x17, 0xbb, 0x21, 0xf7,
0x25, 0x23, 0x4e, 0xaa, 0x22, 0x0c, 0x16, 0xb9,
0x73, 0xae, 0x9d, 0x46, 0x7c, 0x75, 0xd9, 0xc3,
0x49, 0x57, 0x47, 0xbf, 0x33, 0xb7, 0x97, 0xec,
0xf5, 0x40, 0x75, 0xc0, 0x46, 0x22, 0xf0, 0xa0,
0x5d, 0x9c, 0x79, 0x13, 0xa1, 0xff, 0xb8, 0xa3,
0x2f, 0x7b, 0x8e, 0x06, 0x3f, 0xc8, 0xb6, 0xe4,
0x6a, 0x28, 0xf2, 0x34, 0x5c, 0x23, 0x3f, 0x32,
0xc0, 0xe6, 0xad, 0x0f, 0xac, 0xcf, 0x55, 0x74,
0x47, 0x73, 0xd3, 0x01, 0x85, 0xb7, 0x0b, 0x22,
0x56, 0x24, 0x7d, 0x9f, 0x09, 0xa9, 0x0e, 0x86,
0x9e, 0x37, 0x5b, 0x9c, 0x6d, 0x02, 0xd9, 0x8c,
0xc8, 0x50, 0x6a, 0xe2, 0x59, 0xf3, 0x16, 0x06,
0xea, 0xb2, 0x42, 0xb5, 0x58, 0xfe, 0xba, 0xd1,
0x81, 0x57, 0x1a, 0xef, 0xb2, 0x38, 0x88, 0x58,
0xf6, 0xaa, 0xc4, 0x2e, 0x8b, 0x5a, 0x27, 0xe4,
0xa5, 0xe8, 0xa4, 0xca, 0x67, 0x5c, 0xac, 0x72,
0x67, 0xc3, 0x6f, 0x13, 0xc3, 0x2d, 0x35, 0x79,
0xd7, 0x8a, 0xe7, 0xf5, 0xd4, 0x21, 0x30, 0x4a,
0xd5, 0xf6, 0xa3, 0xd9, 0x79, 0x56, 0xf2, 0x0f,
0x10, 0xf7, 0x7d, 0xd0, 0x51, 0x93, 0x2f, 0x47,
0xf8, 0x7d, 0x4b, 0x0a, 0x84, 0x55, 0x12, 0x0a,
0x7d, 0x4e, 0x3b, 0x1f, 0x2b, 0x2f, 0xfc, 0x28,
0xb3, 0x69, 0x34, 0xe1, 0x80, 0x80, 0xbb, 0xe2,
0xaf, 0xb9, 0xd6, 0x30, 0xf1, 0x1d, 0x54, 0x87,
0x23, 0x99, 0x9f, 0x51, 0x03, 0x4c, 0x45, 0x7d,
0x02, 0x65, 0x73, 0xab, 0xfd, 0xcf, 0x94, 0xcc,
0x0d, 0x3a, 0x60, 0xfd, 0x3c, 0x14, 0x2f, 0x16,
0x33, 0xa9, 0x21, 0x1f, 0xcb, 0x50, 0xb1, 0x8f,
0x03, 0xee, 0xa0, 0x66, 0xa9, 0x16, 0x79, 0x14,
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment