#include <linux/kernel.h>
#include <linux/netdevice.h>
#include <linux/netpoll.h>
#include <linux/etherdevice.h>
#include <linux/ethtool.h>
#include <linux/list.h>
#include <linux/netfilter_bridge.h>
#include <linux/uaccess.h>
#include "br_private.h"
#define COMMON_FEATURES …
const struct nf_br_ops __rcu *nf_br_ops __read_mostly;
EXPORT_SYMBOL_GPL(…);
netdev_tx_t br_dev_xmit(struct sk_buff *skb, struct net_device *dev)
{ … }
static int br_dev_init(struct net_device *dev)
{ … }
static void br_dev_uninit(struct net_device *dev)
{ … }
static int br_dev_open(struct net_device *dev)
{ … }
static void br_dev_set_multicast_list(struct net_device *dev)
{ … }
static void br_dev_change_rx_flags(struct net_device *dev, int change)
{ … }
static int br_dev_stop(struct net_device *dev)
{ … }
static int br_change_mtu(struct net_device *dev, int new_mtu)
{ … }
static int br_set_mac_address(struct net_device *dev, void *p)
{ … }
static void br_getinfo(struct net_device *dev, struct ethtool_drvinfo *info)
{ … }
static int br_get_link_ksettings(struct net_device *dev,
struct ethtool_link_ksettings *cmd)
{ … }
static netdev_features_t br_fix_features(struct net_device *dev,
netdev_features_t features)
{ … }
#ifdef CONFIG_NET_POLL_CONTROLLER
static void br_poll_controller(struct net_device *br_dev)
{ … }
static void br_netpoll_cleanup(struct net_device *dev)
{ … }
static int __br_netpoll_enable(struct net_bridge_port *p)
{ … }
int br_netpoll_enable(struct net_bridge_port *p)
{ … }
static int br_netpoll_setup(struct net_device *dev, struct netpoll_info *ni)
{ … }
void br_netpoll_disable(struct net_bridge_port *p)
{ … }
#endif
static int br_add_slave(struct net_device *dev, struct net_device *slave_dev,
struct netlink_ext_ack *extack)
{ … }
static int br_del_slave(struct net_device *dev, struct net_device *slave_dev)
{ … }
static int br_fill_forward_path(struct net_device_path_ctx *ctx,
struct net_device_path *path)
{ … }
static const struct ethtool_ops br_ethtool_ops = …;
static const struct net_device_ops br_netdev_ops = …;
static const struct device_type br_type = …;
void br_dev_setup(struct net_device *dev)
{ … }