xref: /dflybsd-src/contrib/wpa_supplicant/src/ap/vlan_util.h (revision 3a84a4273475ed07d0ab1c2dfeffdfedef35d9cd)
13ff40c12SJohn Marino /*
2*a1157835SDaniel Fojt  * hostapd / VLAN netlink/ioctl api
33ff40c12SJohn Marino  * Copyright (c) 2012, Michael Braun <michael-dev@fami-braun.de>
43ff40c12SJohn Marino  *
53ff40c12SJohn Marino  * This software may be distributed under the terms of the BSD license.
63ff40c12SJohn Marino  * See README for more details.
73ff40c12SJohn Marino  */
83ff40c12SJohn Marino 
93ff40c12SJohn Marino #ifndef VLAN_UTIL_H
103ff40c12SJohn Marino #define VLAN_UTIL_H
113ff40c12SJohn Marino 
12*a1157835SDaniel Fojt struct hostapd_data;
13*a1157835SDaniel Fojt struct hostapd_vlan;
14*a1157835SDaniel Fojt struct full_dynamic_vlan;
15*a1157835SDaniel Fojt 
163ff40c12SJohn Marino int vlan_add(const char *if_name, int vid, const char *vlan_if_name);
173ff40c12SJohn Marino int vlan_rem(const char *if_name);
18*a1157835SDaniel Fojt int vlan_set_name_type(unsigned int name_type);
19*a1157835SDaniel Fojt 
20*a1157835SDaniel Fojt int ifconfig_helper(const char *if_name, int up);
21*a1157835SDaniel Fojt int ifconfig_up(const char *if_name);
22*a1157835SDaniel Fojt int iface_exists(const char *ifname);
23*a1157835SDaniel Fojt int vlan_if_remove(struct hostapd_data *hapd, struct hostapd_vlan *vlan);
24*a1157835SDaniel Fojt 
25*a1157835SDaniel Fojt struct full_dynamic_vlan *
26*a1157835SDaniel Fojt full_dynamic_vlan_init(struct hostapd_data *hapd);
27*a1157835SDaniel Fojt void full_dynamic_vlan_deinit(struct full_dynamic_vlan *priv);
28*a1157835SDaniel Fojt void vlan_newlink(const char *ifname, struct hostapd_data *hapd);
29*a1157835SDaniel Fojt void vlan_dellink(const char *ifname, struct hostapd_data *hapd);
303ff40c12SJohn Marino 
313ff40c12SJohn Marino #endif /* VLAN_UTIL_H */
32