FreeRADIUS crash on Solaris 10 after start
Hi all, I built FreeRADIUS on Solaris 10 ./configure --prefix=/usr/local/freeradius --with-mysql-include-dir=/usr/local/mysql/include/mysql --with-mysql-lib-dir=/usr/local/mysql/lib/mysql --with-openssl-includes=/usr/sfw/include --with-openssl-libraries=/usr/sfw/lib --without-rlm_perl --without-threads make make install and when I want to start FreeRADIUS it crash: # radiusd -X Config: including file: /usr/local/freeradius/etc/raddb/radiusd.conf Config: including file: /usr/local/freeradius/etc/raddb/proxy.conf Config: including file: /usr/local/freeradius/etc/raddb/clients.conf Config: including file: /usr/local/freeradius/etc/raddb/snmp.conf Config: including file: /usr/local/freeradius/etc/raddb/eap.conf Config: including file: /usr/local/freeradius/etc/raddb/sql.conf Config: including file: /usr/local/freeradius/etc/raddb/sql/mysql- dialup.conf FreeRADIUS Version 2.0.0-pre0, for host sparc-sun-solaris2.10, built on Apr 30 2007 at 11:11:35 Starting - reading configuration files ... read_config_files: reading dictionary zsh: bus error (core dumped) radiusd -X # dbx - core Corefile specified executable: "/usr/local/freeradius/sbin/radiusd" For information about new features see `help changes' To remove this message, put `dbxenv suppress_startup_message 7.5' in your .dbxrc Reading radiusd core file header read successfully Reading ld.so.1 Reading libradius-2.0.0-pre0.so Reading libnsl.so.1 Reading libresolv.so.2 Reading libsocket.so.1 Reading libcrypt_i.so.1 Reading libltdl.so.3.1.0 Reading libdl.so.1 Reading libssl.so.0.9.7 Reading libcrypto.so.0.9.7 Reading libc.so.1 Reading libgcc_s.so.1 Reading libgen.so.1 Reading libc_psr.so.1 program terminated by signal BUS (invalid address alignment) Current function is lrad_isaac (optimized) 37 rngstep( a<<13, a, b, mm, m, m2, r, x); I have same problem with FR 1.1.6. Can you help me fix this problem? My settings: # gcc -v Using built-in specs. Target: sparc-sun-solaris2.10 Configured with: /net/tibia/export/bldmstr/nightly/20061019_mars_gcc.s10.opt.tarbuild/src/configure --prefix=/opt/gcc --enable-shared --with-system-zlib --enable-checking=release --disable-libmudflap --enable-languages=c,c++ --enable-version-specific-runtime-libs --with-gxx-include-dir=/opt/gcc/include/c++/4.0.3 --with-cpu=v9 Thread model: posix gcc version 4.0.3 (gccfss) LD_LIBRARY_PATH=/lib:/usr/local/lib:/usr/sfw/lib:/usr/ccs/lib:/usr/lib:/usr/local/mysql/lib/mysql:/usr/local/freeradius/lib LDFLAGS=-L/usr/local/lib -R/usr/local/lib -L/usr/local/mysql/lib/mysql -R/usr/local/mysql/lib/mysql -L/usr/sfw/lib -R/usr/sfw/lib -L/usr/ccs/lib -R/usr/ccs/lib -L/usr/local/freeradius/lib -R/usr/local/freeradius/lib PATH=/opt/gcc/bin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/usr/local/sbin:/opt/csw/bin:/opt/csw/sbin:/usr/sfw/bin:/usr/sfw/sbin:/usr/local/freeradius/sbin:/usr/local/freeradius/bin:/usr/ccs/bin best regards Peter Micunek
Peter Micunek wrote:
and when I want to start FreeRADIUS it crash: ... program terminated by signal BUS (invalid address alignment) Current function is lrad_isaac (optimized) 37 rngstep( a<<13, a, b, mm, m, m2, r, x);
Let me guess... it's a 64-bit machine?
I have same problem with FR 1.1.6. Can you help me fix this problem?
This is the first I've seen the problem. Looking at the code, it's all explicitly 32-bit, so the compiler should produce the correct code to access 32-bit data that's not aligned on a 64-bit boundary. Alan DeKok. -- http://deployingradius.com - The web site of the book http://deployingradius.com/blog/ - The blog
Alan, You are right. It is 64-bit machine but # file radiusd radiusd: ELF 32-bit MSB executable SPARC32PLUS Version 1, V8+ Required, dynamically linked, stripped regards Peter Micunek On 4/30/07, Alan DeKok <aland@deployingradius.com> wrote:
Peter Micunek wrote:
and when I want to start FreeRADIUS it crash: ... program terminated by signal BUS (invalid address alignment) Current function is lrad_isaac (optimized) 37 rngstep( a<<13, a, b, mm, m, m2, r, x);
Let me guess... it's a 64-bit machine?
I have same problem with FR 1.1.6. Can you help me fix this problem?
This is the first I've seen the problem. Looking at the code, it's all explicitly 32-bit, so the compiler should produce the correct code to access 32-bit data that's not aligned on a 64-bit boundary.
Alan DeKok. -- http://deployingradius.com - The web site of the book http://deployingradius.com/blog/ - The blog - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
Peter Micunek wrote:
Alan,
You are right. It is 64-bit machine but
# file radiusd radiusd: ELF 32-bit MSB executable SPARC32PLUS Version 1, V8+ Required, dynamically linked, stripped
<shrug> The data structures are marked as being 32-bit. The compiler should generate the appropriate instructions to perform 32-bit accesses without causing bus errors due to alignment issues. I'm not sure what to suggest. Maybe a Solaris / Sparc expert knows more. Alan DeKok. -- http://deployingradius.com - The web site of the book http://deployingradius.com/blog/ - The blog
participants (2)
-
Alan DeKok -
Peter Micunek