diff options
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | USAGE | 4 | ||||
-rw-r--r-- | pam_radius_auth.c | 7 | ||||
-rw-r--r-- | pamsymbols.ver | 4 |
4 files changed, 13 insertions, 7 deletions
@@ -15,7 +15,7 @@ VERSION=1.3.17 # # If you're not using GCC, then you'll have to change the CFLAGS. # -CFLAGS = -Wall -fPIC +CFLAGS += -Wall -fPIC # # On Irix, use this with MIPSPRo C Compiler, and don't forget to export CC=cc # gcc on Irix does not work yet for pam_radius @@ -23,6 +23,7 @@ CFLAGS = -Wall -fPIC # Then copy pam_radius_auth.so to /usr/freeware/lib32/security (PAM dir) # CFLAGS = +LDFLAGS += -shared -Wl,--version-script=pamsymbols.ver ###################################################################### # @@ -55,7 +56,7 @@ pam_radius_auth.o: pam_radius_auth.c pam_radius_auth.h # 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 + $(CC) $(LDFLAGS) pam_radius_auth.o md5.o -lpam -o pam_radius_auth.so ###################################################################### # @@ -3,9 +3,9 @@ is not implemented, as the RADIUS protocol does not support it. The pam configuration can be: ... -auth sufficient /lib/security/pam_radius_auth.so [options] +auth sufficient pam_radius_auth.so [options] ... -account sufficient /lib/security/pam_radius_auth.so +account sufficient pam_radius_auth.so --------------------------------------------------------------------------- diff --git a/pam_radius_auth.c b/pam_radius_auth.c index abea995..11bec48 100644 --- a/pam_radius_auth.c +++ b/pam_radius_auth.c @@ -766,7 +766,8 @@ static int talk_radius(radius_conf_t *conf, AUTH_HDR *request, AUTH_HDR *response, char *password, char *old_password, int tries) { - int salen, total_length; + socklen_t salen; + int total_length; fd_set set; struct timeval tv; time_t now, end; @@ -881,7 +882,7 @@ send: } else if (FD_ISSET(conf->sockfd, &set)) { /* try to receive some data */ - if ((total_length = recvfrom(conf->sockfd, (char *) response, + if ((total_length = recvfrom(conf->sockfd, (void *) response, BUFFER_SIZE, 0, &saremote, &salen)) < 0) { _pam_log(LOG_ERR, "error reading RADIUS packet from server %s: %s", @@ -1062,7 +1063,7 @@ PAM_EXTERN int pam_sm_authenticate(pam_handle_t *pamh,int flags,int argc,CONST char **argv) { CONST char *user; - CONST char **userinfo; + CONST char *userinfo; char *password = NULL; CONST char *rhost; char *resp2challenge = NULL; diff --git a/pamsymbols.ver b/pamsymbols.ver new file mode 100644 index 0000000..d049312 --- /dev/null +++ b/pamsymbols.ver @@ -0,0 +1,4 @@ +{ + global: pam_sm_*; + local: *; +}; |