X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/865babd697ac02050f82ea4b4bd3e0cc703c827e..d12e0d85ae649d5c903a61c1150f4e6c48f96309:/ChangeLog?ds=sidebyside diff --git a/ChangeLog b/ChangeLog index 8a91cbc1..72a17ce7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,104 +1,55 @@ General: - * Стандартизован стиль именования параметров: SnakeCase. - * В документации к XML-RPC API добавлено пропущенное поле 'password' для - метода chg_admin. - * Приведена в порядок работа с сигналами. Теперь сигналы перехватываются - только из основного потока и перехватываются корректно, в отличие от - старых версий. Для остановки плагинов больше не используется pthread_kill, - т.к. плагины его все равно теперь игнорируют. - * Устаревшая функция usleep заменена на более продвинутую функцию - nanosleep в соответствии с POSIX.1-2008. - * Удалены странные, непонятные и ненужные комментарии в коде. - * Некоторые типы данных сделаны более "строгими". - * Добавлено несколько дополнительных проверочных утверждений. - * Упрощено API плагинов. - * Удален странный код. - * Большая часть кода приведена в соответствие с рекомендациями Скотта - Мейерса. - * Вычищена куча кода. Но это еще не конец. - * Исправлена ошибка установки в случае наличия предыдущей установки. - * Добавлена поддержка FreeBSD9. + * Новый сайт (https://stg.net.ua), багтреккер (https://stg.codes), + репозиторий (https://git.stg.codes) и зеркало проекта на GitHub + (https://github.com/madf/stg). + * Документация приведена в порядок и выложена на сайт в виде HTML. + * Поддержка FreeBSD10, FreeBSD11 и FreeBDS12. А так же, потенциально, + следующих версий. + * Удалены устаревшие и тестовые плагины. + * Проект convertor переименован в sgconv. Compilation: - * При проверке условий сборки теперь используются переменные CC и CXX - вместо явного вызова gcc/g++. - * Если переменные CC и CXX не определены то используются gcc и g++ по - умолчанию. - * Добавлено разделение флагов на CFLAGS и CXXFLAGS. Теперь релиз - рекомендуется собирать так: - $ CFLAGS="-O2" CXXFLAGS="${CFLAGS}" ./build - * Флаг компиляторы -g3 заменен на -ggdb3 (все равно его поддерживает - и gcc, и clang и ekopath). - * Существенно переработана система сборки. Теперь она не сорит - заголовочными файлами и библотеками там где не нужно. - * Убрана зависимость от bash. + * Добавлена возможность переопределить стандартные утилиты ar и ranlib при + сборке с помощью переменных окружения AR и RANLIB. + * Добавлена возможность собрать только библиотеки. + * Добавлена возможность сборки на платформе Darwin (Stargazer теперь можно + запускать на Mac OS X, но это больше для разработки). Libraries: - * Использование динамических внутренних библиотек признано - нецелесообразным, возвращены старые-добрые a-файлы (последний раз они были - в версии 2.401). - * Добавлена специализация x2str для беззнаковых типов. - * Библиотеки crypto.lib и scriptexecuter.lib теперь содержат 100% кода на - языке C! - * Исправлена работа библиотеки ia.lib на платформах с Big Endian. + * В библиотеку шифрования добавлена поддержка потокового + шифрования/расшифровки. Plugins: - * В плагин для PostgreSQL добавлен параметр retries указывающий количество - повторных попыток установить соединение с БД. - * Оптимизирована логика работы RemoveDir - теперь он удаляет ваши каталоги - на 50% быстрее! - * Унифицированы имена параметров плагинов для работы с БД: Server, - Database, User, Password. Старые имена поддерживаются, но объявлены - устаревшими. В будущем будут удалены. - * Добавлен плагин для работы с snmpd по протоколу SMUX. Позволяет - производить мониторинг некоторых параметров системы: - - общее количество абонентов; - - количество абонентов online; - - количество авторизованных абонентов; - - количество абонентов с флагом alwaysOnline; - - количество абонентов с отрицательным балансом; - - количество абонентов с отключенной детальной статистикой; - - количество отключенных ("disabled") абонентов; - - количество "замороженных" ("passive") абонентов; - - количество абонентов с положительным кредитом; - - количество абонентов с положительным предоплаченным трафиком; - - количество абонентов меняющих тарифный план в следующем месяце; - - общее количество тарифов; - - количество абонентов потарифно; - - общее количество админов; - - общее количество сервисов; - - общее количество корпораций; - - общее количество правил классификации трафика. - * Добавлен шаблонный класс PLUGIN_CREATOR для универсального удобного - порождения плагинов. - * При немедленном изменении тарифа через XML-RPC API добавлен "сброс" - отложенного тарифа. - * Возможно исправлена ошибка приводящая к "зависаниям" плагина - конфигуратора. - * Исправлена утечка ресурсов (файловых дескрипторов) в плагине файлового - хранилища. - * Улучшены сообщения об ошибках авторизации, теперь в них на 73.1% больше - информации! - * В плагине для XML-RPC API вынужденно используется внешний сокет для - корректной остановки плагина. Привет мейнтейнерам Debian которые до сих - пор не обновили xmlrpc-c! Зато минус одно падение с SIGSEGV и General - Protection Fault при останове! - * Плагин remote_script больше не сообщает об ошибке и позволяет системе - запуститься если файл привязки подсетей пуст. - * Пересмотрен порядок загрузки плагинов. + * (Linux) Добавлен плагин захвата трафика nfqueue, на замену устаревшему + ipqueue. + * (FreeBSD) В плагин divert добавлена возможность отключения форвардинга + трафика. + * В плагин InetAccess добавлена возможность включать журналирование ошибок + протокола. + * В плагин InetAccess добавлена возможность перечитывания некоторых + парамеров по SIGHUP. + * В плагин XMLRPC добавлен метод получения списка авторизаторов + используемых пользователем. + * В плагин XMLRPC добавлено управление политиками тарификации. + * В плагине sgconfig реализована возможность обработки нескольких + параллельных запросов одновременно. + * В плагин SMUX добавлена возможность реконнекта. stargazer: - * Исправлена ошибка приводящая к неправильному сообщению о причине - отключения. - * Убрано бесполезное изменение значения nice для процесса. - * Добавлены три возможных сценария снятия абонплаты: - - обычный; - - не снимать абонплату при отрицательном балансе; - - не снимать абонплату ели баланс при этом станет отрицательным. - * Добавлен параметр ReconnectOnTariffChange указывающий системе выполнять - переподключение абонента при изменении тарифа. - * Добавлена "подписка" на добавление и удаление тарифов. - * Управление авторизацией абонентов перемещено из класса USER в класс - USERS что позволило избавиться от дедлока в определенных условиях. - * Устранена возможность выгрузки активного плагина. Минус одно - потенциальное падение с SIGSEGV и General Protection Fault! + * Добавлена возможность передавать произвольный набор параметров в + скрипты OnConnect/OnDisconnet, в том числе через rscriptd (см. параметры + ScriptParams и UserParams). + * Добавлена возможность отключать журналирование сессий (см. параметр + DisableSessionLog). + * Добавлена возможность фильтровать журналирование изменений параметров + (см. параметр FilterParamsLog). + * Добавлена возможность использовать ежедневное списание абонплаты с + фиксированной суммой. + * Добавлены политики тарификации (временный запрет на смену тарифа вниз, + вверх или вообще). + +sgconf/sgconf_xml: + * Добавлена возможность получить список авторизаторов используемых + пользователем. + * Разрешено использовать точку в логинах админов и пользователей. + * Добавлено управление политиками тарификации.