driver.h revision a399b7655a1d835aa8606c2b29e4e777baac8635
f808c858fa61e7769218966759510a8b1190dfcfraf/*
f808c858fa61e7769218966759510a8b1190dfcfraf * Copyright 2007 Sun Microsystems, Inc. All rights reserved.
f808c858fa61e7769218966759510a8b1190dfcfraf * Use is subject to license terms.
f808c858fa61e7769218966759510a8b1190dfcfraf */
f808c858fa61e7769218966759510a8b1190dfcfraf
f808c858fa61e7769218966759510a8b1190dfcfraf/*
f808c858fa61e7769218966759510a8b1190dfcfraf * Copyright (c) 2003-2004, Jouni Malinen <jkmaline@cc.hut.fi>
f808c858fa61e7769218966759510a8b1190dfcfraf * Sun elects to license this software under the BSD license.
f808c858fa61e7769218966759510a8b1190dfcfraf * See README for more details.
f808c858fa61e7769218966759510a8b1190dfcfraf */
f808c858fa61e7769218966759510a8b1190dfcfraf#ifndef __DRIVER_H
f808c858fa61e7769218966759510a8b1190dfcfraf#define __DRIVER_H
f808c858fa61e7769218966759510a8b1190dfcfraf
f808c858fa61e7769218966759510a8b1190dfcfraf#pragma ident "%Z%%M% %I% %E% SMI"
f808c858fa61e7769218966759510a8b1190dfcfraf
f808c858fa61e7769218966759510a8b1190dfcfraf#include <libdlwlan.h>
f808c858fa61e7769218966759510a8b1190dfcfraf
f808c858fa61e7769218966759510a8b1190dfcfraf#ifdef __cplusplus
f808c858fa61e7769218966759510a8b1190dfcfrafextern "C" {
f808c858fa61e7769218966759510a8b1190dfcfraf#endif
f808c858fa61e7769218966759510a8b1190dfcfraf
cd3e933325e68e23516a196a8fea7f49b1e497c3Ali Bahramitypedef enum { WPA_ALG_NONE, WPA_ALG_WEP, WPA_ALG_TKIP, WPA_ALG_CCMP } wpa_alg;
f808c858fa61e7769218966759510a8b1190dfcfraftypedef enum { CIPHER_NONE, CIPHER_WEP40, CIPHER_TKIP, CIPHER_CCMP,
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami CIPHER_WEP104 } wpa_cipher;
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahramitypedef enum { KEY_MGMT_802_1X, KEY_MGMT_PSK, KEY_MGMT_NONE } wpa_key_mgmt;
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahramistruct wpa_driver_ops {
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*get_bssid)(const char *, char *);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*get_ssid)(const char *ifname, char *);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*set_wpa)(const char *, boolean_t);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*set_key)(const char *, wpa_alg, uint8_t *,
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int, boolean_t, uint8_t *, uint32_t, uint8_t *, uint32_t);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*scan)(const char *);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*get_scan_results)(const char *, dladm_wlan_ess_t *, uint32_t);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*disassociate)(const char *, int);
bfed486ad8de8b8ebc6345a8e10accae08bf2f45Ali Bahrami int (*associate)(const char *, const char *, uint8_t *, uint32_t);
f808c858fa61e7769218966759510a8b1190dfcfraf};
f808c858fa61e7769218966759510a8b1190dfcfraf
cd3e933325e68e23516a196a8fea7f49b1e497c3Ali Bahrami#ifdef __cplusplus
cd3e933325e68e23516a196a8fea7f49b1e497c3Ali Bahrami}
cd3e933325e68e23516a196a8fea7f49b1e497c3Ali Bahrami#endif
f808c858fa61e7769218966759510a8b1190dfcfraf
f808c858fa61e7769218966759510a8b1190dfcfraf#endif /* __DRIVER_H */
f808c858fa61e7769218966759510a8b1190dfcfraf