wihap_sta_disassoc(sc, sta,
wihap_sta_disassoc(sc, sta->addr,
wihap_shutdown(struct wi_softc *sc){	struct wihap_info	*whi = &sc->wi_hostap_info;	struct wihap_sta_info	*sta, *next;	int s;	if (sc->sc_arpcom.ac_if.if_flags & IFF_DEBUG)		printf("wihap_shutdown: sc=0x%x whi=0x%x\n", sc, whi);	if (!(whi->apflags & WIHAPFL_ACTIVE))		return;	whi->apflags = 0;	/* XXX: I read somewhere you can deauth all the stations with	 * a single broadcast.  Maybe try that someday.	 */	s = splimp();	sta = LIST_FIRST(&whi->sta_list);	while (sta) {		timeout_del(&sta->tmo);		if (sc->wi_flags & WI_FLAGS_ATTACHED) {			/* Disassociate station. */			if (sta->flags & WI_SIFLAGS_ASSOC)				wihap_sta_disassoc(sc, sta,				    IEEE80211_REASON_ASSOC_LEAVE);			/* Deauth station. */			if (sta->flags & WI_SIFLAGS_AUTHEN)				wihap_sta_deauth(sc, sta->addr,				    IEEE80211_REASON_AUTH_LEAVE);		}		/* Delete the structure. */		if (sc->sc_arpcom.ac_if.if_flags & IFF_DEBUG)			printf("wihap_shutdown: FREE(sta=0x%x)\n", sta);		next = LIST_NEXT(sta, list);		FREE(sta, M_DEVBUF);		sta = next;	}	splx(s);}