summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-08 13:20:30 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2005-04-08 13:20:30 +0000
commit1b0b013f32599f2fc60164eb2868b198b259fc5d (patch)
tree3393e1d92a6800a8ab57b049b96ba63536a85d1c
parent1046b790e3b760808cf8d6c50f559821050a78f2 (diff)
add some ioctl stuff from wrt54gs.2.06 source
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@582 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--openwrt/package/openwrt/include/wlioctl.h43
1 files changed, 43 insertions, 0 deletions
diff --git a/openwrt/package/openwrt/include/wlioctl.h b/openwrt/package/openwrt/include/wlioctl.h
index 6768955e9e..84b6272e49 100644
--- a/openwrt/package/openwrt/include/wlioctl.h
+++ b/openwrt/package/openwrt/include/wlioctl.h
@@ -459,6 +459,48 @@ typedef struct {
struct ether_addr ea;
} scb_val_t;
+/* callback registration data types */
+
+typedef struct _mac_event_params {
+ uint msg;
+ struct ether_addr *addr;
+ uint result;
+ uint status;
+ uint auth_type;
+} mac_event_params_t;
+
+typedef struct _mic_error_params {
+ struct ether_addr *ea;
+ bool group;
+ bool flush_txq;
+} mic_error_params_t;
+
+typedef enum _wl_callback {
+ WL_MAC_EVENT_CALLBACK = 0,
+ WL_LINK_UP_CALLBACK,
+ WL_LINK_DOWN_CALLBACK,
+ WL_MIC_ERROR_CALLBACK,
+ WL_LAST_CALLBACK
+} wl_callback_t;
+
+typedef struct _callback {
+ void (*fn)(void *, void *);
+ void *context;
+} callback_t;
+
+typedef struct _scan_callback {
+ void (*fn)(void *);
+ void *context;
+} scan_callback_t;
+
+/* used to register an arbitrary callback via the IOCTL interface */
+typedef struct _set_callback {
+ int index;
+ callback_t callback;
+} set_callback_t;
+
+
+
/* Event data type */
typedef struct {
uint msg; /* Message (see below) */
@@ -838,6 +880,7 @@ typedef struct wlc_rev_info {
#define WLC_SET_WET 231
#define WLC_GET_KEY_PRIMARY 235
#define WLC_SET_KEY_PRIMARY 236
+#define WLC_SCAN_WITH_CALLBACK 240
#define WLC_WDS_GET_REMOTE_HWADDR 246 /* currently handled in wl_linux.c/wl_vx.c */
#define WLC_SET_CS_SCAN_TIMER 248
#define WLC_GET_CS_SCAN_TIMER 249