2 * Стандартизован стиль именования параметров: SnakeCase.
3 * В документации к XML-RPC API добавлено пропущенное поле 'password' для
5 * Приведена в порядок работа с сигналами. Теперь сигналы перехватываются
6 только из основного потока и перехватываются корректно, в отличие от
7 старых версий. Для остановки плагинов больше не используется pthread_kill,
8 т.к. плагины его все равно теперь игнорируют.
9 * Устаревшая функция usleep заменена на более продвинутую функцию
10 nanosleep в соответствии с POSIX.1-2008.
11 * Удалены странные, непонятные и ненужные комментарии в коде.
12 * Некоторые типы данных сделаны более "строгими".
13 * Добавлено несколько дополнительных проверочных утверждений.
14 * Упрощено API плагинов.
15 * Удален странный код.
16 * Большая часть кода приведена в соответствие с рекомендациями Скотта
18 * Вычищена куча кода. Но это еще не конец.
19 * Исправлена ошибка установки в случае наличия предыдущей установки.
20 * Добавлена поддержка FreeBSD9.
21 * Структура базы для Firebird больше не создается при make install-data,
22 нужно создавать вручную.
25 * При проверке условий сборки теперь используются переменные CC и CXX
26 вместо явного вызова gcc/g++.
27 * Если переменные CC и CXX не определены то используются gcc и g++ по
29 * Добавлено разделение флагов на CFLAGS и CXXFLAGS. Теперь релиз
30 рекомендуется собирать так:
31 $ CFLAGS="-O2" CXXFLAGS="${CFLAGS}" ./build
32 * Флаг компиляторы -g3 заменен на -ggdb3 (все равно его поддерживает
33 и gcc, и clang и ekopath).
34 * Существенно переработана система сборки. Теперь она не сорит
35 заголовочными файлами и библотеками там где не нужно.
36 * Убрана зависимость от bash.
39 * Использование динамических внутренних библиотек признано
40 нецелесообразным, возвращены старые-добрые a-файлы (последний раз они были
42 * Добавлена специализация x2str для беззнаковых типов.
43 * Библиотеки crypto.lib и scriptexecuter.lib теперь содержат 100% кода на
45 * Исправлена работа библиотеки ia.lib на платформах с Big Endian.
48 * В плагин для PostgreSQL добавлен параметр retries указывающий количество
49 повторных попыток установить соединение с БД.
50 * Оптимизирована логика работы RemoveDir - теперь он удаляет ваши каталоги
52 * Унифицированы имена параметров плагинов для работы с БД: Server,
53 Database, User, Password. Старые имена поддерживаются, но объявлены
54 устаревшими. В будущем будут удалены.
55 * Добавлен плагин для работы с snmpd по протоколу SMUX. Позволяет
56 производить мониторинг некоторых параметров системы:
57 - общее количество абонентов;
58 - количество абонентов online;
59 - количество авторизованных абонентов;
60 - количество абонентов с флагом alwaysOnline;
61 - количество абонентов с отрицательным балансом;
62 - количество абонентов с отключенной детальной статистикой;
63 - количество отключенных ("disabled") абонентов;
64 - количество "замороженных" ("passive") абонентов;
65 - количество абонентов с положительным кредитом;
66 - количество абонентов с положительным предоплаченным трафиком;
67 - количество абонентов меняющих тарифный план в следующем месяце;
68 - количество абонентов с ненулевым трафиком за сессию;
69 - общее количество тарифов;
70 - количество абонентов потарифно;
71 - общее количество админов;
72 - общее количество сервисов;
73 - общее количество корпораций;
74 - общее количество правил классификации трафика.
75 * Добавлен шаблонный класс PLUGIN_CREATOR для универсального удобного
77 * При немедленном изменении тарифа через XML-RPC API добавлен "сброс"
79 * Возможно исправлена ошибка приводящая к "зависаниям" плагина
81 * Исправлена утечка ресурсов (файловых дескрипторов) в плагине файлового
83 * Улучшены сообщения об ошибках авторизации, теперь в них на 73.1% больше
85 * В плагине для XML-RPC API вынужденно используется внешний сокет для
86 корректной остановки плагина. Привет мейнтейнерам Debian которые до сих
87 пор не обновили xmlrpc-c! Зато минус одно падение с SIGSEGV и General
88 Protection Fault при останове!
89 * Плагин remote_script больше не сообщает об ошибке и позволяет системе
90 запуститься если файл привязки подсетей пуст.
91 * Пересмотрен порядок загрузки плагинов.
94 * Исправлена ошибка приводящая к неправильному сообщению о причине
96 * Убрано бесполезное изменение значения nice для процесса.
97 * Добавлены три возможных сценария снятия абонплаты:
99 - не снимать абонплату при отрицательном балансе;
100 - не снимать абонплату ели баланс при этом станет отрицательным.
101 * Добавлен параметр ReconnectOnTariffChange указывающий системе выполнять
102 переподключение абонента при изменении тарифа.
103 * Добавлена "подписка" на добавление и удаление тарифов.
104 * Управление авторизацией абонентов перемещено из класса USER в класс
105 USERS что позволило избавиться от дедлока в определенных условиях.
106 * Устранена возможность выгрузки активного плагина. Минус одно
107 потенциальное падение с SIGSEGV и General Protection Fault!