Using updated clatd's Dbus interface and Path values
[platform/core/connectivity/net-config.git] / include / wifi-config.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_CONFIG_H__
21 #define __NETCONFIG_WIFI_CONFIG_H__
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 #include "wifi.h"
28
29 // Configuration Field key
30 #define WIFI_CONFIG_NAME                                "Name"
31 #define WIFI_CONFIG_SSID                                "SSID"
32 #define WIFI_CONFIG_PASSPHRASE          "Passphrase"
33 #define WIFI_CONFIG_SECURITY_TYPE               "Security"
34 #define WIFI_CONFIG_FAVORITE                    "Favorite"
35 #define WIFI_CONFIG_AUTOCONNECT         "AutoConnect"
36 #define WIFI_CONFIG_HIDDEN                              "Hidden"
37 #define WIFI_CONFIG_CREATED                             "Created"
38 #define WIFI_CONFIG_IPV4_METHOD                 "IPv4.method"
39 #define WIFI_CONFIG_IPV6_METHOD                 "IPv6.method"
40 #define WIFI_CONFIG_IPV4_DNS_METHOD                     "Nameservers.IPv4method"
41 #define WIFI_CONFIG_IPV6_DNS_METHOD                     "Nameservers.IPv6method"
42 #define WIFI_CONFIG_IPV4_ADDRESS                        "IPv4.local_address"
43 #define WIFI_CONFIG_IPV4_SUBNET_MASK                    "IPv4.netmask_prefixlen"
44 #define WIFI_CONFIG_IPV6_PREFIX_LEN                     "IPv6.netmask_prefixlen"
45 #define WIFI_CONFIG_IPV4_GATEWAY_ADDRESS                "IPv4.gateway"
46 #define WIFI_CONFIG_DNS_ADDRESS                 "Nameservers"
47 #define WIFI_CONFIG_FAILURE                     "Failure"
48 #define WIFI_CONFIG_PROXYADDRESS                "ProxyAddress"
49 #define WIFI_CONFIG_PROXY_METHOD                "Proxy.Method"
50 #define WIFI_CONFIG_PROXY_SERVER                "Proxy.Servers"
51 #define WIFI_CONFIG_EAP_ANONYMOUS_IDENTITY                      "AnonymousIdentity"
52 #define WIFI_CONFIG_EAP_CACERT                  "CACertFile"
53 #define WIFI_CONFIG_EAP_CLIENTCERT                      "ClientCertFile"
54 #define WIFI_CONFIG_EAP_PRIVATEKEY              "PrivateKeyFile"
55 #define WIFI_CONFIG_EAP_PRIVATEKEY_PASSWORD     "PrivateKeyPassword"
56 #define WIFI_CONFIG_EAP_IDENTITY                "Identity"
57 #define WIFI_CONFIG_EAP_TYPE            "EapType"
58 #define WIFI_CONFIG_EAP_AUTH_TYPE       "EapAuthType"
59 #define WIFI_CONFIG_EAP_SUBJECT_MATCH   "SubjectMatch"
60
61 /**
62  * This enumeration is used in frame id value in vsie method calls
63  */
64 typedef enum {
65         NETCONFIG_VSIE_FRAME_ASSOC_REQ = 13,
66         NETCONFIG_VSIE_FRAME_PROBE_REQ = 14,
67         NETCONFIG_VSIE_FRAME_REASSOC = 15,
68         NETCONFIG_VSIE_FRAME_AUTH_REQ = 16,
69         NETCONFIG_VSIE_FRAME_ACTION = 17,
70         NETCONFIG_VSIE_FRAME_MAX
71 } netconfig_vsie_frames_e;
72
73 gboolean        wifi_config_get_config_id(const gchar *service_profile, gchar **config_id);
74 gboolean        wifi_config_remove_configuration(const gchar *config_id);
75 int __netconfig_hex_str_to_bin(const char *hex, unsigned char *buf, size_t len);
76 int __netconfig_hex_to_byte(const char *hex);
77 int __netconfig_hex_char_to_num(char c);
78
79 gboolean        handle_get_config_ids(Wifi *wifi, GDBusMethodInvocation *context);
80 gboolean        handle_load_configuration(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id);
81 gboolean        handle_save_configuration(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id, GVariant *configuration);
82 gboolean        handle_load_eap_configuration(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id);
83 gboolean        handle_save_eap_configuration(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id, GVariant *configuration);
84 gboolean        handle_remove_configuration(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id);
85 gboolean        handle_set_config_field(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id, const gchar *key, const gchar *value);
86 gboolean        handle_get_config_passphrase(Wifi *wifi, GDBusMethodInvocation *context, const gchar *config_id);
87
88 gboolean handle_add_vsie(Wifi *wifi, GDBusMethodInvocation *context, int frame_id, const gchar *vsie);
89 gboolean handle_get_vsie(Wifi *wifi, GDBusMethodInvocation *context, int frame_id);
90 gboolean handle_remove_vsie(Wifi *wifi, GDBusMethodInvocation *context, int frame_id, const gchar *vsie);
91
92 #ifdef __cplusplus
93 }
94 #endif
95
96 #endif /* __NETCONFIG_WIFI_CONFIG_H */