diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2012-03-27 15:23:23 -0400 |
---|---|---|
committer | Stephen Gallagher <sgallagh@redhat.com> | 2012-03-29 15:06:54 -0400 |
commit | 19274969b61c65a1d8f9b6e3002ae06a7f2cc1a2 (patch) | |
tree | 94459550e29c3220754571e21aa36e363d8a8b18 /src | |
parent | 2ee584f042133396ebb7c13bb35d3901be6ec7a0 (diff) | |
download | sssd-19274969b61c65a1d8f9b6e3002ae06a7f2cc1a2.tar.gz sssd-19274969b61c65a1d8f9b6e3002ae06a7f2cc1a2.tar.xz sssd-19274969b61c65a1d8f9b6e3002ae06a7f2cc1a2.zip |
Fix off-by-one error in principal selection
https://fedorahosted.org/sssd/ticket/1269
Diffstat (limited to 'src')
-rw-r--r-- | src/util/sss_krb5.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/util/sss_krb5.c b/src/util/sss_krb5.c index 75ce2a59a..73bd5b8e9 100644 --- a/src/util/sss_krb5.c +++ b/src/util/sss_krb5.c @@ -390,7 +390,7 @@ static bool match_principal(krb5_context ctx, const char *realm_name; int realm_len; - int mode = MODE_NORMAL; + enum matching_mode mode = MODE_NORMAL; TALLOC_CTX *tmp_ctx; bool ret = false; @@ -404,10 +404,10 @@ static bool match_principal(krb5_context ctx, if (pattern_primary) { tmp_len = strlen(pattern_primary); - if (pattern_primary[tmp_len] == '*') { + if (pattern_primary[tmp_len-1] == '*') { mode = MODE_PREFIX; primary_str = talloc_strdup(tmp_ctx, pattern_primary); - primary_str[tmp_len] = '\0'; + primary_str[tmp_len-1] = '\0'; primary_str_len = tmp_len-1; } else if (pattern_primary[0] == '*') { mode = MODE_POSTFIX; |