summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2014-04-30 10:26:17 +0200
committerAndrew Bartlett <abartlet@samba.org>2014-08-08 06:02:34 +0200
commitfeabae7417213c071e98f05995601151a29353e7 (patch)
treec27c05ffe093cfc860c29da58099aaad5efe0b6a
parentf5ce0ee45a1403484bede07b6596a885246913c8 (diff)
downloadsamba-feabae7417213c071e98f05995601151a29353e7.tar.gz
samba-feabae7417213c071e98f05995601151a29353e7.tar.xz
samba-feabae7417213c071e98f05995601151a29353e7.zip
s4-dsdb/samdb: use smb_krb5_principal_get_comp_string in ldb ACL module.
Guenther Signed-off-by: Günther Deschner <gd@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r--source4/dsdb/samdb/ldb_modules/acl.c13
-rwxr-xr-xsource4/dsdb/samdb/ldb_modules/wscript_build_server2
2 files changed, 9 insertions, 6 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/acl.c b/source4/dsdb/samdb/ldb_modules/acl.c
index 75b871f0d2..b4f7cef138 100644
--- a/source4/dsdb/samdb/ldb_modules/acl.c
+++ b/source4/dsdb/samdb/ldb_modules/acl.c
@@ -552,14 +552,17 @@ static int acl_validate_spn_value(TALLOC_CTX *mem_ctx,
return LDB_ERR_CONSTRAINT_VIOLATION;
}
- if (principal->name.name_string.len < 2) {
+ if (krb5_princ_size(krb_ctx, principal) < 2) {
goto fail;
}
- instanceName = principal->name.name_string.val[1];
- serviceType = principal->name.name_string.val[0];
- if (principal->name.name_string.len == 3) {
- serviceName = principal->name.name_string.val[2];
+ instanceName = smb_krb5_principal_get_comp_string(mem_ctx, krb_ctx,
+ principal, 1);
+ serviceType = smb_krb5_principal_get_comp_string(mem_ctx, krb_ctx,
+ principal, 0);
+ if (krb5_princ_size(krb_ctx, principal) == 3) {
+ serviceName = smb_krb5_principal_get_comp_string(mem_ctx, krb_ctx,
+ principal, 2);
} else {
serviceName = NULL;
}
diff --git a/source4/dsdb/samdb/ldb_modules/wscript_build_server b/source4/dsdb/samdb/ldb_modules/wscript_build_server
index 41eb0f34e1..0307aeaf9f 100755
--- a/source4/dsdb/samdb/ldb_modules/wscript_build_server
+++ b/source4/dsdb/samdb/ldb_modules/wscript_build_server
@@ -325,7 +325,7 @@ bld.SAMBA_MODULE('ldb_acl',
init_function='ldb_acl_module_init',
module_init_name='ldb_init_module',
internal_module=False,
- deps='talloc samba-security samdb DSDB_MODULE_HELPERS'
+ deps='talloc samba-security samdb DSDB_MODULE_HELPERS krb5samba'
)