From 452fb2d0a2fc9d090e070fcf47b3c58ff1f0deb2 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Mon, 4 Nov 2013 23:05:48 +0000 Subject: [PATCH] [cmdline] Make "dhcp" command a synonym for "ifconf" Signed-off-by: Michael Brown --- src/hci/commands/dhcp_cmd.c | 49 +---------------------------------- src/hci/commands/ifmgmt_cmd.c | 2 +- src/include/hci/ifmgmt_cmd.h | 1 + 3 files changed, 3 insertions(+), 49 deletions(-) diff --git a/src/hci/commands/dhcp_cmd.c b/src/hci/commands/dhcp_cmd.c index 1b7df7650..feeb55ee5 100644 --- a/src/hci/commands/dhcp_cmd.c +++ b/src/hci/commands/dhcp_cmd.c @@ -41,53 +41,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); * */ -/** "dhcp" options */ -struct dhcp_options {}; - -/** "dhcp" option list */ -static struct option_descriptor dhcp_opts[] = {}; - -/** - * Execute "dhcp" command for a network device - * - * @v netdev Network device - * @v opts Command options - * @ret rc Return status code - */ -static int dhcp_payload ( struct net_device *netdev, - struct dhcp_options *opts __unused ) { - int rc; - - if ( ( rc = dhcp ( netdev ) ) != 0 ) { - printf ( "Could not configure %s: %s\n", - netdev->name, strerror ( rc ) ); - - /* Close device on failure, to avoid memory exhaustion */ - netdev_close ( netdev ); - - return rc; - } - - return 0; -} - -/** "dhcp" command descriptor */ -static struct ifcommon_command_descriptor dhcp_cmd = - IFCOMMON_COMMAND_DESC ( struct dhcp_options, dhcp_opts, - 0, MAX_ARGUMENTS, "[...]", - dhcp_payload, 1 ); - -/** - * The "dhcp" command - * - * @v argc Argument count - * @v argv Argument list - * @ret rc Return status code - */ -static int dhcp_exec ( int argc, char **argv ) { - return ifcommon_exec ( argc, argv, &dhcp_cmd ); -} - /** "pxebs" options */ struct pxebs_options {}; @@ -138,7 +91,7 @@ static int pxebs_exec ( int argc, char **argv ) { struct command dhcp_commands[] __command = { { .name = "dhcp", - .exec = dhcp_exec, + .exec = ifconf_exec, /* synonym for "ifconf" */ }, { .name = "pxebs", diff --git a/src/hci/commands/ifmgmt_cmd.c b/src/hci/commands/ifmgmt_cmd.c index 2fd56ce58..f3d00ca38 100644 --- a/src/hci/commands/ifmgmt_cmd.c +++ b/src/hci/commands/ifmgmt_cmd.c @@ -238,7 +238,7 @@ static struct ifcommon_command_descriptor ifconf_cmd = * @v argv Argument list * @ret rc Return status code */ -static int ifconf_exec ( int argc, char **argv ) { +int ifconf_exec ( int argc, char **argv ) { return ifcommon_exec ( argc, argv, &ifconf_cmd ); } diff --git a/src/include/hci/ifmgmt_cmd.h b/src/include/hci/ifmgmt_cmd.h index 2fa8ee527..913b911d8 100644 --- a/src/include/hci/ifmgmt_cmd.h +++ b/src/include/hci/ifmgmt_cmd.h @@ -67,5 +67,6 @@ struct ifcommon_command_descriptor { extern int ifcommon_exec ( int argc, char **argv, struct ifcommon_command_descriptor *cmd ); +extern int ifconf_exec ( int argc, char **argv ); #endif /* _IFMGMT_CMD_H */