aboutsummaryrefslogtreecommitdiffstats
path: root/src/hci
diff options
context:
space:
mode:
authorJoe Groocock <jgroocock@cloudflare.com>2019-09-20 13:41:29 +0100
committerMichael Brown <mcb30@ipxe.org>2020-07-22 12:44:51 +0100
commita08ee6e7221ea50d9096579d57674a07f3409da3 (patch)
treeffad4a137e5e0f9375bf17e92691b1040198b2aa /src/hci
parent145311c62e46feae1703e4b5da353603a99c21f5 (diff)
downloadipxe-a08ee6e7221ea50d9096579d57674a07f3409da3.tar.gz
[cmdline] Add "--timeout" parameter to "ifconf" command
Modified-by: Michael Brown <mcb30@ipxe.org> Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/hci')
-rw-r--r--src/hci/commands/ifmgmt_cmd.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/hci/commands/ifmgmt_cmd.c b/src/hci/commands/ifmgmt_cmd.c
index c89af2e81..2e976d3fb 100644
--- a/src/hci/commands/ifmgmt_cmd.c
+++ b/src/hci/commands/ifmgmt_cmd.c
@@ -193,6 +193,8 @@ static int ifstat_exec ( int argc, char **argv ) {
/** "ifconf" options */
struct ifconf_options {
+ /** Configuration timeout */
+ unsigned long timeout;
/** Configurator */
struct net_device_configurator *configurator;
};
@@ -202,6 +204,9 @@ static struct option_descriptor ifconf_opts[] = {
OPTION_DESC ( "configurator", 'c', required_argument,
struct ifconf_options, configurator,
parse_netdev_configurator ),
+ OPTION_DESC ( "timeout", 't', required_argument,
+ struct ifconf_options, timeout,
+ parse_timeout ),
};
/**
@@ -216,7 +221,8 @@ static int ifconf_payload ( struct net_device *netdev,
int rc;
/* Attempt configuration */
- if ( ( rc = ifconf ( netdev, opts->configurator ) ) != 0 ) {
+ if ( ( rc = ifconf ( netdev, opts->configurator,
+ opts->timeout ) ) != 0 ) {
/* Close device on failure, to avoid memory exhaustion */
netdev_close ( netdev );