[parseopt] Add parse_netdev_configurator()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
parent
759dcf5a9b
commit
3a67224c62
@ -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
|
||||||
*
|
*
|
||||||
|
@ -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 );
|
||||||
|
Reference in New Issue
Block a user