Имеем: Openwrt 15.x, бытовой роутер с усб, какой-то усб-донгл. Железо рабочее, сканирует, устройства рядом видит, pair-ится нормально. Сервис в список добавил (spdtool add NAP), винда устройство видит, парится и в контекстном меню предлагает "Подключаться через -> Точка доступа", но подключаться не хочет (что логично, т.к. недонастроено). Как поднять bnep0 (нет такого интерфейса), как сбриджить сетки? Вроде бы это делается питон-скриптами из пакета bluez-examples, но а) скрипты не работают, говорят "ошибка в import dbus, нет такого модуля", б) это
неважно, т.к. bluez не предоставляет в dbus свои интерфейсы:
# dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames
method return time=1453795633.305923 sender=org.freedesktop.DBus -> destination=:1.7 serial=3 reply_serial=2
array [
string "org.freedesktop.DBus"
string ":1.7"
string ":1.4"
string "org.bluez"
]
#dbus-send --system --type=method_call --print-reply --dest=org.bluez / org.freedesktop.DBus.Introspectable.Introspect
method return time=1453795640.171153 sender=:1.4 -> destination=:1.8 serial=32 reply_serial=2
string "<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
<node><interface name="org.freedesktop.DBus.Introspectable"><method name="Introspect"><arg name="xml" type="s" direction="out"/>
</method></interface><interface name="org.freedesktop.DBus.ObjectManager"><method name="GetManagedObjects"><arg name="objects" type="a{oa{sa{sv}}}" direction="out"/>
</method><signal name="InterfacesAdded"><arg name="object" type="o"/>
<arg name="interfaces" type="a{sa{sv}}"/>
</signal>
<signal name="InterfacesRemoved"><arg name="object" type="o"/>
<arg name="interfaces" type="as"/>
</signal>
</interface><node name="org"/></node>"
Еще из подозрительного:
# bluetoothd -n
bluetoothd[1435]: Bluetooth daemon 5.30
bluetoothd[1435]: Starting SDP server
bluetoothd[1435]: Failed to open RFKILL control device
bluetoothd[1435]: Bluetooth management interface 1.7 initialized
bluetoothd[1435]: Failed to obtain handles for "Service Changed" characteristic
bluetoothd[1435]: Failed to register org.bluez.LEAdvertisingManager1
bluetoothd[1435]: Failed to register LEAdvertisingManager1 interface for adapter
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Error adding Link Loss service
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Current Time Service could not be registered
bluetoothd[1435]: gatt-time-server: Input/output error (5)
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Not enough free handles to register service
bluetoothd[1435]: Sap driver initialization failed.
bluetoothd[1435]: sap-server: Operation not permitted (1)
(Мне это ничего не сказало даже с гуглем, но вдруг кто-то копенгаген)
Итак,
1. Есть ли способы поднять PAN без обращения к dbus? (pand у меня нет и его вроде deprecate-нули лет 5 назад)
3. Если нет, то как починить bluez и поднять PAN через dbus?