diff options
Diffstat (limited to 'src/core/parseopt.c')
| -rw-r--r-- | src/core/parseopt.c | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/src/core/parseopt.c b/src/core/parseopt.c index 2739bd87b..57140690b 100644 --- a/src/core/parseopt.c +++ b/src/core/parseopt.c @@ -26,7 +26,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <errno.h> #include <getopt.h> #include <ipxe/netdevice.h> -#include <ipxe/image.h> #include <ipxe/parseopt.h> /** @file @@ -130,6 +129,25 @@ int parse_flag ( const char *text __unused, int *flag ) { } /** + * Parse key + * + * @v text Text + * @ret key Key + * @ret rc Return status code + */ +int parse_key ( const char *text, unsigned int *key ) { + + /* Interpret single characters as being a literal key character */ + if ( text[0] && ! text[1] ) { + *key = text[0]; + return 0; + } + + /* Otherwise, interpret as an integer */ + return parse_integer ( text, key ); +} + +/** * Print command usage message * * @v cmd Command descriptor |
