diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/hci/commands/dynui_cmd.c | 6 | ||||
-rw-r--r-- | src/include/ipxe/dynui.h | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/hci/commands/dynui_cmd.c b/src/hci/commands/dynui_cmd.c index 557c5db5d..5aed3d034 100644 --- a/src/hci/commands/dynui_cmd.c +++ b/src/hci/commands/dynui_cmd.c @@ -116,6 +116,8 @@ struct item_options { unsigned int key; /** Use as default */ int is_default; + /** Value is a secret */ + int is_secret; /** Use as a separator */ int is_gap; }; @@ -128,6 +130,8 @@ static struct option_descriptor item_opts[] = { struct item_options, key, parse_key ), OPTION_DESC ( "default", 'd', no_argument, struct item_options, is_default, parse_flag ), + OPTION_DESC ( "secret", 's', no_argument, + struct item_options, is_secret, parse_flag ), OPTION_DESC ( "gap", 'g', no_argument, struct item_options, is_gap, parse_flag ), }; @@ -177,6 +181,8 @@ static int item_exec ( int argc, char **argv ) { /* Add dynamic user interface item */ if ( opts.is_default ) flags |= DYNUI_DEFAULT; + if ( opts.is_secret ) + flags |= DYNUI_SECRET; item = add_dynui_item ( dynui, name, ( text ? text : "" ), flags, opts.key ); if ( ! item ) { diff --git a/src/include/ipxe/dynui.h b/src/include/ipxe/dynui.h index 5ba007032..5029e5850 100644 --- a/src/include/ipxe/dynui.h +++ b/src/include/ipxe/dynui.h @@ -44,6 +44,9 @@ struct dynamic_item { /** Dynamic user interface item is default selection */ #define DYNUI_DEFAULT 0x0001 +/** Dynamic user interface item represents a secret */ +#define DYNUI_SECRET 0x0002 + extern struct dynamic_ui * create_dynui ( const char *name, const char *title ); extern struct dynamic_item * add_dynui_item ( struct dynamic_ui *dynui, const char *name, |