Summary: | Протестировать работу ключей защиты Рарус АльфаАвто на терминальном сервере | ||
---|---|---|---|
Product: | WINE@Etersoft | Reporter: | Константин Кондратюк <kondratyuk> |
Component: | Ключи защиты ; Системы защиты ; Файл лицензии | Assignee: | Andrey Vusik <night> |
Status: | CLOSED FIXED | QA Contact: | |
Severity: | critical | ||
Priority: | P1 | CC: | alrem, amorozov, baraka, ddoss, lav, mid, night |
Version: | 1.0.9 | ||
Target Milestone: | выпуск 1.0.9 | ||
Hardware: | PC | ||
OS: | All | ||
Whiteboard: | |||
Заявки RT: | 17179 | Связано с: | |
Дата напоминания: | |||
Bug Depends on: | |||
Bug Blocks: | 1105, 1217 |
Description
Константин Кондратюк
2008-10-15 18:25:27 MSD
Alrem пишет:
> 4. В случае же терминальной работы для
> последующих пользователей вываливается
> ошибка защиты Раруса "Порт [12012]сервера
> управления оборудования занят другой
> программой." Данная ошибка появляется не
> зависимо от способа установки wine (c ключом
> --attach или без него).
> Для всех вышеописанных наблюдений есть
> скриншоты. Если нужны какие-нибудь логи -
> обращайтесь. Жду быстрой помощи от
> разработчиков.
Все возникающие при тестировании вопросы можно обсуждать в баге
(In reply to comment #0) > В случае терминальной работы вываливается > ошибка защиты Раруса "Порт [12012]сервера > управления оборудования занят другой > программой." Прошу обратить внимание, что ошибка не относится к защите, а относится к открытию порта, через который идёт обмен с торговым оборудованием. Я так понимаю, у них просто сервер защиты и торгового оборудования совмещён. 1) Программа находится в /WINE tests/1c/1c-рарус 3) При установке программы защиты - ошибка о том, что не виден ключ. Ключ стоит локально. У нас версия на 1 пользователя, т.е. локальная. Как я понимаю, терминальная проверка не получится? 1С Рарус Альфа Авто использует ключ защиты Катран, но у нас не поддерживается. Его возможно использовать только если менеджер лицензий стоит на Windows. У нас есть ключ на 4 пользователей. Более подробное обсуждение велось в баге 1105 Проверил на терминальном сервере. Ошибки на последней сборке возникло. Удалось зайти с разных пользователей. НЕ возникло. *** Bug 3016 has been marked as a duplicate of this bug. *** (In reply to comment #6) > Проверил на терминальном сервере. > Ошибки на последней сборке возникло. > Удалось зайти с разных пользователей. > Ты проверял wine --admin wine --attach ? Из заявки 9043: Выяснили, что поблема из-за того, чти для всех пользователей установлено одно имя комьютера. Серевер защиты его и учитывает. После внесения изменений в /dll/kernel32/dll/computername.c (wine-20080211) void COMPUTERNAME_Init (void) { ... if ( st != STATUS_SUCCESS || get_use_dns_option() ) { char hbuf[256]; int hlen = sizeof (hbuf); char *dot; +++ char *whn; TRACE( "retrieving Unix host name\n" ); +++ whn = getenv("WINEHOSTNAME"); +++ if (whn) +++ strcpy (hbuf, whn); +++ else if ( gethostname ( hbuf, hlen ) ) { strcpy ( hbuf, default_ComputerName ); WARN( "gethostname() error: %d, using host name %s\n", errno, hbuf ); } ... имя комьютера можно задать через переменную окружения WINEHOSTNAME. export WINEHOSTNAME=aa-$USER /usr/bin/wine "c:/1cv8/bin/1cv8.exe" После этого сервер защиты нормально выдает лицензии. Проверьте пожалуйста, что этот же результат достигается через реестр выставлением в ветке HKCU\Software\Wine\Network параметра UseDnsComputerName в N и указанием желаемого имени компьютера в ветке HKLM\System\CurrentControlSet\Control\ComputerName\ComputerName] См. также http://wiki.winehq.org/UsefulRegistryKeys В сборке 1.0.10-eter2 будет поддержка WINEADDUSERTOCOMPNAME в конф. файле /etc/wine/config. При установке этой переменной к имени компьютера будет прибавляться имя пользователя по схеме $HOSTNAME-$USER -> localhost-guest Проблема решена. openSuse 11.2 eter7/eter12, testing. Не работает. Проверить на текущей сборке. (В ответ на comment #13) > Проверить на текущей сборке. Работа по баге. Пока результата нет. Доделал. 1.0.12-eter8.14/18 SUSE 10.3 в vbox сервер описан в http://bugs.etersoft.ru/show_bug.cgi?id=4399#c66 Все работает, если: 1) в /etc/hosts прописать сервер с защитой 2) в /etc/wine/config выставить WINEADDUSERTOCOMPNAME = yes 3) на wine_c/users/Public/Application\ Data/Protect/LocalProtect/ выставить права для соответствующих пользователей. Хорошо. Закрываем. Небольшое уточнение: результирующее имя хоста не должно превышать 14 символов вместе с тире посередине- иначе имя пользователя не добавится. То есть имя хоста terminal, пользователь sysadmin - имя хоста terminal, а если на нем же пользователь admin - имя хоста terminal-admin. Долго не мог понять где косяк. Думаю, надо добавить это в комментарий в конфиге wine. Всю эту историю нужно описать в документации, добавить комментарий в конф. файл о длине имени. К сожалению, действительно, в Wine используется константа MAX_COMPUTERNAME_LENGTH, равная 15. Возможно, в код стоит добавить предупреждение в случае переполнения. (В ответ на comment #18) > Всю эту историю нужно описать в документации, добавить комментарий в конф. файл > о длине имени. > К сожалению, действительно, в Wine используется константа > MAX_COMPUTERNAME_LENGTH, равная 15. > Возможно, в код стоит добавить предупреждение в случае переполнения. Внес подробный комментарий в config. Вешаю багу по созданию предупреждения. |