int network_manager_init(DBusConnection *conn) { read_config(CONFIGDIR "/network.conf"); if (bnep_init()) { error("Can't init bnep module"); return -1; } /* * There is one socket to handle the incomming connections. NAP, * GN and PANU servers share the same PSM. The initial BNEP message * (setup connection request) contains the destination service * field that defines which service the source is connecting to. */ if (server_init(conn, conf_security, conf_master) < 0) return -1; /* Register network server if it doesn't exist */ btd_register_adapter_driver(&network_server_driver); if (connection_init(conn) < 0) return -1; btd_register_device_driver(&network_panu_driver); btd_register_device_driver(&network_gn_driver); btd_register_device_driver(&network_nap_driver); connection = dbus_connection_ref(conn); return 0; }
int input_manager_init(DBusConnection *conn, GKeyFile *config) { GError *err = NULL; if (config) { idle_timeout = g_key_file_get_integer(config, "General", "IdleTimeout", &err); if (err) { DBG("input.conf: %s", err->message); g_error_free(err); } } connection = dbus_connection_ref(conn); #ifndef BT_ALT_STACK btd_register_adapter_driver(&input_server_driver); #endif btd_register_device_driver(&input_hid_driver); #ifndef BT_ALT_STACK btd_register_device_driver(&input_headset_driver); #endif return 0; }
static int gatt_example_init(void) { if (!main_opts.attrib_server) { DBG("Attribute server is disabled"); return -ENOTSUP; } return btd_register_adapter_driver(&gatt_example_adapter_driver); }
int serial_manager_init(DBusConnection *conn) { connection = dbus_connection_ref(conn); btd_register_adapter_driver(&serial_proxy_driver); btd_register_device_driver(&serial_port_driver); return 0; }
static int dbusoob_init(void) { DBG("Setup dbusoob plugin"); connection = get_dbus_connection(); oob_register_cb(read_local_data_complete); return btd_register_adapter_driver(&oob_driver); }
int hdp_manager_init(DBusConnection *conn) { if (hdp_manager_start(conn)) return -1; connection = dbus_connection_ref(conn); btd_register_adapter_driver(&hdp_adapter_driver); btd_register_device_driver(&hdp_device_driver); return 0; }
static int service_init(void) { any_path = btd_adapter_any_request_path(); if (any_path != NULL) { if (register_interface(any_path, NULL) < 0) { btd_adapter_any_release_path(); any_path = NULL; } } return btd_register_adapter_driver(&service_driver); }
static int maemo6_init(void) { DBG("init maemo6 plugin"); conn = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); if (conn == NULL) { error("Unable to connect to D-Bus"); return -1; } return btd_register_adapter_driver(&mce_driver); }
int sap_manager_init(DBusConnection *conn) { connection = dbus_connection_ref(conn); if (sap_server_init(connection) < 0) { error("Can't init SAP server"); dbus_connection_unref(conn); return -1; } btd_register_adapter_driver(&sap_server_driver); return 0; }
int dun_manager_init(DBusConnection *conn) { read_config(CONFIGDIR "/dun.conf"); if (gateway_init(conn, high_security, cmd_line) < 0) return -1; /* Register dun gateway if it doesn't exist */ btd_register_adapter_driver(&dun_gw_adapter_driver); connection = dbus_connection_ref(conn); return 0; }
int audio_manager_init(GKeyFile *conf) { if (conf) config = conf; btd_profile_register(&a2dp_source_profile); btd_profile_register(&a2dp_sink_profile); btd_profile_register(&avrcp_remote_profile); btd_profile_register(&avrcp_target_profile); btd_register_adapter_driver(&media_driver); return 0; }
int alert_server_init(void) { connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); if (connection == NULL) return -EIO; if (!g_dbus_register_interface(connection, "/", ALERT_INTERFACE, alert_methods, alert_signals, NULL, NULL, NULL)) { error("D-Bus failed to register %s interface", ALERT_INTERFACE); dbus_connection_unref(connection); connection = NULL; return -1; } DBG("Registered interface %s", ALERT_INTERFACE); btd_register_adapter_driver(&alert_server_driver); return 0; }
int time_server_init() { connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); if (connection == NULL) return -EIO; if (!g_dbus_register_interface(connection, "/", TIME_INTERFACE, time_methods, NULL, NULL, NULL, NULL)) { error("D-Bus failed to register %s interface", TIME_INTERFACE); dbus_connection_unref(connection); connection = NULL; return -1; } DBG("Registered interface %s on", TIME_INTERFACE); dst_offset.dst_offset = UNKNOWN_DST; next_dst.dst_offset.dst_offset = UNKNOWN_DST; btd_register_adapter_driver(&alert_server_driver); return 0; }
static int service_init(void) { int err; connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); if (connection == NULL) return -EIO; any_path = btd_adapter_any_request_path(); if (any_path != NULL) { if (register_interface(any_path, NULL) < 0) { btd_adapter_any_release_path(); any_path = NULL; } } err = btd_register_adapter_driver(&service_driver); if (err < 0) { dbus_connection_unref(connection); return err; } return 0; }
int audio_manager_init(DBusConnection *conn, GKeyFile *conf, gboolean *enable_sco) { char **list; int i; char *str; gboolean b; GError *err = NULL; connection = dbus_connection_ref(conn); if (!conf) goto proceed; config = conf; list = g_key_file_get_string_list(config, "General", "Enable", NULL, NULL); for (i = 0; list && list[i] != NULL; i++) { if (g_str_equal(list[i], "Headset")) enabled.headset = TRUE; else if (g_str_equal(list[i], "Gateway")) enabled.gateway = TRUE; else if (g_str_equal(list[i], "Sink")) enabled.sink = TRUE; else if (g_str_equal(list[i], "Source")) enabled.source = TRUE; else if (g_str_equal(list[i], "Control")) enabled.control = TRUE; else if (g_str_equal(list[i], "Socket")) enabled.socket = TRUE; else if (g_str_equal(list[i], "Media")) enabled.media = TRUE; } g_strfreev(list); list = g_key_file_get_string_list(config, "General", "Disable", NULL, NULL); for (i = 0; list && list[i] != NULL; i++) { if (g_str_equal(list[i], "Headset")) enabled.headset = FALSE; else if (g_str_equal(list[i], "Gateway")) enabled.gateway = FALSE; else if (g_str_equal(list[i], "Sink")) enabled.sink = FALSE; else if (g_str_equal(list[i], "Source")) enabled.source = FALSE; else if (g_str_equal(list[i], "Control")) enabled.control = FALSE; else if (g_str_equal(list[i], "Socket")) enabled.socket = FALSE; else if (g_str_equal(list[i], "Media")) enabled.media = FALSE; } g_strfreev(list); b = g_key_file_get_boolean(config, "General", "AutoConnect", &err); if (err) { DBG("audio.conf: %s", err->message); g_clear_error(&err); } else auto_connect = b; b = g_key_file_get_boolean(config, "Headset", "HFP", &err); if (err) g_clear_error(&err); else enabled.hfp = b; err = NULL; i = g_key_file_get_integer(config, "Headset", "MaxConnected", &err); if (err) { DBG("audio.conf: %s", err->message); g_clear_error(&err); } else max_connected_headsets = i; str = g_key_file_get_string(config, "WBspeech", "I2sEnable", &err); if (err) g_clear_error(&err); else { wbs_commands_param.I2sEnable = strtol(str, NULL, 16); } str = g_key_file_get_string(config, "WBspeech", "IsMaster", &err); if (err) g_clear_error(&err); else { wbs_commands_param.IsMaster = strtol(str, NULL, 16); } str = g_key_file_get_string(config, "WBspeech", "ClockRate", &err); if (err) g_clear_error(&err); else { wbs_commands_param.ClockRate = strtol(str, NULL, 16); } str = g_key_file_get_string(config, "WBspeech", "PcmInterfaceRate", &err); if (err) g_clear_error(&err); else { wbs_commands_param.PcmInterfaceRate = strtol(str, NULL, 16); } proceed: if (enabled.socket) unix_init(); if (enabled.media) btd_register_adapter_driver(&media_server_driver); if (enabled.headset) btd_register_adapter_driver(&headset_server_driver); if (enabled.gateway) btd_register_adapter_driver(&gateway_server_driver); if (enabled.source || enabled.sink) btd_register_adapter_driver(&a2dp_server_driver); if (enabled.control) btd_register_adapter_driver(&avrcp_server_driver); btd_register_device_driver(&audio_driver); *enable_sco = (enabled.gateway || enabled.headset); return 0; }
static int pnat_init(void) { DBG("Setup Phonet AT (DUN) plugin"); return btd_register_adapter_driver(&pnat_server); }
static int wii_init(void) { return btd_register_adapter_driver(&wii_driver); }