summaryrefslogtreecommitdiffstats
path: root/sbin
diff options
context:
space:
mode:
authorjfv <jfv@FreeBSD.org>2008-08-28 22:13:44 +0000
committerjfv <jfv@FreeBSD.org>2008-08-28 22:13:44 +0000
commit4d6b183b48b63e8ef2604da76af5d70f3c4be57e (patch)
tree46a9df17a0240e3c216067574d373a439cd3b70f /sbin
parente4ffb4bcce93ec96d96a47298d3ac371133bf089 (diff)
downloadFreeBSD-src-4d6b183b48b63e8ef2604da76af5d70f3c4be57e.zip
FreeBSD-src-4d6b183b48b63e8ef2604da76af5d70f3c4be57e.tar.gz
Add support in ifconfig to control the vlan hardware filter feature.
Reviewed by: EvilSam and moi MFC after:1 week
Diffstat (limited to 'sbin')
-rw-r--r--sbin/ifconfig/ifconfig.810
-rw-r--r--sbin/ifconfig/ifconfig.c3
-rw-r--r--sbin/ifconfig/ifvlan.c2
3 files changed, 10 insertions, 5 deletions
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",
OpenPOWER on IntegriCloud