Home | History | Annotate | Download | only in ap

Lines Matching full:hapd

22 static int vlan_if_add(struct hostapd_data *hapd, struct hostapd_vlan *vlan,
28 if (!hapd->conf->ssid.wep.key[i])
37 ret = hostapd_vlan_if_add(hapd, vlan->ifname);
48 if (hapd->wpa_auth)
49 ret = wpa_auth_ensure_group(hapd->wpa_auth, vlan->vlan_id);
56 if (wpa_auth_release_group(hapd->wpa_auth, vlan->vlan_id))
60 if (hostapd_vlan_if_remove(hapd, vlan->ifname))
67 int vlan_if_remove(struct hostapd_data *hapd, struct hostapd_vlan *vlan)
71 ret = wpa_auth_release_group(hapd->wpa_auth, vlan->vlan_id);
77 return hostapd_vlan_if_remove(hapd, vlan->ifname);
81 static int vlan_dynamic_add(struct hostapd_data *hapd,
86 if (vlan_if_add(hapd, vlan, 1)) {
93 vlan_newlink(vlan->ifname, hapd);
104 static void vlan_dynamic_remove(struct hostapd_data *hapd,
115 vlan_dellink(vlan->ifname, hapd);
118 vlan_if_remove(hapd, vlan)) {
130 int vlan_init(struct hostapd_data *hapd)
133 hapd->full_dynamic_vlan = full_dynamic_vlan_init(hapd);
136 if ((hapd->conf->ssid.dynamic_vlan != DYNAMIC_VLAN_DISABLED ||
137 hapd->conf->ssid.per_sta_vif) &&
138 !hapd->conf->vlan) {
150 hapd->conf->iface);
151 vlan->next = hapd->conf->vlan;
152 hapd->conf->vlan = vlan;
155 if (vlan_dynamic_add(hapd, hapd->conf->vlan))
162 void vlan_deinit(struct hostapd_data *hapd)
164 vlan_dynamic_remove(hapd, hapd->conf->vlan);
167 full_dynamic_vlan_deinit(hapd->full_dynamic_vlan);
168 hapd->full_dynamic_vlan = NULL;
173 struct hostapd_vlan * vlan_add_dynamic(struct hostapd_data *hapd,
204 n->next = hapd->conf->vlan;
205 hapd->conf->vlan = n;
207 /* hapd->conf->vlan needs this new VLAN here for WPA setup */
208 if (vlan_if_add(hapd, n, 0)) {
209 hapd->conf->vlan = n->next;
218 int vlan_remove_dynamic(struct hostapd_data *hapd, int vlan_id)
226 __func__, hapd->conf->iface, vlan_id);
228 vlan = hapd->conf->vlan;
241 vlan_if_remove(hapd, vlan);
243 vlan_dellink(vlan->ifname, hapd);