mirror of
https://git.kernel.org/pub/scm/bluetooth/bluez.git
synced 2024-12-14 06:25:08 +08:00
1c1f807c30
On device disconnection, net session is not closed. On next attempt to provision/connect a device, net session proxy is not updated by net_session_open() as proxy_in is not NULL. This causes meshctl to use invalid proxy resulting in below crash. 0 strlen () at ../sysdeps/x86_64/strlen.S:106 1 0x00007f3a3c8b1ac4 in _dbus_string_init_const () from libdbus-1.so.3 2 0x00007f3a3c89ed15 in ?? () from libdbus-1.so.3 3 0x00007f3a3c89fba0 in dbus_message_new_method_call () from libdbus-1.so.3 4 0x0000000000419880 in g_dbus_proxy_method_call at gdbus/client.c:997 5 0x000000000040ab9d in mesh_gatt_write at mesh/gatt.c:347 6 0x000000000040d761 in send_mesh_pkt at mesh/net.c:1227 7 send_seg at mesh/net.c:1325 8 0x000000000040fa60 in net_access_layer_send at mesh/net.c:2163 9 0x0000000000413c74 in config_send at mesh/config-client.c:418 10 0x0000000000414886 in cmd_composition_get at mesh/config-client.c:470 11 0x000000000041ffd9 in cmd_exec at src/shared/shell.c:356 12 menu_exec at src/shared/shell.c:383 13 0x00000000004203a5 in shell_exec at src/shared/shell.c:426 14 0x0000000000420d24 in rl_handler (input=0x2259aa0 "composition-get ") at src/shared/shell.c:571 15 0x00007f3a3c45d6f5 in rl_callback_read_char () from libreadline.so.6 16 0x0000000000420229 in input_read at src/shared/shell.c:1034 17 0x0000000000421655 in watch_callback at src/shared/io-glib.c:170 18 0x00007f3a3cb1a04a in g_main_context_dispatch () from libglib-2.0.so.0 19 0x00007f3a3cb1a3f0 in ?? () from libglib-2.0.so.0 20 0x00007f3a3cb1a712 in g_main_loop_run () from libglib-2.0.so.0 21 0x0000000000421bf5 in mainloop_run () at src/shared/mainloop-glib.c:73 22 0x000000000042115a in bt_shell_run () at src/shared/shell.c:962 23 0x0000000000405c5d in main at mesh/main.c:1992 |
||
---|---|---|
android | ||
attrib | ||
btio | ||
client | ||
doc | ||
emulator | ||
gdbus | ||
gobex | ||
lib | ||
mesh | ||
monitor | ||
obexd | ||
peripheral | ||
plugins | ||
profiles | ||
src | ||
test | ||
tools | ||
unit | ||
.gitignore | ||
.mailmap | ||
acinclude.m4 | ||
AUTHORS | ||
bootstrap | ||
bootstrap-configure | ||
ChangeLog | ||
configure.ac | ||
COPYING | ||
COPYING.LIB | ||
HACKING | ||
INSTALL | ||
Makefile.am | ||
Makefile.obexd | ||
Makefile.plugins | ||
Makefile.tools | ||
NEWS | ||
README | ||
TODO |
BlueZ - Bluetooth protocol stack for Linux ****************************************** Copyright (C) 2000-2001 Qualcomm Incorporated Copyright (C) 2002-2003 Maxim Krasnyansky <maxk@qualcomm.com> Copyright (C) 2002-2010 Marcel Holtmann <marcel@holtmann.org> Compilation and installation ============================ In order to compile Bluetooth utilities you need following software packages: - GCC compiler - GLib library - D-Bus library - udev library (optional) - readline (command line clients) To configure run: ./configure --prefix=/usr --mandir=/usr/share/man \ --sysconfdir=/etc --localstatedir=/var Configure automatically searches for all required components and packages. To compile and install run: make && make install Configuration and options ========================= For a working system, certain configuration options need to be enabled: --enable-library Enable installation of Bluetooth library By default the Bluetooth library is no longer installed. The user interfaces or command line utilities do not require an installed Bluetooth library anymore. This option is provided for legacy third party applications that still depend on the library. When the library installation is enabled, it is a good idea to use a separate bluez-library or libbluetooth package for it. --disable-tools Disable support for Bluetooth utilities By default the Bluetooth utilities are built and also installed. For production systems the tools are not needed and this option allows to disable them to save build time and disk space. When the tools are selected, it is a good idea to use a separate bluez-tools package for them. --disable-cups Disable support for CUPS printer backend By default the printer backend for CUPS is build and also installed. For systems that do not require printing over Bluetooth, this options allows to disable it. When the CUPS backend is selected, it is a good idea to use a separate bluez-cups package for it. --disable-monitor Disable support for the Bluetooth monitor utility By default the monitor utility is enabled. It provides support for HCI level tracing and debugging. For systems that don't require any kind of tracing or debugging capabilities, this options allows to disable it. The monitor utility should be placed in the main package along with the daemons. It is universally useful. --disable-client Disable support for the command line client By default the command line client is enabled and uses the readline library. For specific systems where BlueZ is configured by other means, the command line client can be disabled and the dependency on readline is removed. The client should be placed in the main package along with the daemons. It is universally useful. --disable-systemd Disable integration with systemd By default the integration with systemd is enabled and installed. This gives the best integration into all distributions based on systemd. This option is provided for distributions that do not support systemd. In that case all integration with the init system is up to the package. --disable-a2dp Disable A2DP profile By default bluetoothd supports A2DP profile using a built-in plugin, this option disables it. This option is provided for distributions that do not have any audio capabilities. --disable-avrcp Disable AVRCP profile By default bluetoothd supports AVRCP profile using a built-in plugin, this option disables it. This option is provided for distributions that do not have any audio capabilities. --disable-network Disable PANU, NAP, GN profiles By default bluetoothd supports PANU, NAP and GN profile using a built-in plugin, this option disables it. This option is provided for distributions that do not have any network capabilities. --disable-hid Disable HID profile By default bluetoothd supports HID profile using a built-in plugin, this option disables it. This option is provided for distributions that do not have any input capabilities. --disable-hog Disable HoG profile By default bluetoothd supports HoG profile using a built-in plugin, this option disables it. This option is provided for distributions that do not have any input capabilities. --enable-testing Enable testing tools By default tools used only for testing emulation are disabled. This option can be used to enable them. It is not recommended to enable this option for production systems. These tools may contain tests that depend on specific environment or kernel features in development. --enable-experimental Enable experimental tools By default all tools that are still in development are disabled. This option can be used to enable them. It is not recommended to enable this option for production systems. The behavior of the experimental tools is unstable and might still change. --enable-deprecated Enable deprecated tools By defauld all tools that are no longer maintained are disabled. This option can be used to enable them. It is not recommended to enable this option for production systems. The behavior of the deprecated tools may be unstable or simply don't work anymore. --enable-nfc This option enable NFC pairing support. By default the integration with neard is disabled, this gives the option to enable it in system where neard is supported. The plugin is built into bluetoothd therefore it does not need to be package separately. --enable-sap This option enable SAP profile using sap plugin. By default sap plugin is disabled since it requires tight integration with systems and is very rarely required. The plugin is built into bluetoothd therefore it does not need to be package separately. --enable-health This option enable health profiles. By default health plugin is disabled since its profiles are target for the health industry. The plugin is built into bluetoothd therefore it does not need to be package separately. --enable-midi This option enable MIDI support via ALSA Sequencer. By default midi plugin is disabled since it still considered experimental. When bluetoothd will create a new ALSA Sequencer client and port for each device connected that supports the MIDI GATT primary service. The plugin is built into bluetoothd therefore it does not need to be package separately. Information =========== Mailing lists: linux-bluetooth@vger.kernel.org For additional information about the project visit BlueZ web site: http://www.bluez.org