2 * Network Configuration Module
4 * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
6 * Licensed under the Apache License, Version 2.0 (the "License");
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 #ifndef __NETCONFIG_WIFI_NETLINK_SCAN_H__
21 #define __NETCONFIG_WIFI_NETLINK_SCAN_H__
29 #define NETCONFIG_SSID_LEN 32
30 #define NETCONFIG_BSSID_LEN 17
31 #define NETCONFIG_MAX_VSIE_LEN 255
32 #define NETCONFIG_VENDOR_SPECIFIC_ID 221
34 #define NL80211_CMD_SCAN_ABORTED 35
35 #define NL80211_CMD_GET_SCAN 32
36 #define NL80211_CMD_TRIGGER_SCAN 33
37 #define NL80211_CMD_NEW_SCAN_RESULTS 34
38 #define NL80211_BSS_BSSID 1
39 #define NL80211_BSS_FREQUENCY 2
40 #define NL80211_BSS_INFORMATION_ELEMENTS 6
41 #define NL80211_BSS_SIGNAL_MBM 7
42 #define NL80211_BSS_MAX 15
43 #define NL80211_ATTR_BSS 47
44 #define NL80211_ATTR_IFINDEX 3
45 #define NL80211_ATTR_IE 42
46 #define NL80211_ATTR_SCAN_SSIDS 45
47 #define NL80211_ATTR_MAX 221
49 struct bss_scan_info_t {
50 char bssid[NETCONFIG_BSSID_LEN+1];
51 char ssid[NETCONFIG_SSID_LEN+1];
52 char vsie[NETCONFIG_MAX_VSIE_LEN+1];
58 struct netconfig_netlink_scan_results {
63 struct netconfig_netlink_scan_handler_args {
71 struct nl_sock *socket;
73 } netconfig_nl_global;
75 void __netconfig_notify_netlink_scan_done(void);
76 int handle_netlink_scan(Wifi *wifi, GDBusMethodInvocation *context, GVariant *params);
82 #endif /* __NETCONFIG_WIFI_NETLINK_SCAN_H__ */