On 3/15/07, Paul Goodman <pgoodman@ucar.edu> wrote:
I am trying to compile the pam_radius-1.3.16 modules on a Solaris 10 system, but when I run make, I get the following error:
gcc -Wall -fPIC -c pam_radius_auth.c -o pam_radius_auth.o In file included from pam_radius_auth.h:23, from pam_radius_auth.c:63: md5.h:21: error: syntax error before 'u_int32_t'
Following patch worked for me: ---- 8< ---- diff -ruN pam_radius-1.3.16/Makefile pam_radius-1.3.16-solaris10/Makefile --- pam_radius-1.3.16/Makefile 2003-09-19 16:41:45.000000000 +0200 +++ pam_radius-1.3.16-solaris10/Makefile 2006-11-21 18:13:26.000000000 +0100 @@ -23,6 +23,8 @@ # Then copy pam_radius_auth.so to /usr/freeware/lib32/security (PAM dir) # CFLAGS = +CC=gcc + ###################################################################### # @@ -55,7 +57,7 @@ # gcc -shared pam_radius_auth.o md5.o -lpam -lc -o pam_radius_auth.so # pam_radius_auth.so: pam_radius_auth.o md5.o - ld -Bshareable pam_radius_auth.o md5.o -lpam -o pam_radius_auth.so + ld -G pam_radius_auth.o md5.o -lpam -o pam_radius_auth.so -lsocket ###################################################################### # diff -ruN pam_radius-1.3.16/md5.h pam_radius-1.3.16-solaris10/md5.h --- pam_radius-1.3.16/md5.h 2003-04-29 22:19:16.000000000 +0200 +++ pam_radius-1.3.16-solaris10/md5.h 2006-11-21 18:13:46.000000000 +0100 @@ -15,7 +15,7 @@ #define MD5Transform pra_MD5Transform #include <sys/types.h> -#define uint32 u_int32_t +#define uint32 uint32_t struct MD5Context { uint32 buf[4]; ---- 8< ---- You may not need Makefile-related part, depending on what compiler / linker you're going to use... th.