Здравствуйте. Решил развернуть локальный сервер TBC из сборки под номером 9. Развернул по инструкции в теме, в realmlist.wtf следующее:
Цитата
set realmlist 127.0.0.1:3725
После, в консоль mangosd ввёл команду для создания аккаунта:
Цитата
account create newtest password q123456789
Но в клиенте возвращает ошибку о том, что указаны неверные сведения. Что я делаю не так? В таблице realmd.account пользователь в наличии. Я теряюсь в догадках.
Попробовал, если не писать порт, то возвращает ошибку подключения. Без разницы пишу ли я localhost или адрес в локальной сети. Если я пытаюсь подключиться по адресу в локальной сети с портом 3725, то тоже возвращается ошибка о неверных сведениях.
В общем, помучал я немножко сборку №9. Как мне кажется, она работает некорректно в плане создания новых аккаунтов.
Вот пример:
Цитата
mangos>account create ctest password 123 Account created: ctest mangos>account create ctest2 password 789 Account created: ctest2 mangos>SQL: INSERT INTO account SQL ERROR: Out of range value for column 'expansion' at row 1
mangos>account create ctest2 password 256 Account created: ctest2 mangos>SQL: SQL ERROR: Out of range value for column 'expansion' at row 1
mangos>account create ctest2 password 255 Account created: ctest2 mangos>account create ctest3 password 256 Account created: ctest3 mangos>SQL: SQL ERROR: Out of range value for column 'expansion' at row 1
Функция создания пароля, в случае подачи в переменную значения больше, чем 255, т.е. больше байта, почему-то некорректно выполняет приведение типов и вдобавок начинает заносить значение (хоть и не должна, судя по аргументам) в поле expansion таблицы realmd.account, которое имеет тип tinyint. Но если добавить любой буквенный символ, то приведение типов начинает работать корректно.
Где-то тут собака и зарыта, раз есть некорректное приведение типов, значит некорректно генерируется пароль (SHA1?).
Собственно, если выполнить следующую команду для уже созданного аккаунта. то авторизация выполнится корректно:
Цитата
mangos>account set password ctest 123 123 The password was changed
То есть, функция сброса пароля генерирует пароль корректно, в отличие от функции создания аккаунта. Неприятно... Сборка сломана в основной базовой функции, получается. P.S. При установке MySQL прилетели какие-то обновления + я поставил совместимость паролей с MySQL5, это не должно никак повлиять.