xref: /aosp_15_r20/external/wpa_supplicant_8/src/drivers/netlink.h (revision 03f9172ca588f91df233974f4258bab95191f931)
1*03f9172cSAndroid Build Coastguard Worker /*
2*03f9172cSAndroid Build Coastguard Worker  * Netlink helper functions for driver wrappers
3*03f9172cSAndroid Build Coastguard Worker  * Copyright (c) 2002-2009, Jouni Malinen <[email protected]>
4*03f9172cSAndroid Build Coastguard Worker  *
5*03f9172cSAndroid Build Coastguard Worker  * This software may be distributed under the terms of the BSD license.
6*03f9172cSAndroid Build Coastguard Worker  * See README for more details.
7*03f9172cSAndroid Build Coastguard Worker  */
8*03f9172cSAndroid Build Coastguard Worker 
9*03f9172cSAndroid Build Coastguard Worker #ifndef NETLINK_H
10*03f9172cSAndroid Build Coastguard Worker #define NETLINK_H
11*03f9172cSAndroid Build Coastguard Worker 
12*03f9172cSAndroid Build Coastguard Worker struct netlink_data;
13*03f9172cSAndroid Build Coastguard Worker struct ifinfomsg;
14*03f9172cSAndroid Build Coastguard Worker 
15*03f9172cSAndroid Build Coastguard Worker struct netlink_config {
16*03f9172cSAndroid Build Coastguard Worker 	void *ctx;
17*03f9172cSAndroid Build Coastguard Worker 	void (*newlink_cb)(void *ctx, struct ifinfomsg *ifi, u8 *buf,
18*03f9172cSAndroid Build Coastguard Worker 			   size_t len);
19*03f9172cSAndroid Build Coastguard Worker 	void (*dellink_cb)(void *ctx, struct ifinfomsg *ifi, u8 *buf,
20*03f9172cSAndroid Build Coastguard Worker 			   size_t len);
21*03f9172cSAndroid Build Coastguard Worker };
22*03f9172cSAndroid Build Coastguard Worker 
23*03f9172cSAndroid Build Coastguard Worker struct netlink_data * netlink_init(struct netlink_config *cfg);
24*03f9172cSAndroid Build Coastguard Worker void netlink_deinit(struct netlink_data *netlink);
25*03f9172cSAndroid Build Coastguard Worker int netlink_send_oper_ifla(struct netlink_data *netlink, int ifindex,
26*03f9172cSAndroid Build Coastguard Worker 			   int linkmode, int operstate);
27*03f9172cSAndroid Build Coastguard Worker 
28*03f9172cSAndroid Build Coastguard Worker #endif /* NETLINK_H */
29