move definitions of channels attributes away from ieee80211.h such
authordamien <damien@openbsd.org>
Wed, 27 Aug 2008 10:58:01 +0000 (10:58 +0000)
committerdamien <damien@openbsd.org>
Wed, 27 Aug 2008 10:58:01 +0000 (10:58 +0000)
that ieee80211.h contains only definitions that are part of the
802.11 standard and not constants used internally by net80211.
because channels attributes are exported to userland through the
radiotap BPF interface, add the definitions to ieee80211_radiotap.h
too (which must be kept in sync with what is used in net80211).
also, do not export combinations of channel attributes to userland
so that noone get stupid ideas.

sys/net80211/ieee80211.h
sys/net80211/ieee80211_radiotap.h
sys/net80211/ieee80211_var.h

index dc8a1cf..7590599 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ieee80211.h,v 1.44 2008/08/12 19:40:13 damien Exp $   */
+/*     $OpenBSD: ieee80211.h,v 1.45 2008/08/27 10:58:01 damien Exp $   */
 /*     $NetBSD: ieee80211.h,v 1.6 2004/04/30 23:51:53 dyoung Exp $     */
 
 /*-
@@ -632,35 +632,4 @@ enum {
        IEEE80211_KDE_IGTK      = 9     /* 11w */
 };
 
-/*
- * Channel attributes (not 802.11 but exported by radiotap).
- */
-#define IEEE80211_CHAN_TURBO   0x0010  /* Turbo channel */
-#define IEEE80211_CHAN_CCK     0x0020  /* CCK channel */
-#define IEEE80211_CHAN_OFDM    0x0040  /* OFDM channel */
-#define IEEE80211_CHAN_2GHZ    0x0080  /* 2 GHz spectrum channel */
-#define IEEE80211_CHAN_5GHZ    0x0100  /* 5 GHz spectrum channel */
-#define IEEE80211_CHAN_PASSIVE 0x0200  /* Only passive scan allowed */
-#define IEEE80211_CHAN_DYN     0x0400  /* Dynamic CCK-OFDM channel */
-#define IEEE80211_CHAN_GFSK    0x0800  /* GFSK channel (FHSS PHY) */
-#define IEEE80211_CHAN_XR      0x1000  /* Extended range OFDM channel */
-
-/*
- * Useful combinations of channel characteristics.
- */
-#define IEEE80211_CHAN_FHSS \
-       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_GFSK)
-#define IEEE80211_CHAN_A \
-       (IEEE80211_CHAN_5GHZ | IEEE80211_CHAN_OFDM)
-#define IEEE80211_CHAN_B \
-       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_CCK)
-#define IEEE80211_CHAN_PUREG \
-       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_OFDM)
-#define IEEE80211_CHAN_G \
-       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_DYN)
-#define IEEE80211_CHAN_T \
-       (IEEE80211_CHAN_5GHZ | IEEE80211_CHAN_OFDM | IEEE80211_CHAN_TURBO)
-#define IEEE80211_CHAN_TG \
-       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_OFDM | IEEE80211_CHAN_TURBO)
-
 #endif /* _NET80211_IEEE80211_H_ */
index 72bb526..b350e68 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ieee80211_radiotap.h,v 1.9 2008/08/27 10:01:18 damien Exp $ */
+/* $OpenBSD: ieee80211_radiotap.h,v 1.10 2008/08/27 10:58:01 damien Exp $ */
 /* $FreeBSD: src/sys/net80211/ieee80211_radiotap.h,v 1.3 2004/04/05 22:13:21 sam Exp $ */
 /* $NetBSD: ieee80211_radiotap.h,v 1.9 2004/06/06 04:13:28 dyoung Exp $ */
 
@@ -188,6 +188,19 @@ enum ieee80211_radiotap_type {
        IEEE80211_RADIOTAP_EXT = 31
 };
 
+#ifndef _KERNEL
+/* For IEEE80211_RADIOTAP_CHANNEL */
+#define IEEE80211_CHAN_TURBO   0x0010  /* Turbo channel */
+#define IEEE80211_CHAN_CCK     0x0020  /* CCK channel */
+#define IEEE80211_CHAN_OFDM    0x0040  /* OFDM channel */
+#define IEEE80211_CHAN_2GHZ    0x0080  /* 2 GHz spectrum channel */
+#define IEEE80211_CHAN_5GHZ    0x0100  /* 5 GHz spectrum channel */
+#define IEEE80211_CHAN_PASSIVE 0x0200  /* Only passive scan allowed */
+#define IEEE80211_CHAN_DYN     0x0400  /* Dynamic CCK-OFDM channel */
+#define IEEE80211_CHAN_GFSK    0x0800  /* GFSK channel (FHSS PHY) */
+#define IEEE80211_CHAN_XR      0x1000  /* Extended range OFDM channel */
+#endif /* !_KERNEL */
+
 /* For IEEE80211_RADIOTAP_FLAGS */
 #define        IEEE80211_RADIOTAP_F_CFP        0x01    /* sent/received
                                                 * during CFP
index 4dc7b89..3d9e1d8 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ieee80211_var.h,v 1.47 2008/08/27 09:05:04 damien Exp $       */
+/*     $OpenBSD: ieee80211_var.h,v 1.48 2008/08/27 10:58:01 damien Exp $       */
 /*     $NetBSD: ieee80211_var.h,v 1.7 2004/05/06 03:07:10 dyoung Exp $ */
 
 /*-
@@ -100,6 +100,37 @@ struct ieee80211_channel {
        u_int16_t       ic_flags;       /* see below */
 };
 
+/*
+ * Channel attributes (XXX must keep in sync with radiotap flags).
+ */
+#define IEEE80211_CHAN_TURBO   0x0010  /* Turbo channel */
+#define IEEE80211_CHAN_CCK     0x0020  /* CCK channel */
+#define IEEE80211_CHAN_OFDM    0x0040  /* OFDM channel */
+#define IEEE80211_CHAN_2GHZ    0x0080  /* 2 GHz spectrum channel */
+#define IEEE80211_CHAN_5GHZ    0x0100  /* 5 GHz spectrum channel */
+#define IEEE80211_CHAN_PASSIVE 0x0200  /* Only passive scan allowed */
+#define IEEE80211_CHAN_DYN     0x0400  /* Dynamic CCK-OFDM channel */
+#define IEEE80211_CHAN_GFSK    0x0800  /* GFSK channel (FHSS PHY) */
+#define IEEE80211_CHAN_XR      0x1000  /* Extended range OFDM channel */
+
+/*
+ * Useful combinations of channel characteristics.
+ */
+#define IEEE80211_CHAN_FHSS \
+       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_GFSK)
+#define IEEE80211_CHAN_A \
+       (IEEE80211_CHAN_5GHZ | IEEE80211_CHAN_OFDM)
+#define IEEE80211_CHAN_B \
+       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_CCK)
+#define IEEE80211_CHAN_PUREG \
+       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_OFDM)
+#define IEEE80211_CHAN_G \
+       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_DYN)
+#define IEEE80211_CHAN_T \
+       (IEEE80211_CHAN_5GHZ | IEEE80211_CHAN_OFDM | IEEE80211_CHAN_TURBO)
+#define IEEE80211_CHAN_TG \
+       (IEEE80211_CHAN_2GHZ | IEEE80211_CHAN_OFDM | IEEE80211_CHAN_TURBO)
+
 #define        IEEE80211_IS_CHAN_FHSS(_c) \
        (((_c)->ic_flags & IEEE80211_CHAN_FHSS) == IEEE80211_CHAN_FHSS)
 #define        IEEE80211_IS_CHAN_A(_c) \