linux/drivers/net/bonding/bond_netlink.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * drivers/net/bond/bond_netlink.c - Netlink interface for bonding
 * Copyright (c) 2013 Jiri Pirko <[email protected]>
 * Copyright (c) 2013 Scott Feldman <[email protected]>
 */

#include <linux/module.h>
#include <linux/errno.h>
#include <linux/netdevice.h>
#include <linux/etherdevice.h>
#include <linux/if_link.h>
#include <linux/if_ether.h>
#include <net/netlink.h>
#include <net/rtnetlink.h>
#include <net/bonding.h>
#include <net/ipv6.h>

static size_t bond_get_slave_size(const struct net_device *bond_dev,
				  const struct net_device *slave_dev)
{}

static int bond_fill_slave_info(struct sk_buff *skb,
				const struct net_device *bond_dev,
				const struct net_device *slave_dev)
{}

/* Limit the max delay range to 300s */
static const struct netlink_range_validation delay_range =;

static const struct nla_policy bond_policy[IFLA_BOND_MAX + 1] =;

static const struct nla_policy bond_slave_policy[IFLA_BOND_SLAVE_MAX + 1] =;

static int bond_validate(struct nlattr *tb[], struct nlattr *data[],
			 struct netlink_ext_ack *extack)
{}

static int bond_slave_changelink(struct net_device *bond_dev,
				 struct net_device *slave_dev,
				 struct nlattr *tb[], struct nlattr *data[],
				 struct netlink_ext_ack *extack)
{}

static int bond_changelink(struct net_device *bond_dev, struct nlattr *tb[],
			   struct nlattr *data[],
			   struct netlink_ext_ack *extack)
{}

static int bond_newlink(struct net *src_net, struct net_device *bond_dev,
			struct nlattr *tb[], struct nlattr *data[],
			struct netlink_ext_ack *extack)
{}

static size_t bond_get_size(const struct net_device *bond_dev)
{}

static int bond_option_active_slave_get_ifindex(struct bonding *bond)
{}

static int bond_fill_info(struct sk_buff *skb,
			  const struct net_device *bond_dev)
{}

static size_t bond_get_linkxstats_size(const struct net_device *dev, int attr)
{}

static int bond_fill_linkxstats(struct sk_buff *skb,
				const struct net_device *dev,
				int *prividx, int attr)
{}

struct rtnl_link_ops bond_link_ops __read_mostly =;

int __init bond_netlink_init(void)
{}

void bond_netlink_fini(void)
{}

MODULE_ALIAS_RTNL_LINK();