#include <net/genetlink.h>
#include <uapi/linux/mrp_bridge.h>
#include "br_private.h"
#include "br_private_mrp.h"
static const struct nla_policy br_mrp_policy[IFLA_BRIDGE_MRP_MAX + 1] = …;
static const struct nla_policy
br_mrp_instance_policy[IFLA_BRIDGE_MRP_INSTANCE_MAX + 1] = …;
static int br_mrp_instance_parse(struct net_bridge *br, struct nlattr *attr,
int cmd, struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_port_state_policy[IFLA_BRIDGE_MRP_PORT_STATE_MAX + 1] = …;
static int br_mrp_port_state_parse(struct net_bridge_port *p,
struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_port_role_policy[IFLA_BRIDGE_MRP_PORT_ROLE_MAX + 1] = …;
static int br_mrp_port_role_parse(struct net_bridge_port *p,
struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_ring_state_policy[IFLA_BRIDGE_MRP_RING_STATE_MAX + 1] = …;
static int br_mrp_ring_state_parse(struct net_bridge *br, struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_ring_role_policy[IFLA_BRIDGE_MRP_RING_ROLE_MAX + 1] = …;
static int br_mrp_ring_role_parse(struct net_bridge *br, struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_start_test_policy[IFLA_BRIDGE_MRP_START_TEST_MAX + 1] = …;
static int br_mrp_start_test_parse(struct net_bridge *br, struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_in_state_policy[IFLA_BRIDGE_MRP_IN_STATE_MAX + 1] = …;
static int br_mrp_in_state_parse(struct net_bridge *br, struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_in_role_policy[IFLA_BRIDGE_MRP_IN_ROLE_MAX + 1] = …;
static int br_mrp_in_role_parse(struct net_bridge *br, struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
static const struct nla_policy
br_mrp_start_in_test_policy[IFLA_BRIDGE_MRP_START_IN_TEST_MAX + 1] = …;
static int br_mrp_start_in_test_parse(struct net_bridge *br,
struct nlattr *attr,
struct netlink_ext_ack *extack)
{ … }
int br_mrp_parse(struct net_bridge *br, struct net_bridge_port *p,
struct nlattr *attr, int cmd, struct netlink_ext_ack *extack)
{ … }
int br_mrp_fill_info(struct sk_buff *skb, struct net_bridge *br)
{ … }
int br_mrp_ring_port_open(struct net_device *dev, u8 loc)
{ … }
int br_mrp_in_port_open(struct net_device *dev, u8 loc)
{ … }