diff options
| author | Simon Rettberg | 2023-04-04 15:12:41 +0200 |
|---|---|---|
| committer | Simon Rettberg | 2023-04-04 15:12:41 +0200 |
| commit | 5ba496dce11d10198a0eae0c8440dccb256fbf32 (patch) | |
| tree | 549903f1dab893870335a6e4767a4530444d2e83 /src/config | |
| parent | [vesafb] Map Unicode characters to CP437 if possible (diff) | |
| parent | [tls] Handle fragmented handshake records (diff) | |
| download | ipxe-5ba496dce11d10198a0eae0c8440dccb256fbf32.tar.gz ipxe-5ba496dce11d10198a0eae0c8440dccb256fbf32.tar.xz ipxe-5ba496dce11d10198a0eae0c8440dccb256fbf32.zip | |
Merge branch 'master' into openslx
Diffstat (limited to 'src/config')
| -rw-r--r-- | src/config/config_crypto.c | 12 | ||||
| -rw-r--r-- | src/config/config_entropy.c | 51 | ||||
| -rw-r--r-- | src/config/config_ethernet.c | 3 | ||||
| -rw-r--r-- | src/config/crypto.h | 3 | ||||
| -rw-r--r-- | src/config/defaults/efi.h | 5 | ||||
| -rw-r--r-- | src/config/defaults/linux.h | 4 | ||||
| -rw-r--r-- | src/config/defaults/pcbios.h | 1 | ||||
| -rw-r--r-- | src/config/general.h | 3 |
8 files changed, 80 insertions, 2 deletions
diff --git a/src/config/config_crypto.c b/src/config/config_crypto.c index 440bf4ce1..fa1996a55 100644 --- a/src/config/config_crypto.c +++ b/src/config/config_crypto.c @@ -124,3 +124,15 @@ REQUIRE_OBJECT ( rsa_aes_cbc_sha1 ); defined ( CRYPTO_DIGEST_SHA256 ) REQUIRE_OBJECT ( rsa_aes_cbc_sha256 ); #endif + +/* RSA, AES-GCM, and SHA-256 */ +#if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_CIPHER_AES_GCM ) && \ + defined ( CRYPTO_DIGEST_SHA256 ) +REQUIRE_OBJECT ( rsa_aes_gcm_sha256 ); +#endif + +/* RSA, AES-GCM, and SHA-384 */ +#if defined ( CRYPTO_PUBKEY_RSA ) && defined ( CRYPTO_CIPHER_AES_GCM ) && \ + defined ( CRYPTO_DIGEST_SHA384 ) +REQUIRE_OBJECT ( rsa_aes_gcm_sha384 ); +#endif diff --git a/src/config/config_entropy.c b/src/config/config_entropy.c new file mode 100644 index 000000000..9f12f1fa3 --- /dev/null +++ b/src/config/config_entropy.c @@ -0,0 +1,51 @@ +/* + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + * 02110-1301, USA. + * + * You can also choose to distribute this program under the terms of + * the Unmodified Binary Distribution Licence (as given in the file + * COPYING.UBDL), provided that you have satisfied its requirements. + */ + +FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); + +#include <config/entropy.h> + +/** @file + * + * Entropy configuration options + * + */ + +PROVIDE_REQUIRING_SYMBOL(); + +/* + * Drag in entropy sources + */ +#ifdef ENTROPY_RTC +REQUIRE_OBJECT ( rtc_entropy ); +#endif +#ifdef ENTROPY_EFITICK +REQUIRE_OBJECT ( efi_entropy ); +#endif +#ifdef ENTROPY_EFIRNG +REQUIRE_OBJECT ( efi_rng ); +#endif +#ifdef ENTROPY_LINUX +REQUIRE_OBJECT ( linux_entropy ); +#endif +#ifdef ENTROPY_RDRAND +REQUIRE_OBJECT ( rdrand ); +#endif diff --git a/src/config/config_ethernet.c b/src/config/config_ethernet.c index 8a663c923..c1b35bfe6 100644 --- a/src/config/config_ethernet.c +++ b/src/config/config_ethernet.c @@ -49,3 +49,6 @@ REQUIRE_OBJECT ( eth_slow ); #ifdef NET_PROTO_EAPOL REQUIRE_OBJECT ( eapol ); #endif +#ifdef NET_PROTO_LLDP +REQUIRE_OBJECT ( lldp ); +#endif diff --git a/src/config/crypto.h b/src/config/crypto.h index 7c0251758..76bf14d41 100644 --- a/src/config/crypto.h +++ b/src/config/crypto.h @@ -18,6 +18,9 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); /** AES-CBC block cipher */ #define CRYPTO_CIPHER_AES_CBC +/** AES-GCM block cipher */ +#define CRYPTO_CIPHER_AES_GCM + /** MD4 digest algorithm */ //#define CRYPTO_DIGEST_MD4 diff --git a/src/config/defaults/efi.h b/src/config/defaults/efi.h index efa801819..8e53b9ab6 100644 --- a/src/config/defaults/efi.h +++ b/src/config/defaults/efi.h @@ -19,13 +19,15 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #define SMBIOS_EFI #define SANBOOT_EFI #define BOFM_EFI -#define ENTROPY_EFI +#define ENTROPY_EFITICK +#define ENTROPY_EFIRNG #define TIME_EFI #define REBOOT_EFI #define ACPI_EFI #define FDT_EFI #define NET_PROTO_IPV6 /* IPv6 protocol */ +#define NET_PROTO_LLDP /* Link Layer Discovery protocol */ #define DOWNLOAD_PROTO_FILE /* Local filesystem access */ @@ -49,6 +51,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #if defined ( __i386__ ) || defined ( __x86_64__ ) #define IOAPI_X86 #define NAP_EFIX86 +#define ENTROPY_RDRAND #define CPUID_CMD /* x86 CPU feature detection command */ #define UNSAFE_STD /* Avoid setting direction flag */ #endif diff --git a/src/config/defaults/linux.h b/src/config/defaults/linux.h index 5c4106d30..21de2a2e2 100644 --- a/src/config/defaults/linux.h +++ b/src/config/defaults/linux.h @@ -33,4 +33,8 @@ FILE_LICENCE ( GPL2_OR_LATER ); #define SANBOOT_PROTO_FCP #define SANBOOT_PROTO_HTTP +#if defined ( __i386__ ) || defined ( __x86_64__ ) +#define ENTROPY_RDRAND +#endif + #endif /* CONFIG_DEFAULTS_LINUX_H */ diff --git a/src/config/defaults/pcbios.h b/src/config/defaults/pcbios.h index 83835805a..ee342d41b 100644 --- a/src/config/defaults/pcbios.h +++ b/src/config/defaults/pcbios.h @@ -20,6 +20,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #define SMBIOS_PCBIOS #define SANBOOT_PCBIOS #define ENTROPY_RTC +#define ENTROPY_RDRAND #define TIME_RTC #define REBOOT_PCBIOS #define ACPI_RSDP diff --git a/src/config/general.h b/src/config/general.h index 3761b63ca..51ccaeaa4 100644 --- a/src/config/general.h +++ b/src/config/general.h @@ -40,6 +40,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); #define NET_PROTO_STP /* Spanning Tree protocol */ #define NET_PROTO_LACP /* Link Aggregation control protocol */ #define NET_PROTO_EAPOL /* EAP over LAN protocol */ +//#define NET_PROTO_LLDP /* Link Layer Discovery protocol */ /* * PXE support @@ -149,7 +150,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL ); //#define POWEROFF_CMD /* Power off command */ //#define IMAGE_TRUST_CMD /* Image trust management commands */ //#define PCI_CMD /* PCI commands */ -//#define PARAM_CMD /* Form parameter commands */ +//#define PARAM_CMD /* Request parameter commands */ //#define NEIGHBOUR_CMD /* Neighbour management commands */ //#define PING_CMD /* Ping command */ //#define CONSOLE_CMD /* Console command */ |
