napTu
СitizensТип контенту
Профили
Форум
Календарь
Все, що було написано napTu
-
да, #define HAVE_DECL_GETOPT 1 стоит в самом начале и в данном случае на повтор определения getopt() не ругается. Дело в том что переменная HAVE_DECL_GETOPT 1 влияет только на определение функции getopt() , но не getopt_long(). А тут я getopt_long() уже задаю принудительно, безо всяких условий. да и при компиляции из cpp оно видится и обрабатывается без проблем. Ошибка почемуто происходит уже при перекомпиливании обжекта - main.o(.text+0x1538): undefined reference to `getopt_long' Такое впечатление что это определение уже не зависит от getopt.h, а задается гдето в другом месте. Вопрос в каком?
-
что самое интересное, не могу поставить getopt - /usr/ports/misc/getopt говорит gcc -L/usr/local/lib -lintl -o getopt getopt.o getopt.o: In function `generate_output': getopt.o(.text+0x32a): undefined reference to `getopt_long' getopt.o: In function `main': getopt.o(.text+0xadc): undefined reference to `getopt_long' collect2: ld returned 1 exit status gmake: *** [getopt] Ошибка 1 *** Error code 2 но /usr/ports/devel/libgnugetopt поставилось и содержит getopt_long какой еще getopt ставить?
-
блиииин. getopt.h сократил до непристойного вида: extern "C" { struct option { const char *name; int has_arg; int *flag; int val; }; extern int getopt_long (int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind); } а оно мне всё одно: main.o: In function `main': main.o(.text+0x1538): undefined reference to `getopt_long' collect2: ld returned 1 exit status gmake: *** [sgconf] Ошибка 1 как будто и не обращается туда, но с пустым файлом не компилится g++ -c main.cpp -O2 -Wall -I /usr/home/napTu/stg-2.404.9.7/projects/sgconf/../../include -DFREE_BSD main.cpp:87: error: elements of array `option long_options[]' have incomplete type main.cpp:87: error: storage size of `long_options' isn't known main.cpp: In function `int main(int, char**)': main.cpp:541: error: `getopt_long' was not declared in this scope main.cpp:541: warning: unused variable 'getopt_long' main.cpp: At global scope: main.cpp:52: error: storage size of `long_options' isn't known gmake: *** [main.o] Ошибка 1 madf, чего делать, подскажи?
-
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
где взять? -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
да и фиг с ним с дедлоком, главное чтобы продолжалась корректная обработка после него. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
вроде-бы и Ждите не обнадеживает нисколечко. Дедлок как я понимаю кратковременное зависание на некоторое время, которое неизвестно где происходит и теряется часть данных? надо бы в inetaccess.cpp напихать побольше дебаг месседжей и глянуть подробнее ситуацию. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
я знаю причину! это происки заводов-империалистов производителей оптического оборудования. купуйте оптику и всё будет пучком. нет потерь - нет проблем с авторизацией. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
по коду следующее: вариант 1) в AUTH_IA::Process_CONN_SYN_6 имеем фазу залипшую 2, тогда if (!(iaUser->phase == 1 || iaUser->phase == 3)) return -1; Тогда гдето теряется условие обнуления фазы по таймауту, или для неподключенного пользователя. Я этого условия в коде вообще не нашел. вариант 2) не доходим до AUTH_IA::Process_CONN_SYN_6 причин этого не наблюдаю. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
блин, время в дебаге смещено, тяжело ориентироваться... по логам ситуация следующая: - периодически теряются алив пакеты. inetaccess.cpp > 11:35:33 > Min8(sizeof(ALIVE_SYN)) = 368 inetaccess.cpp > 11:35:33 > 1207989569.340008 368 bytes sent to 192.168.11.112:5555 len=368 inetaccess.cpp > 11:35:33 > Send_ALIVE_SYN_7 inetaccess.cpp > 11:35:33 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 11:35:33 > User Barhan FOUND! inetaccess.cpp > 11:35:33 > ======================> InitEncrypt dont needed inetaccess.cpp > 11:35:33 > ALIVE_ACK_6(7) - OK ... inetaccess.cpp > 11:36:18 > Min8(sizeof(ALIVE_SYN)) = 368 inetaccess.cpp > 11:36:18 > ========= ALIVE_ACK_6(7) TIMEOUT !!! Barhan ========= inetaccess.cpp > 11:36:18 > 1207989614.356267 368 bytes sent to 192.168.11.112:5555 len=368 inetaccess.cpp > 11:36:18 > Send_ALIVE_SYN_7 три теряются, на четвертый обнаруживается и заново авторизируется, но инфы об отключении нет, хотя он реально отключается: inetaccess.cpp > 11:36:54 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 11:36:54 > User Barhan FOUND! inetaccess.cpp > 11:36:54 > Add new user inetaccess.cpp > 11:36:54 > ========> InitEncrypt 'NO PASSWORD' '********' inetaccess.cpp > 11:36:54 > User Barhan phase changed from 1 to 2 inetaccess.cpp > 11:36:54 > Phase changed from 1 to 2 inetaccess.cpp > 11:36:54 > 1207989650.429457 192 bytes sent to 192.168.11.112:5555 len=192 - далее идет множество раз переход в фазу 2 inetaccess.cpp > 11:37:10 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 11:37:10 > User Barhan FOUND! inetaccess.cpp > 11:37:10 > ======================> InitEncrypt dont needed inetaccess.cpp > 11:37:10 > User Barhan phase changed from 1 to 2 inetaccess.cpp > 11:37:10 > Phase changed from 1 to 2 inetaccess.cpp > 11:37:10 > 1207989666.486143 192 bytes sent to 192.168.11.112:5555 len=192 - тут мы вдруг переподключились: inetaccess.cpp > 11:37:10 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 11:37:10 > User Barhan FOUND! inetaccess.cpp > 11:37:10 > ======================> InitEncrypt dont needed inetaccess.cpp > 11:37:10 > CONN_ACK inetaccess.cpp > 11:37:10 > rnd = 995745997 connAck->rnd=995745998 inetaccess.cpp > 11:37:10 > User Barhan phase changed from 2 to 3 users.cpp > 11:37:10 > Del IP Idx traffcounter.cpp > 11:37:10 > DelUser: Barhan user.cpp > 11:37:10 > Disconnect. User name 'Barhan' ip=192.168.11.112 users.cpp > 11:37:10 > Add IP Idx traffcounter.cpp > 11:37:10 > AddUser: Barhan inetaccess.cpp > 11:37:10 > Phase changed from 2 to 3 inetaccess.cpp > 11:37:10 > Min8(sizeof(ALIVE_SYN)) = 368 inetaccess.cpp > 11:37:10 > 1207989666.539364 368 bytes sent to 192.168.11.112:5555 len=368 ... - многократные переходы из фазы 1 в 2 дают в конечном итоге дисконнект, или это по таймауту отвалилось: users.cpp > 12:09:19 > Del IP Idx traffcounter.cpp > 12:09:19 > DelUser: Barhan user.cpp > 12:09:19 > Disconnect. User name 'Barhan' ip=192.168.11.112 - далее снова можество попыток с переходом из фазы 1 в 2 И ВОТ КУЛЬМИНАЦИЯ: inetaccess.cpp > 12:13:17 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 12:13:17 > User Barhan FOUND! inetaccess.cpp > 12:13:17 > ======================> InitEncrypt dont needed C этого момента записи о переходе из фазы 1 в 2 отсутствуют, идут только эти три строки Ну и пользователь соответственно более не может подключиться. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
telo, ну это немного не то. С таким же успехом я могу назвать твои слова бредом, ибо у меня можно вводить сколь угодно много неверных логин-пароль вариантов, но после ввода правильного всё работает. В моем случае абоненты перестают работать в местах где наблюдаются потери на свичах. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
опять же, обнаружилось что в районе этого абонента проблемы со свичем (подвис). Еще один пожаловался на периодические отключения, а другой на такую же траблу, что описана в этом топике. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
Вот лог его подключений за сегодня (в обратном порядке): C 2008.04.12-14.54.34 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-14.54.21 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-14.09.14 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-12.11.35 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-12.10.15 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-12.09.42 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-12.08.37 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-12.08.04 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-12.02.28 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-12.00.35 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-11.53.15 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-11.52.09 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-11.45.19 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-11.43.41 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-11.41.06 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-11.40.49 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-09.58.34 192.168.11.112 Barhan 367 10.000000 D 2008.04.12-09.57.32 192.168.11.112 Barhan 367 10.000000 C 2008.04.12-06.26.15 192.168.11.112 Barhan 367 10.000000 D 2008.04.11-22.16.50 192.168.11.112 Barhan 367 10.000000 до 12:11 его смыкало, потом он не мог подключится, потом я рестартанул в 14:07 старгейзер. последние 50 мегабайт лога (c 10утра) тут http://icenet.net.ua/sel.log.gz (архив 3,3 мегабайта) -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
таки вылез глюк. что фильтровать из лога? Пользователь 192.168.11.112 Здесь он не может подключиться: inetaccess.cpp > 13:50:35 > User Ksusha1230 FOUND! inetaccess.cpp > 13:50:35 > ======================> InitEncrypt dont needed inetaccess.cpp > 13:50:35 > ALIVE_ACK_6(7) - OK inetaccess.cpp > 13:50:35 > Monitor time 1207564408 1207997495 inetaccess.cpp > 13:50:35 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 13:50:35 > User Barhan FOUND! inetaccess.cpp > 13:50:35 > ======================> InitEncrypt dont needed inetaccess.cpp > 13:50:35 > Monitor time 1207564408 1207997495 user.cpp > 13:50:36 > USER::WriteStat user=Larisa Здесь он вводит заведомо неверный логи: inetaccess.cpp > 13:51:00 > recv from 192.168.10.179 5555 len=64 inetaccess.cpp > 13:51:00 > User Dima179 FOUND! inetaccess.cpp > 13:51:00 > ======================> InitEncrypt dont needed inetaccess.cpp > 13:51:00 > ALIVE_ACK_6(7) - OK inetaccess.cpp > 13:51:00 > Monitor time 1207564408 1207997520 inetaccess.cpp > 13:51:00 > recv from 192.168.11.112 5555 len=64 inetaccess.cpp > 13:51:00 > User 1 NOT found! inetaccess.cpp > 13:51:00 > SendError 256 bytes sent inetaccess.cpp > 13:51:00 > Monitor time 1207564408 1207997520 inetaccess.cpp > 13:51:00 > Min8(sizeof(ALIVE_SYN)) = 368 inetaccess.cpp > 13:51:00 > 1207997699.124701 368 bytes sent to 192.168.11.15:5555 len=368 inetaccess.cpp > 13:51:00 > Send_ALIVE_SYN_7 inetaccess.cpp > 13:51:00 > recv from 192.168.11.15 5555 len=64 inetaccess.cpp > 13:51:00 > User Makar FOUND! inetaccess.cpp > 13:51:00 > ======================> InitEncrypt dont needed По его ип адресу только такие сообщения. -
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
в дебаг режиме запустил. 5суток. лог уже перевалил за гиг. А полёт нормальный - испугалося наверное. Грядёт дата снятия АП и перехода на след.месяц. Имеет ли смысл перезапустить в нормальном режиме на этот период? -
вернул старую getopt.h добавил #define HAVE_DECL_GETOPT 1 всё равно ругается на /usr/local/include/getopt.h:136: error: previous declaration `int getopt()' here
-
убирал, но сейчас всё вернул назад. сначала убрал из usr/include/unistd.h объявление getopt, с этого момента стало говорить main.o(.text+0x1538): undefined reference to `getopt_long'. потом обновил getopt с 2.1 до 2.1_1 потом вернул объявление getopt в usr/include/unistd.h так и выдает main.o(.text+0x1538): undefined reference to `getopt_long'.
-
одному богу известными манипуляциями довел сборку до состояния: g++ -c parser.cpp -O2 -Wall -I /usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../include -DFREE_BSD g++ main.o parser.o /usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../lib/libconffiles.so /usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../lib/libstg_common.so /usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../lib/libsrvconf.so /usr/lib/libexpat.so /usr/lib/libc_r.so /usr/lib/libc.so -Wl,-E -L/usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../lib -Wl,-rpath,//usr/lib/stg -Wl,-rpath-link,/usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf/../../lib -o sgconf /usr/lib/libc.so: WARNING! setkey(3) not present in the system! /usr/lib/libc.so: warning: this program uses gets(), which is unsafe. /usr/lib/libc.so: warning: mktemp() possibly used unsafely; consider using mkstemp() /usr/lib/libc.so: WARNING! des_setkey(3) not present in the system! /usr/lib/libc.so: WARNING! encrypt(3) not present in the system! /usr/lib/libc.so: warning: tmpnam() possibly used unsafely; consider using mkstemp() /usr/lib/libc.so: warning: this program uses f_prealloc(), which is not recommended. /usr/lib/libc.so: WARNING! des_cipher(3) not present in the system! /usr/lib/libc.so: warning: tempnam() possibly used unsafely; consider using mkstemp() main.o: In function `main': main.o(.text+0x1538): undefined reference to `getopt_long' collect2: ld returned 1 exit status gmake: *** [sgconf] Ошибка 1 указание на #define HAVE_DECL_GETOPT 1 при этом уже ни на что не влияет.
-
дык до установки оно ругается на отсутствие, а после установки - на конфлик объявлений /usr/include/unistd.h:112: error: declaration of C function `int getopt(int, char* const*, const char*)' conflicts with /usr/local/include/getopt.h:136: error: previous declaration `int getopt()' here
-
http://local.com.ua/forum/index.php?showtopic=8789 этого хватит?
-
помогите плз. нужен консольный конфигуратор для новой версии стг, но он не собирается из дистрибутива. надо под фрю4.10. намекните пожалуйста, куда копнуть?
-
FullFee только в 2.404 появилась. в 2.403б отсутствовала. Я правил по моему users, где идет расчет снятия денег, там всё прозрачно просто написано и прокомментировано (типа fee=userfee-userfee*inactivedays). кстати, при удалении у меня не падает сейчас - фря4.10.
-
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
снова я теперь так: пользователь переустановил винду, поставил новый авторизатор, долго (весь день) пытался ввести логин, пароль, но всё время вписывал вместо q - g , при этом менял большие на меленькие в имени, перед этим еще подключался не со своего ип адреса... в итоге ситуация по топику повторилась. клиент периодически шлет пакеты с верными логином и паролем. стг никак не отвечает - ни одного пакета. на неверный логин шлет ответ с ошибкой. вот дамп пакетов: tcpdump: listening on fxp0 19:42:07.906199 192.168.10.87 > hst.icenet: icmp: echo reply (ttl 128, id 300, len 84) 4500 0054 012c 0000 8001 a3d0 c0a8 0a57 c0a8 0a05 0000 e9ed f46a 0000 ef89 cd47 6cd2 0d00 0809 0a0b 0c0d 0e0f 1011 1213 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435 19:42:10.298870 192.168.10.87.rplay > hst.icenet.rplay: udp 64 (ttl 128, id 301, len 92) 4500 005c 012d 0000 8011 a3b7 c0a8 0a57 c0a8 0a05 15b3 15b3 0048 b6b6 3030 3130 3000 0007 d8c2 1f49 c867 0f48 cd2a 2f49 b1e4 0a91 cd2a 2f49 b1e4 0a91 cd2a 2f49 b1e4 0a91 2c40 fc7c 4836 e380 31f5 dd8f 6114 19:42:16.391930 192.168.10.87.rplay > hst.icenet.rplay: udp 64 (ttl 128, id 302, len 92) 4500 005c 012e 0000 8011 a3b6 c0a8 0a57 c0a8 0a05 15b3 15b3 0048 b6b6 3030 3130 3000 0007 d8c2 1f49 c867 0f48 cd2a 2f49 b1e4 0a91 cd2a 2f49 b1e4 0a91 cd2a 2f49 b1e4 0a91 2c40 fc7c 4836 e380 31f5 dd8f 6114 ^C 53505 packets received by filter хотя врядли они помогут, инфа то в них верна. чего еще можно посмотреть? -
поведение Win авторизатора при обнулении баланса
тема ответил в BECHA пользователя napTu в Питання по Stargazer
да уж, всё так, и остается каждому пользователь миллион сто сорок шестой раз разьяснять что к чему. в принципе всё правильно в плане работы, ведь у пользователя может быть кредит и он будет работать при минусовом балансе. Однако отсутствие сообщений об окончании денег и невозможности работать - есть недоработка, которая однако решается сторонними методами: 1.перенаправлять трафик неподключенного пользователя на веб страницу с соотв.сообщением. 2.в новых версиях авторизатора есть больмень развитая система приема сообщений, на которую можно слать меседжи из скриптов... sgconf и всё такое... -
так и не могу побороть sgconf. Пожалуйста, подскажите, как? (стг2404, фря4.10, gcc 3.4.6) ситуёвина такая: ... g++ -c main.cpp -O2 -Wall -I /usr/home/napTu/stg-2.404.9.7-wo_netflow_patch/projects/sgconf_xml/../../include -DFREE_BSD In file included from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++//i386-portbld-freebsd4.10/bits/gthr-default.h:44, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++//i386-portbld-freebsd4.10/bits/gthr.h:96, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++//i386-portbld-freebsd4.10/bits/c++io.h:37, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++/iosfwd:47, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++/bits/stl_algobase.h:70, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++/bits/char_traits.h:46, from /usr/local/lib/gcc/i386-portbld-freebsd4.10/3.4.6/include/c++/string:47, from request.h:33, from main.cpp:36: /usr/include/unistd.h:112: error: declaration of C function `int getopt(int, char* const*, const char*)' conflicts with /usr/local/include/getopt.h:115: error: previous declaration `int getopt()' here gmake: *** [main.o] Ошибка 1
-
один из пользователей не может подключиться
тема ответил в napTu пользователя napTu в Питання по Stargazer
спасибо за комментарии. я тут подкрутил таймеры alive и timeout, вернул на дефолтные значения. Жду... %)
