61d25396f657f331cf32a0f846280e7418bcf1c7
[platform/core/connectivity/net-config.git] / include / wifi-wps.h
1 /*
2  * Network Configuration Module
3  *
4  * Copyright (c) 2000 - 2012 Samsung Electronics Co., Ltd. All rights reserved.
5  *
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
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
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.
17  *
18  */
19
20 #ifndef __NETCONFIG_WIFI_WPS_H__
21 #define __NETCONFIG_WIFI_WPS_H__
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 #include "wifi.h"
28
29 /* WPS Errors */
30 #define WPS_CFG_NO_ERROR 0
31 #define WPS_CFG_MSG_TIMEOUT 16
32 #define WPS_EI_NO_ERROR 0
33 #define WPS_EI_OPERATION_FAILED 1
34
35 gboolean netconfig_wifi_is_wps_enabled(void);
36
37 void netconfig_wifi_wps_signal_scandone(void);
38 void netconfig_wifi_wps_signal_scanaborted(void);
39
40 gboolean handle_request_wps_scan(Wifi *wifi, GDBusMethodInvocation *context);
41 gboolean handle_request_wps_connect(Wifi *wifi, GDBusMethodInvocation *context, gchar *param);
42 gboolean handle_request_wps_cancel(Wifi *wifi, GDBusMethodInvocation *context);
43 void netconfig_wifi_notify_wps_completed(const char *ssid, gsize ssid_len);
44 void netconfig_wifi_notify_wps_fail_event(int config_error, int error_indication);
45 void netconfig_wifi_notify_wps_credentials(const char *ssid, gsize ssid_len, const char *wps_key);
46 gboolean netconfig_get_wps_field();
47 gboolean netconfig_wifi_wps_connect();
48
49 #ifdef __cplusplus
50 }
51 #endif
52
53 #endif /* __NETCONFIG_WIFI_WPS_H__ */