#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/init.h>
#include <linux/llc.h>
#include <net/llc.h>
#include <net/stp.h>
#include <net/switchdev.h>
#include "br_private.h"
static int br_device_event(struct notifier_block *unused, unsigned long event, void *ptr)
{ … }
static struct notifier_block br_device_notifier = …;
static int br_switchdev_event(struct notifier_block *unused,
unsigned long event, void *ptr)
{ … }
static struct notifier_block br_switchdev_notifier = …;
static int br_switchdev_blocking_event(struct notifier_block *nb,
unsigned long event, void *ptr)
{ … }
static struct notifier_block br_switchdev_blocking_notifier = …;
int br_boolopt_toggle(struct net_bridge *br, enum br_boolopt_id opt, bool on,
struct netlink_ext_ack *extack)
{ … }
int br_boolopt_get(const struct net_bridge *br, enum br_boolopt_id opt)
{ … }
int br_boolopt_multi_toggle(struct net_bridge *br,
struct br_boolopt_multi *bm,
struct netlink_ext_ack *extack)
{ … }
void br_boolopt_multi_get(const struct net_bridge *br,
struct br_boolopt_multi *bm)
{ … }
void br_opt_toggle(struct net_bridge *br, enum net_bridge_opts opt, bool on)
{ … }
static void __net_exit br_net_exit_batch_rtnl(struct list_head *net_list,
struct list_head *dev_to_kill)
{ … }
static struct pernet_operations br_net_ops = …;
static const struct stp_proto br_stp_proto = …;
static int __init br_init(void)
{ … }
static void __exit br_deinit(void)
{ … }
module_init(…) …
module_exit(…)
MODULE_LICENSE(…) …;
MODULE_VERSION(…);
MODULE_ALIAS_RTNL_LINK(…) …;
MODULE_DESCRIPTION(…) …;