Lines Matching refs:anqp
64 struct wpa_bss_anqp *anqp; in wpa_bss_anqp_alloc() local
65 anqp = os_zalloc(sizeof(*anqp)); in wpa_bss_anqp_alloc()
66 if (anqp == NULL) in wpa_bss_anqp_alloc()
68 anqp->users = 1; in wpa_bss_anqp_alloc()
69 return anqp; in wpa_bss_anqp_alloc()
78 static struct wpa_bss_anqp * wpa_bss_anqp_clone(struct wpa_bss_anqp *anqp) in wpa_bss_anqp_clone() argument
86 #define ANQP_DUP(f) if (anqp->f) n->f = wpabuf_dup(anqp->f) in wpa_bss_anqp_clone()
121 struct wpa_bss_anqp *anqp; in wpa_bss_anqp_unshare_alloc() local
123 if (bss->anqp && bss->anqp->users > 1) { in wpa_bss_anqp_unshare_alloc()
125 anqp = wpa_bss_anqp_clone(bss->anqp); in wpa_bss_anqp_unshare_alloc()
126 if (anqp == NULL) in wpa_bss_anqp_unshare_alloc()
128 anqp->users = 1; in wpa_bss_anqp_unshare_alloc()
129 bss->anqp->users--; in wpa_bss_anqp_unshare_alloc()
130 bss->anqp = anqp; in wpa_bss_anqp_unshare_alloc()
134 if (bss->anqp) in wpa_bss_anqp_unshare_alloc()
138 bss->anqp = wpa_bss_anqp_alloc(); in wpa_bss_anqp_unshare_alloc()
139 return bss->anqp ? 0 : -1; in wpa_bss_anqp_unshare_alloc()
147 static void wpa_bss_anqp_free(struct wpa_bss_anqp *anqp) in wpa_bss_anqp_free() argument
149 if (anqp == NULL) in wpa_bss_anqp_free()
152 anqp->users--; in wpa_bss_anqp_free()
153 if (anqp->users > 0) { in wpa_bss_anqp_free()
159 wpabuf_free(anqp->capability_list); in wpa_bss_anqp_free()
160 wpabuf_free(anqp->venue_name); in wpa_bss_anqp_free()
161 wpabuf_free(anqp->network_auth_type); in wpa_bss_anqp_free()
162 wpabuf_free(anqp->roaming_consortium); in wpa_bss_anqp_free()
163 wpabuf_free(anqp->ip_addr_type_availability); in wpa_bss_anqp_free()
164 wpabuf_free(anqp->nai_realm); in wpa_bss_anqp_free()
165 wpabuf_free(anqp->anqp_3gpp); in wpa_bss_anqp_free()
166 wpabuf_free(anqp->domain_name); in wpa_bss_anqp_free()
169 wpabuf_free(anqp->hs20_capability_list); in wpa_bss_anqp_free()
170 wpabuf_free(anqp->hs20_operator_friendly_name); in wpa_bss_anqp_free()
171 wpabuf_free(anqp->hs20_wan_metrics); in wpa_bss_anqp_free()
172 wpabuf_free(anqp->hs20_connection_capability); in wpa_bss_anqp_free()
173 wpabuf_free(anqp->hs20_operating_class); in wpa_bss_anqp_free()
174 wpabuf_free(anqp->hs20_osu_providers_list); in wpa_bss_anqp_free()
177 os_free(anqp); in wpa_bss_anqp_free()
230 wpa_bss_anqp_free(bss->anqp); in wpa_bss_remove()