#ifndef __TIZEN_NETWORK_CONNECTION_EXTENSION_H__
#define __TIZEN_NETWORK_CONNECTION_EXTENSION_H__
+#include "net_connection.h"
+#include "network-mptcp-intf.h"
+
#ifdef __cplusplus
extern "C" {
#endif
int connection_profile_get_tcpdump_state(connection_h connection, gboolean *tcpdump_state);
/**
+ * @brief Creates a handle for managing data connections in C# API.
+ * @since_tizen 5.0
+ * @privlevel public
+ * @privilege %http://tizen.org/privilege/network.get
+ * @remarks You must release @a handle using connection_destroy_cs().
+ * @param[in] tid TID in C#
+ * @param[out] connection The connection handle
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #CONNECTION_ERROR_NONE Successful
+ * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
+ * @retval #CONNECTION_ERROR_OUT_OF_MEMORY Out of memory
+ * @retval #CONNECTION_ERROR_PERMISSION_DENIED Permission denied
+ * @see connection_destroy_cs()
+ */
+int connection_create_cs(int tid, connection_h *connection);
+
+/**
+ * @brief Destroys the connection handle in C# API.
+ * @since_tizen 5.0
+ * @param[in] tid TID in C#
+ * @param[in] connection The connection handle
+ * @return @c 0 on success,
+ * otherwise a negative error value
+ * @retval #CONNECTION_ERROR_NONE Successful
+ * @retval #CONNECTION_ERROR_INVALID_PARAMETER Invalid parameter
+ * @see connection_create_cs()
+ */
+int connection_destroy_cs(int tid, connection_h connection);
+
+typedef enum {
+ CONNECTION_MPTCP_DISABLE = 0,
+ CONNECTION_MPTCP_ENABLE_ALL = 1,
+ CONNECTION_MPTCP_ENABLE_SOCKOPT = 2,
+} connection_mptcp_enable_e;
+
+typedef enum {
+ CONNECTION_MPTCP_PM_UNKNOWN,
+ CONNECTION_MPTCP_PM_DEFAULT,
+ CONNECTION_MPTCP_PM_FULLMESH,
+} connection_mptcp_path_manager_e;
+
+typedef enum {
+ CONNECTION_MPTCP_SCHEDULER_UNKNOWN,
+ CONNECTION_MPTCP_SCHEDULER_DEFAULT,
+ CONNECTION_MPTCP_SCHEDULER_ROUNDROBIN,
+} connection_mptcp_scheduler_e;
+
+int connection_mptcp_enable(connection_mptcp_enable_e enable);
+int connection_mptcp_disable(void);
+int connection_mptcp_get_enabled(connection_mptcp_enable_e* enable);
+
+int connection_mptcp_set_path_manager(connection_mptcp_path_manager_e pm);
+int connection_mptcp_get_path_manager(connection_mptcp_path_manager_e* pm);
+
+int connection_mptcp_set_scheduler(connection_mptcp_scheduler_e scheduler);
+int connection_mptcp_get_scheduler(connection_mptcp_scheduler_e* scheduler);
+
+/**
* @}
*/