Teach ifconfig(8) the handy shared option shortcut aliases the NetBSD

counterpart also takes, i.e. "fdx" for "full-duplex", "flow" for
"flowcontrol", "hdx" for "half-duplex" as well as "loop" and "loopback"
for "hw-loopback".

MFC after:	1 week
This commit is contained in:
Marius Strobl 2011-01-05 15:28:30 +00:00
parent 8b28e7e1a3
commit a0fc3825c3
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=217013
2 changed files with 18 additions and 1 deletions

View File

@ -421,6 +421,9 @@ static struct ifmedia_description ifm_subtype_shared_aliases[] =
static struct ifmedia_description ifm_shared_option_descriptions[] =
IFM_SHARED_OPTION_DESCRIPTIONS;
static struct ifmedia_description ifm_shared_option_aliases[] =
IFM_SHARED_OPTION_ALIASES;
struct ifmedia_type_to_subtype {
struct {
struct ifmedia_description *desc;
@ -429,7 +432,7 @@ struct ifmedia_type_to_subtype {
struct {
struct ifmedia_description *desc;
int alias;
} options[3];
} options[4];
struct {
struct ifmedia_description *desc;
int alias;
@ -448,6 +451,7 @@ static struct ifmedia_type_to_subtype ifmedia_types_to_subtypes[] = {
},
{
{ &ifm_shared_option_descriptions[0], 0 },
{ &ifm_shared_option_aliases[0], 1 },
{ &ifm_subtype_ethernet_option_descriptions[0], 0 },
{ NULL, 0 },
},
@ -465,6 +469,7 @@ static struct ifmedia_type_to_subtype ifmedia_types_to_subtypes[] = {
},
{
{ &ifm_shared_option_descriptions[0], 0 },
{ &ifm_shared_option_aliases[0], 1 },
{ &ifm_subtype_tokenring_option_descriptions[0], 0 },
{ NULL, 0 },
},
@ -482,6 +487,7 @@ static struct ifmedia_type_to_subtype ifmedia_types_to_subtypes[] = {
},
{
{ &ifm_shared_option_descriptions[0], 0 },
{ &ifm_shared_option_aliases[0], 1 },
{ &ifm_subtype_fddi_option_descriptions[0], 0 },
{ NULL, 0 },
},
@ -499,6 +505,7 @@ static struct ifmedia_type_to_subtype ifmedia_types_to_subtypes[] = {
},
{
{ &ifm_shared_option_descriptions[0], 0 },
{ &ifm_shared_option_aliases[0], 1 },
{ &ifm_subtype_ieee80211_option_descriptions[0], 0 },
{ NULL, 0 },
},
@ -518,6 +525,7 @@ static struct ifmedia_type_to_subtype ifmedia_types_to_subtypes[] = {
},
{
{ &ifm_shared_option_descriptions[0], 0 },
{ &ifm_shared_option_aliases[0], 1 },
{ &ifm_subtype_atm_option_descriptions[0], 0 },
{ NULL, 0 },
},

View File

@ -598,6 +598,15 @@ struct ifmedia_description {
{ 0, NULL }, \
}
#define IFM_SHARED_OPTION_ALIASES { \
{ IFM_FDX, "fdx" }, \
{ IFM_HDX, "hdx" }, \
{ IFM_FLOW, "flow" }, \
{ IFM_LOOP, "loop" }, \
{ IFM_LOOP, "loopback" }, \
{ 0, NULL }, \
}
/*
* Baudrate descriptions for the various media types.
*/