summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/pci/if_wpi.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/pci/if_wpi.c b/sys/dev/pci/if_wpi.c
index e3cc5ed5bbd..8fb7b06bc17 100644
--- a/sys/dev/pci/if_wpi.c
+++ b/sys/dev/pci/if_wpi.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_wpi.c,v 1.34 2006/10/23 18:19:26 damien Exp $ */
+/* $OpenBSD: if_wpi.c,v 1.35 2006/11/01 11:25:01 damien Exp $ */
/*-
* Copyright (c) 2006
@@ -790,6 +790,10 @@ wpi_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
ic->ic_state = nstate;
return 0;
+ case IEEE80211_S_ASSOC:
+ if (ic->ic_state != IEEE80211_S_RUN)
+ break;
+ /* FALLTHROUGH */
case IEEE80211_S_AUTH:
/* reset state to handle reassociations correctly */
sc->config.state = 0;
@@ -845,7 +849,6 @@ wpi_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
wpi_set_led(sc, WPI_LED_LINK, 0, 1);
break;
- case IEEE80211_S_ASSOC:
case IEEE80211_S_INIT:
break;
}