[net-config] Manage the MAX saved wireless profiles.
[platform/core/connectivity/net-config.git] / include / network-state.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_NETWORK_STATE_H__
21 #define __NETCONFIG_NETWORK_STATE_H__
22
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27 void netconfig_network_notify_ethernet_cable_state(const char *key);
28
29 const char *netconfig_get_default_profile(void);
30 const char *netconfig_get_default_ifname(void);
31 const char *netconfig_get_default_ipaddress(void);
32 const char *netconfig_get_default_ipaddress6(void);
33 const char *netconfig_get_default_proxy(void);
34 const char *netconfig_get_default_mac_address(void);
35 unsigned int netconfig_get_default_frequency(void);
36 const char *netconfig_wifi_get_connected_essid(const char *default_profile);
37 gboolean netconfig_get_default_is_metered(void);
38
39 void netconfig_update_default(void);
40 void netconfig_update_default_profile(const char *profile);
41 char *netconfig_get_ifname(const char *profile);
42
43 void state_object_create_and_init(void);
44 void state_object_deinit(void);
45
46 #define MAX_DNS 2
47 struct clatd_ctrl_hint {
48         char *nameserver[MAX_DNS];
49 };
50 char *netconfig_get_connected_cellular_internet_ipv6only_profile(struct clatd_ctrl_hint *hint);
51
52 #ifdef __cplusplus
53 }
54 #endif
55
56 #endif /* __NETCONFIG_NETWORK_STATE_H__ */