General:
- * Чистка кода.
+ * В init.d-скрипт для Gentoo добавлено явное указание PID-файла.
+ * Исправлена синтаксическая ошибка в примере скрипта OnDisconnect для
+ реализации связки шейпера, VPN и FreeRADIUS (спасибо Алексею Осипову
+ за патч).
+ * В каталоге conf-enabled.d симлинки теперь ссылаются по относительному
+ пути (спасибо Алексею Осипову за патч).
+ * Конфигурационные файлы переведены на английский язык.
+ * В примеры скриптов добавлен шабанг.
Compilation:
- * Флаги -W и -Wall добавляются при компиляции в отладочном режиме. В
- релизном режиме эти флаги не добавляются.
- * Развязаны зависимости библиотек - поддерживается параллельная
- компиляция (make -j2 и более).
- * Добавлена поддержка FreeBSD 8.
+ * При создании каталогов в процессе установки для них теперь вместо
+ переменной BIN_MODE используется переменная DIR_MODE с правами на
+ каталог.
+ * Добавлены проверки наличия компилятора в системе.
+ * При построении зависимостей больше не используется флаг -MG.
Libraries:
- * При сборке библиотеки авторизатора ia_auth_c используется корректная
- библиотека потоков (определенная скриптом build) вместо жестко
- прописанной -lpthread.
- * Исправлена ошибка приводящая к Segmentation fault при использовании
- библиотеки авторизатора ia_auth_c без указания всех callback-ов.
+ * В библиотеке dotconfpp убрана глобальная зависимость от заголовочного
+ файла mempool.h. Теперь для использования этой библиотеки этот
+ заголовочный файл не требуется.
+ * Удалены неиспользуемые библиотеки hostallow и common_settings.
+ * Из названий некоторых библиотек убран префикс stg.
+ * В библиотеке dotconfpp исправлен механизм сообщения об ошибках.
+ * В библиотеке common исправлена ошибка в функции Encode12 которая
+ приводила к неполному кодированию данных если в них встречаются нулевые
+ байты.
Plugins:
- * В mod_auth_ia исправлена ошибка приводящая к некорректному
- определению длины текста сообщения на платформах с Big Endian.
- * В плагинах mod_auth_ia, mod_conf_sg, mod_cap_ether, mod_cap_nf,
- mod_radius, mod_remote_script оптимизирована логика работы с сетью.
- Используется select с блокирующим чтением, что позволяет более
- аккуратно останавливать работу плагинов.
- * В mod_conf_sg исправлена ошибка обработки XML содержащего
- незакодированные символы кирилицы (например в логине пользователя).
- Это приводило к необычным эффектам при работе с модулем пополнения по
- картам, но никаких разрушительных действий при этом не происходило.
- * В mod_remote_script обновлена версия протокола для работы с
- rscriptd.
- * В mod_remote_script добавлена поддержка работы с множеством роутеров
- для одной сети. В файле с описанием они разделяются пробелами.
- * Исправлена работа с мьютексами в mod_ping (ранее они просто не
- работали).
- * В mod_store_files добавлен пользовательский log2 который дублирует
- log но дополнительно журналирует параметр freeMb и причину отключения
- при отключении пользователя.
- * В mod_store_files исправлена ошибка разбора структуры файлов
- приводящая к краху без сообщения об ошибке при отсутствии символа '='
- в строке с параметром. Теперь при этом выводится сообщение об ошибке.
- * В mod_store_postgresql добавлена поддержка журналирования freeMb и
- причины отключения. Обратная совместимость со старой базой сохранена.
- * В mod_store_postgresql исправлена ошибка сохранения поля phone.
- * В mod_store_postgresql исправлена ошибка приводящая к обнулению
- данных статистики при переходе на новый месяц.
- * В mod_store_firebird добавлена установка client encoding при
- подключении к СУБД.
+ * Убрана лишняя зависимость у плагина для MySQL.
+ * В плагине файлового хранилища добавлен расширенный формат помесячной
+ статистики (включены все поля из обычной статистики). Классический формат
+ оставлен для совместимости.
+ * В плагине XML-RPC API исправлено название поля (disabledetailstat ->
+ disableddetailstat).
+ * В плагине XML-RPC API исправлено название поля (tariff -> name).
+ * В плагине XML-RPC API исправлена ошибка приводящая к невозможности
+ удаления пользователя.
+ * Переименованы некоторые методы в XML-RPC API:
+ tariff_change -> chg_user_tariff;
+ send_message -> send_user_message;
+ add_cash -> add_user_cash;
+ set_cash -> set_user_cash.
+ * В методе info плагина XML-RPC API убрано кодирование названий полей
+ dirNames.
+ * В плагине XML-RPC API добавлено преобразование в юникод полей note,
+ address, email, group и массива dirNames.
-rlm_stg:
- * Исправлена ошибка сборки на FreeBSD 4.6 с gcc-2.95.3.
- * Исправлена ошибка сборки на FreeBSD 8.0 с gcc-4.2.1.
+stargazer:
+ * Изменен механизм работы с сообщениями пользователям. Теперь Staragzer не
+ обращается постоянно к базе за списком сообщений перед попыткой отправки,
+ а читает их при авторизации абонента и далее поддерживает у себя в памяти
+ актуальный список.
+ * Исправлена ошибка которая приводила к падению при попытке пользователя
+ авторизоваться через FreeRADIUS с неправильным логином.
+ * Исправлена ошибка которая приводила к неправильной передаче параметра
+ "id" в rscriptd.
+ * Добавлена возможность удаления из БД сообщений которые не были
+ отправлены более указанного промежутка времени.
+ * Исправлена ошибка которая приводила к массовым отключениям в rscriptd
+ после массовых включений.
+ * Исправлено преобразование кодировки (добавлена поддержка Украинского и
+ Белорусского языков).
+ * Исправлена дата старта таймера в режиме отладки.
+ * Вызов localtime заменен на реэнтерабельный вызов localtime_r (устраняет
+ потенциальные проблемы с многопоточностью).
+ * Внутренние классы разделены на "интерфейсы" (абстрактные базовые классы)
+ и реализацию. Теперь возможна сборка плагинов out of the box (вне дерева
+ исходников Stargazer).
+ * Из имен интерфейсных классов убран префикс BASE_. Так же переименованы
+ заголовочные файлы с их определением.
+ * Начат процесс замены usleep на nanosleep. usleep помечена как устаревшая
+ в POSIX.2001.
+ * Исправлена ошибка которая иногда приводила к тому что некоторые
+ подсистемы стартовали до запуска внутреннего таймера, что могло привести
+ к "зависанию" детальной статистики некоторых пользователей и "утечке"
+ памяти.
+ * Добавлена возможность отслеживать состояние поля connected класса USER
+ посредством нотификаторов.
+ * Общие заголовочные файлы перемещенны в подкаталог stg и добавлена их
+ установка в /usr/include/stg.
rscriptd:
- * Добавлено создание и удаление pid-файла.
- * Обновлен протокол работы с mod_remote_script.
- * Оптимизация (без потерь отрабатывает одновременное подключение 3000
- пользователей).
+ * Исправлена ошибка которая могла привести к "гонкам" (race conditions).
+ * Удалено ожидание после перехода в режим дэмона.
sgauth:
- * Исправлена ошибка сборки на FreeBSD 4 (использование библиотеки
- потоков -lc_r).
- * Исправлена ошибка генерации css-файла.
+ * Исправлена ошибка из-за которой авторизатор не стартовал (спасибо
+ Алексею Осипову за патч).
+ * Исправлено чтение конфигурационного файла по умолчанию (спасибо
+ Алексею Осипову за патч).
+ * Добавлена инициализация статистики нулями (если подключиться не удалось
+ в таблице теперь выводятся нули вместо мусора).
+ * Исправлено значение параметра ListenWebIP по умолчанию в
+ конфигурационном файле.
sgconf:
- * Исправлена ошибка сборки на FreeBSD (добавлены пути поиска
- заголовочных файлов /usr/local/include и библиотек
- /usr/local/lib).
-
-stargazer:
- * Исправлена работа параметра FullFee для "замороженных"
- пользователей.
- * Исправлена ошибка приводящая (в некоторых случаях) к обнулению полей
- статистики пользователя при изменении параметров посредством
- sgconf/sgconfig.
- * Поля cash и freeMb теперь используются напрямую при подсчете трафика
- (вместо интерфейса свойств), что позволяет немного уменьшить нагрузку
- на процессор и исправить неприятный баг (обновление времени последнего
- изменения счета при подсчете трафика).
- * Начаты работы по изменению подсистемы событий. В частности,
- реализованы асинхронные вызовы нотификаторов что позволяет избежать
- deadlock в некоторых ситуациях. Создан обобщенный интерфейс
- отложенного вызова методов классов.
- * В файл stargazer.conf для FreeBSD добавлены параметры FullFee и
- ShowFeeInCash с описанием.
- * При отключении пользователя в лог теперь пишется состояние параметра
- freeMb и причина отключения (поддерживается файловой БД и PostgreSQL с
- обновлением структуры базы).
- * Увеличена точность подсчета стоимости трафика на границе порога и
- бесплатных мегабайт. Ранее трафик на граниче порога и бесплатных
- мегабайт считался по цене допорогового, теперь он делится на 2
- допороговый и послепороговый. Это особенно ощутимо при использовании
- NetFlow.
- * В файле конфигурации обнаружена (!) поддержка директивы IncludeFile.
+ * Исправлено преобразование кодировки (добавлена поддержка Украинского и
+ Белорусского языков).
+ * Добавлен флаг -E для управления тайм-аутом кредита.