Freeradius 3.0.10 sigsegv
Alan DeKok
aland at deployingradius.com
Wed Jan 6 22:53:05 CET 2016
On Jan 6, 2016, at 4:46 PM, Luca Palazzo <luca.palazzo at unict.it> wrote:
>
> I've just commented it but i got same sigsegv:
>
> Program received signal SIGSEGV, Segmentation fault.
> 0x00007ffff7bc77a0 in paircompare (request=request at entry=0x950d60, req_list=0x951010, check=check at entry=0x952b00, rep_list=rep_list at entry=0x0) at src/main/pair.c:536
> 536 if ((auth_item->da == from) || (!from)) {
> (gdb) p from
> $1 = (const DICT_ATTR *) 0x68ff50
> (gdb) p auth_item
> $2 = (VALUE_PAIR *) 0x2e696d696c6f7040
> (gdb) p auth_item->da
> Cannot access memory at address 0x2e696d696c6f7040
That's a garbage value. The server is accessing an attribute which was deleted.
> (gdb)
>
> Only this part remains:
>
> if (EAP-Message) {
> if ( Called-Station-ID =~ /.*:eduroam$/ )
>
> if ( SQL-Group == studente ) {
> reject
> update reply {
> Reply-Message = "Eduroam access for students allowed only if you are outside UniCT campus"
> }
The "update reply" will never get used. As soon as the server sees the "reject", the packets will be rejected.
So swap the order or "reject" and "update reply". I don't think it will help, though.
Ad what packet makes it SEGV? You have the code checking for multiple things. Does it SEGV for *all* of them? Or just one? If it's just one, can you delete the *other* checks and still have it SEGV?
It would help a LOT to have a simple configuration which I can use here. Right now, your configuration depends on local SQL-Groups, and other things (EAP config, SQL server), which I don't have access to.
Alan DeKok.
More information about the Freeradius-Users
mailing list