Running FreeRadius-0.5 under FreeBSD 4.4 with authentication with PAM,
accounting to PostgreSQL and users definitions in files. NAS is old
Livingston PortMaster 3 with 30 async ports. And having radiusd core 
dumps a dozen times a day. Today me compiled radiusd with -g options
and have following backtrace:

( Also, I have seen radiusd core dumped in sql_close in
rlm_sql_postgresql.so, but, sigh, that core been overwrite with rlm_detail. )

#0  0x28330dd0 in detail_accounting (instance=0x8093c40,
request=0xa864700)
    at rlm_detail.c:173
#1  0x805845d in call_modsingle (component=3, sp=0x8097f40,
    request=0xa864700, 
        default_result=7) at modcall.c:205
#2  0x80586c1 in modcall (component=3, c=0x8097f40, request=0xa864700)
        at modcall.c:288
#3  0x80584cb in call_modgroup (component=3, g=0x8097f00,
        request=0xa864700, 
            default_result=7) at modcall.c:227
#4  0x8058656 in modcall (component=3, c=0x8097f00, request=0xa864700)
            at modcall.c:281
#5  0x8057b0b in indexed_modcall (comp=3, idx=0, request=0xa864700) at
            modules.c:456
#6  0x8057ff6 in module_accounting (request=0xa864700) at modules.c:657
#7  0x8050528 in rad_accounting (request=0xa864700) at acct.c:65
#8  0x804ddb9 in rad_respond (request=0xa864700, fun=0x80504d0
            <rad_accounting>)
    at radiusd.c:1524
#9  0x805af38 in request_handler_thread (arg=0xa872340) at threads.c:172
#10 0x280a0ecf in _thread_start () from /usr/lib/libc_r.so.4
#11 0x0 in ?? ()

(gdb) list
168             } else {
169                     /* Post a timestamp */
170                     fputs(ctime_r(&request->timestamp, buffer), outfp);
171
172                     /* Write each attribute/value to the log file */
173                     pair = request->packet->vps;
174                     while (pair) {
175                             if (pair->attribute != PW_PASSWORD) {
176                                     fputs("\t", outfp);
177                                     vp_print(outfp, pair);
(gdb) print request
$1 = (REQUEST *) 0xa864700
(gdb) print request->packet
$2 = (RADIUS_PACKET *) 0x0

-- 
Alex L. Demidov (ALD9-RIPE)

- 
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to