summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Brown2017-08-01 21:25:28 +0200
committerMichael Brown2017-08-01 21:25:28 +0200
commit7054468d56aead705e20cdaf9f93819d60007fde (patch)
treee3dd3121e53b092a2c2cd8458edc94bd1f65c16a
parent[hyperv] Do not steal ownership from the Gen 2 UEFI firmware (diff)
downloadipxe-7054468d56aead705e20cdaf9f93819d60007fde.tar.gz
ipxe-7054468d56aead705e20cdaf9f93819d60007fde.tar.xz
ipxe-7054468d56aead705e20cdaf9f93819d60007fde.zip
[shell] Enable "shell" command even when BANNER_TIMEOUT is zero
Setting BANNER_TIMEOUT to zero removes the only symbol reference to shell.o, causing the "shell" command to become unavailable. Add SHELL_CMD in config/general.h (enabled by default) which will explicitly drag in shell.o regardless of the value of BANNER_TIMEOUT. Reported-by: Julian Brost <julian@0x4a42.net> Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r--src/config/config.c3
-rw-r--r--src/config/general.h1
2 files changed, 4 insertions, 0 deletions
diff --git a/src/config/config.c b/src/config/config.c
index 8adb1ed3..2ca05dff 100644
--- a/src/config/config.c
+++ b/src/config/config.c
@@ -248,6 +248,9 @@ REQUIRE_OBJECT ( cpuid_cmd );
#ifdef SYNC_CMD
REQUIRE_OBJECT ( sync_cmd );
#endif
+#ifdef SHELL_CMD
+REQUIRE_OBJECT ( shell );
+#endif
#ifdef NSLOOKUP_CMD
REQUIRE_OBJECT ( nslookup_cmd );
#endif
diff --git a/src/config/general.h b/src/config/general.h
index fb1ac93f..e06db525 100644
--- a/src/config/general.h
+++ b/src/config/general.h
@@ -134,6 +134,7 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#define MENU_CMD /* Menu commands */
#define LOGIN_CMD /* Login command */
#define SYNC_CMD /* Sync command */
+#define SHELL_CMD /* Shell command */
//#define NSLOOKUP_CMD /* DNS resolving command */
//#define TIME_CMD /* Time commands */
//#define DIGEST_CMD /* Image crypto digest commands */