Revise directory structure
[platform/core/connectivity/asp-manager.git] / src / asp-p2p-conn.h
1 /*
2  * Copyright (c) 2016 Samsung Electronics Co., Ltd.
3  *
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
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
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.
15  */
16
17 #ifndef _ASP_P2P_CONN_H_
18 #include "asp-session.h"
19 typedef void (*asp_p2p_conn_session_request_cb)(gint32 error_code,
20                 const guint8 *session_mac, guint32 session_id, guint32 adv_id,
21                 const gchar *device_name, size_t name_length, const guint8 *session_info,
22                 size_t info_length, gboolean get_pin, guint32 pin, gpointer user_data);
23 typedef void (*asp_p2p_conn_session_config_request_cb)(gint32 error_code,
24                 const guint8 *session_mac, guint32 session_id, gboolean get_pin, guint32 pin,
25                 gpointer user_data);
26 typedef void (*asp_p2p_conn_connect_status_cb)(gint32 error_code,
27                 const guint8 *session_mac, guint32 session_id,
28                 asp_session_connect_status_e status, gpointer user_data);
29 typedef void (*asp_p2p_conn_ip_assigned_cb)(gint32 error_code,
30                 const guint8 *session_mac, guint32 session_id, const guint8 *service_mac,
31                 gchar *peer_ip_addr, gint32 ip_length,  gpointer user_data);
32
33 void asp_p2p_conn_initialize();
34 void asp_p2p_conn_deinitialize();
35
36 void asp_p2p_conn_connect_session(const guint8 *session_mac, guint32 session_id,
37                                   const guint8 *service_mac, guint32 adv_id, const guint8 *session_info,
38                                   size_t info_length, guint8 network_role, guint8 network_config);
39 void asp_p2p_conn_confirm_session(const guint8 *session_mac, guint32 session_id,
40                                   gboolean confirmed, guint32 network_config_pin);
41 void asp_p2p_conn_disconnect_p2p(const guint8 *peer_mac);
42 gboolean asp_p2p_conn_peer_is_connected(const guint8 *peer_mac);
43
44 void asp_p2p_conn_set_session_request_cb(asp_p2p_conn_session_request_cb cb,
45                 gpointer user_data);
46 void asp_p2p_conn_set_session_config_request_cb(
47         asp_p2p_conn_session_config_request_cb cb, gpointer user_data);
48 void asp_p2p_conn_set_connect_status_cb(asp_p2p_conn_connect_status_cb cb,
49                                         gpointer user_data);
50 void asp_p2p_conn_set_ip_assigned_cb(asp_p2p_conn_ip_assigned_cb cb,
51                                      gpointer user_data);
52
53 void asp_p2p_conn_get_p2p_mac(gchar *my_p2p_mac);
54 #endif