aboutsummaryrefslogtreecommitdiff
path: root/ident/pam.c
diff options
context:
space:
mode:
Diffstat (limited to 'ident/pam.c')
-rw-r--r--ident/pam.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/ident/pam.c b/ident/pam.c
index ef32c4d..b7b9ef4 100644
--- a/ident/pam.c
+++ b/ident/pam.c
@@ -161,19 +161,10 @@ is_group_member (pies_identity_provider_t p,
int result = 0;
setgrent ();
- while ((gr = getgrent ()))
+ while (!result && (gr = getgrent ()))
{
- char **p;
-
- if (!is_array_member (groups, gr->gr_name))
- continue;
-
- for (p = gr->gr_mem; *p; p++)
- if (strcmp (*p, id->username) == 0)
- {
- result = 1;
- break;
- }
+ if (is_array_member (groups, gr->gr_name))
+ result = is_array_member (gr->gr_mem, id->username);
}
endgrent ();
return result;

Return to:

Send suggestions and report system problems to the System administrator.