lib: Allow MD5 to be enabled in SPL
authorSimon Glass <sjg@chromium.org>
Wed, 6 May 2020 14:03:56 +0000 (08:03 -0600)
committerTom Rini <trini@konsulko.com>
Fri, 15 May 2020 18:47:35 +0000 (14:47 -0400)
At present the MD5 option cannot be enabled by board configs since it has
no Kconfig name. It is generally enabled, so long as FIT support is
present. But not all boards use FIT, particularly in SPL

Fix this and add an option for SPL as well. This allows board code to call
md5() even if FIT support is not enabled.

Signed-off-by: Simon Glass <sjg@chromium.org>
lib/Kconfig
lib/Makefile

index 868de3b..c3f694a 100644 (file)
@@ -363,7 +363,22 @@ config SHA_PROG_HW_ACCEL
          is performed in hardware.
 
 config MD5
-       bool
+       bool "Support MD5 algorithm"
+       help
+         This option enables MD5 support. MD5 is an algorithm designed
+         in 1991 that produces a 16-byte digest (or checksum) from its input
+         data. It has a number of vulnerabilities which preclude its use in
+         security applications, but it can be useful for providing a quick
+         checksum of a block of data.
+
+config SPL_MD5
+       bool "Support MD5 algorithm in SPL"
+       help
+         This option enables MD5 support in SPL. MD5 is an algorithm designed
+         in 1991 that produces a 16-byte digest (or checksum) from its input
+         data. It has a number of vulnerabilities which preclude its use in
+         security applications, but it can be useful for providing a quick
+         checksum of a block of data.
 
 config CRC32C
        bool
index c6f862b..6e688af 100644 (file)
@@ -40,7 +40,6 @@ obj-$(CONFIG_GZIP_COMPRESSED) += gzip.o
 obj-$(CONFIG_GENERATE_SMBIOS_TABLE) += smbios.o
 obj-$(CONFIG_IMAGE_SPARSE) += image-sparse.o
 obj-y += ldiv.o
-obj-$(CONFIG_MD5) += md5.o
 obj-$(CONFIG_XXHASH) += xxhash.o
 obj-y += net_utils.o
 obj-$(CONFIG_PHYSMEM) += physmem.o
@@ -59,6 +58,7 @@ obj-$(CONFIG_TPM_V2) += tpm-v2.o
 endif
 
 obj-$(CONFIG_$(SPL_)ACPIGEN) += acpi/
+obj-$(CONFIG_$(SPL_)MD5) += md5.o
 obj-$(CONFIG_$(SPL_)RSA) += rsa/
 obj-$(CONFIG_SHA1) += sha1.o
 obj-$(CONFIG_SHA256) += sha256.o