Hello Arran, The file pam_modules.h bash-4.2# cat /usr/include/security/pam_modules.h /* IBM_PROLOG_BEGIN_TAG */ /* This is an automatically generated prolog. */ /* */ /* bos610 src/bos/usr/ccs/lib/libpam/security/pam_modules.h 1.2 */ /* */ /* Licensed Materials - Property of IBM */ /* */ /* Restricted Materials of IBM */ /* */ /* COPYRIGHT International Business Machines Corp. 2000,2001 */ /* All Rights Reserved */ /* */ /* US Government Users Restricted Rights - Use, duplication or */ /* disclosure restricted by GSA ADP Schedule Contract with IBM Corp. */ /* */ /* IBM_PROLOG_END_TAG */ /* $XConsortium: pam_modules.h /main/5 1996/05/09 04:25:54 drk $ */ /* * Copyright (c) 1992-1995, by Sun Microsystems, Inc. * All rights reserved. */ #ifndef _PAM_MODULES_H #define _PAM_MODULES_H #ifndef _PAM_APPL_H #include <security/pam_appl.h> #endif #ifdef __cplusplus extern "C" { #endif extern int pam_sm_authenticate( pam_handle_t *pamh, int flags, int argc, const char **argv); extern int pam_sm_setcred( pam_handle_t *pamh, int flags, int argc, const char **argv); extern int pam_sm_acct_mgmt( pam_handle_t *pamh, int flags, int argc, const char **argv); extern int pam_sm_open_session( pam_handle_t *pamh, int flags, int argc, const char **argv); extern int pam_sm_close_session( pam_handle_t *pamh, int flags, int argc, const char **argv); /* * Be careful - there are flags defined for pam_chauthtok() in * pam_appl.h also. */ #define PAM_PRELIM_CHECK 1 #define PAM_UPDATE_AUTHTOK 2 #define PAM_REP_DEFAULT 0x0 #define PAM_REP_FILES 0x01 #define PAM_REP_NIS 0x02 #define PAM_REP_NISPLUS 0x04 #define PAM_OPWCMD 0x08 /* for nispasswd, yppasswd */ #define IS_FILES(x) ((x & PAM_REP_FILES) == PAM_REP_FILES) #define IS_NIS(x) ((x & PAM_REP_NIS) == PAM_REP_NIS) #define IS_NISPLUS(x) ((x & PAM_REP_NISPLUS) == PAM_REP_NISPLUS) #define IS_OPWCMD(x) ((x & PAM_OPWCMD) == PAM_OPWCMD) extern int pam_sm_chauthtok( pam_handle_t *pamh, int flags, int argc, const char **argv); #ifdef __cplusplus } #endif #endif /* _PAM_MODULES_H */ Sam ============================================================== Sam Lin 林立山 Acom Networks E-MAIL : sam@acom-networks.com OFFICE : +886.2.2313.1416 MOBILE : +886.930.895.633 ============================================================== 於 2014/5/26 下午9:08, Arran Cudbard-Bell 提到:
Thank you very so much for your support, there still have error message: Can you send me the output of
cat /usr/include/security/pam_modules.h
For some reason the pam function signatures still don't match what you have on your system.
-Arran
bash-4.2# make cc -Wall -fPIC -c src/pam_radius_auth.c -o pam_radius_auth.o src/pam_radius_auth.c:1037:16: error: conflicting types for 'pam_sm_authenticate' PAM_EXTERN int pam_sm_authenticate(pam_handle_t *pamh,int flags,int argc,CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:36:1: note: previous declaration of 'pam_sm_authenticate' was here pam_sm_authenticate( ^ src/pam_radius_auth.c:1240:16: error: conflicting types for 'pam_sm_setcred' PAM_EXTERN int pam_sm_setcred(pam_handle_t *pamh,int flags,int argc,CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:43:1: note: previous declaration of 'pam_sm_setcred' was here pam_sm_setcred( ^ src/pam_radius_auth.c: In function 'pam_private_session': src/pam_radius_auth.c:1256:6: warning: variable 'ctrl' set but not used [-Wunused-but-set-variable] int ctrl; ^ src/pam_radius_auth.c: At top level: src/pam_radius_auth.c:1335:16: error: conflicting types for 'pam_sm_open_session' PAM_EXTERN int pam_sm_open_session(pam_handle_t *pamh, int flags, int argc, CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:57:1: note: previous declaration of 'pam_sm_open_session' was here pam_sm_open_session( ^ src/pam_radius_auth.c:1340:16: error: conflicting types for 'pam_sm_close_session' PAM_EXTERN int pam_sm_close_session(pam_handle_t *pamh, int flags, int argc, CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:64:1: note: previous declaration of 'pam_sm_close_session' was here pam_sm_close_session( ^ src/pam_radius_auth.c:1349:16: error: conflicting types for 'pam_sm_chauthtok' PAM_EXTERN int pam_sm_chauthtok(pam_handle_t *pamh, int flags, int argc, CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:88:1: note: previous declaration of 'pam_sm_chauthtok' was here pam_sm_chauthtok( ^ src/pam_radius_auth.c:1575:16: error: conflicting types for 'pam_sm_acct_mgmt' PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t *pamh,int flags,int argc,CONST char **argv) ^ In file included from src/pam_radius_auth.h:31:0, from src/pam_radius_auth.c:61: /usr/include/security/pam_modules.h:50:1: note: previous declaration of 'pam_sm_acct_mgmt' was here pam_sm_acct_mgmt( ^ make: 1254-004 The error code from the last command is 1.
Stop. Sam ============================================================== Sam Lin 林立山 Acom Networks E-MAIL : sam@acom-networks.com
OFFICE : +886.2.2313.1416 MOBILE : +886.930.895.633 ==============================================================
cc -Wall -fPIC -c src/md5.c -o md5.o cc -shared -Wl pam_radius_auth.o md5.o -lpam -o pam_radius_auth.so cc: error: unrecognized command line option '-Wl' make: 1254-004 The error code from the last command is 1.
Ok, tweaked it some more, try now?
Arran Cudbard-Bell <a.cudbardb@freeradius.org>
FreeRADIUS Development Team
FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html
於 2014/5/25 下午5:50, Arran Cudbard-Bell 提到: - List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS Development Team
FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2
- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html