Cacko 1.23 BT проблема с pairing

КПК с Linux, установка Linux на iPaq и другие модели, программы
Закрыто
LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Cacko 1.23 BT проблема с pairing

Сообщение LILO » Сб янв 07, 2006 08:55

Обновил прошивку и поймал один неприятный глюк. Заурус нормально спаривается только с одним устройством, прописывает ключ в /etc/bluetooth/<bdaddr>/linkkeys
При подключении ко второму устройству выдается запрос на pin, соединение устанавливается, но ключ не сохраняется. Соотв. при каждом коннекте приходится вводить pin заново. Напрягает :(
Логи hcid смотрел, никакого криминала не увидел, куда копать?

PS пришлось ключи руками прописать
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Сб янв 07, 2006 22:07

Никто не пользуется 1.23?
Или кол-во BT девайсов <2?
:D
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

Аватара пользователя
alien8
Нобелевский лауреат (7 lvl)
Сообщения: 15032
Зарегистрирован: Пт июн 11, 2004 23:40

Сообщение alien8 » Сб янв 07, 2006 22:41

А с 1.22 нормально было?
У меня и с компом и со смартом запоминает.
(1.22)
Пятый укрепленный каземат для самых буйных. Не расковывать, с рук не кормить.

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Сб янв 07, 2006 22:49

Да на 1.22а все было пучком
В 1.23 обновились bluez и тулзы до 2.21, и вот такая кака вылезла.
Не смертельно конечно, но неприятно, каждый раз танец с бубном исполнять при добавлении нового ус-ва
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

Аватара пользователя
alien8
Нобелевский лауреат (7 lvl)
Сообщения: 15032
Зарегистрирован: Пт июн 11, 2004 23:40

Сообщение alien8 » Сб янв 07, 2006 22:54

Антону сообщи - он просил данные о багах на 1.23 не скрывать:)
Пятый укрепленный каземат для самых буйных. Не расковывать, с рук не кормить.

maslovsky
Нобелевский лауреат (7 lvl)
Сообщения: 2781
Зарегистрирован: Пн окт 20, 2003 20:14

Сообщение maslovsky » Пн янв 09, 2006 22:12

А устройство rfcomm другое для нового девайса? И кинь сюда логи hcid, посмотрим.

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Вт янв 10, 2006 05:53

rfcomm походу вообще не при делах
спаривал с несколькими компами просто для PAN, такая же фигура

чуть попозже кину логи, сейчас нет соседей, с кем можно поэксперементировать

вот оно

# hcid -n
hcid[27967]: Bluetooth HCI daemon
hcid[27967]: Starting security manager 0
---паримся с первым устройством---
hcid[27967]: link_key_request (sba=00:10:60:AA:D2:A2, dba=00:09:DD:10:55:2D)
hcid[27967]: /etc/bluetooth/00:10:60:AA:D2:A2/linkkeys
hcid[27967]: pin_code_request (sba=00:10:60:AA:D2:A2, dba=00:09:DD:10:55:2D)
hcid[27967]: link_key_notify (sba=00:10:60:AA:D2:A2, dba=00:09:DD:10:55:2D)
---паримся со вторым устройством---
hcid[27967]: link_key_request (sba=00:10:60:AA:D2:A2, dba=00:0F:DE:E7:2E:4B)
hcid[27967]: /etc/bluetooth/00:10:60:AA:D2:A2/linkkeys
hcid[27967]: pin_code_request (sba=00:10:60:AA:D2:A2, dba=00:0F:DE:E7:2E:4B)
hcid[27967]: link_key_notify (sba=00:10:60:AA:D2:A2, dba=00:0F:DE:E7:2E:4B)


в итоге для первого устройства ключ в linkkeys есть, для второго нету
никаких различий или ошибок в логе нет
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Вс янв 15, 2006 18:47

Никаких подвижек?
А кто-нибудь вообще смог воспроизвести проблему, или это я один такой везучий? :(
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

Вячеслав Диконов
Доктор (4 lvl)
Сообщения: 200
Зарегистрирован: Ср июл 27, 2005 23:13

Сообщение Вячеслав Диконов » Пн янв 16, 2006 11:12

У меня было. Теперь пишу конфиг руками, чтобы 2 телефона и GPS с C1000 спарить.

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Пн янв 16, 2006 21:41

полез смотреть исходники bluez-utils

кривизна обнаружилась в common/textfile.c
map = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_LOCKED, fd, 0);
if (map == MAP_FAILED) {
err = errno;
goto unlock;
}

обламывается на этапе отображения в память linkkeys
с любым другим файлом (в /tmp там не jffs2) рабтает без проблем, а с linkkeys не получается, пока не понял почему, знаний не хватает, никогда не программил под линукс

будем копать
Последний раз редактировалось LILO Вт янв 17, 2006 06:48, всего редактировалось 1 раз.
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Пн янв 16, 2006 22:01

А вот и просветление

The problem is that jffs2 does not support shared writeable mmap

Т.е. либо переписать функцию без mmap, либо переложить linkkeys в некое другое место
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

LILO
Доктор (4 lvl)
Сообщения: 273
Зарегистрирован: Вс мар 06, 2005 17:22

Сообщение LILO » Вт янв 17, 2006 06:51

Все оказалось не просто, а очень просто
Из отображения только читаем, посему вполне подходит MAP_PRIVATE

Собственно исправленный рабочий hcid ниже
Если будут замечены глюки, сообщайте
Вложения
hcid.zip
(17.95 КБ) 213 скачиваний
Sharp Zaurus SL-C760 | Cacko 1.23 Lite | SE K750i

Закрыто

Вернуться в «КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее»