david/ipxe
david
/
ipxe
Archived
1
0
Fork 0

[cmdline] Make "dhcp" command a synonym for "ifconf"

Signed-off-by: Michael Brown <mcb30@ipxe.org>
This commit is contained in:
Michael Brown 2013-11-04 23:05:48 +00:00
parent 506152d467
commit 452fb2d0a2
3 changed files with 3 additions and 49 deletions

View File

@ -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, "[<interface>...]",
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",

View File

@ -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 );
}

View File

@ -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 */