2 * Copyright (c) 2011-2013 Samsung Electronics Co., Ltd All Rights Reserved
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
18 #ifndef __TIZEN_NETWORK_CONNECTION_PROFILE_H__
19 #define __TIZEN_NETWORK_CONNECTION_PROFILE_H__
31 * @file connection_profile.h
36 * @addtogroup CAPI_NETWORK_CONNECTION_WIFI_PROFILE_MODULE
42 * @brief Enumeration for security type of Wi-Fi.
43 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
46 CONNECTION_WIFI_SECURITY_TYPE_NONE = 0, /**< Security disabled */
47 CONNECTION_WIFI_SECURITY_TYPE_WEP = 1, /**< WEP */
48 CONNECTION_WIFI_SECURITY_TYPE_WPA_PSK = 2, /**< WPA-PSK */
49 CONNECTION_WIFI_SECURITY_TYPE_WPA2_PSK = 3, /**< WPA2-PSK */
50 CONNECTION_WIFI_SECURITY_TYPE_EAP = 4, /**< EAP */
51 } connection_wifi_security_type_e;
55 * @brief Enumeration for encryption modes.
56 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
59 CONNECTION_WIFI_ENCRYPTION_TYPE_NONE = 0, /**< Encryption disabled */
60 CONNECTION_WIFI_ENCRYPTION_TYPE_WEP = 1, /**< WEP */
61 CONNECTION_WIFI_ENCRYPTION_TYPE_TKIP = 2, /**< TKIP */
62 CONNECTION_WIFI_ENCRYPTION_TYPE_AES = 3, /**< AES */
63 CONNECTION_WIFI_ENCRYPTION_TYPE_TKIP_AES_MIXED = 4, /**< TKIP and AES are both supported */
64 } connection_wifi_encryption_type_e;
73 * @addtogroup CAPI_NETWORK_CONNECTION_CELLULAR_PROFILE_MODULE
79 * @brief Enumeration for cellular service type.
80 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
83 CONNECTION_CELLULAR_SERVICE_TYPE_UNKNOWN = 0, /**< Unknown */
84 CONNECTION_CELLULAR_SERVICE_TYPE_INTERNET = 1, /**< Internet */
85 CONNECTION_CELLULAR_SERVICE_TYPE_MMS = 2, /**< MMS */
86 CONNECTION_CELLULAR_SERVICE_TYPE_PREPAID_INTERNET = 3, /**< Prepaid internet */
87 CONNECTION_CELLULAR_SERVICE_TYPE_PREPAID_MMS = 4, /**< Prepaid MMS */
88 CONNECTION_CELLULAR_SERVICE_TYPE_TETHERING = 5, /**< Tethering */
89 CONNECTION_CELLULAR_SERVICE_TYPE_APPLICATION = 6, /**< Specific application */
90 } connection_cellular_service_type_e;
94 * @brief Enumeration for cellular pdn type.
96 * @remarks Use CONNECTION_CELLULAR_PDN_TYPE_IPV4_IPV6 instead of
97 * CONNECTION_CELLULAR_PDN_TYPE_IPV4_IPv6.
100 CONNECTION_CELLULAR_PDN_TYPE_UNKNOWN = 0, /**> Unknown */
101 CONNECTION_CELLULAR_PDN_TYPE_IPV4 = 1, /**> IPv4 */
102 CONNECTION_CELLULAR_PDN_TYPE_IPV6 = 2, /**> IPv6 */
103 CONNECTION_CELLULAR_PDN_TYPE_IPV4_IPv6 = 3, /**> IPv4 and IPv6 (Deprecated since 4.0)*/
104 CONNECTION_CELLULAR_PDN_TYPE_IPV4_IPV6 = 4, /**> IPv4 and IPv6 (Since 4.0)*/
105 } connection_cellular_pdn_type_e;
109 * @brief Enumeration for cellular authentication type.
110 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
113 CONNECTION_CELLULAR_AUTH_TYPE_NONE = 0, /**< No authentication */
114 CONNECTION_CELLULAR_AUTH_TYPE_PAP = 1, /**< PAP authentication */
115 CONNECTION_CELLULAR_AUTH_TYPE_CHAP = 2, /**< CHAP authentication */
116 } connection_cellular_auth_type_e;
125 * @addtogroup CAPI_NETWORK_CONNECTION_PROFILE_MODULE
131 * @brief The profile handle.
132 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
134 typedef void* connection_profile_h;
138 * @brief Enumeration for profile state type.
139 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
142 CONNECTION_PROFILE_STATE_DISCONNECTED = 0, /**< Disconnected state */
143 CONNECTION_PROFILE_STATE_ASSOCIATION = 1, /**< Association state */
144 CONNECTION_PROFILE_STATE_CONFIGURATION = 2, /**< Configuration state */
145 CONNECTION_PROFILE_STATE_CONNECTED = 3, /**< Connected state */
146 } connection_profile_state_e;
150 * @brief Enumeration for address family.
151 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
154 CONNECTION_ADDRESS_FAMILY_IPV4 = 0, /**< IPV4 Address type */
155 CONNECTION_ADDRESS_FAMILY_IPV6 = 1, /**< IPV6 Address type */
156 } connection_address_family_e;
160 * @brief Enumeration for IP configuration type.
161 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
164 CONNECTION_IP_CONFIG_TYPE_NONE = 0, /**< Not defined */
165 CONNECTION_IP_CONFIG_TYPE_STATIC = 1, /**< Manual IP configuration */
166 CONNECTION_IP_CONFIG_TYPE_DYNAMIC = 2, /**< Config IP using DHCP client*/
167 CONNECTION_IP_CONFIG_TYPE_AUTO = 3, /**< Config IP from Auto IP pool (169.254/16). Later with DHCP client, if available */
168 CONNECTION_IP_CONFIG_TYPE_FIXED = 4, /**< Indicates an IP address that can not be modified */
169 } connection_ip_config_type_e;
173 * @brief Enumeration for proxy method type.
174 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
177 CONNECTION_PROXY_TYPE_DIRECT = 0, /**< Direct connection */
178 CONNECTION_PROXY_TYPE_AUTO = 1, /**< Auto configuration(Use PAC file). If URL property is not set, DHCP/WPAD auto-discover will be tried */
179 CONNECTION_PROXY_TYPE_MANUAL = 2, /**< Manual configuration */
180 } connection_proxy_type_e;
183 * @brief Enumeration for DNS configuration type.
187 CONNECTION_DNS_CONFIG_TYPE_NONE = 0, /**< Not defined */
188 CONNECTION_DNS_CONFIG_TYPE_STATIC = 1, /**< Manual DNS configuration */
189 CONNECTION_DNS_CONFIG_TYPE_DYNAMIC = 2, /**< Config DNS using DHCP client*/
190 } connection_dns_config_type_e;
193 * @brief Enumeration for network connection type.
194 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
197 CONNECTION_PROFILE_TYPE_CELLULAR = 0, /**< Cellular type */
198 CONNECTION_PROFILE_TYPE_WIFI = 1, /**< Wi-Fi type */
199 CONNECTION_PROFILE_TYPE_ETHERNET = 2, /**< Ethernet type */
200 CONNECTION_PROFILE_TYPE_BT = 3, /**< Bluetooth type */
201 } connection_profile_type_e;
205 * @brief Creates a profile handle.
206 * @details The profile name, which you get from connection_profile_get_name(), will include the keyword you set.
207 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
209 * @privilege %http://tizen.org/privilege/network.get
210 * @remarks You must release @a profile using connection_profile_destroy().
211 * @param[in] type The type of profile \n
212 * #CONNECTION_PROFILE_TYPE_CELLULAR and #CONNECTION_PROFILE_TYPE_WIFI are supported
213 * @param[in] keyword The keyword included in profile name
214 * @param[out] profile The handle of the profile
215 * @return @c 0 on success,
216 * otherwise negative error value
217 * @retval #CONNECTION_ERROR_NONE Successful
218 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
219 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
220 * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied
221 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
222 * @see connection_profile_destroy()
223 * @see connection_profile_get_name()
225 int connection_profile_create(connection_profile_type_e type, const char* keyword, connection_profile_h* profile);
229 * @brief Destroys a profile handle.
230 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
231 * @param[out] profile The handle to the profile
232 * @return @c 0 on success,
233 * otherwise a negative error value
234 * @retval #CONNECTION_ERROR_NONE Successful
235 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
236 * @see connection_profile_create()
238 int connection_profile_destroy(connection_profile_h profile);
242 * @brief Clones a profile handle.
244 * @remarks You must release @a cloned_profile using connection_profile_destroy().
245 * @param[out] cloned_profile The handle of the cloned profile
246 * @param[in] origin_profile The handle of the origin profile
247 * @return @c 0 on success,
248 * otherwise a negative error value
249 * @retval #CONNECTION_ERROR_NONE Successful
250 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
251 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
252 * @see connection_profile_destroy()
254 int connection_profile_clone(connection_profile_h* cloned_profile, connection_profile_h origin_profile);
258 * @brief Gets the profile ID.
259 * @details The separate profiles can have the same name.
260 * So, you must use this API instead of connection_profile_get_name() if you want to get the unique identification.
261 * In case you create a profile, this value will be determined when you add the profile.
262 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
263 * @remarks You must release @a profile_id using free().
264 * @param[in] profile The profile handle
265 * @param[out] profile_id The ID of the profile
266 * @return @c 0 on success,
267 * otherwise a negative error value
268 * @retval #CONNECTION_ERROR_NONE Successful
269 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
270 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
271 * @see connection_profile_get_name()
272 * @see connection_add_profile()
274 int connection_profile_get_id(connection_profile_h profile, char** profile_id);
278 * @brief Gets the profile name.
279 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
280 * @remarks You must release @a profile_name using free().
281 * @param[in] profile The profile handle
282 * @param[out] profile_name The name of the profile
283 * @return @c 0 on success,
284 * otherwise a negative error value
285 * @retval #CONNECTION_ERROR_NONE Successful
286 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
287 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
288 * @see connection_profile_get_id()
290 int connection_profile_get_name(connection_profile_h profile, char** profile_name);
294 * @brief Gets the network type.
295 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
296 * @param[in] profile The profile handle
297 * @param[out] type The type of the profile
298 * @return @c 0 on success,
299 * otherwise a negative error value
300 * @retval #CONNECTION_ERROR_NONE Successful
301 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
302 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
304 int connection_profile_get_type(connection_profile_h profile, connection_profile_type_e* type);
308 * @brief Gets the name of the network interface, e.g. eth0 and pdp0.
309 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
310 * @remarks You must release @a interface_name using free().
311 * @param[in] profile The profile handle
312 * @param[out] interface_name The name of the network interface
313 * @return @c 0 on success,
314 * otherwise a negative error value
315 * @retval #CONNECTION_ERROR_NONE Successful
316 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
317 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
319 int connection_profile_get_network_interface_name(connection_profile_h profile, char** interface_name);
323 * @brief Refreshes the profile information.
324 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
326 * @privilege %http://tizen.org/privilege/network.get
327 * @remarks You should call this function in order to get the current information because the profile information can be changed.
328 * @param[in] profile The profile handle
329 * @return @c 0 on success,
330 * otherwise a negative error value
331 * @retval #CONNECTION_ERROR_NONE Successful
332 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
333 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
334 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
335 * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied
337 int connection_profile_refresh(connection_profile_h profile);
341 * @brief Gets the network type.
342 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
343 * @param[in] profile The profile handle
344 * @param[out] state The state of the profile
345 * @return @c 0 on success,
346 * otherwise a negative error value
347 * @retval #CONNECTION_ERROR_NONE Successful
348 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
349 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
351 int connection_profile_get_state(connection_profile_h profile, connection_profile_state_e* state);
355 * @brief Gets the IP config type.
356 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
357 * @param[in] profile The profile handle
358 * @param[in] address_family The address family
359 * @param[out] type The type of the IP config
360 * @return @c 0 on success,
361 * otherwise a negative error value
362 * @retval #CONNECTION_ERROR_NONE Successful
363 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
364 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
366 int connection_profile_get_ip_config_type(connection_profile_h profile, connection_address_family_e address_family, connection_ip_config_type_e* type);
370 * @brief Gets the IP address.
371 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
372 * @remarks You must release @a ip_address using free().
373 * @param[in] profile The profile handle
374 * @param[in] address_family The address family
375 * @param[out] ip_address The IP address
376 * @return @c 0 on success,
377 * otherwise a negative error value
378 * @retval #CONNECTION_ERROR_NONE Successful
379 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
380 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
381 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
382 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
384 int connection_profile_get_ip_address(connection_profile_h profile, connection_address_family_e address_family, char** ip_address);
388 * @brief Gets the Subnet Mask.
389 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
390 * @remarks You must release @a subnet_mask using free().
391 * @param[in] profile The profile handle
392 * @param[in] address_family The address family
393 * @param[out] subnet_mask The subnet mask
394 * @return @c 0 on success,
395 * otherwise a negative error value
396 * @retval #CONNECTION_ERROR_NONE Successful
397 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
398 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
399 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
400 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
402 int connection_profile_get_subnet_mask(connection_profile_h profile, connection_address_family_e address_family, char** subnet_mask);
406 * @brief Gets the Gateway address.
407 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
408 * @remarks You must release @a gateway_address using free().
409 * @param[in] profile The profile handle
410 * @param[in] address_family The address family
411 * @param[out] gateway_address The gateway address
412 * @return @c 0 on success,
413 * otherwise a negative error value
414 * @retval #CONNECTION_ERROR_NONE Successful
415 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
416 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
417 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
418 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
420 int connection_profile_get_gateway_address(connection_profile_h profile, connection_address_family_e address_family, char** gateway_address);
424 * @brief Gets the DNS address.
425 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
426 * @remarks The allowance of the DNS address is @c 2. You must release @a dns_address using free().
427 * @param[in] profile The profile handle
428 * @param[in] order The order of DNS address \n
429 * it starts from 1, which means first DNS address
430 * @param[in] address_family The address family
431 * @param[out] dns_address The DNS address
432 * @return @c 0 on success,
433 * otherwise a negative error value
434 * @retval #CONNECTION_ERROR_NONE Successful
435 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
436 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
437 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
438 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
440 int connection_profile_get_dns_address(connection_profile_h profile, int order, connection_address_family_e address_family, char** dns_address);
444 * @brief Gets the Proxy type.
445 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
446 * @param[in] profile The profile handle
447 * @param[out] type The type of the proxy
448 * @return @c 0 on success,
449 * otherwise a negative error value
450 * @retval #CONNECTION_ERROR_NONE Successful
451 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
452 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
454 int connection_profile_get_proxy_type(connection_profile_h profile, connection_proxy_type_e* type);
458 * @brief Gets the Proxy address.
459 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
460 * @remarks You must release @a proxy_address using free().
461 * @param[in] profile The profile handle
462 * @param[in] address_family The address family
463 * @param[out] proxy_address The proxy address
464 * @return @c 0 on success,
465 * otherwise a negative error value
466 * @retval #CONNECTION_ERROR_NONE Successful
467 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
468 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
469 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
470 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
472 int connection_profile_get_proxy_address(connection_profile_h profile, connection_address_family_e address_family, char** proxy_address);
476 * @brief Sets the IP config type.
477 * @details If you set IP config type to #CONNECTION_IP_CONFIG_TYPE_STATIC,
478 * then IP address, Gateway and Subnet mask will be set to the initial value "0.0.0.0".
479 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
480 * @param[in] profile The profile handle
481 * @param[in] address_family The address family
482 * @param[in] type The type of the IP config
483 * @return @c 0 on success,
484 * otherwise a negative error value
485 * @retval #CONNECTION_ERROR_NONE Successful
486 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
487 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
489 int connection_profile_set_ip_config_type(connection_profile_h profile, connection_address_family_e address_family, connection_ip_config_type_e type);
493 * @brief Sets the IP address.
494 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
495 * @param[in] profile The profile handle
496 * @param[in] address_family The address family
497 * @param[in] ip_address The IP address. \n
498 * If you set this value to @c NULL, then the existing value will be deleted
499 * @return @c 0 on success,
500 * otherwise a negative error value
501 * @retval #CONNECTION_ERROR_NONE Successful
502 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
503 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
504 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
505 * @see connection_update_profile()
507 int connection_profile_set_ip_address(connection_profile_h profile, connection_address_family_e address_family, const char* ip_address);
511 * @brief Sets the Subnet Mask.
512 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
513 * @param[in] profile The profile handle
514 * @param[in] address_family The address family
515 * @param[in] subnet_mask The subnet mask. \n
516 * If you set this value to @c NULL, then the existing value will be deleted
517 * @return @c 0 on success,
518 * otherwise a negative error value
519 * @retval #CONNECTION_ERROR_NONE Successful
520 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
521 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
522 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
523 * @see connection_update_profile()
525 int connection_profile_set_subnet_mask(connection_profile_h profile, connection_address_family_e address_family, const char* subnet_mask);
529 * @brief Sets the Gateway address.
530 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
531 * @param[in] profile The profile handle
532 * @param[in] address_family The address family
533 * @param[in] gateway_address The gateway address. \n
534 * If you set this value to @c NULL, then the existing value will be deleted
535 * @return @c 0 on success,
536 * otherwise a negative error value
537 * @retval #CONNECTION_ERROR_NONE Successful
538 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
539 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
540 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
541 * @see connection_update_profile()
543 int connection_profile_set_gateway_address(connection_profile_h profile, connection_address_family_e address_family, const char* gateway_address);
547 * @brief Sets the DNS address.
548 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
549 * @remarks The allowance of the DNS address is @c 2.
550 * @param[in] profile The profile handle
551 * @param[in] order The order of the DNS address. \n
552 * It starts from @c 1, which means first DNS address
553 * @param[in] address_family The address family
554 * @param[in] dns_address The DNS address; if you set this value to NULL, then the existing value will be deleted
555 * @return @c 0 on success,
556 * otherwise a negative error value
557 * @retval #CONNECTION_ERROR_NONE Successful
558 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
559 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
560 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
561 * @see connection_update_profile()
563 int connection_profile_set_dns_address(connection_profile_h profile, int order, connection_address_family_e address_family, const char* dns_address);
567 * @brief Sets the Proxy type.
568 * @details If you set the Proxy type to #CONNECTION_PROXY_TYPE_AUTO or #CONNECTION_PROXY_TYPE_MANUAL, then Proxy will be restored.
569 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
570 * @param[in] profile The profile handle
571 * @param[in] type The type of the proxy
572 * @return @c 0 on success,
573 * otherwise a negative error value
574 * @retval #CONNECTION_ERROR_NONE Successful
575 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
576 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
577 * @see connection_update_profile()
579 int connection_profile_set_proxy_type(connection_profile_h profile, connection_proxy_type_e type);
583 * @brief Sets the Proxy address.
584 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
585 * @param[in] profile The profile handle
586 * @param[in] address_family The address family
587 * @param[in] proxy_address The proxy address. \n
588 * If you set this value to @c NULL, then the existing value will be deleted
589 * @return @c 0 on success,
590 * otherwise a negative error value
591 * @retval #CONNECTION_ERROR_NONE Successful
592 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
593 * @retval #CONNECTION_ERROR_ADDRESS_FAMILY_NOT_SUPPORTED Not supported address family
594 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
595 * @see connection_update_profile()
597 int connection_profile_set_proxy_address(connection_profile_h profile, connection_address_family_e address_family, const char* proxy_address);
601 * @brief Called when the state of the profile is changed.
602 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
603 * @param[in] state The state
604 * @param[in] user_data The user data passed from the callback registration function
605 * @see connection_profile_set_state_changed_cb()
606 * @see connection_profile_unset_state_changed_cb()
608 typedef void(*connection_profile_state_changed_cb)(connection_profile_state_e state, void* user_data);
612 * @brief Registers the callback that is called when the state of profile is changed.
613 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
614 * @param[in] profile The profile handle
615 * @param[in] callback The callback function to be called
616 * @param[in] user_data The user data passed to the callback function
617 * @return @c 0 on success,
618 * otherwise a negative error value
619 * @retval #CONNECTION_ERROR_NONE Successful
620 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
621 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
622 * @post connection_opened_cb() is invoked when the state of profile is changed.
623 * @see connection_profile_state_changed_cb()
624 * @see connection_profile_unset_state_changed_cb()
626 int connection_profile_set_state_changed_cb(connection_profile_h profile, connection_profile_state_changed_cb callback, void* user_data);
630 * @brief Unregisters the callback that is called when the state of profile is changed.
631 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
632 * @param[in] profile The profile handle
633 * @return @c 0 on success,
634 * otherwise a negative error value
635 * @retval #CONNECTION_ERROR_NONE Successful
636 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
637 * @see connection_profile_state_changed_cb()
638 * @see connection_profile_set_state_changed_cb()
640 int connection_profile_unset_state_changed_cb(connection_profile_h profile);
643 * @brief Gets the IPv6 network state.
645 * @param[in] profile The profile handle
646 * @param[out] state The profile state
647 * @return 0 on success, otherwise negative error value.
648 * @retval #CONNECTION_ERROR_NONE Successful
649 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
650 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
651 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
653 int connection_profile_get_ipv6_state(connection_profile_h profile, connection_profile_state_e *state);
656 * @brief Sets the DNS config type.
658 * @param[in] profile The profile handle
659 * @param[in] address_family The address family
660 * @param[in] type The DNS config type
661 * @return 0 on success, otherwise negative error value.
662 * @retval #CONNECTION_ERROR_NONE Successful
663 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
664 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
665 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
667 int connection_profile_set_dns_config_type(connection_profile_h profile,
668 connection_address_family_e address_family, connection_dns_config_type_e type);
671 * @brief Gets the DNS config type.
673 * @param[in] profile The profile handle
674 * @param[in] address_family The address family
675 * @param[out] type The DNS config type
676 * @return 0 on success, otherwise negative error value.
677 * @retval #CONNECTION_ERROR_NONE Successful
678 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
679 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
680 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
682 int connection_profile_get_dns_config_type(connection_profile_h profile,
683 connection_address_family_e address_family, connection_dns_config_type_e *type);
686 * @brief Gets the network prefix length.
688 * @param[in] profile The profile handle
689 * @param[in] address_family The address family
690 * @param[out] prefix_len The network prefix length.
691 * In case of IPv4, it means netmask length
692 * (also called a prefix, e.g. 8, 16, 24, 32)
693 * @return 0 on success, otherwise negative error value.
694 * @retval #CONNECTION_ERROR_NONE Successful
695 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
696 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
697 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
699 int connection_profile_get_prefix_length(connection_profile_h profile,
700 connection_address_family_e address_family, int *prefix_len);
703 * @brief Sets the network prefix length.
705 * @param[in] profile The profile handle
706 * @param[in] address_family The address family
707 * @param[in] prefix_len The network prefix length.
708 * In case of IPv4, it means netmask length
709 * (also called a prefix, e.g. 8, 16, 24, 32)
710 * @return 0 on success, otherwise negative error value.
711 * @retval #CONNECTION_ERROR_NONE Successful
712 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
713 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
714 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
715 * @see connection_update_profile()
717 int connection_profile_set_prefix_length(connection_profile_h profile,
718 connection_address_family_e address_family, int prefix_len);
726 * @addtogroup CAPI_NETWORK_CONNECTION_WIFI_PROFILE_MODULE
732 * @brief Gets the ESSID (Extended Service Set Identifier).
733 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
734 * @remarks You must release @a essid using free().
735 * @param[in] profile The profile handle
736 * @param[out] essid The ESSID
737 * @return @c 0 on success,
738 * otherwise a negative error value
739 * @retval #CONNECTION_ERROR_NONE Successful
740 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
741 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
742 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
744 int connection_profile_get_wifi_essid(connection_profile_h profile, char** essid);
748 * @brief Gets the BSSID (Basic Service Set Identifier).
749 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
750 * @remarks You must release @a bssid using free().
751 * @param[in] profile The profile handle
752 * @param[out] bssid The BSSID
753 * @return @c 0 on success,
754 * otherwise a negative error value
755 * @retval #CONNECTION_ERROR_NONE Successful
756 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
757 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
758 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
760 int connection_profile_get_wifi_bssid(connection_profile_h profile, char** bssid);
764 * @brief Gets the RSSI.
765 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
766 * @param[in] profile The profile handle
767 * @param[out] rssi The RSSI
768 * @return @c 0 on success,
769 * otherwise a negative error value
770 * @retval #CONNECTION_ERROR_NONE Successful
771 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
772 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
774 int connection_profile_get_wifi_rssi(connection_profile_h profile, int* rssi);
778 * @brief Gets the frequency (MHz).
779 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
780 * @param[in] profile The profile handle
781 * @param[out] frequency The frequency
782 * @return @c 0 on success,
783 * otherwise a negative error value
784 * @retval #CONNECTION_ERROR_NONE Successful
785 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
786 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
788 int connection_profile_get_wifi_frequency(connection_profile_h profile, int* frequency);
792 * @brief Gets the max speed (Mbps).
793 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
794 * @param[in] profile The profile handle
795 * @param[out] max_speed The max speed
796 * @return @c 0 on success,
797 * otherwise a negative error value
798 * @retval #CONNECTION_ERROR_NONE Successful
799 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
800 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
802 int connection_profile_get_wifi_max_speed(connection_profile_h profile, int* max_speed);
806 * @brief Gets the security mode of Wi-Fi.
807 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
808 * @param[in] profile The profile handle
809 * @param[out] type The type of Wi-Fi security
810 * @return @c 0 on success,
811 * otherwise a negative error value
812 * @retval #CONNECTION_ERROR_NONE Successful
813 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
814 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
815 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
817 int connection_profile_get_wifi_security_type(connection_profile_h profile, connection_wifi_security_type_e* type);
821 * @brief Gets the security mode of Wi-Fi.
822 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
823 * @param[in] profile The profile handle
824 * @param[out] type The type of Wi-Fi security
825 * @return @c 0 on success,
826 * otherwise a negative error value
827 * @retval #CONNECTION_ERROR_NONE Successful
828 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
829 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
830 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
832 int connection_profile_get_wifi_encryption_type(connection_profile_h profile, connection_wifi_encryption_type_e* type);
836 * @brief Checks whether passphrase is required.
837 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
838 * @remarks This function is not valid if security type is #CONNECTION_WIFI_SECURITY_TYPE_EAP.
839 * @param[in] profile The profile handle
840 * @param[out] required @c true if a passphrase is required,
841 * otherwise @c false if a passphrase is not required
842 * @return @c 0 on success,
843 * otherwise a negative error value
844 * @retval #CONNECTION_ERROR_NONE Successful
845 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
846 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
848 int connection_profile_is_wifi_passphrase_required(connection_profile_h profile, bool* required);
852 * @brief Sets the passphrase of the Wi-Fi WPA.
853 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
854 * @param[in] profile The profile handle
855 * @param[in] passphrase The passphrase of Wi-Fi security
856 * @return @c 0 on success,
857 * otherwise a negative error value
858 * @retval #CONNECTION_ERROR_NONE Successful
859 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
860 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
861 * @see connection_update_profile()
863 int connection_profile_set_wifi_passphrase(connection_profile_h profile, const char* passphrase);
867 * @brief Checks whether the WPS (Wi-Fi Protected Setup) is supported.
868 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
869 * @remarks If WPS is supported, you can connect the access point with WPS by wifi_connect_with_wps().
870 * @param[in] profile The profile handle
871 * @param[out] supported @c true if WPS is supported,
872 * otherwise @c false if WPS is not supported
873 * @return @c 0 on success,
874 * otherwise negative error value
875 * @retval #CONNECTION_ERROR_NONE Successful
876 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
877 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
879 int connection_profile_is_wifi_wps_supported(connection_profile_h profile, bool* supported);
888 * @addtogroup CAPI_NETWORK_CONNECTION_CELLULAR_PROFILE_MODULE
894 * @brief Gets the service type.
895 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
896 * @param[in] profile The profile handle
897 * @param[out] type The type of the cellular service
898 * @return @c 0 on success,
899 * otherwise a negative error value
900 * @retval #CONNECTION_ERROR_NONE Successful
901 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
902 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
903 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
905 int connection_profile_get_cellular_service_type(connection_profile_h profile, connection_cellular_service_type_e* type);
909 * @brief Gets the APN (access point name).
910 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
911 * @remarks You must release @a apn using free().
912 * @param[in] profile The profile handle
913 * @param[out] apn The name of the APN
914 * @return @c 0 on success,
915 * otherwise a negative error value
916 * @retval #CONNECTION_ERROR_NONE Successful
917 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
918 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
919 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
921 int connection_profile_get_cellular_apn(connection_profile_h profile, char** apn);
925 * @brief Gets the authentication information.
926 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
927 * @remarks You must release @a user_name and @a password using free().
928 * @param[in] profile The profile handle
929 * @param[out] type The type of the authentication
930 * @param[out] user_name The user name
931 * @param[out] password The password
932 * @return @c 0 on success,
933 * otherwise a negative error value
934 * @retval #CONNECTION_ERROR_NONE Successful
935 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
936 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
937 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
938 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
940 int connection_profile_get_cellular_auth_info(connection_profile_h profile, connection_cellular_auth_type_e* type, char** user_name, char** password);
944 * @brief Gets the home URL.
945 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
946 * @remarks You must release @a home_url using free().
947 * @param[in] profile The profile handle
948 * @param[out] home_url The home URL
949 * @return @c 0 on success,
950 * otherwise a negative error value
951 * @retval #CONNECTION_ERROR_NONE Successful
952 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
953 * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
954 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
956 int connection_profile_get_cellular_home_url(connection_profile_h profile, char** home_url);
960 * @brief Gets the cellular pdn type.
962 * @param[in] profile The profile handle
963 * @param[out] type The cellular pdn type
964 * @return @c 0 on success,
965 * otherwise negative error value
966 * @retval #CONNECTION_ERROR_NONE Successful
967 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
968 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
969 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not Supported
971 int connection_profile_get_cellular_pdn_type(connection_profile_h profile, connection_cellular_pdn_type_e* type);
975 * @brief Gets the cellular roam pdn type.
977 * @param[in] profile The profile handle
978 * @param[out] type The cellular pdn type
979 * @return @c 0 on success,
980 * otherwise negative error value
981 * @retval #CONNECTION_ERROR_NONE Successful
982 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
983 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
984 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not Supported
986 int connection_profile_get_cellular_roam_pdn_type(connection_profile_h profile, connection_cellular_pdn_type_e* type);
990 * @brief Checks whether the connection is in roaming state.
991 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
992 * @param[in] profile The profile handle
993 * @param[out] is_roaming @c true if the cellular is roaming,
994 * otherwise @c false if it is not roaming
995 * @return @c 0 on success,
996 * otherwise a negative error value
997 * @retval #CONNECTION_ERROR_NONE Successful
998 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
999 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1001 int connection_profile_is_cellular_roaming(connection_profile_h profile, bool* is_roaming);
1005 * @brief Checks whether the profile is hidden.
1006 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1007 * @param[in] profile The profile handle
1008 * @param[out] is_hidden @c true if the profile is in hidden,
1009 * otherwise @c false if the profile is not hidden
1010 * @return @c 0 on success,
1011 * otherwise a negative error value
1012 * @retval #CONNECTION_ERROR_NONE Successful
1013 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1014 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1016 int connection_profile_is_cellular_hidden(connection_profile_h profile, bool* is_hidden);
1020 * @brief Checks whether the profile is editable.
1021 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1022 * @param[in] profile The profile handle
1023 * @param[out] is_editable @c true if the profile is editable,
1024 * otherwise @c false if the profile is not editable
1025 * @return @c 0 on success,
1026 * otherwise a negative error value
1027 * @retval #CONNECTION_ERROR_NONE Successful
1028 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1029 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1031 int connection_profile_is_cellular_editable(connection_profile_h profile, bool* is_editable);
1035 * @brief Checks whether the profile is default.
1036 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1037 * @param[in] profile The profile handle
1038 * @param[out] is_default @c true if the profile is default,
1039 * otherwise @c false if the profile is not default
1040 * @return @c 0 on success,
1041 * otherwise a negative error value
1042 * @retval #CONNECTION_ERROR_NONE Successful
1043 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1044 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1046 int connection_profile_is_cellular_default(connection_profile_h profile, bool* is_default);
1050 * @brief Sets the service type.
1051 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1052 * @param[in] profile The profile handle
1053 * @param[in] service_type The type of cellular service
1054 * @return @c 0 on success,
1055 * otherwise a negative error value
1056 * @retval #CONNECTION_ERROR_NONE Successful
1057 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1058 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1059 * @see connection_update_profile()
1061 int connection_profile_set_cellular_service_type(connection_profile_h profile, connection_cellular_service_type_e service_type);
1065 * @brief Sets the APN (Access Point Name).
1066 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1067 * @param[in] profile The profile handle
1068 * @param[in] apn The name of APN
1069 * @return @c 0 on success,
1070 * otherwise a negative error value
1071 * @retval #CONNECTION_ERROR_NONE Successful
1072 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1073 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1074 * @see connection_update_profile()
1076 int connection_profile_set_cellular_apn(connection_profile_h profile, const char* apn);
1080 * @brief Sets the Authentication information.
1081 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1082 * @param[in] profile The profile handle
1083 * @param[in] type The type of the authentication
1084 * @param[in] user_name The user name
1085 * @param[in] password The password
1086 * @return @c 0 on success,
1087 * otherwise a negative error value
1088 * @retval #CONNECTION_ERROR_NONE Successful
1089 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1090 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1091 * @see connection_update_profile()
1093 int connection_profile_set_cellular_auth_info(connection_profile_h profile, connection_cellular_auth_type_e type, const char* user_name, const char* password);
1097 * @brief Sets the home URL.
1098 * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif
1099 * @param[in] profile The profile handle
1100 * @param[in] home_url The home URL
1101 * @return @c 0 on success,
1102 * otherwise a negative error value
1103 * @retval #CONNECTION_ERROR_NONE Successful
1104 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1105 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported
1106 * @see connection_update_profile()
1108 int connection_profile_set_cellular_home_url(connection_profile_h profile, const char* home_url);
1112 * @brief Sets the cellular pdn type.
1114 * @param[in] profile The profile handle
1115 * @param[in] type The cellular pdn type
1116 * @return @c 0 on success,
1117 * otherwise negative error value
1118 * @retval #CONNECTION_ERROR_NONE Successful
1119 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1120 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
1121 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not Supported
1123 int connection_profile_set_cellular_pdn_type(connection_profile_h profile, connection_cellular_pdn_type_e type);
1127 * @brief Sets the cellular roam pdn type.
1129 * @param[in] profile The profile handle
1130 * @param[in] type The cellular pdn type
1131 * @return @c 0 on success,
1132 * otherwise negative error value
1133 * @retval #CONNECTION_ERROR_NONE Successful
1134 * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
1135 * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed
1136 * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not Supported
1138 int connection_profile_set_cellular_roam_pdn_type(connection_profile_h profile, connection_cellular_pdn_type_e type);
1153 #endif /* __TIZEN_NETWORK_CONNECTION_PROFILE_H__ */