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