2017-11-19 15:05:11 +01:00
/* SPDX-License-Identifier: GPL-2.0 */
2018-12-31 23:59:59 +01:00
/* Copyright (C) 2016-2019 B.A.T.M.A.N. contributors:
2016-05-09 18:41:08 +02:00
*
* Matthias Schiffer
*
* This program is free software ; you can redistribute it and / or
* modify it under the terms of version 2 of the GNU General Public
* License as published by the Free Software Foundation .
*
* This program is distributed in the hope that it will be useful , but
* WITHOUT ANY WARRANTY ; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the GNU
* General Public License for more details .
*
* You should have received a copy of the GNU General Public License
* along with this program ; if not , see < http : //www.gnu.org/licenses/>.
*/
# ifndef _NET_BATMAN_ADV_NETLINK_H_
# define _NET_BATMAN_ADV_NETLINK_H_
# include "main.h"
2016-05-05 13:09:43 +02:00
# include <linux/types.h>
2016-07-03 13:31:35 +02:00
# include <net/genetlink.h>
2016-05-05 13:09:43 +02:00
2016-07-03 13:31:37 +02:00
struct nlmsghdr ;
2016-05-09 18:41:08 +02:00
void batadv_netlink_register ( void ) ;
void batadv_netlink_unregister ( void ) ;
2016-07-03 13:31:37 +02:00
int batadv_netlink_get_ifindex ( const struct nlmsghdr * nlh , int attrtype ) ;
2016-05-09 18:41:08 +02:00
2016-05-05 13:09:43 +02:00
int batadv_netlink_tpmeter_notify ( struct batadv_priv * bat_priv , const u8 * dst ,
u8 result , u32 test_time , u64 total_bytes ,
u32 cookie ) ;
2018-11-23 16:07:12 +01:00
int batadv_netlink_notify_mesh ( struct batadv_priv * bat_priv ) ;
int batadv_netlink_notify_hardif ( struct batadv_priv * bat_priv ,
struct batadv_hard_iface * hard_iface ) ;
int batadv_netlink_notify_vlan ( struct batadv_priv * bat_priv ,
struct batadv_softif_vlan * vlan ) ;
2016-07-03 13:31:35 +02:00
extern struct genl_family batadv_netlink_family ;
2016-05-09 18:41:08 +02:00
# endif /* _NET_BATMAN_ADV_NETLINK_H_ */