summaryrefslogtreecommitdiffstats
path: root/src/hci
diff options
context:
space:
mode:
authorMichael Brown2007-08-02 05:24:39 +0200
committerMichael Brown2007-08-02 05:24:39 +0200
commit0acb0168408c9e8e8fd843221bb57d1c3a39fb3d (patch)
tree901a5c2eefcba15c742d7b1cc1f3291e12feff6b /src/hci
parentfix gcc 4.2.1 warning: discards qualifiers from pointer target type (diff)
downloadipxe-0acb0168408c9e8e8fd843221bb57d1c3a39fb3d.tar.gz
ipxe-0acb0168408c9e8e8fd843221bb57d1c3a39fb3d.tar.xz
ipxe-0acb0168408c9e8e8fd843221bb57d1c3a39fb3d.zip
Add FEATURE() macro, plus code to display features at startup time,
and generate DHCP options to indicate features to DHCP server (and to PXE NBPs).
Diffstat (limited to 'src/hci')
-rw-r--r--src/hci/shell_banner.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/hci/shell_banner.c b/src/hci/shell_banner.c
index 1413fe16..bb8166db 100644
--- a/src/hci/shell_banner.c
+++ b/src/hci/shell_banner.c
@@ -19,6 +19,7 @@
#include <stdio.h>
#include <console.h>
#include <latch.h>
+#include <gpxe/features.h>
#include <gpxe/shell_banner.h>
/** @file
@@ -33,6 +34,9 @@
#define BOLD "\033[1m"
#define CYAN "\033[36m"
+static char * features[0] __table_start ( char *, features );
+static char * features_end[0] __table_end ( char *, features );
+
/**
* Print shell banner and prompt for shell entry
*
@@ -40,6 +44,7 @@
*/
int shell_banner ( void ) {
unsigned long timeout = ( currticks() + BANNER_TIMEOUT );
+ char **feature;
int key;
int enter_shell = 0;
@@ -47,7 +52,11 @@ int shell_banner ( void ) {
printf ( NORMAL "\n\n\n" BOLD "gPXE " VERSION
NORMAL " -- Open Source Boot Firmware -- "
CYAN "http://etherboot.org" NORMAL "\n"
- "Press Ctrl-B for the gPXE command line..." );
+ "Features:" );
+ for ( feature = features ; feature < features_end ; feature++ ) {
+ printf ( " %s", *feature );
+ }
+ printf ( "\nPress Ctrl-B for the gPXE command line..." );
/* Wait for key */
while ( currticks() < timeout ) {