summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSumit Bose <sbose@redhat.com>2010-05-03 23:25:27 +0200
committerStephen Gallagher <sgallagh@redhat.com>2010-05-07 16:38:22 -0400
commitca6aa84e20e445fb04dfce416a8c3a1912b26451 (patch)
tree4398f17a689d54136e2a91955bb180511b65a01f
parent4f5664a2ec401f43c090e6170ed9c78390c35272 (diff)
downloadsssd_unused-ca6aa84e20e445fb04dfce416a8c3a1912b26451.tar.gz
sssd_unused-ca6aa84e20e445fb04dfce416a8c3a1912b26451.tar.xz
sssd_unused-ca6aa84e20e445fb04dfce416a8c3a1912b26451.zip
Compare the full service name
-rw-r--r--src/providers/ipa/ipa_access.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/providers/ipa/ipa_access.c b/src/providers/ipa/ipa_access.c
index 24d8d623..962ea51a 100644
--- a/src/providers/ipa/ipa_access.c
+++ b/src/providers/ipa/ipa_access.c
@@ -1270,7 +1270,8 @@ enum check_result check_service(struct pam_data *pd,
return RULE_APPLICABLE;
} else {
for (i = 0; i < el->num_values; i++) {
- if (strncasecmp(pd->service, (const char *) el->values[i].data,
+ if (strlen(pd->service) == el->values[i].length &&
+ strncasecmp(pd->service, (const char *) el->values[i].data,
el->values[i].length) == 0) {
DEBUG(9, ("Service [%s] found, rule applies.\n",
pd->service));