--- Linux-PAM-1.1.3.orig/modules/pam_group/pam_group.c +++ Linux-PAM-1.1.3/modules/pam_group/pam_group.c @@ -658,10 +658,13 @@ continue; } /* If buffer starts with @, we are using netgroups */ +#ifdef HAVE_INNETGR if (buffer[0] == '@') good &= innetgr (&buffer[1], NULL, user, NULL); /* otherwise, if the buffer starts with %, it's a UNIX group */ - else if (buffer[0] == '%') + else +#endif + if (buffer[0] == '%') good &= pam_modutil_user_in_group_nam_nam(pamh, user, &buffer[1]); else good &= logic_field(pamh,user, buffer, count, is_same); --- Linux-PAM-1.1.3.orig/modules/pam_succeed_if/pam_succeed_if.c +++ Linux-PAM-1.1.3/modules/pam_succeed_if/pam_succeed_if.c @@ -233,16 +233,20 @@ static int evaluate_innetgr(const char *host, const char *user, const char *group) { +#ifdef HAVE_INNETGR if (innetgr(group, host, user, NULL) == 1) return PAM_SUCCESS; +#endif return PAM_AUTH_ERR; } /* Return PAM_SUCCESS if the (host,user) is NOT in the netgroup. */ static int evaluate_notinnetgr(const char *host, const char *user, const char *group) { +#ifdef HAVE_INNETGR if (innetgr(group, host, user, NULL) == 0) return PAM_SUCCESS; +#endif return PAM_AUTH_ERR; } --- Linux-PAM-1.1.3.orig/modules/pam_time/pam_time.c +++ Linux-PAM-1.1.3/modules/pam_time/pam_time.c @@ -554,9 +554,11 @@ continue; } /* If buffer starts with @, we are using netgroups */ +#ifdef HAVE_INNETGR if (buffer[0] == '@') good &= innetgr (&buffer[1], NULL, user, NULL); else +#endif good &= logic_field(pamh, user, buffer, count, is_same); D(("with user: %s", good ? "passes":"fails" ));