linux/net/bridge/br_mst.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 *	Bridge Multiple Spanning Tree Support
 *
 *	Authors:
 *	Tobias Waldekranz		<[email protected]>
 */

#include <linux/kernel.h>
#include <net/switchdev.h>

#include "br_private.h"

DEFINE_STATIC_KEY_FALSE(br_mst_used);

bool br_mst_enabled(const struct net_device *dev)
{}
EXPORT_SYMBOL_GPL();

int br_mst_get_info(const struct net_device *dev, u16 msti, unsigned long *vids)
{}
EXPORT_SYMBOL_GPL();

int br_mst_get_state(const struct net_device *dev, u16 msti, u8 *state)
{}
EXPORT_SYMBOL_GPL();

static void br_mst_vlan_set_state(struct net_bridge_vlan_group *vg,
				  struct net_bridge_vlan *v,
				  u8 state)
{}

int br_mst_set_state(struct net_bridge_port *p, u16 msti, u8 state,
		     struct netlink_ext_ack *extack)
{}

static void br_mst_vlan_sync_state(struct net_bridge_vlan *pv, u16 msti)
{}

int br_mst_vlan_set_msti(struct net_bridge_vlan *mv, u16 msti)
{}

void br_mst_vlan_init_state(struct net_bridge_vlan *v)
{}

int br_mst_set_enabled(struct net_bridge *br, bool on,
		       struct netlink_ext_ack *extack)
{}

size_t br_mst_info_size(const struct net_bridge_vlan_group *vg)
{}

int br_mst_fill_info(struct sk_buff *skb,
		     const struct net_bridge_vlan_group *vg)
{}

static const struct nla_policy br_mst_nl_policy[IFLA_BRIDGE_MST_ENTRY_MAX + 1] =;

static int br_mst_process_one(struct net_bridge_port *p,
			      const struct nlattr *attr,
			      struct netlink_ext_ack *extack)
{}

int br_mst_process(struct net_bridge_port *p, const struct nlattr *mst_attr,
		   struct netlink_ext_ack *extack)
{}