david/ipxe
Archived
1
0

[parseopt] Add parse_netdev_configurator()

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown 2013-11-04 17:05:16 +00:00
parent 759dcf5a9b
commit 3a67224c62
2 changed files with 27 additions and 0 deletions

View File

@ -139,6 +139,29 @@ int parse_netdev ( char *text, struct net_device **netdev ) {
return 0; return 0;
} }
/**
* Parse network device configurator name
*
* @v text Text
* @ret configurator Network device configurator
* @ret rc Return status code
*/
int parse_netdev_configurator ( char *text,
struct net_device_configurator **configurator ){
/* Sanity check */
assert ( text != NULL );
/* Find network device configurator */
*configurator = find_netdev_configurator ( text );
if ( ! *configurator ) {
printf ( "\"%s\": no such configurator\n", text );
return -ENOTSUP;
}
return 0;
}
/** /**
* Parse menu name * Parse menu name
* *

View File

@ -14,6 +14,7 @@ FILE_LICENCE ( GPL2_OR_LATER );
#include <ipxe/settings.h> #include <ipxe/settings.h>
struct net_device; struct net_device;
struct net_device_configurator;
struct menu; struct menu;
struct parameters; struct parameters;
@ -128,6 +129,9 @@ extern int parse_string ( char *text, char **value );
extern int parse_integer ( char *text, unsigned int *value ); extern int parse_integer ( char *text, unsigned int *value );
extern int parse_timeout ( char *text, unsigned long *value ); extern int parse_timeout ( char *text, unsigned long *value );
extern int parse_netdev ( char *text, struct net_device **netdev ); extern int parse_netdev ( char *text, struct net_device **netdev );
extern int
parse_netdev_configurator ( char *text,
struct net_device_configurator **configurator );
extern int parse_menu ( char *text, struct menu **menu ); extern int parse_menu ( char *text, struct menu **menu );
extern int parse_flag ( char *text __unused, int *flag ); extern int parse_flag ( char *text __unused, int *flag );
extern int parse_key ( char *text, unsigned int *key ); extern int parse_key ( char *text, unsigned int *key );