1a399b765Szf /* 2d62bc4baSyz * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 3a399b765Szf * Use is subject to license terms. 4a399b765Szf */ 5a399b765Szf 6a399b765Szf /* 7a399b765Szf * Copyright (c) 2003-2004, Jouni Malinen <jkmaline@cc.hut.fi> 8a399b765Szf * Sun elects to license this software under the BSD license. 9a399b765Szf * See README for more details. 10a399b765Szf */ 11a399b765Szf #ifndef __DRIVER_H 12a399b765Szf #define __DRIVER_H 13a399b765Szf 14a399b765Szf #include <libdlwlan.h> 15d62bc4baSyz #include <libdllink.h> 16a399b765Szf 17a399b765Szf #ifdef __cplusplus 18a399b765Szf extern "C" { 19a399b765Szf #endif 20a399b765Szf 21a399b765Szf typedef enum { WPA_ALG_NONE, WPA_ALG_WEP, WPA_ALG_TKIP, WPA_ALG_CCMP } wpa_alg; 22a399b765Szf typedef enum { CIPHER_NONE, CIPHER_WEP40, CIPHER_TKIP, CIPHER_CCMP, 23a399b765Szf CIPHER_WEP104 } wpa_cipher; 24a399b765Szf typedef enum { KEY_MGMT_802_1X, KEY_MGMT_PSK, KEY_MGMT_NONE } wpa_key_mgmt; 25a399b765Szf 26a399b765Szf struct wpa_driver_ops { 27*4ac67f02SAnurag S. Maskey int (*get_bssid)(dladm_handle_t, datalink_id_t, char *); 28*4ac67f02SAnurag S. Maskey int (*get_ssid)(dladm_handle_t, datalink_id_t, char *); 29*4ac67f02SAnurag S. Maskey int (*set_wpa)(dladm_handle_t, datalink_id_t, boolean_t); 30*4ac67f02SAnurag S. Maskey int (*set_key)(dladm_handle_t, datalink_id_t, wpa_alg, uint8_t *, 31a399b765Szf int, boolean_t, uint8_t *, uint32_t, uint8_t *, uint32_t); 32*4ac67f02SAnurag S. Maskey int (*scan)(dladm_handle_t, datalink_id_t); 33*4ac67f02SAnurag S. Maskey int (*get_scan_results)(dladm_handle_t, datalink_id_t, 34*4ac67f02SAnurag S. Maskey dladm_wlan_ess_t *, uint32_t); 35*4ac67f02SAnurag S. Maskey int (*disassociate)(dladm_handle_t, datalink_id_t, int); 36*4ac67f02SAnurag S. Maskey int (*associate)(dladm_handle_t, datalink_id_t, const char *, uint8_t *, 37*4ac67f02SAnurag S. Maskey uint32_t); 38a399b765Szf }; 39a399b765Szf 40a399b765Szf #ifdef __cplusplus 41a399b765Szf } 42a399b765Szf #endif 43a399b765Szf 44a399b765Szf #endif /* __DRIVER_H */ 45