#include "bluetooth-api.h"
#include "bt-internal-types.h"
+#include "bt-service-agent.h"
#ifdef __cplusplus
extern "C" {
#define BT_NAME_OWNER_CHANGED "NameOwnerChanged"
#define BT_PROPERTIES_CHANGED "PropertiesChanged"
+#define BT_HID_SERVICE_NAME "org.bluez.hid_agent"
+#define BT_HID_AGENT_OBJECT_PATH "/org/bluez/hid_agent"
+#define BT_HID_SERVICE_INTERFACE "org.tizen.HidApp"
#define BT_SESSION_BASEPATH_SERVER "/org/bluez/obex/server"
#define BT_LE_ADV_NONCONN_IND 0x03
#define BT_LE_ADV_SCAN_RSP 0x04
+#define HEADED_PLUGIN_FILEPATH "/usr/lib/bt-plugin-headed.so"
+#define HEADED_PLUGIN_FILEPATH64 "/usr/lib64/bt-plugin-headed.so"
+#define FILEPATH_ARCH_64 "/usr/lib64"
+
/* Profile states matched to btd_service_state_t of bluez service.h */
typedef enum {
BT_PROFILE_STATE_UNAVAILABLE,
char *address;
} bt_function_data_t;
+struct bluetooth_headed_plugin_t {
+ int (*bt_launch_dpmpopup) (char *mode);
+ int (*bt_launch_system_popup)(bt_agent_event_type_t event_type,
+ const char *device_name,
+ const unsigned char *auth_info,
+ char *passkey,
+ const char *filename,
+ const char *agent_path);
+ void (*bt_destroy_popup_all)(void);
+ gboolean (*bt_launch_unable_to_pairing_syspopup)(int result);
+ gboolean (*bt_is_tethering_enabled)(void);
+ int (*bt_get_mime_type)(char *file_name, char **mime_type);
+};
+
+typedef struct {
+ gboolean plugin_headed_enabled;
+ void *handle_headed;
+ struct bluetooth_headed_plugin_t *headed_plugin;
+} bt_plugin_info_t;
+
+extern bt_plugin_info_t *headed_plugin_info;
+
GDBusConnection *_bt_gdbus_get_system_gconn(void);
GDBusConnection *_bt_gdbus_get_session_gconn(void);
void _bt_deinit_proxys(void);
+GDBusProxy *_bt_gdbus_get_hid_agent_proxy(void);
+
void _bt_convert_device_path_to_address(const char *device_path,
char *device_address);