summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoseph Sutton <josephsutton@catalyst.net.nz>2023-05-17 12:07:44 +1200
committerAndrew Bartlett <abartlet@samba.org>2023-05-18 01:03:37 +0000
commite1f8cb063ddc3753ab8673416fa70fa616138f30 (patch)
tree44efcd11f4609cf1ccddb70fec896adfe9cf33df
parent10d6d77a2720577e51bc93c51c85261c1e3d37b8 (diff)
downloadsamba-e1f8cb063ddc3753ab8673416fa70fa616138f30.tar.gz
s4:kdc: Don’t perform unnecessary search to get account objectClass
We now have this information in the ldb_message. Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
-rw-r--r--source4/kdc/ad_claims.c18
1 files changed, 1 insertions, 17 deletions
diff --git a/source4/kdc/ad_claims.c b/source4/kdc/ad_claims.c
index 84cfb0abb60..bb7bcd21983 100644
--- a/source4/kdc/ad_claims.c
+++ b/source4/kdc/ad_claims.c
@@ -1048,29 +1048,13 @@ int get_claims_for_principal(struct ldb_context *ldb,
const struct ldb_message *principal,
DATA_BLOB *claims_blob)
{
- struct ldb_result *principal_res = NULL;
- static const char * const principal_attrs[] = {
- "objectClass",
- NULL
- };
-
struct ldb_message_element *principal_class_el = NULL;
struct dsdb_schema *schema = NULL;
const struct dsdb_class *principal_class = NULL;
- int ret;
-
*claims_blob = data_blob_null;
- ret = ldb_search(ldb, mem_ctx, &principal_res,
- principal->dn,
- LDB_SCOPE_BASE,
- principal_attrs, NULL);
- if (ret != LDB_SUCCESS) {
- return ret;
- }
-
- principal_class_el = ldb_msg_find_element(principal_res->msgs[0],
+ principal_class_el = ldb_msg_find_element(principal,
"objectClass");
if (principal_class_el == NULL) {
return ldb_operr(ldb);