madf 279 Опубліковано: 2008-08-08 06:29:48 Share Опубліковано: 2008-08-08 06:29:48 Прикольно. Сделай корку и отправь на faust@stg.dp.ua. А лучше запусти gdb radiusd (потом: r -X) и когда упадет - сделай bt. И покажи что он выведет... Ссылка на сообщение Поделиться на других сайтах
starki 0 Опубліковано: 2008-08-09 10:44:18 Share Опубліковано: 2008-08-09 10:44:18 Собственно вот. Сейчас на мыло продублирую. ... Ready to process requests. rad_recv: Access-Request packet from host 127.0.0.1:37444, id=176, length=63 Service-Type = Framed-User Framed-Protocol = PPP User-Name = "test" Calling-Station-Id = "192.168.1.5" NAS-IP-Address = 192.168.1.111 NAS-Port = 0 Processing the authorize section of radiusd.conf modcall: entering group authorize for request 0 modcall[authorize]: module "preprocess" returns ok for request 0 modcall[authorize]: module "chap" returns noop for request 0 modcall[authorize]: module "mschap" returns noop for request 0 rlm_realm: No '@' in User-Name = "test", looking up realm NULL rlm_realm: No such realm "NULL" modcall[authorize]: module "suffix" returns noop for request 0 rlm_eap: No EAP-Message, not doing EAP modcall[authorize]: module "eap" returns noop for request 0 users: Matched entry DEFAULT at line 153 users: Matched entry DEFAULT at line 172 users: Matched entry DEFAULT at line 184 modcall[authorize]: module "files" returns ok for request 0 rlm_pap: WARNING! No "known good" password found for the user. Authentication may fail because of this. modcall[authorize]: module "pap" returns noop for request 0 rlm_stg: stg_authorize() Program received signal SIGSEGV, Segmentation fault. 0xb7c6262c in ?? () (gdb) bt #0 0xb7c6262c in ?? () #1 0x00000000 in ?? () (gdb) Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-08-11 05:58:22 Share Опубліковано: 2008-08-11 05:58:22 Все плохо. Сегодня попробую "глазами" поискать, в каком месте у него нарушение сегментации может произойти. Все плохо... Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-08-11 06:23:30 Share Опубліковано: 2008-08-11 06:23:30 Предполагаю проблему вот в этом куске кода: uname = pairfind(request->packet->vps, PW_USER_NAME); if (uname) { DEBUG("rlm_stg: stg_authorize() user name defined as '%s'", uname->strvalue); } else { DEBUG("rlm_stg: stg_authorize() user name undefined"); return RLM_MODULE_FAIL; } Но самое интересное в том, что pairfind - это API FreeRADIUS То есть - могу только развести руками... Ссылка на сообщение Поделиться на других сайтах
starki 0 Опубліковано: 2008-08-11 14:40:19 Share Опубліковано: 2008-08-11 14:40:19 Чем могу помочь? По небольшому опыту компиляции других модулей, они помещаются в папку "src/modules/" и компилируются совместно с радиусом. Быть может это связано с использованием каких-то общих глобальных переменных? Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-08-12 05:49:36 Share Опубліковано: 2008-08-12 05:49:36 Нет. Тем более в документации сказано что можно собирать модуль как в дереве радиуса, так и сам по себе. Помочь можешь поиском места где падает. Если разбираешся в программировании. Ссылка на сообщение Поделиться на других сайтах
starki 0 Опубліковано: 2008-08-12 06:55:41 Share Опубліковано: 2008-08-12 06:55:41 Добавил в указанный кусок два отладочных сообщения "1" и "2" /* quiet the compiler */ instance = instance; request = request; DEBUG("1"); uname = pairfind(request->packet->vps, PW_USER_NAME); DEBUG("2"); Результат radiusd -X: rlm_stg: stg_authorize() 1 Ошибка сегментирования root@dm:~# root@dm:~# На С не пишу. Много пишу на PHP. Во времена студенчества много писал на ассемблере под ВМ86 и Z80. Могу попробовать найти место ошибки в функции pairfind. Вот только где искать саму эту функцию? Если будут какие-то инструкции - готов их выполнить. Ссылка на сообщение Поделиться на других сайтах
madf 279 Опубліковано: 2008-08-12 10:57:03 Share Опубліковано: 2008-08-12 10:57:03 Я уже говорил, pairfind это API FreeRADIUS. Можешь написать им багрепорт... Ссылка на сообщение Поделиться на других сайтах
starki 0 Опубліковано: 2008-08-12 15:00:04 Share Опубліковано: 2008-08-12 15:00:04 Я уже говорил, pairfind это API FreeRADIUS. Можешь написать им багрепорт... Да ну какой багрепорт? Меня пошлют писать багрепорт авторам билингновой системы stargazer или еще дальше. К бабке не ходи. Раз уж у меня одного такие проблемы, то остается только искать другое решение по билингу. Ссылка на сообщение Поделиться на других сайтах
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас