Subject: pkg/28095: freeradius-1.0.1nb3 from pkgsrc crashes when using EAP-PEAP
To: None <gnats-bugs@gnats.NetBSD.org>
From: None <Konstantin.Kabassanov@lip6.fr>
List: pkgsrc-bugs
Date: 11/08/2004 11:29:57
>Number: 28095
>Category: pkg
>Synopsis: freeradius-1.0.1nb3 from pkgsrc crashes when using EAP-PEAP
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Mon Nov 08 11:30:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator: Konstantin Kabassanov
>Release: NetBSD 2.0_RC4 (GENERIC)
>Organization:
LIP6/CNRS
>Environment:
NetBSD houston.infradio-jussieu.lip6.fr 2.0_RC4 NetBSD 2.0_RC4 (GENERIC) #0: Sun Oct 17 19:11:36 UTC 2004 autobuild@tgm.netbsd.org:/autobuild/netbsd-2-0/i386/OBJ/autobuild/netbsd-2-0/src/sys/arch/i386/compile/GENERIC i386
>Description:
The radiusd daemon crashes when it receives an EAP-PEAP request due to some unresolved symbols in rlm_mschap-1.0.1.so
> Processing the authenticate section of radiusd.conf
> modcall: entering group authenticate for request 8
> rlm_eap: Request found, released from the list
> rlm_eap: EAP/mschapv2
> rlm_eap: processing type mschapv2
> Processing the authenticate section of radiusd.conf
> modcall: entering group Auth-Type for request 8
> /usr/pkg/lib/rlm_mschap-1.0.1.so: Undefined PLT symbol "md4_calc"
> (symnum = 24)
This file is linked to:
> # ldd /usr/pkg/lib/rlm_mschap-1.0.1.so
> /usr/pkg/lib/rlm_mschap-1.0.1.so:
> -lresolv.1 => /usr/lib/libresolv.so.1
> -lpthread.0 => /usr/lib/libpthread.so.0
> -lcrypto.2 => /usr/lib/libcrypto.so.2
> -lssl.3 => /usr/lib/libssl.so.3
It seems that the problem comes from the fact that the file is not linked to libradius...
>How-To-Repeat:
cd /usr/pkgsrc/net/freeradius/
make
make install
Configure the configurations files and then execute:
radiusd -X
Send an EAP-PEAP request...
>Fix:
Nasty solution:
cd /usr/pkgsrc/net/freeradius/
make configure
cd work/freeradius-1.0.1/src/modules/rlm_mschap/
vi Makefile
add
RLM_LDFLAGS = -lradius
Put a copy of libradius.a libradius.la and libradius.so in /usr/lib
(putting them in /usr/pkg makes libtool claim that the shared version of libradius could not be found...)
cd /usr/pkgsrc/net/freeradius/
make
make install
>Release-Note:
>Audit-Trail:
>Unformatted: