1 //------------------------------------------------------------------------------ 2 // <copyright file="discovery.h" company="Atheros"> 3 // Copyright (c) 2004-2010 Atheros Corporation. All rights reserved. 4 // 5 // 6 // Permission to use, copy, modify, and/or distribute this software for any 7 // purpose with or without fee is hereby granted, provided that the above 8 // copyright notice and this permission notice appear in all copies. 9 // 10 // THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11 // WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12 // MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 13 // ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14 // WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 15 // ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 16 // OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17 // 18 // 19 //------------------------------------------------------------------------------ 20 //============================================================================== 21 // Author(s): ="Atheros" 22 //============================================================================== 23 24 #ifndef _DISCOVERY_H_ 25 #define _DISCOVERY_H_ 26 27 /* 28 * DC_SCAN_PRIORITY is an 8-bit bitmap of the scan priority of a channel 29 */ 30 typedef enum { 31 DEFAULT_SCPRI = 0x01, 32 POPULAR_SCPRI = 0x02, 33 SSIDS_SCPRI = 0x04, 34 PROF_SCPRI = 0x08, 35 } DC_SCAN_PRIORITY; 36 37 /* The following search type construct can be used to manipulate the behavior of the search module based on different bits set */ 38 typedef enum { 39 SCAN_RESET = 0, 40 SCAN_ALL = (DEFAULT_SCPRI | POPULAR_SCPRI | \ 41 SSIDS_SCPRI | PROF_SCPRI), 42 43 SCAN_POPULAR = (POPULAR_SCPRI | SSIDS_SCPRI | PROF_SCPRI), 44 SCAN_SSIDS = (SSIDS_SCPRI | PROF_SCPRI), 45 SCAN_PROF_MASK = (PROF_SCPRI), 46 SCAN_MULTI_CHANNEL = 0x000100, 47 SCAN_DETERMINISTIC = 0x000200, 48 SCAN_PROFILE_MATCH_TERMINATED = 0x000400, 49 SCAN_HOME_CHANNEL_SKIP = 0x000800, 50 SCAN_CHANNEL_LIST_CONTINUE = 0x001000, 51 SCAN_CURRENT_SSID_SKIP = 0x002000, 52 SCAN_ACTIVE_PROBE_DISABLE = 0x004000, 53 SCAN_CHANNEL_HINT_ONLY = 0x008000, 54 SCAN_ACTIVE_CHANNELS_ONLY = 0x010000, 55 SCAN_UNUSED1 = 0x020000, /* unused */ 56 SCAN_PERIODIC = 0x040000, 57 SCAN_FIXED_DURATION = 0x080000, 58 SCAN_AP_ASSISTED = 0x100000, 59 } DC_SCAN_TYPE; 60 61 typedef enum { 62 BSS_REPORTING_DEFAULT = 0x0, 63 EXCLUDE_NON_SCAN_RESULTS = 0x1, /* Exclude results outside of scan */ 64 } DC_BSS_REPORTING_POLICY; 65 66 typedef enum { 67 DC_IGNORE_WPAx_GROUP_CIPHER = 0x01, 68 DC_PROFILE_MATCH_DONE = 0x02, 69 DC_IGNORE_AAC_BEACON = 0x04, 70 DC_CSA_FOLLOW_BSS = 0x08, 71 } DC_PROFILE_FILTER; 72 73 #define DEFAULT_DC_PROFILE_FILTER (DC_CSA_FOLLOW_BSS) 74 75 #endif /* _DISCOVERY_H_ */ 76