aboutsummaryrefslogtreecommitdiffstats
path: root/net/bridge/br_vlan.c
diff options
context:
space:
mode:
authorwenxu <wenxu@ucloud.cn>2019-07-05 21:16:36 +0800
committerPablo Neira Ayuso <pablo@netfilter.org>2019-07-05 21:34:50 +0200
commit31aed46fedbba65abece57e14d24f00b52389c4f (patch)
tree4ad82439952051cb67d222787c1f0347188fab4d /net/bridge/br_vlan.c
parentnetfilter: nft_meta_bridge: add NFT_META_BRI_IIFPVID support (diff)
downloadlinux-dev-31aed46fedbba65abece57e14d24f00b52389c4f.tar.xz
linux-dev-31aed46fedbba65abece57e14d24f00b52389c4f.zip
bridge: add br_vlan_get_proto()
This new function allows you to fetch the bridge port vlan protocol. Signed-off-by: wenxu <wenxu@ucloud.cn> Acked-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'net/bridge/br_vlan.c')
-rw-r--r--net/bridge/br_vlan.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/net/bridge/br_vlan.c b/net/bridge/br_vlan.c
index 8d97b91ad503..021cc9f66804 100644
--- a/net/bridge/br_vlan.c
+++ b/net/bridge/br_vlan.c
@@ -797,6 +797,16 @@ bool br_vlan_enabled(const struct net_device *dev)
}
EXPORT_SYMBOL_GPL(br_vlan_enabled);
+int br_vlan_get_proto(const struct net_device *dev, u16 *p_proto)
+{
+ struct net_bridge *br = netdev_priv(dev);
+
+ *p_proto = ntohs(br->vlan_proto);
+
+ return 0;
+}
+EXPORT_SYMBOL_GPL(br_vlan_get_proto);
+
int __br_vlan_set_proto(struct net_bridge *br, __be16 proto)
{
int err = 0;