krb5 commit: Fix scope of kadmind ACL wildcard back-references
Greg Hudson
ghudson at mit.edu
Fri Mar 13 23:31:41 EDT 2015
https://github.com/krb5/krb5/commit/d3d18b8d8d7a47766fd4e9667d045035f43d90ef
commit d3d18b8d8d7a47766fd4e9667d045035f43d90ef
Author: Greg Hudson <ghudson at mit.edu>
Date: Thu Mar 12 16:36:33 2015 -0400
Fix scope of kadmind ACL wildcard back-references
In kadm5int_acl_find_entry(), clear the wildcard back-references list
for each acl entry. Otherwise the wildcards we process can affect
back-references for later entries.
ticket: 8154
target_version: 1.13.2
tags: pullup
src/lib/kadm5/srv/server_acl.c | 2 +-
src/tests/t_kadmin_acl.py | 2 ++
2 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/src/lib/kadm5/srv/server_acl.c b/src/lib/kadm5/srv/server_acl.c
index a35d795..86e1367 100644
--- a/src/lib/kadm5/srv/server_acl.c
+++ b/src/lib/kadm5/srv/server_acl.c
@@ -610,8 +610,8 @@ kadm5int_acl_find_entry(kcontext, principal, dest_princ)
wildstate_t state;
DPRINT(DEBUG_CALLS, acl_debug_level, ("* kadm5int_acl_find_entry()\n"));
- memset(&state, 0, sizeof state);
for (entry=acl_list_head; entry; entry = entry->ae_next) {
+ memset(&state, 0, sizeof(state));
if (entry->ae_name_bad)
continue;
if (!strcmp(entry->ae_name, "*")) {
diff --git a/src/tests/t_kadmin_acl.py b/src/tests/t_kadmin_acl.py
index 9ccc80b..6f5c589 100644
--- a/src/tests/t_kadmin_acl.py
+++ b/src/tests/t_kadmin_acl.py
@@ -61,6 +61,8 @@ restricted_modify im * +preauth
restricted_rename ad * +preauth
*/* d *2/*1
+# The next line is a regression test for #8154; it is not used directly.
+one/*/*/five l
*/two/*/* d *3/*1/*2
*/admin a
wctarget a wild/*
More information about the cvs-krb5
mailing list