|
Здравствуйте, гость ( Вход | Регистрация )
|
![]()
Сообщение
#61
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
Поскольку исходники PtokaX нынче доступны в полном объеме (включая проекты Visual Studio), у многих анонимусов руки так и чешутся запилить форк сего замечательного хабсофта. Я оказался в их числе ![]() PtokaX 0.5.0.1 Mod Версия: 0.5.0.1 Модификация: mod 11 Операционная система: Windows, Linux Описание: Решил выложить на всеобщее обозрение свою модификацию PtokaX под кодовым названием PtokaX Mod. Список изменений относительно оригинальной версии выглядит так: mod 11 Добавлено: Расширение протокола CTM2HUB. Добавлено: Задержка перед отправкой $Lock (которая якобы помогает при DDoS-атаках). mod 10 Исправлено: Неверные названия некоторых стран, возвращаемые функцией IP2Country.GetCountryName. Добавлено: Возможность получения названия страны по коду с помощью функции IP2Country.GetCountryName. Исправлено: Предупреждения при компиляции версии, хранящей пароли в зашифрованном виде. Исправлено: Компиляция библиотеки SHA-2 под новыми версиями gcc. mod 9 Исправлено: Профиль юзера устанавливался до успешной проверки пароля, что представляло собой потенциальную уязвимость (перенесено из тестовой версии). Исправлено: Неполный IP-адрес отображался как некорректный в тех случаях, когда юзер, использующий IPv6, отправлял адрес IPv4 в команде (перенесено из тестовой версии несмотря на то, что суть бага мне не совсем ясна). Исправлено: Права доступа для файлов и папок в *nix (перенесено из тестовой версии). Исправлено: Возможные падения GUI-версии хаба при закрытии окон (перенесено из тестовой версии). Исправлено: Неверные размеры массивов в коде редактора скриптов (перенесено из тестовой версии). Исправлено: Невозможность использования в командах адресов IPv6, чья длина превышает 15 символов (перенесено из тестовой версии). Исправлено: Ошибки в командах !rangeban и !rangeunban. Добавлено: Автозапуск скрипта locale.lua. mod 8 Изменено: Отныне юзеры с одинаковыми профилями не смогут банить друг друга. Данное изменение не относится к юзерам с профилем 0 (Master): эти засранцы по-прежнему могут банить кого угодно. Добавлено: Ограничение продолжительности временных банов. В GUI данная опция находится на вкладке "Настройки банов". ID для SetMan.(G/S)etNumber - 114. Добавлено: Опция, позволяющая менять интервал между служебными циклами. Уменьшение интервала снижает скорость отклика хаба на действия юзеров, однако это также приводит к некоторому повышению нагрузки на процессор. В GUI данная опция находится на вкладке "Больше настроек". ID для SetMan.(G/S)etNumber - 115. Исправлено: Ошибка в linux-версии хаба, приводившая к некорректной работе таймеров с интервалом, не кратным одной секунде. Исправлено: Окончательное решение вопроса локалей. Теперь локаль устанавливается изнутри Ptokax. В связи с этим былы добавлены 2 параметра настроек. ID для SetMan.(G/S)etString - 37 (Windows) и 38 (NIX). В GUI доступна только локаль Windows. Поскольку в Windows локаль устанавливается только для текущего модуля (т.е. выполняем setlocale() в PtokaX.exe - локаль меняется только для PtokaX.exe, выполняем setlocale() в lua.dll - локаль меняется только для lua.dll), необходимость в скрипте locale.lua никуда не делась. Добавлено: Установка автозапуска хаба при выполнении make install. Добавлено: Цели uninstall, on и off в makefile. Цели make on и make off позволяют включить и отключить автозагрузку хаба соответственно. Цель make uninstall используется для удаления файлов хаба (при этом удаляются только исполняемые файлы и ссылки автозапуска, рабочую директорию необходимо удалить вручную). mod 7 Исправлено: Проверка прав доступа при создании банов с помощью команды $Kick. mod 6 Добавлено: Команда !reloadcountry, позволяющая перезагрузить базы IP-To-Country. Команда доступна юзерам с профилем 0. Добавлено: Функция Core.BotMyINFO(sBotNick, sBotMyINFO), позволяющая изменить $MyINFO бота, зарегистрированного из скрипта. Полная проверка синтаксиса $MyINFO не производится. Исправлено: Максимальное значение параметра "Ограничение входа юзеров" в GUI. Удалено: Бессмысленная опция "Отключать клиенты, отправляющие $Supports с ошибками". При ближайшем рассмотрении выяснилось, что "ошибками" считается лишний пробел в конце команды. Код, отвечающий за определение этой "ошибки" сохранен, поскольку он влияет на обработку магического байта, и в этом, возможно, есть некий смысл. Добавлено: Опция, позволяющая отключить обработку магического байта. При включении заработает отображение пола в GreylinkDC, но могут появиться ошибки коммуникации между разными клиентами, поскольку при использование старшей половины байта каждый разработчик DC-клиента извращался как мог. Исправлено: Функция os.clock под Linux. Теперь она работает так же, как под Windows - возвращает время с момента запуска хаба с точностью до миллисекунды. По умолчанию данный костыль включен, отключается в stdinc.h. Изменено: При корректной остановке хаба всем юзерам рассылается сообщение о перезапуске. Раньше это сообщение отправлялось лишь при выполнении команды !restart. Изменено: Время последнего входа зарегистрированного юзера обновляется не только при его входе на хаб, но и при выходе. Добавлено: Переменная iOnlineTime, отображающее время, проведенное зарегистрированным юзером на хабе (в секундах). Переменная обновляется при выходе юзера, а также при вызове RegMan.UpdateTimes() (см. ниже). Добавлено: Функция RegMan.UpdateTimes(), обновляющая значения iLastEnter и iOnlineTime в профилях зарегистрированных юзеров, находящихся на хабе. iOnlineTime вычисляется с учетом текущего времени и значения iLastEnter, а iLastEnter устанавливается равным текущему времени. Добавлено: Функция RegMan.SetTimes(sNick, iRegDate, iLastEnter, iOnlineTime), позволяющая вручную установить время регистрации, время последнего входа и время онлайн для указанного зарегистрированного юзера. Перенесены некоторые изменения из PtokaX 0.5.0.2 mod 5 Исправлено: Падение хаба при загрузке банов. (перенесено из тестовой версии) Исправлено: Корректное завершение работы при помощи os.exit(). (перенесено из тестовой версии) Добавлено: В makefile добавлена рекурсия для компиляции tinyxml. Теперь его не нужно собирать отдельно перед сборкой PtokaX (перенесено из тестовой версии) Исправлено: Ошибка в скрипте init.d Исправлено: Ошибки в русском языковом файле. Его можно пилить вечно, и все равно будет кривой :( mod 4 Исправлено: Ошибки в функции Core.HideUserKey Исправлено: Несколько ошибок в настройках прав доступа для незарегистрированных. Испорчено: Опция "Не проверять IP в командах DC" в профиле незарегистрированного юзера. Теперь она игнорируется, и, как следствие, IP всегда проверяется. Это не баг, это фича. Добавлено: Костыль, исправляющий регистрочувствительность кириллических ников в некоторых версиях Linux. По умолчанию отключен, включается в stdinc.h Исправлено: Команда restart скрипта init.d mod 3 Добавлено: Обработка ошибок при загрузке XML-файлов. Если в одном из файлов есть синтаксическая ошибка, программа сообщает об этом и аварийно завершает работу вместо того, чтобы втихую загрузить значения по умолчанию. Исправлено: Кодировка, указанная в заголовках XML-файлов. Исправлено: Если хаб не смог запуститься (например, по причине занятости всех указанных портов), настройки будут сохранены, что даст возможность исправить их. Добавлено: Функция Core.HideUserKey(tUser, bHide), позволяющая скрыть ключ юзера. Исправлено: Добавление/удаление ключей при изменении зарегистрированных юзеров. Исправлено: Несколько ошибок в настройках прав доступа для незарегистрированных. Добавлено: Функция Core.IsolateUser(tUser, bState), позволяющая изолировать юзера от главного чата. Изолированный юзер не видит сообщений других юзеров, а они, соответственно, не видят сообщения изолированного юзера. Добавлено: Функция Core.SendToNonisolated(sData), отправляющая данные всем неизолированным юзерам (см. предыдущий пункт). Используется аналогично Core.SendToAll(sData). Исправлено: В сборке x64 отключено использование больших адресов. Теперь хаб не падает при запуске скриптов. Как результат - в сборке нельзя использовать библиотеки, предназначенные для оригинальной PtokaX 0.5.0.1. Исправлено: Компиляция под Debian и Ubuntu различных архитектур. Надеюсь, в этот раз исправил правильно. Исправлено: В скрипте для init.d исключена возможность повторного запуска демона, а также исправлена передача ему переменных окружения. mod 2 Изменено: В сборках x86 отключено использование инструкций SSE для совместимости с некоторыми не очень свежими процессорами от AMD. Исправлено: Установка размеров окон при различных размерах системных шрифтов. Исправлено: Компиляция под Debian. Исправлено: Небольшая ошибка в makefile при выполнении цели install. Исправлено: Скрипт locale.lua Исправлено: Пропущенные функции и параметры в scripting-interface.txt mod Исправлено: При нажатии кнопки "Принять" настройки не сохранялись в файл (подозреваю, что кое-кто считает это фичей, а не багом). Изменено: К черту бинарный бред. Список зарегистрированных юзеров снова хранится в файле XML. Изменено: Для 32-разрядной версии метод вызова функций изменен на cdecl, что позволило испльзовать библиотеки, предназначенные для Lua-AIO и RusHub. Изменено: Положение и размеры кнопок на вкладке "Статистика". Изменено: Отключено открытие скрипта по двойному клику в списке. Глубокого смысла в этом нет, просто мне так удобнее ![]() Исправлено: Доведен до ума файл русской локализации. Добавлено: В профиль зарегистрированного юзера добавлены дата регистрации, дата последнего входа и один текстовый параметр для хранения произвольных данных. В связи с этим в таблицу зарегистрированного юзера были добавлены поля iRegDate, iLastEnter и sCustom. Для установки поля sCustom используется функция RegMan.SetCustom(sNick, sString). Поле sCustom может отсутствовать. Изменено: При сохранении настроек в файл записываются все параметры, а не только те, значения которых отличаются от значений по умолчанию. Добавлено: Проверка прав доступа для команды !stats. Добавлено: Блокировка неизвестных команд. Отключается на вкладке "Дополнительно". Добавлено: Возможность отключения приветствия (Этот хаб работает под управлением...). Включается на вкладке "Дополнительно" Имя параметра в настройках - ShowWelcome, ID для SetMan.(S/G)etBool - 57. Изменено: Отключение проверки ключа вынесено в настройки. В связи с этим был удален ключ командной строки /nokeycheck. Добавлено: Возможность отключения сжатия zlib. Отключается на вкладке "Больше настроек". Изменено: Профиль по умолчанию для юзеров, регистрируемых с помощью GUI. Добавлено: Функция print. В GUI-версии функция выводит текст в окно ошибок скриптов, в консольной - в главный чат юзерам с профилем Master. Исправлено: Самодеятельность TinyXML, касающаяся обработки пустых символов. Несколько пустых символов подряд заменялись одним пробелом. По непонятной причине неразрывный пробел также считался пустым символом. Исправлено: При запуске принудительно устанавливается локаль "C" для чисел. Это поможет избежать проблем с сохранением дробных чисел если сервер, на котором работает хаб, настраивали жопой. Добавлено: Версия PtokaX, хранящая пароли в зашифрованном (SHA-256) виде. Изменено: Настройки по умолчанию. Строковые параметры переведены на русский. Изменено: Список стран IP-To-Country: Добавлены коды стран, названия стран переведены на русский. Добавлено: Сообщения об ошибках скриптов отправляются операторам. Добавлено: Возможность отключения отображения трассировки стека Lua в ошибках скриптов. Добавлено: Параметр bZPipe, отображающий поддержку юзером сжатия. Код для Core.GetUserData - 64 Исправлено: Устранено мелькание окна консоли при вызове функций os.execute и io.popen. Добавлено: Настройка прав доступа для незарегистрированных юзеров. Добавлено: Альтернативный синтаксис для функции регистрации бота: Core.RegBot(sNick, sMyINFOString, bHaveKey). Полная проверка синтаксиса $MyINFO не производится. Добавлено: Функция Core.HideUser(tUser, bHide), позволяющая скрыть юзера из списка. Добавлено: Функции Core.GetDCStats, Core.GetNetStats. Добавлено: События BadPassArrival и ValidateDenideArrival. Исправлено: При загрузке настроек из файла строковые настройки заменялись настройками по умолчанию в тех случаях, когда длина сохраненной строки равна нулю, а длина строки по умолчанию больше нуля. По этой причине в предыдущих версиях мода было невозможно переключить язык на английский, а в оригинальной версии - удалить адрес перенаравления. Исправлено: Изменение паролей зарегистрированных юзеров. Исправлено: Если длинные MyINFO отправляются только разрешенным профилям, а профиль юзера позволяет ему получать полные MyINFO, то боты, зарегистрированные скриптами, становились видны ему только после переподключения к хабу. Добавлено: Функция Core.UserNoQuit(tUser, bState), позволяющая подавить команду $Quit при выходе юзера. Кому-то функция может показаться бессмысленной, однако я знаю наверняка, для чего я ее добавил. Возможно, и вы когда-нибудь узнаете ![]() ![]() ![]() ![]() Старые версии ![]() ![]() ![]() ![]() Остальные версии можно найти в моей шаре на хабе MyDC Как правильно обновляться... ...с оригинальной версии на mod: Первым делом конвертируем базу из бинарного формата в xml. Делать это нужно на оригинальной версии, поскольку скрипт использует для конвертирования API хаба. Затем останавливаем хаб, открываем файл cfg/Profiles.xml, и добавляем профиль для незарегистрированных юзеров: Длиннокод Код <Profile> <Name>Unreg</Name> <Permissions>00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 0 0000000000000000000</Permissions> </Profile> Если Вы обновляетесь с версии 0.4.x.x, работавшей под Windows, у Вас может возникнуть еще одна проблема: в списке зарегистрированных юзеров обнаружится большое число юзеров с одним и тем же ником, но в разных регистрах. При удалении каждого повторяющегося юзера, GUI-версия PtokaX будет выдавать сообщение. Если Вам лень клацать кнопку "OK" 10500 раз, можете убить птоку диспетчером задач, и использовать для первого запуска консольную версию - она удалит дублирующихся юзеров тихо, а сообщения об удалении сохранит в файл system.log ...с PtokaX 0.5.0.0 mod3 на PtokaX 0.5.0.1 mod: Останавливаем хаб, добавляем в настройки профиль незарегистрированных юзеров (см. предыдущий пункт), запускаем хаб. Всё ![]() ...с mod на оригинальную версию: Останавливаем хаб, удаляем из конфига профиль незарегистрированных юзеров. После этого можно обновлять бинарники и запускать хаб - PtokaX сама сконвертирует базу регистраций в бинарный формат, а также удалит все ненужные (и даже некоторые нужные ![]() ...с обычной версии на версию, хеширующую пароли: Просто заменяем бинарники, и запускаем хаб. При запуске все пароли будут хешированы автоматически. ...с версии, хеширующей пароли, на обычную версию: Останавливаем хаб, заменяем бинарники, удаляем базу регистраций, запускаем хаб, и просим всех юзеров зарегистрироваться по-новой. Ну да, а Вы что думали? Расшифровать хешированные пароли невозможно. Именно по этой причине включение хеширования паролей производится таким извращенным способом. Версия, хранящая пароли в зашифрованном виде: ![]() Как это работает Пароли хранятся в виде Код |<Хэш пароля в hexadecimal-формате> Символ | в начале пароля нужен для того, чтобы PtokaX могла отличить шифрованные пароли от нешифрованных. Если при загрузке базы какие-либо пароли не соответствуют данному формату, они автоматически хешируются. Это позволяет не париться при переходе на шифрованную базу и при добавлении аккаунтов прямо в XML-файл.Следует помнить, что хешированные пароли расшифровать нельзя. Т.е вы не сможете сконвертировать базу обратно. Никак не сможете. СОВСЕМ никак. Также следует помнить, что зарегистрированных юзеров теперь нельзя редактировать с помощью PXControl, PRA, и им подобных. И да, если Ваш скрипт регистрации запрашивает старый пароль при его изменении, Вам придется прикрутить к нему библиотеку sha2. В архиве только exe'шник, все остальное берем из основного дистрибутива. Скрипт для конвертирования бинарной базы обратно в XML: ![]() Если Вы переходите на данную версию с более новой, хранящей настройки и список скриптов в файлах .pxt, то Вам будет полезен конвертер: ![]() TODO По-человечески исправить отрисовку GUI. Думаю, многие заметили, что внешний вид окна оригинальной птоки сильно портится если по нему провести окном другого приложения. Сильнее всего эффект заметен в Windows 7 на упрощенных темах оформления. Связано это с тем, что PPK не до конца осилил создание GUI с помощью чистого WinAPI. Проблема в том, что я знаю WinAPI еще хуже, поэтому я даже не представляю, как это исправить. Поэтому я поступил следующим образом - убрал свойство WS_CLIPCHILDREN главного окна. После этого глюки с перерисовкой дочерних элементов исчезли, но они стали сильно мигать при изменении размеров окна. Перенести из PtokaX 0.5.0.0 mod 4 (этот мод никогда не выкладывался, поскольку я не закончил его) событие IsRegistered(). Оно используется для хранения аккаунтов во внешних БД, и в вышеназванной модификации вполне себе работало. Но в версии 0.5.0.1 PPK так отрефакторил ту часть кода, что добавить его стало некуда. Возможно, когда-нибудь я таки решусь на переделку. Исправить странные глюки в работе функции SendToNonisolated. Иногда при изменении прав профилей сообщения, отправленные с помощью этой функции начинают получать все юзеры, включая изолированных. Причину пока не выяснил. P.S. Не забывайте сообщать о найденных ошибках Версии, основанные на PtokaX 0.5.0.0 mod 3 Исправлено: При изменении настроек главного бота или ОпЧата из GUI, бот со старым ником оставался в списке юзеров до перезапуска хаба. Изменено: Профиль по умолчанию для юзеров, регистрируемых с помощью GUI. Добавлено: Альтернативный синтаксис для функции регистрации бота: Core.RegBot(sNick, sMyINFOString, bHaveKey). Полная проверка синтаксиса $MyINFO не производится. Добавлено: Возможность отключения сжатия zlib. Отключается на вкладке "Больше настроек". Изменено: Отключение проверки ключа вынесено в настройки. В связи с этим был удален ключ командной строки /nokeycheck. Исправлено: Незначительные исправления в языковом файле. Изменения в библиотеках: Устранено мелькание окна консоли при вызове функций os.execute и io.popen. mod 2 Исправлено: Самодеятельность TinyXML, касающаяся обработки пустых символов. Несколько пустых символов подряд заменялись одним пробелом. По непонятной причине неразрывный пробел также считался пустым символом. Добавлено: Функции Core.GetDCStats, Core.GetNetStats и Core.GetMemStats. Добавлено: Консольная версия PtokaX, хранящая пароли в зашифрованном (SHA-256) виде. Добавлено: Функция print. В GUI-версии функция выводит текст в окно ошибок скриптов, в консольной - в главный чат юзерам с профилем Master. Добавлено: Сообщения об ошибках скриптов отправляются юзерам с профилем Master. Исправлено: Пропущенные строки в языковом файле. Изменения в библиотеках: В библиотеке Lua параметры LUA_PATH_DEFAULT и LUA_CPATH_DEFAULT изменены на более каноничные, что позволит избежать проблем при подключении некоторых библиотек. Из Lua удалены костыли, добавленные для совместимости с библиотеками Lua-AIO. В связи с этим были удалены библиотеки iup, tcps и udps. Заменена библиотека iconv. Добавлены библиотеки sha1 и sha2. mod 1 Изменено: Для 32-разрядной версии метод вызова функций изменен на cdecl, что позволило испльзовать библиотеки, предназначенные для Lua-AIO и RusHub Изменено: Положение и размеры кнопок на вкладке "Статистика" Изменено: Отключено открытие скрипта по двойному клику в списке. Глубокого смысла в этом нет, просто мне так удобнее ![]() Исправлено: Доведен до ума файл русской локализации Изменено: Настройки по умолчанию. Строковые параметры переведены на русский Изменено: Список стран IP-To-Country: Добавлены коды стран, названия стран переведены на русский Добавлено: В никах запрещены символы от \0 до \31 Добавлено: Блокировка неизвестных команд. Отключается на вкладке "Дополнительно" Добавлено: Проверка прав доступа для команд !stats и !memstats Добавлено: События BadPassArrival и ValidateDenideArrival Добавлено: Параметр bZPipe, отображающий поддержку юзером сжатия. Код для Core.GetUserData - 64 Изменено: При сохранении настроек в файл записываются все параметры, а не только те, значения которых отличаются от значений по умолчанию Добавлено: Возможность отключения приветствия (Этот хаб работает под управлением...). Включается на вкладке "Дополнительно" Имя параметра в настройках - ShowWelcome, ID для SetMan.(S/G)etBool - 57 Изменено: К черту бинарный бред. Список зарегистрированных юзеров снова хранится в файле XML Исправлено: Ошибка IPToCountry - первый и последний адрес диапазона не считались его частью Исправлено: При нажатии кнопки "Принять" настройки не сохранялись в файл (подозреваю, что кое-кто считает это фичей, а не багом ![]() ![]() ![]() ![]() Консольная версия, хранящая пароли в зашифрованном виде: ![]() Предыдущая версия, шифрующая пароли алгоритмом MD5: ![]() Дополнительную информацию можно найти во втором сообщении данной темы
|
|
|
![]() |
![]() ![]()
Сообщение
#62
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 24.3.2014 Из: Чебоксары Пользователь №: 12 364 Спасибо сказали: 0 раз ![]() |
Всем доброго времени суток, вообщем вопрос таков:
Зделал скрипт чтоб автоматический качал базу IP-To-Country. Скрипт запускается раз в месяц через CRON Но есть неудобства что команду для перезагрузки баз надо запускать через клиент вручную ( Добавлено: Команда !reloadcountry, позволяющая перезагрузить базы IP-To-Country. Команда доступна юзерам с профилем 0.) Может кто создаст скрипт на LUA чтобы автоматически перегружалась база? |
|
|
![]()
Сообщение
#63
|
|
![]() Белый Волк ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 723 Регистрация: 11.9.2008 Из: г.Томск Пользователь №: 516 Спасибо сказали: 657 раз ![]() |
Строка для перезагрузки базы:
Код IP2Country.Reload() Что вам мешает изучить файл "scripting-interface_mod6.txt" в корне папки Птоки мод 6 ? |
|
|
![]() ![]()
Сообщение
#64
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 8 Регистрация: 24.3.2014 Из: Чебоксары Пользователь №: 12 364 Спасибо сказали: 0 раз ![]() |
|
|
|
![]()
Сообщение
#65
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
Выложил mod 8. Подробности в первом посте.
|
|
|
![]()
Сообщение
#66
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 36 Регистрация: 6.2.2009 Из: Липецк Пользователь №: 2 131 Спасибо сказали: 8 раз ![]() |
|
|
|
![]()
Сообщение
#67
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
PPA, старые версии удаляю по той причине, что вложения в данном движке реализованы омерзительно и при большом кол-ве прикрепленных файлов в них невозможно ориентироваться. Но они есть у меня в шаре на хабе MyDC.
Значимые изменения из svn уже перенес, как потестирую, выложу. А косметические перенести нереально - чуть ли не половина кода изменена/переименована. Как выйдет финальная версия, попробую перенести в нее мои изменения. |
|
|
![]()
Сообщение
#68
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 36 Регистрация: 6.2.2009 Из: Липецк Пользователь №: 2 131 Спасибо сказали: 8 раз ![]() |
А косметические перенести нереально - чуть ли не половина кода изменена/переименована. Как выйдет финальная версия, попробую перенести в нее мои изменения. У меня с помощью гита почти все изменения на автомате влились странно что ты не хранишь код в нормальном месте а выкладываешь тут в виде аттачей |
|
|
![]()
Сообщение
#69
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
PPA, влились куда? В оригинальную птоку? Ну так это не проблема.
Вы видели, сколько изменений в моде? И Вы видели какие они? Как думаете, справится ли тут хоть какая-нибудь автоматическая "вливалка"? |
|
|
![]()
Сообщение
#70
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 38 Регистрация: 24.11.2008 Из: Москва Пользователь №: 1 186 Спасибо сказали: 5 раз ![]() |
Выложил mod 8. Подробности в первом посте. На дебиане 7 x64 компилится нормально, работает уже суток 3-е, ошибок не заметил... P.S. Автозагрузка хаба работает))) как раз ночью (26 ноября в 1.30 по МСК) перезагрузился VPS на OVH, и хаб тоже... Сообщение отредактировал Karumo - 27.11.2014, 12:13 |
|
|
![]()
Сообщение
#71
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 36 Регистрация: 6.2.2009 Из: Липецк Пользователь №: 2 131 Спасибо сказали: 8 раз ![]() |
PPA, влились куда? В оригинальную птоку? Ну так это не проблема. Вы видели, сколько изменений в моде? И Вы видели какие они? Как думаете, справится ли тут хоть какая-нибудь автоматическая "вливалка"? Ну конфликты неизменно будут. просто их рано или поздно делать - чем делать это чаще - тем будет проще в будущем. или ты надеешься что PPK к релизу обратно все переменные переименует ) |
|
|
![]()
Сообщение
#72
|
|
![]() RusHub team lead ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз ![]() |
А не проще ли завести репозиторий для мода, и делать мерж изменений в него, а не гемороится с файлами и не прикреплять постоянно исходники в архивах? Тогда достаточно будет дать ссылку на репозиторий, и тот, кому надо, сможет выкачать исходники. Кстати, бинарники релизов можно тоже в репозиторий в отдельную ветку кидать.
|
|
|
![]()
Сообщение
#73
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 36 Регистрация: 6.2.2009 Из: Липецк Пользователь №: 2 131 Спасибо сказали: 8 раз ![]() |
А не проще ли завести репозиторий для мода, и делать мерж изменений в него, а не гемороится с файлами и не прикреплять постоянно исходники в архивах? Тогда достаточно будет дать ссылку на репозиторий, и тот, кому надо, сможет выкачать исходники. Кстати, бинарники релизов можно тоже в репозиторий в отдельную ветку кидать. +1 В мае в этой теме уже спрашивал Alex82 про это http://mydc.ru/topic5423s40.html?p=46346#entry46346 он ничего не ответил |
|
|
![]()
Сообщение
#74
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
Ну конфликты неизменно будут. Нет, я надеюсь дождаться релиза, затем подождать чуток, чтобы вылезли все грубые баги (а они при таком количестве изменений непременно будут), и PPK их пофиксил, а потом перенести в код PPK свои изменения.просто их рано или поздно делать - чем делать это чаще - тем будет проще в будущем. или ты надеешься что PPK к релизу обратно все переменные переименует ) |
|
|
![]()
Сообщение
#75
|
|
![]() Site Reliability Engineer ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз ![]() |
+1 В мае в этой теме уже спрашивал Alex82 про это http://mydc.ru/topic5423s40.html?p=46346#entry46346 он ничего не ответил Этот вопрос и ранее поднимался, даже мной в самом начале темы. ![]() |
|
|
![]()
Сообщение
#76
|
|
![]() PtokaX DC Hub 0.4.1.2 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 203 Регистрация: 20.1.2009 Из: Republic of Belarus, Minsk, Uruchie, Avalon. Пользователь №: 1 890 Спасибо сказали: 4 раза ![]() |
А x32 есть?=)
|
|
|
![]()
Сообщение
#77
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
Drakula, x32 нет, есть x86. Подойдет такая?
|
|
|
![]() ![]()
Сообщение
#78
|
|
![]() PtokaX DC Hub 0.4.1.2 ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 203 Регистрация: 20.1.2009 Из: Republic of Belarus, Minsk, Uruchie, Avalon. Пользователь №: 1 890 Спасибо сказали: 4 раза ![]() |
Drakula, x32 нет, есть x86. Подойдет такая? Вроде бы заработала=) Поставил, всё улётно, респект тебе, но возникла проблема все скрипты работают кроме релизов, вот что выкидывает: [21:04:34] Синтаксис ...аб хаб\Новая папка\scripts\freshstuff.lua:59: attempt to index global 'lfs' (a nil value) библиотеки заменил на вот эти: http://mydc.ru/index.html?showtopic=1970&a...ost&p=46357 Наверное это не сюда надо было писать, я в релизах так же написал, но посчитал что возможно уместно будет и сюда написать. |
|
|
![]()
Сообщение
#79
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 38 Регистрация: 24.11.2008 Из: Москва Пользователь №: 1 186 Спасибо сказали: 5 раз ![]() |
Вроде бы заработала=) Поставил, всё улётно, респект тебе, но возникла проблема все скрипты работают кроме релизов, вот что выкидывает: [21:04:34] Синтаксис ...аб хаб\Новая папка\scripts\freshstuff.lua:59: attempt to index global 'lfs' (a nil value) библиотеки заменил на вот эти: http://mydc.ru/index.html?showtopic=1970&a...ost&p=46357 Наверное это не сюда надо было писать, я в релизах так же написал, но посчитал что возможно уместно будет и сюда написать. Если компилишь под юниксы, то поставь этот пакет: aptitude liblua5.1-filesystem0 А вообще у меня давно есть FAQ для тех кто первый раз ставит на хостинги юниксовые (VPS и т.п.). Установка хаба с "нуля" -- Протестировано на версии 0.5.0.1 mod6 http://mydc.ru/topic5423.html -- программа доступа к консоле SSH PuTTy -- для работы с файловой системой (закачка-скачивание) понадобится программа WinSCP -- начало необязательно: sudo bash apt-get update --Потом: apt-get install make gcc build-essential chkconfig aptitude --Устанавливаем библиотеки и модули Lua: aptitude -y install g++ zlib1g zlib1g-dev lua5.1 liblua5.1-0 liblua5.1-0-dev liblua5.1-filesystem0 liblua5.1-posix1 liblua5.1-socket2 -- альтернативный вариант (более полный): aptitude -y install psutils liblua5.1-0 liblua5.1-0-dev liblua5.1-0-dbg liblua5.1-filesystem0 liblua5.1-filesystem-dev liblua5.1-posix1 liblua5.1-posix-dev liblua5.1-socket2 liblua5.1-socket-dev liblua5.1-sql-sqlite3-2 liblua5.1-sql-sqlite3-dev liblua5.1-xmlrpc0 liblua5.1-xmlrpc-dev zlib1g zlib1g-dbg zlib1g-dev g++ --Время на хабе: dpkg-reconfigure tzdata apt-get install ntp ntpdate --далее создаем папку для компиляции ptokax, пример: mkdir /root/ptokax -- задаем ей права: chmod 755 /root/ptokax --закачиваем туда сорцы птохи из архива сначала распаковываем сорцы из архива в винде в отдельную папку, и из неё копируем через ftp в папку /root/ptokax --делаем компиляцию птохи: cd /root/ptokax && make && make install && make clean -- прописываем как сервис (если не прописалось): -- не забыть про /etc/init.d/ptokax update-rc.d ptokax defaults Иногда может потребоваться параметр -f update-rc.d -f ptokax defaults После этого нужно запустить и выключить хаб, для окончательной притёрки. запуск хаба: service ptokax start Стоп хаба: service ptokax stop Все ваши настройки будут в папке /etc/ptokax папки cfg scripts texts запуск хаба: service ptokax start Управление: service ptokax start|stop|restart|status P.S. Папку /root/ptokax после компиляции можно удалить, она не нужна --------------------------------------- Run PtokaX. Автозагрузка: добавить хаб в Init.d и забыть о проблемах. Хаб будет стартовать как служба. Чтобы это сделать, необходимо: отредактировать пути в control_script cp control_script /etc/init.d/ptokax все, ссылки на автозапуск добавлены в rc.d хаб стартанет при запуске системы, используя в качестве рабочей директориии ту, что вы прописали в скрипте автозапуска. В нее нужно скинуть настройки хаба, скрипты, там же стоит искать логи поставить локаль ru_RU.CP1251 по умолчанию в dpkg-reconfigure locales |
|
|
![]()
Сообщение
#80
|
|
![]() Местный ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Неактивированные Сообщений: 908 Регистрация: 26.12.2008 Пользователь №: 1 574 Спасибо сказали: 1406 раз ![]() |
Выложил mod 9. Подробности в первом посте.
|
|
|
![]()
Сообщение
#81
|
|
![]() Участник ![]() ![]() Группа: Пользователи Сообщений: 38 Регистрация: 24.11.2008 Из: Москва Пользователь №: 1 186 Спасибо сказали: 5 раз ![]() |
Выложил mod 9. Подробности в первом посте. Скомпилировал на дебиане 7 x64, внешне все нормально. Но если запускаешь скрипт locale.lua то пишет: Код /etc/ptokax/scripts/locale.lua:55: Некорректно работает функция strcasecmp Это нормально или я чего-то не понимаю? P.S. Заметил что при компиляции выводит такое: Код g++ -Wall -Wno-unknown-pragmas -Wno-format -O2 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -pipe -fstack-protector -Itinyxml -I/usr/include -I/usr/include/lua5.1 -c /root/ptokax/core/LuaCoreLib.cpp -o /root/ptokax/obj/LuaCoreLib.o /root/ptokax/core/LuaCoreLib.cpp: In function 'int RegBot(lua_State*)': /root/ptokax/core/LuaCoreLib.cpp:206:52: warning: NULL used in arithmetic [-Wpointer-arith] /root/ptokax/core/LuaCoreLib.cpp: In function 'int BotMyINFO(lua_State*)': /root/ptokax/core/LuaCoreLib.cpp:314:51: warning: NULL used in arithmetic [-Wpointer-arith] UPDATE почитал про костыль в сообщении http://mydc.ru/topic5423.html?view=findpost&p=44997 раскоментировал Цитата Некорректно работает функция strcasecmp Несмотря на то, что Вы все сделали правильно, функция strcasecmp, используемая при проверке хабом ников работает неправильно, считая разными одни и те же кириллические ники, написанные в разных регистрах. Данный глюк встречается в некоторых сборках Linux, и причины его возникновения до сих пор не выяснены. Чтобы исправить его, вы можете включить специально предназначенный для этого костыль. Чтобы сделать это, раскомментируйте следующую строку в файле core/stdinc.h: Код //#define FIX_STRCASECMP После этого вам, естественно, потребуется пересобрать PtokaX. при компиляции всё равно выдает: Код g++ -Wall -Wno-unknown-pragmas -Wno-format -O2 -D_FORTIFY_SOURCE=2 -fomit-frame-pointer -pipe -fstack-protector -Itinyxml -I/usr/include -I/usr/include/lua5.1 -c /root/ptokax/core/LuaCoreLib.cpp -o /root/ptokax/obj/LuaCoreLib.o /root/ptokax/core/LuaCoreLib.cpp: In function 'int RegBot(lua_State*)': /root/ptokax/core/LuaCoreLib.cpp:206:52: warning: NULL used in arithmetic [-Wpointer-arith] /root/ptokax/core/LuaCoreLib.cpp: In function 'int BotMyINFO(lua_State*)': /root/ptokax/core/LuaCoreLib.cpp:314:51: warning: NULL used in arithmetic [-Wpointer-arith] Но теперь скрипт локале не ругается )) |
|
|
![]() ![]() |
Похожие темы
![]() |
Сейчас: 8.9.2024, 4:14 |