summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcus Glocker <mglocker@cvs.openbsd.org>2006-09-26 21:32:50 +0000
committerMarcus Glocker <mglocker@cvs.openbsd.org>2006-09-26 21:32:50 +0000
commitb7a54130b044a851a4cee4c8f3c299804332715b (patch)
treec8928367e0592d8f11bfc90864750837329a9adb
parent560bcae1083a8f950d11914c74dcb10b92aeca15 (diff)
Start to get HostAP mode working for pgt(4). Works at the first try,
but surely needs more testing and some more modifications.
-rw-r--r--share/man/man4/pgt.48
-rw-r--r--sys/dev/ic/pgt.c18
2 files changed, 9 insertions, 17 deletions
diff --git a/share/man/man4/pgt.4 b/share/man/man4/pgt.4
index b145210305b..dc42e27143f 100644
--- a/share/man/man4/pgt.4
+++ b/share/man/man4/pgt.4
@@ -1,4 +1,4 @@
-.\" $OpenBSD: pgt.4,v 1.7 2006/09/24 08:18:25 jmc Exp $
+.\" $OpenBSD: pgt.4,v 1.8 2006/09/26 21:32:49 mglocker Exp $
.\"
.\" Copyright (c) 2006 Theo de Raadt.
.\" Copyright (c) 2006 The DragonFly Project. All rights reserved.
@@ -69,9 +69,9 @@ This mode is the default.
.\" This is the standardized method of operating without an access point.
.\" Stations associate with a service set.
.\" However, actual connections between stations are peer-to-peer.
-.\" .It Host AP
-.\" In this mode the driver acts as an access point (base station)
-.\" for other cards.
+.It Host AP
+In this mode the driver acts as an access point (base station)
+for other cards.
.\" .It monitor mode
.\" In this mode the driver is able to receive packets without
.\" associating with an access point.
diff --git a/sys/dev/ic/pgt.c b/sys/dev/ic/pgt.c
index 71fe1fdb019..a2d3c739a6c 100644
--- a/sys/dev/ic/pgt.c
+++ b/sys/dev/ic/pgt.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pgt.c,v 1.14 2006/09/23 13:44:42 mglocker Exp $ */
+/* $OpenBSD: pgt.c,v 1.15 2006/09/26 21:32:49 mglocker Exp $ */
/*
* Copyright (c) 2006 Claudio Jeker <claudio@openbsd.org>
@@ -3298,9 +3298,6 @@ pgt_update_sw_from_hw(struct pgt_softc *sc, struct pgt_async_trap *pa,
int error, s;
if (pa != NULL) {
-#if 0
- struct pgt_obj_mlmeex *mlmeex;
-#endif
struct pgt_obj_mlme *mlme;
uint32_t oid;
@@ -3412,21 +3409,17 @@ pgt_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
ic->ic_if.if_timer = 0;
ic->ic_mgt_timer = 0;
ic->ic_flags &= ~IEEE80211_F_SIBSS;
-#if 0
- IF_DRAIN(&ic->ic_mgtq);
-#endif
if (ic->ic_wep_ctx != NULL) {
free(ic->ic_wep_ctx, M_DEVBUF);
ic->ic_wep_ctx = NULL;
}
ieee80211_free_allnodes(ic);
- ic->ic_state = nstate;
break;
case IEEE80211_S_SCAN:
-#if 0
ic->ic_if.if_timer = 1;
ic->ic_mgt_timer = 0;
if (sc->sc_flags & SC_NOFREE_ALLNODES) {
+#if 0
struct ieee80211_node *ni;
struct pgt_ieee80211_node *pin;
@@ -3435,15 +3428,14 @@ pgt_newstate(struct ieee80211com *ic, enum ieee80211_state nstate, int arg)
pin = (struct pgt_ieee80211_node *)ni;
pin->pin_dot1x_auth = PIN_DOT1X_UNAUTHORIZED;
}
+#endif
sc->sc_flags &= ~SC_NOFREE_ALLNODES;
- } else {
+ } else
ieee80211_free_allnodes(ic);
- }
- ic->ic_state = nstate;
+
/* Just use any old channel; we override it anyway. */
if (ic->ic_opmode == IEEE80211_M_HOSTAP)
ieee80211_create_ibss(ic, ic->ic_ibss_chan);
-#endif
break;
case IEEE80211_S_RUN:
ic->ic_if.if_timer = 1;