X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fnet_connection.h;h=238b0b1eef982e509d01eacef2ffae11df0cf419;hb=2a324d24eee5848269178b3fab6d8a50795cd3ba;hp=964f21a2dcaa4deabc19f9a09948aa1bb6ebbe79;hpb=141a0c47e0e014b2fe78fb2f5f8f61429a2ba86c;p=platform%2Fcore%2Fapi%2Fconnection.git diff --git a/include/net_connection.h b/include/net_connection.h index 964f21a..238b0b1 100755 --- a/include/net_connection.h +++ b/include/net_connection.h @@ -34,19 +34,19 @@ extern "C" { /** * @brief The connection handle. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef void* connection_h; /** * @brief The profiles iterator handle. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef void* connection_profile_iterator_h; /** * @brief Enumeration for connection type. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -55,11 +55,12 @@ typedef enum CONNECTION_TYPE_CELLULAR = 2, /**< Cellular type */ CONNECTION_TYPE_ETHERNET = 3, /**< Ethernet type */ CONNECTION_TYPE_BT = 4, /**< Bluetooth type */ + CONNECTION_TYPE_NET_PROXY, /**< Proxy type for internet connection (Since 3.0) */ } connection_type_e; /** * @brief Enumeration for cellular network state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -73,7 +74,7 @@ typedef enum /** * @brief Enumeration for Wi-Fi state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -83,20 +84,19 @@ typedef enum } connection_wifi_state_e; /** - * @internal * @brief Enumeration for ethernet state. - * @since_tizen 2.3 + * @since_tizen 2.4 */ typedef enum { - CONNECTION_ETHERNET_STATE_DEACTIVATED = 0, /**< @internal There is no Ethernet profile to open */ - CONNECTION_ETHERNET_STATE_DISCONNECTED = 1, /**< @internal Disconnected */ - CONNECTION_ETHERNET_STATE_CONNECTED = 2, /**< @internal Connected */ + CONNECTION_ETHERNET_STATE_DEACTIVATED = 0, /**< There is no Ethernet profile to open */ + CONNECTION_ETHERNET_STATE_DISCONNECTED = 1, /**< Disconnected */ + CONNECTION_ETHERNET_STATE_CONNECTED = 2, /**< Connected */ } connection_ethernet_state_e; /** * @brief Enumeration for Bluetooth state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -107,7 +107,7 @@ typedef enum /** * @brief Enumeration for connection iterator type. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -118,7 +118,7 @@ typedef enum /** * @brief Enumeration for reset profile type. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -127,8 +127,18 @@ typedef enum } connection_reset_option_e; /** + * @brief This enumeration defines the attached or detached state of ethernet cable. + * @since_tizen 2.4 + */ +typedef enum +{ + CONNECTION_ETHERNET_CABLE_DETACHED = 0, /**< Ethernet cable is detached */ + CONNECTION_ETHERNET_CABLE_ATTACHED = 1, /**< Ethernet cable is attached */ +} connection_ethernet_cable_state_e; + +/** * @brief Enumeration for connection errors. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -161,7 +171,7 @@ typedef enum /** * @brief Enumeration for statistics type. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif */ typedef enum { @@ -183,7 +193,7 @@ typedef enum /** * @brief Creates a handle for managing data connections. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @remarks You must release @a handle using connection_destroy(). @@ -198,7 +208,7 @@ int connection_create(connection_h* connection); /** * @brief Destroys the connection handle. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @return @c 0 on success, otherwise negative error value * @retval #CONNECTION_ERROR_NONE Successful @@ -209,7 +219,7 @@ int connection_destroy(connection_h connection); /** * @brief Called when the type of a connection is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] type The type of the current network connection * @param[in] user_data The user data passed from the callback registration function * @see connection_set_type_changed_cb() @@ -219,7 +229,7 @@ typedef void(*connection_type_changed_cb)(connection_type_e type, void* user_dat /** * @brief Called when the address is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] ipv4_address The IP address for IPv4 * @param[in] ipv6_address The IP address for IPv6 * @param[in] user_data The user data passed from the callback registration function @@ -232,7 +242,7 @@ typedef void(*connection_address_changed_cb)(const char* ipv4_address, const cha /** * @brief Called when connection_set_default_cellular_service_profile_async() finishes. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] result The result * @param[in] user_data The user data passed from connection_open_profile() * @pre connection_set_default_cellular_service_profile_async() will invoke this callback function. @@ -242,7 +252,7 @@ typedef void(*connection_set_default_cb)(connection_error_e result, void* user_d /** * @brief Gets the type of the current profile for data connection. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @param[out] type The type of the network * @return @c 0 on success, otherwise negative error value @@ -254,7 +264,7 @@ int connection_get_type(connection_h connection, connection_type_e* type); /** * @brief Gets the IP address of the current connection. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @remarks You must release @a ip_address using free(). * @param[in] connection The connection handle * @param[in] address_family The address family @@ -269,7 +279,7 @@ int connection_get_ip_address(connection_h connection, connection_address_family /** * @brief Gets the proxy address of the current connection. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @remarks You must release @a proxy using free(). * @param[in] connection The connection handle * @param[in] address_family The address family @@ -283,9 +293,26 @@ int connection_get_ip_address(connection_h connection, connection_address_family int connection_get_proxy(connection_h connection, connection_address_family_e address_family, char** proxy); /** + * @brief Gets the MAC address of the Wi-Fi or ethernet. + * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 + * @remarks @a mac_addr must be released with free() by you. + * @param[in] connection The handle of the connection + * @param[in] type The type of current network connection + * @param[out] mac_addr The MAC address + * @return 0 on success, otherwise negative error value. + * @retval #CONNECTION_ERROR_NONE Successful + * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter + * @retval #CONNECTION_ERROR_INVALID_OPERATION Invalid operation + * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed + * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported + * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory + */ +int connection_get_mac_address(connection_h connection, connection_type_e type, char** mac_addr); + +/** * @brief Gets the state of cellular connection. * @details The returned state is for the cellular connection state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @param[out] state The state of the cellular connection * @return @c 0 on success, otherwise a negative error value @@ -299,7 +326,7 @@ int connection_get_cellular_state(connection_h connection, connection_cellular_s /** * @brief Gets the state of the Wi-Fi. * @details The returned state is for the Wi-Fi connection state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @param[in] connection The connection handle @@ -314,10 +341,9 @@ int connection_get_cellular_state(connection_h connection, connection_cellular_s int connection_get_wifi_state(connection_h connection, connection_wifi_state_e* state); /** - * @internal * @brief Gets the state of the Ethernet. * @details The returned state is for the Ethernet connection state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @param[in] connection The connection handle @@ -332,9 +358,61 @@ int connection_get_wifi_state(connection_h connection, connection_wifi_state_e* int connection_get_ethernet_state(connection_h connection, connection_ethernet_state_e* state); /** +* @brief Checks for ethernet cable is attached or not. +* @details The returned state is for the ethernet cable state. +* @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 +* @privlevel public +* @privilege %http://tizen.org/privilege/network.get +* @param[in] connection The handle of the connection +* @param[in] state - Enum connection_ethernet_cable_state_e +* @return 0 on success, otherwise negative error value +* @retval #CONNECTION_ERROR_NONE Successful +* @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter +* @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed +* @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported +* @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied +*/ +int connection_get_ethernet_cable_state(connection_h connection, connection_ethernet_cable_state_e *state); + +/** + * @brief Called when ethernet cable is plugged [in/out]. + * @since_tizen 2.4 + * @param[in] state The ethernet cable state (connection_ethernet_cable_state_e) + * @param[in] user_data The user data passed to callback registration function + */ +typedef void(*connection_ethernet_cable_state_chaged_cb)( + connection_ethernet_cable_state_e state, void* user_data); + +/** + * @brief Registers callback for ethernet cable is plugged [in/out] event. + * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 + * @param[in] callback The callback function to be called + * @param[in] user_data The user data passed to the callback function + * @return 0 on success, otherwise negative error value + * @retval #CONNECTION_ERROR_NONE Successful + * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter + * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed + * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported + */ +int connection_set_ethernet_cable_state_chaged_cb( connection_h connection, + connection_ethernet_cable_state_chaged_cb callback, void *user_data); + +/** + * @brief Unregisters callback for ethernet cable is plugged [in/out] event. + * @since_tizen @if MOBILE 2.4 @elseif WEARABLE 3.0 + * @param[in] connection The handle of connection + * @return 0 on success, otherwise negative error value + * @retval #CONNECTION_ERROR_NONE Successful + * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter + * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed + * @retval #CONNECTION_ERROR_NOT_SUPPORTED Not supported + */ +int connection_unset_ethernet_cable_state_chaged_cb(connection_h connection); + +/** * @brief Gets the state of the Bluetooth. * @details The returned state is for the Bluetooth connection state. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @param[in] connection The connection handle @@ -350,7 +428,7 @@ int connection_get_bt_state(connection_h connection, connection_bt_state_e* stat /** * @brief Registers the callback that is called when the type of the current connection is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @param[in] callback The callback function to be called * @param[in] user_data The user data passed to the callback function @@ -363,7 +441,7 @@ int connection_set_type_changed_cb(connection_h connection, connection_type_chan /** * @brief Unregisters the callback that is called when the type of current connection is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @return @c 0 on success, otherwise a negative error value * @retval #CONNECTION_ERROR_NONE Successful @@ -374,7 +452,7 @@ int connection_unset_type_changed_cb(connection_h connection); /** * @brief Registers the callback that is called when the IP address is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @param[in] callback The callback function to be called * @param[in] user_data The user data passed to the callback function @@ -387,7 +465,7 @@ int connection_set_ip_address_changed_cb(connection_h connection, connection_add /** * @brief Unregisters the callback that is called when the IP address is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @return @c 0 on success, otherwise a negative error value * @retval #CONNECTION_ERROR_NONE Successful @@ -398,7 +476,7 @@ int connection_unset_ip_address_changed_cb(connection_h connection); /** * @brief Registers the callback that is called when the proxy address is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @param[in] callback The callback function to be called * @param[in] user_data The user data passed to the callback function @@ -411,7 +489,7 @@ int connection_set_proxy_address_changed_cb(connection_h connection, connection_ /** * @brief Unregisters the callback that is called when the proxy address is changed. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] connection The connection handle * @return @c 0 on success, otherwise a negative error value * @retval #CONNECTION_ERROR_NONE Successful @@ -422,12 +500,10 @@ int connection_unset_proxy_address_changed_cb(connection_h connection); /** * @brief Adds a new profile which is created by connection_profile_create(). - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public - * @privilege %http://tizen.org/privilege/network.profile \n - * %http://tizen.org/privilege/network.get - * @remarks You can only add a profile of the cellular type. \n - * This API needs both privileges. + * @privilege %http://tizen.org/privilege/network.profile + * @remarks You can only add a profile of the cellular type. * @param[in] connection The connection handle * @param[in] profile The profile handle * @return @c 0 on success, otherwise a negative error value @@ -441,7 +517,7 @@ int connection_add_profile(connection_h connection, connection_profile_h profile /** * @brief Removes an existing profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.profile \n * %http://tizen.org/privilege/network.get @@ -462,7 +538,7 @@ int connection_remove_profile(connection_h connection, connection_profile_h prof * @details When a profile is changed, these changes will be not applied to the Connection Manager immediately. * When you call this function, your changes affect the Connection Manager and the existing profile is updated. * In addition, the existing profile will be updated if you call connection_open_profile(). - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.profile \n * %http://tizen.org/privilege/network.get @@ -481,7 +557,7 @@ int connection_update_profile(connection_h connection, connection_profile_h prof /** * @brief Gets a profiles iterator. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @remarks You must release @a profile_iterator using connection_destroy(). @@ -499,7 +575,7 @@ int connection_get_profile_iterator(connection_h connection, connection_iterator /** * @brief Moves the profile iterator to the next position and gets a profile handle. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] profile_iterator The iterator of profile * @param[out] profile The profile handle * @return @c 0 on success, otherwise a negative error value @@ -511,7 +587,7 @@ int connection_profile_iterator_next(connection_profile_iterator_h profile_itera /** * @brief Checks whether the next element of a profile iterator exists or not. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @remarks The specific error code can be obtained using the get_last_result() method. Error codes are described in Exception section. * @param[in] profile_iterator The iterator of profile * @return @c true if next element exists, otherwise @c false if next element doesn't exist @@ -520,7 +596,7 @@ bool connection_profile_iterator_has_next(connection_profile_iterator_h profile_ /** * @brief Destroys a profiles iterator. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] profile_iterator The iterator of the profile * @return @c 0 on success, otherwise a negative error value * @retval #CONNECTION_ERROR_NONE Successful @@ -530,7 +606,7 @@ int connection_destroy_profile_iterator(connection_profile_iterator_h profile_it /** * @brief Gets the name of the default profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @remarks You must release @a profile using connection_profile_destroy(). @@ -548,7 +624,7 @@ int connection_get_current_profile(connection_h connection, connection_profile_h /** * @brief Gets the default profile which provides the given cellular service. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @remarks You must release @a profile using connection_profile_destroy(). @@ -568,7 +644,7 @@ int connection_get_default_cellular_service_profile(connection_h connection, con /** * @brief Sets the default profile which provides the given cellular service. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.profile \n * %http://tizen.org/privilege/network.get @@ -588,7 +664,7 @@ int connection_set_default_cellular_service_profile(connection_h connection, con /** * @brief Sets the default profile which provides the given cellular service, asynchronously. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.profile \n * %http://tizen.org/privilege/network.get @@ -610,7 +686,7 @@ int connection_set_default_cellular_service_profile_async(connection_h connectio /** * @brief Called after connection_open_profile() is finished. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] result The result * @param[in] user_data The user data passed from connection_open_profile() * @pre connection_open_profile() will invoke this callback function. @@ -620,7 +696,7 @@ typedef void(*connection_opened_cb)(connection_error_e result, void* user_data); /** * @brief Called after connection_close_profile() is finished. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] result The result * @param[in] user_data The user data passed from connection_close_profile() * @pre connection_close_profile() will invoke this callback function. @@ -630,7 +706,7 @@ typedef void(*connection_closed_cb)(connection_error_e result, void* user_data); /** * @brief Called after connection_reset_profile() is finished. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @param[in] result The result * @param[in] user_data The user data passed from connection_reset_profile() * @pre connection_reset_profile() will invoke this callback function. @@ -640,7 +716,7 @@ typedef void(*connection_reset_cb)(connection_error_e result, void* user_data); /** * @brief Opens a connection of profile, asynchronously. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.set \n * %http://tizen.org/privilege/network.get @@ -665,11 +741,9 @@ int connection_open_profile(connection_h connection, connection_profile_h profil /** * @brief Closes a connection of profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public - * @privilege %http://tizen.org/privilege/network.set \n - * %http://tizen.org/privilege/network.get - * @remarks This API needs both privileges. + * @privilege %http://tizen.org/privilege/network.set * @param[in] connection The connection handle * @param[in] profile The profile handle * @param[in] callback The callback function to be called @@ -690,7 +764,7 @@ int connection_close_profile(connection_h connection, connection_profile_h profi /** * @brief Resets the cellular profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.profile \n * %http://tizen.org/privilege/network.get @@ -711,13 +785,11 @@ int connection_close_profile(connection_h connection, connection_profile_h profi int connection_reset_profile(connection_h connection, connection_reset_option_e type, int id, connection_reset_cb callback, void *user_data); /** - * @brief Adds a route to the routing table. + * @brief Adds a IPv4 route to the routing table. * @details You can get the @a interface_name from connection_profile_get_network_interface_name() of opened profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public - * @privilege %http://tizen.org/privilege/network.set \n - * %http://tizen.org/privilege/network.get - * @remarks This API needs both privileges. + * @privilege %http://tizen.org/privilege/network.set * @param[in] connection The connection handle * @param[in] interface_name The name of network interface * @param[in] host_address The IP address of the host @@ -732,20 +804,17 @@ int connection_reset_profile(connection_h connection, connection_reset_option_e int connection_add_route(connection_h connection, const char* interface_name, const char* host_address); /** - * @brief Removes a route from the routing table. + * @brief Removes a IPv4 route from the routing table. * @details You can get the @a interface_name from connection_profile_get_network_interface_name() of opened profile. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public - * @privilege %http://tizen.org/privilege/network.set \n - * %http://tizen.org/privilege/network.get - * @remarks This API needs both privileges. + * @privilege %http://tizen.org/privilege/network.set * @param[in] connection The connection handle * @param[in] interface_name The name of network interface * @param[in] host_address The IP address of the host * @return @c 0 on success, otherwise negative error value * @retval #CONNECTION_ERROR_NONE Successful * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter - * @retval #CONNECTION_ERROR_ALREADY_EXISTS Already exists * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied * @see connection_profile_get_network_interface_name() @@ -753,6 +822,45 @@ int connection_add_route(connection_h connection, const char* interface_name, co int connection_remove_route(connection_h connection, const char* interface_name, const char* host_address); /** + * @brief Adds a IPv6 route to the routing table. + * @details You can get the @a interface_name from connection_profile_get_network_interface_name() of opened profile. + * @since_tizen 2.3.1 + * @privlevel public + * @privilege %http://tizen.org/privilege/network.set + * @param[in] connection The connection handle + * @param[in] interface_name The name of network interface + * @param[in] host_address The IP address of the host + * @param[in] gateway The gateway address + * @return @c 0 on success, otherwise negative error value + * @retval #CONNECTION_ERROR_NONE Successful + * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter + * @retval #CONNECTION_ERROR_ALREADY_EXISTS Already exists + * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed + * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied + * @see connection_profile_get_network_interface_name() + */ +int connection_add_route_ipv6(connection_h connection, const char *interface_name, const char *host_address, const char * gateway); + +/** + * @brief Removes a IPV6 route from the routing table. + * @details You can get the @a interface_name from connection_profile_get_network_interface_name() of opened profile. + * @since_tizen 2.3.1 + * @privlevel public + * @privilege %http://tizen.org/privilege/network.set + * @param[in] connection The connection handle + * @param[in] interface_name The name of network interface + * @param[in] host_address The IP address of the host + * @param[in] gateway The gateway address + * @return @c 0 on success, otherwise negative error value + * @retval #CONNECTION_ERROR_NONE Successful + * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter + * @retval #CONNECTION_ERROR_OPERATION_FAILED Operation failed + * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission Denied + * @see connection_profile_get_network_interface_name() + */ +int connection_remove_route_ipv6(connection_h connection, const char *interface_name, const char *host_address, const char * gateway); + +/** * @} */ @@ -763,7 +871,7 @@ int connection_remove_route(connection_h connection, const char* interface_name, /** * @brief Gets the statistics information. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public * @privilege %http://tizen.org/privilege/network.get * @param[in] connection The connection handle @@ -780,10 +888,9 @@ int connection_get_statistics(connection_h connection, connection_type_e connect /** * @brief Resets the statistics information. - * @since_tizen 2.3 + * @since_tizen @if MOBILE 2.3 @elseif WEARABLE 2.3.1 @endif * @privlevel public - * @privilege %http://tizen.org/privilege/network.set \n - * %http://tizen.org/privilege/network.get + * @privilege %http://tizen.org/privilege/network.set * @remarks This API needs both privileges. * @param[in] connection The connection handle * @param[in] connection_type The type of connection (only CONNECTION_TYPE_WIFI and CONNECTION_TYPE_CELLULAR are supported)