mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-12-19 02:11:28 +00:00
56 lines
1.8 KiB
Diff
56 lines
1.8 KiB
Diff
From 4ea51dc9cc41cc22e7dbb0d41c68fc133c924adb Mon Sep 17 00:00:00 2001
|
|
From: Subhranil Choudhury <subhrani@codeaurora.org>
|
|
Date: Mon, 6 Apr 2020 01:22:29 +0530
|
|
Subject: [PATCH 257/281] linux: Delete fdb entry using netdev
|
|
|
|
Added and exported a new API to delete a bridge FDB entry
|
|
using net device.
|
|
|
|
Change-Id: Icc7c7f8608083edf02248cd25ee6a88cad81dd76
|
|
Signed-off-by: Subhranil Choudhury <subhrani@codeaurora.org>
|
|
---
|
|
include/linux/if_bridge.h | 2 ++
|
|
net/bridge/br_fdb.c | 13 +++++++++++++
|
|
2 files changed, 15 insertions(+)
|
|
|
|
diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h
|
|
index 41c7a7b5a7c4..a2fafbd5b6af 100644
|
|
--- a/include/linux/if_bridge.h
|
|
+++ b/include/linux/if_bridge.h
|
|
@@ -253,6 +253,8 @@ struct br_fdb_event {
|
|
extern void br_fdb_register_notify(struct notifier_block *nb);
|
|
extern void br_fdb_unregister_notify(struct notifier_block *nb);
|
|
extern struct net_device *br_fdb_bridge_dev_get_and_hold(struct net_bridge *br);
|
|
+extern int br_fdb_delete_by_netdev(struct net_device *dev,
|
|
+ const unsigned char *addr, u16 vid);
|
|
|
|
typedef struct net_bridge_port *br_get_dst_hook_t(
|
|
const struct net_bridge_port *src,
|
|
diff --git a/net/bridge/br_fdb.c b/net/bridge/br_fdb.c
|
|
index 95a038a20c03..6c9ee0d28194 100644
|
|
--- a/net/bridge/br_fdb.c
|
|
+++ b/net/bridge/br_fdb.c
|
|
@@ -1365,6 +1365,19 @@ static int __br_fdb_delete(struct net_bridge *br,
|
|
return err;
|
|
}
|
|
|
|
+int br_fdb_delete_by_netdev(struct net_device *dev,
|
|
+ const unsigned char *addr, u16 vid)
|
|
+{
|
|
+ int err;
|
|
+
|
|
+ rtnl_lock();
|
|
+ err = br_fdb_delete(NULL, NULL, dev, addr, vid);
|
|
+ rtnl_unlock();
|
|
+
|
|
+ return err;
|
|
+}
|
|
+EXPORT_SYMBOL_GPL(br_fdb_delete_by_netdev);
|
|
+
|
|
/* Remove neighbor entry with RTM_DELNEIGH */
|
|
int br_fdb_delete(struct ndmsg *ndm, struct nlattr *tb[],
|
|
struct net_device *dev,
|
|
--
|
|
2.17.1
|
|
|