Segfault in detail module

Arran Cudbard-Bell a.cudbardb at freeradius.org
Sat Jun 15 20:08:44 CEST 2013


On 15 Jun 2013, at 16:37, Stelian Ionescu <sionescu at cddr.org> wrote:

> Its configuration is
> 
> 	detailfile = ${radacctdir}/detail/%{Client-IP-Address}-%Y%m%d.active
> 	detailperm = 0600
> 	header = "%t"
> 
> 
> (24)   Found Post-Proxy-Type Fail
> (24) # Executing group from file /etc/raddb/sites-enabled/default
> (24)   group Fail {
> (24)  - entering group Fail {...}
> LITERAL: /var/log/radius/radacct/detail/%{Client-IP-Address}-%Y%m%d.active
> LITERAL: /var/log/radius/radacct/detail/%{Client-IP-Address}-%Y%m%d.active --> %{Client-IP-Address}-%Y%m%d.active
> EXPANSION: %{Client-IP-Address}-%Y%m%d.active
> Looking for attribute name in Client-IP-Address
> LITERAL: -%Y%m%d.active
> PERCENT: -%Y%m%d.active --> Y
> LITERAL: %m%d.active
> PERCENT: %m%d.active --> m
> LITERAL: %d.active
> PERCENT: %d.active --> d
> LITERAL: .active
> xlat aprint 0
> xlat aprint 3
> expand attr Client-IP-Address --> '172.20.10.121'
> xlat aprint 0
> xlat aprint 1
> xlat aprint 1
> xlat aprint 1
> xlat aprint 0
> (24) detail:linkem.com :        expand: '/var/log/radius/radacct/detail/%{Client-IP-Address}-%Y%m%d.active' -> '/var/log/radius/radacct/detail/172.20.10.121-20130615.active'
> (24) detail:linkem.com : /var/log/radius/radacct/detail/%{Client-IP-Address}-%Y%m%d.active expands to /var/log/radius/radacct/detail/172.20.10.121-20130615.active
> LITERAL: %t
> PERCENT: %t --> t
> (24) ERROR: detail:linkem.com : %t
> 
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff5f6e0ac in vfprintf () from /lib64/libc.so.6
> Missing separate debuginfos, use: debuginfo-install freeradius-3.0.0-22.el6.x86_64
> (gdb) bt full
> #0  0x00007ffff5f6e0ac in vfprintf () from /lib64/libc.so.6
> No symbol table info available.
> #1  0x00007ffff6025a80 in __vsnprintf_chk () from /lib64/libc.so.6
> No symbol table info available.
> #2  0x00007ffff6f8c403 in talloc_vasprintf () from /usr/lib64/libtalloc.so.2
> No symbol table info available.
> #3  0x00007ffff75d2540 in module_failure_msg (request=0x99bfa0, fmt=0x7ffff75dffff "%.*s^ %s") at src/main/valuepair.c:1295
>        ap = {{gp_offset = 16, fp_offset = 48, overflow_arg_area = 0x7fffffffb070, reg_save_area = 0x7fffffffaf90}}
>        p = <value optimized out>
>        vp = 0x995fb0
> #4  0x00007ffff75d9130 in xlat_tokenize_request (out=0x7fffffffb108, outlen=256, request=0x99bfa0, fmt=0x8b4e50 "%t", escape=0, escape_ctx=0x0) at src/main/xlat.c:1314
>        indent = 2
>        slen = -2
>        tokens = <value optimized out>
>        error = 0x51a0e7ed <Address 0x51a0e7ed out of bounds>
> #5  xlat_expand (out=0x7fffffffb108, outlen=256, request=0x99bfa0, fmt=0x8b4e50 "%t", escape=0, escape_ctx=0x0) at src/main/xlat.c:1802
>        buff = <value optimized out>
>        len = <value optimized out>
>        node = 0x0
> #6  0x00007ffff75d9303 in radius_xlat (out=0x7fffffffd140 "\200\067+\366\377\177", outlen=<value optimized out>, request=<value optimized out>, fmt=<value optimized out>, escape=<value optimized out>, ctx=<value optimized out>)
>    at src/main/xlat.c:1835
> No locals.
> #7  0x00007fffeffe56b3 in do_detail (instance=0x8b4cb0, request=0x99bfa0, packet=0x9ad500, compat=1) at src/modules/rlm_detail/rlm_detail.c:342
>        outfd = 21
>        timestamp = "\200\067+\366\377\177\000\000Y\331;\367\377\177\000\000\000\000\000\000\000\000\000\000\315y\371\365\377\177\000\000\320\326\377\377\377\177\000\000\200\067+\366\377\177\000\000`\330\377\377\377\177\000\000U\000\000\000\000\000\000\000p\330\377\377\377\177\000\000Y\331;\367\377\177\000\000\250\377\377\377\377\377\377\377N\244\366\365\377\177\000\000\030\000\000\000\060\000\000\000\000\325\377\377\377\177\000\000@\324\377\377\377\177\000\000\300\331\377\377\377\177\000\000\005\313\a\366\377\177\000\000\347\243\366\365\377\177\000\000\005\313\a\366\377\177\000\000\000\000\000\000\000\000\000\000P\327\377\377\377\177\000\000\347\243\366\365\377\177\000\000(\331;\367\377\177\000\000\000\000\000\000\000\000\000\000\001", '\000' <repeats 15 times>"\274, \327\377\377\377\177\000\000`\331\377\377\377\177\000\000P\332\377\377\377\177\000\000\366X\371\365\377\177\000\000\000\327\377\377\377\177\000\000\001\000\000\000\000\000\000"
>        buffer = "/var/log/radius/radacct/detail/172.20.10.121-20130615.active\000\177\000\000\277\322\377\377\377\177\000\000\300\262\377\377\377\177\000\000\277\322\377\377\377\177\000\000\240\277\231\000\000\000\000\000\300\262\377\377\377\177\000\000\020\000\000\000\000\000\000\000\001", '\000' <repeats 15 times>, "\001\000\000\000\000\000\000\000\270\227]\367\377\177\000\000(\000\000\000\060\000\000\000\260\262\377\377\377\177\000\000\360\261\377\377\377\177\000\000\347\243\366\365\377\177\000\000JGD", '\000' <repeats 13 times>, "\030\000\000\000\000\000\000\000\034\277]\367\377\177\000\000\300\262\377\377\377\177\000\000\360\247\201\000\000\000\000\000\360 at D\000\000\000\000\000@$+\366\377\177", '\000' <repeats 18 times>"\354, \267\377\377\377\177\000\000\b\270\377\377\377\177\000\000\024\000\000\000\000\000\000\000(\270"...
>        p = <value optimized out>
>        st = {st_dev = 140737488345440, st_ino = 10060898, st_nlink = 140737488345680, st_mode = 4126779614, st_uid = 32767, st_gid = 4294957408, __pad0 = 32767, st_rdev = 140737488345424, st_size = 85, st_blksize = 140737488345808, 
>          st_blocks = 140737343504710, st_atim = {tv_sec = 140737319969767, tv_nsec = 140737343504710}, st_mtim = {tv_sec = 0, tv_nsec = 4429803}, st_ctim = {tv_sec = 140737488345584, tv_nsec = 140733193388032}, __unused = {
>            140733193388032, 140737321093882, 140737488345616}}
>        locked = 0
>        lock_count = 0
>        tv = {tv_sec = 1, tv_usec = 0}
>        vp = <value optimized out>
>        fsize = 0
>        fp = <value optimized out>
>        gid = <value optimized out>
>        grp = <value optimized out>
>        endptr = 0x9af <Address 0x9af out of bounds>
>        inst = 0x8b4cb0
> #8  0x00007fffeffe5f1d in mod_post_proxy (instance=<value optimized out>, request=0x99bfa0) at src/modules/rlm_detail/rlm_detail.c:566
>        rcode = <value optimized out>
> 
> -- 
> Stelian Ionescu a.k.a. fe[nl]ix
> Quidquid latine dictum sit, altum videtur.
> http://common-lisp.net/project/iolib
> 
> -
> List info/subscribe/unsubscribe? See http://www.freeradius.org/list/devel.html

Hi Stellian, thanks for the bug reports. Seeing as you're helping out, i'll transfer them over to bugs.freeradius.org for easier tracking. 
In future if you open them directly on bugs.freeradius.org (just redirects to github), it makes it easier for us to work on them.

Arran Cudbard-Bell <a.cudbardb at freeradius.org>
FreeRADIUS Development Team



More information about the Freeradius-Devel mailing list