madf Posted April 19, 2010 Posted April 19, 2010 Ссылка для скачивания: stg-2.4-2010.04.16-15.33.33.tgz ChangeLog: Compilation: * Флаги -W и -Wall добавляются при компиляции в отладочном режиме. В релизном режиме эти флаги не добавляются. * Развязаны зависимости библиотек - поддерживается параллельная компиляция (make -j2 и более). * Добавлена поддержка FreeBSD 8. Libraries: * При сборке библиотеки авторизатора ia_auth_c используется корректная библиотека потоков (определенная скриптом build) вместо жестко прописанной -lpthread. * Исправлена ошибка приводящая к Segmentation fault при использовании библиотеки авторизатора ia_auth_c без указания всех callback-ов. 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 при подключении к СУБД. rlm_stg: * Исправлена ошибка сборки на FreeBSD 4.6 с gcc-2.95.3. * Исправлена ошибка сборки на FreeBSD 8.0 с gcc-4.2.1. rscriptd: * Добавлено создание и удаление pid-файла. * Обновлен протокол работы с mod_remote_script. * Оптимизация (без потерь отрабатывает одновременное подключение 3000 пользователей). sgauth: * Исправлена ошибка сборки на FreeBSD 4 (использование библиотеки потоков -lc_r). * Исправлена ошибка генерации css-файла. 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. К сожалению, в виду остутствия во FreeBSD 4-й ветки поддержки getopt_long консольный конфигуратор в ней не собирается и не работает. Внимание! Изменился протокол работы rscripd и плагина. Требуется обновление обоих частей!
trinux Posted April 19, 2010 Posted April 19, 2010 скачал, собрал, поставил. в логе 2010-04-19 14:30:28 -- Stg v. 2.406.....
madf Posted April 19, 2010 Author Posted April 19, 2010 скачал, собрал, поставил. в логе 2010-04-19 14:30:28 -- Stg v. 2.406..... Циферка поменяется в релизе
madf Posted April 19, 2010 Author Posted April 19, 2010 С мускулями будет дружить? Так-же как и 406-я. Я мускуль почти не трогаю пока.
morfey Posted April 19, 2010 Posted April 19, 2010 С мускулями будет дружить? В мене 406, мускуль - дружить.
Kucher2 Posted April 19, 2010 Posted April 19, 2010 stargazer:* Исправлена работа параметра FullFee для "замороженных" пользователей. Я правильно понял, что в этой сборке абонка наконец-то не снимается, если пользователь "заморожен"?
Queeq Posted April 20, 2010 Posted April 20, 2010 stargazer:* Исправлена работа параметра FullFee для "замороженных" пользователей. Я правильно понял, что в этой сборке абонка наконец-то не снимается, если пользователь "заморожен"? Корректнее будет, если она будет сниматься пропорционально незамороженному периоду.
madf Posted April 20, 2010 Author Posted April 20, 2010 stargazer:* Исправлена работа параметра FullFee для "замороженных" пользователей. Я правильно понял, что в этой сборке абонка наконец-то не снимается, если пользователь "заморожен"? Корректнее будет, если она будет сниматься пропорционально незамороженному периоду. Пока юзер не разморозится - ничего сниматься не будет. А как только разморозится - оно сразу и посчитает сколько он там за незамороженный период должен.
Queeq Posted April 20, 2010 Posted April 20, 2010 stargazer:* Исправлена работа параметра FullFee для "замороженных" пользователей. Я правильно понял, что в этой сборке абонка наконец-то не снимается, если пользователь "заморожен"? Корректнее будет, если она будет сниматься пропорционально незамороженному периоду. Пока юзер не разморозится - ничего сниматься не будет. А как только разморозится - оно сразу и посчитает сколько он там за незамороженный период должен. Это работает одинаково при снятии абонки как в конце, так и в начале учётного периода?
keshaLG Posted April 20, 2010 Posted April 20, 2010 .... Наверное, имелось в виду не MPPE а шифрование протокола обмена данными между плагином со стороны FreeRADIUS и STG. А можно с этого места поподробнее? хочется оптимизировать систему под нагрузку...
madf Posted April 20, 2010 Author Posted April 20, 2010 stargazer:* Исправлена работа параметра FullFee для "замороженных" пользователей. Я правильно понял, что в этой сборке абонка наконец-то не снимается, если пользователь "заморожен"? Корректнее будет, если она будет сниматься пропорционально незамороженному периоду. Пока юзер не разморозится - ничего сниматься не будет. А как только разморозится - оно сразу и посчитает сколько он там за незамороженный период должен. Это работает одинаково при снятии абонки как в конце, так и в начале учётного периода? По идее да
madf Posted April 20, 2010 Author Posted April 20, 2010 .... Наверное, имелось в виду не MPPE а шифрование протокола обмена данными между плагином со стороны FreeRADIUS и STG. А можно с этого места поподробнее? хочется оптимизировать систему под нагрузку... Ну убрать все что связанно с шифрованием в rlm_std и mod_radius.
Queeq Posted April 21, 2010 Posted April 21, 2010 Ещё вопрос. Какая версия документации актуальна? 2.13 подойдёт?
madf Posted April 21, 2010 Author Posted April 21, 2010 Ещё вопрос. Какая версия документации актуальна? 2.13 подойдёт? По скольку тут в основном багофиксы, то пойдет. Расширился только синтаксис описания привязок маршрутизаторов к сетям для rscriptd (но все обратно совместимо).
Queeq Posted April 21, 2010 Posted April 21, 2010 Скачал, распаковал, сделал ./build Процесс просто завершается после gmake[2]: Leaving directory `/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/plugins/store/mysql' gmake[1]: Leaving directory `/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/plugins' cc -c admin.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c admins.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c main.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c curr_ip.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c settings.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c stg_timer.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c tariff.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c tariffs.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c traffcounter.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c user.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c user_property.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c users.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c plugin_runner.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c store_loader.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c pidfile.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c eventloop.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc admin.o admins.o main.o curr_ip.o settings.o stg_timer.o tariff.o tariffs.o traffcounter.o user.o user_property.o users.o plugin_runner.o store_loader.o pidfile.o eventloop.o -L/usr/local/lib -Wl,-E -L/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../lib -Wl,-rpath,/usr/lib/stg -Wl,-rpath-link,/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../lib -lexpat -lpthread -lc -lstg_logger -lstg_locker -lstg_common -lscript_executer -ldotconfpp -o stargazer Или это он уже собрался? Если делаю после этого make install, получаю "Makefile", line 34: Missing dependency operator "Makefile", line 37: Need an operator "Makefile", line 40: Need an operator "Makefile", line 47: Need an operator Error expanding embedded variable. FreeBSD 7.2-RELEASE-p4 ls /usr/lib | grep libexpat.so libexpat.so libexpat.so.6 mysql-server-5.0.86
Queeq Posted April 21, 2010 Posted April 21, 2010 Ну вот тот ifeq можно, допустим, закомментить... #ifeq ($(OS),linux) #LIBS += $(LIB_THREAD) \ # -ldl #else LIBS += $(LIB_THREAD) \ -lc #endif А вот что делать с оставшейся "Makefile", line 47: Need an operator Error expanding embedded variable. Я совсем не знаю...
madf Posted April 21, 2010 Author Posted April 21, 2010 Скачал, распаковал, сделал ./build Процесс просто завершается после gmake[2]: Leaving directory `/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/plugins/store/mysql' gmake[1]: Leaving directory `/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/plugins' cc -c admin.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c admins.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c main.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c curr_ip.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c settings.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c stg_timer.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c tariff.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c tariffs.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c traffcounter.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c user.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c user_property.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c users.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c plugin_runner.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c store_loader.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c pidfile.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc -c eventloop.cpp -I/usr/local/include -DARCH_LE -I /home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../include -DNDEBUG -DFREE_BSD5 cc admin.o admins.o main.o curr_ip.o settings.o stg_timer.o tariff.o tariffs.o traffcounter.o user.o user_property.o users.o plugin_runner.o store_loader.o pidfile.o eventloop.o -L/usr/local/lib -Wl,-E -L/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../lib -Wl,-rpath,/usr/lib/stg -Wl,-rpath-link,/home/queeq/stg-2.4-2010.04.16-15.33.33/projects/stargazer/../../lib -lexpat -lpthread -lc -lstg_logger -lstg_locker -lstg_common -lscript_executer -ldotconfpp -o stargazer Или это он уже собрался? Если делаю после этого make install, получаю "Makefile", line 34: Missing dependency operator "Makefile", line 37: Need an operator "Makefile", line 40: Need an operator "Makefile", line 47: Need an operator Error expanding embedded variable. FreeBSD 7.2-RELEASE-p4 ls /usr/lib | grep libexpat.so libexpat.so libexpat.so.6 mysql-server-5.0.86 Ну да, собрался. Во FreeBSD надо делать gmake install. Ну вот тот ifeq можно, допустим, закомментить... #ifeq ($(OS),linux) #LIBS += $(LIB_THREAD) \ # -ldl #else LIBS += $(LIB_THREAD) \ -lc #endif А вот что делать с оставшейся "Makefile", line 47: Need an operator Error expanding embedded variable. Я совсем не знаю... Не нужно ничего комментить.
Queeq Posted April 21, 2010 Posted April 21, 2010 Ну да, собрался. Во FreeBSD надо делать gmake install. От я пень... Сколько раз про это читал...
yKpon Posted April 27, 2010 Posted April 27, 2010 очень хотелось бы видеть в консольном конфигураторе не просто функцию установки кредита, а также его таймаут
shark3d Posted May 4, 2010 Posted May 4, 2010 Добрый день. Стянул по ссылке указанный релиз. Сборка прошла без проблем. В качестве БД используется PostgreSQL 8.1. С помощью идущего в поставке конвертера перегнал старую базу (файловую) в БД. Но вот при попытке запуска старгейзера в лог вываливается след. сообщение: Storage plugin: 'Error loading plugin '/usr/lib/stg/mod_store_postgresql.so': '/usr/lib/stg/mod_store_postgresql.so: undefined symbol: _Z12DecodeStringPcPKcP12BLOWFISH_CTX'' Соответственно сервер не запускается. С файловым хранилищем все запускается. Система: Gentoo Linux x86_64/2.6.27-gentoo-r7 ЦП: Intel® Pentium® Dual CPU E2140 @ 1.60GHz
madf Posted May 5, 2010 Author Posted May 5, 2010 Добрый день. Стянул по ссылке указанный релиз. Сборка прошла без проблем. В качестве БД используется PostgreSQL 8.1. С помощью идущего в поставке конвертера перегнал старую базу (файловую) в БД. Но вот при попытке запуска старгейзера в лог вываливается след. сообщение: Storage plugin: 'Error loading plugin '/usr/lib/stg/mod_store_postgresql.so': '/usr/lib/stg/mod_store_postgresql.so: undefined symbol: _Z12DecodeStringPcPKcP12BLOWFISH_CTX'' Соответственно сервер не запускается. С файловым хранилищем все запускается. Система: Gentoo Linux x86_64/2.6.27-gentoo-r7 ЦП: Intel® Pentium® Dual CPU E2140 @ 1.60GHz Наложи вот такой патчик: === modified file 'projects/stargazer/plugins/store/postgresql/Makefile' --- projects/stargazer/plugins/store/postgresql/Makefile 2009-12-02 09:36:47 +0000 +++ projects/stargazer/plugins/store/postgresql/Makefile 2010-04-26 12:39:08 +0000 @@ -15,7 +15,7 @@ ./postgresql_store_users.cpp \ ./postgresql_store_utils.cpp -STGLIBS = -lstg_common +STGLIBS = -lstg_common -lstg_crypto PG_CFLAGS = $(shell pg_config --includedir) PG_LDFLAGS = $(shell pg_config --libdir)
shark3d Posted May 5, 2010 Posted May 5, 2010 Спасибо, помогло. Сервер запустился, но в логах появляется след. запись: 2010-05-05 11:17:43 -- Cannot write connect for user TEST. 2010-05-05 11:17:43 -- ERROR: функция sp_add_session_log_entry("unknown", timestamp without time zone, "unknown", inet, integer, integer) не существует HINT: No function matches the given name and argument types. You may need to add explicit type casts. Дампы base и alter в базу выгружены. В базе эта функция существует, но с дополнительным параметром с типом TEXT: public | sp_add_session_log_entry | integer | dm_name, timestamp without time zone, dm_session_event_type, inet, dm_money, dm_money, text
madf Posted May 5, 2010 Author Posted May 5, 2010 Спасибо, помогло. Сервер запустился, но в логах появляется след. запись: 2010-05-05 11:17:43 -- Cannot write connect for user TEST. 2010-05-05 11:17:43 -- ERROR: функция sp_add_session_log_entry("unknown", timestamp without time zone, "unknown", inet, integer, integer) не существует HINT: No function matches the given name and argument types. You may need to add explicit type casts. Дампы base и alter в базу выгружены. В базе эта функция существует, но с дополнительным параметром с типом TEXT: public | sp_add_session_log_entry | integer | dm_name, timestamp without time zone, dm_session_event_type, inet, dm_money, dm_money, text alter не сработал. Там в нем есть такое: DROP FUNCTION sp_add_session_log_entry ( dm_name, timestamp without time zone, dm_session_event_type, inet, dm_money); CREATE FUNCTION sp_add_session_log_entry(_login dm_name, _event_time TIMESTAMP, _event_type dm_session_event_type, _ip INET, _cash dm_money, _free_mb dm_money, _reason TEXT)
Recommended Posts