2 * Copyright (c) 2016 Samsung Electronics Co., Ltd.
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.
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,
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);
33 void asp_p2p_conn_initialize();
34 void asp_p2p_conn_deinitialize();
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);
44 void asp_p2p_conn_set_session_request_cb(asp_p2p_conn_session_request_cb cb,
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,
50 void asp_p2p_conn_set_ip_assigned_cb(asp_p2p_conn_ip_assigned_cb cb,
53 void asp_p2p_conn_get_p2p_mac(gchar *my_p2p_mac);