From 4d6b183b48b63e8ef2604da76af5d70f3c4be57e Mon Sep 17 00:00:00 2001 From: jfv Date: Thu, 28 Aug 2008 22:13:44 +0000 Subject: Add support in ifconfig to control the vlan hardware filter feature. Reviewed by: EvilSam and moi MFC after:1 week --- sbin/ifconfig/ifconfig.8 | 10 ++++++---- sbin/ifconfig/ifconfig.c | 3 ++- sbin/ifconfig/ifvlan.c | 2 ++ 3 files changed, 10 insertions(+), 5 deletions(-) (limited to 'sbin') diff --git a/sbin/ifconfig/ifconfig.8 b/sbin/ifconfig/ifconfig.8 index ba50f82..b93c1ee 100644 --- a/sbin/ifconfig/ifconfig.8 +++ b/sbin/ifconfig/ifconfig.8 @@ -402,18 +402,20 @@ they support in their capabilities. is a synonym for enabling all available WOL mechanisms. To disable WOL use .Fl wol . -.It Cm vlanmtu , vlanhwtag +.It Cm vlanmtu , vlanhwtag, vlanhwfilter If the driver offers user-configurable VLAN support, enable -reception of extended frames or tag processing in hardware, +reception of extended frames, tag processing in hardware, or +frame filtering in hardware, respectively. Note that this must be issued on a physical interface associated with .Xr vlan 4 , not on a .Xr vlan 4 interface itself. -.It Fl vlanmtu , vlanhwtag +.It Fl vlanmtu , vlanhwtag, vlanhwfilter If the driver offers user-configurable VLAN support, disable -reception of extended frames or tag processing in hardware, +reception of extended frames, tag processing in hardware, or +frame filtering in hardware, respectively. .It Cm polling Turn on diff --git a/sbin/ifconfig/ifconfig.c b/sbin/ifconfig/ifconfig.c index 4819679..610928b 100644 --- a/sbin/ifconfig/ifconfig.c +++ b/sbin/ifconfig/ifconfig.c @@ -776,7 +776,8 @@ setifname(const char *val, int dummy __unused, int s, #define IFCAPBITS \ "\020\1RXCSUM\2TXCSUM\3NETCONS\4VLAN_MTU\5VLAN_HWTAGGING\6JUMBO_MTU\7POLLING" \ -"\10VLAN_HWCSUM\11TSO4\12TSO6\13LRO\14WOL_UCAST\15WOL_MCAST\16WOL_MAGIC" +"\10VLAN_HWCSUM\11TSO4\12TSO6\13LRO\14WOL_UCAST\15WOL_MCAST\16WOL_MAGIC" \ +"\21VLAN_HWFILTER" /* * Print the status of the interface. If an address family was diff --git a/sbin/ifconfig/ifvlan.c b/sbin/ifconfig/ifvlan.c index 89bc9af..d280062 100644 --- a/sbin/ifconfig/ifvlan.c +++ b/sbin/ifconfig/ifvlan.c @@ -180,6 +180,8 @@ static struct cmd vlan_cmds[] = { DEF_CMD("-vlanmtu", -IFCAP_VLAN_MTU, setifcap), DEF_CMD("vlanhwtag", IFCAP_VLAN_HWTAGGING, setifcap), DEF_CMD("-vlanhwtag", -IFCAP_VLAN_HWTAGGING, setifcap), + DEF_CMD("vlanhwfilter", IFCAP_VLAN_HWFILTER, setifcap), + DEF_CMD("-vlanhwfilter", -IFCAP_VLAN_HWFILTER, setifcap), }; static struct afswtch af_vlan = { .af_name = "af_vlan", -- cgit v1.1