]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
s4:kdc: Simplify samba_kdc_update_pac_blob() to take ldb_context as parameter
authorJoseph Sutton <josephsutton@catalyst.net.nz>
Fri, 8 Oct 2021 03:06:58 +0000 (16:06 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Thu, 14 Oct 2021 18:59:31 +0000 (18:59 +0000)
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14642

Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source4/kdc/mit_samba.c
source4/kdc/pac-glue.c
source4/kdc/pac-glue.h
source4/kdc/wdc-samba4.c

index 0a0d3a98315651653c7d98d96146cea430683c58..60ba46cf2c3cc5e25b07484abf5ae4154f62f20c 100644 (file)
@@ -508,7 +508,6 @@ krb5_error_code mit_samba_reget_pac(struct mit_samba_context *ctx,
        DATA_BLOB *deleg_blob = NULL;
        struct samba_kdc_entry *client_skdc_entry = NULL;
        struct samba_kdc_entry *krbtgt_skdc_entry = NULL;
-       struct samba_kdc_entry *server_skdc_entry = NULL;
        bool is_in_db = false;
        bool is_untrusted = false;
        size_t num_types = 0;
@@ -539,9 +538,6 @@ krb5_error_code mit_samba_reget_pac(struct mit_samba_context *ctx,
        if (server == NULL) {
                return EINVAL;
        }
-       server_skdc_entry =
-               talloc_get_type_abort(server->e_data,
-                                     struct samba_kdc_entry);
 
        if (krbtgt == NULL) {
                return EINVAL;
@@ -601,8 +597,7 @@ krb5_error_code mit_samba_reget_pac(struct mit_samba_context *ctx,
 
                nt_status = samba_kdc_update_pac_blob(tmp_ctx,
                                                      context,
-                                                     krbtgt_skdc_entry,
-                                                     server_skdc_entry,
+                                                     krbtgt_skdc_entry->kdc_db_ctx->samdb,
                                                      *pac,
                                                      pac_blob,
                                                      pac_srv_sig,
index 04fbc5cf4875003f6c5bc60b280ec4bded71c96b..88bcb734fc5646fe9abce54fd0c054cbe2509a1f 100644 (file)
@@ -747,8 +747,7 @@ NTSTATUS samba_kdc_get_pac_blob(TALLOC_CTX *mem_ctx,
 
 NTSTATUS samba_kdc_update_pac_blob(TALLOC_CTX *mem_ctx,
                                   krb5_context context,
-                                  struct samba_kdc_entry *krbtgt,
-                                  struct samba_kdc_entry *server,
+                                  struct ldb_context *samdb,
                                   const krb5_pac pac, DATA_BLOB *pac_blob,
                                   struct PAC_SIGNATURE_DATA *pac_srv_sig,
                                   struct PAC_SIGNATURE_DATA *pac_kdc_sig)
@@ -768,7 +767,7 @@ NTSTATUS samba_kdc_update_pac_blob(TALLOC_CTX *mem_ctx,
         * as the token might be generated by a trusted domain.
         */
        nt_status = authsam_update_user_info_dc(mem_ctx,
-                                               krbtgt->kdc_db_ctx->samdb,
+                                               samdb,
                                                user_info_dc);
        if (!NT_STATUS_IS_OK(nt_status)) {
                return nt_status;
index 2eb7fd3b7558c3eb9bf317110ca4bd3da0faedf8..7b51b0389f5eb97d7b2ba13e14feb898427a168e 100644 (file)
@@ -51,8 +51,7 @@ NTSTATUS samba_kdc_get_pac_blob(TALLOC_CTX *mem_ctx,
 
 NTSTATUS samba_kdc_update_pac_blob(TALLOC_CTX *mem_ctx,
                                   krb5_context context,
-                                  struct samba_kdc_entry *krbtgt,
-                                  struct samba_kdc_entry *server,
+                                  struct ldb_context *samdb,
                                   const krb5_pac pac, DATA_BLOB *pac_blob,
                                   struct PAC_SIGNATURE_DATA *pac_srv_sig,
                                   struct PAC_SIGNATURE_DATA *pac_kdc_sig);
index a7d8de1f417bdbec7d60d534adc4d4eefbda5f12..68c8a8aa57246d45df5d5ae5277c81ce3b1337cf 100644 (file)
@@ -186,7 +186,7 @@ static krb5_error_code samba_wdc_reget_pac(void *priv, krb5_context context,
                }
 
                nt_status = samba_kdc_update_pac_blob(mem_ctx, context,
-                                                     krbtgt_skdc_entry, p,
+                                                     krbtgt_skdc_entry->kdc_db_ctx->samdb,
                                                      *pac, pac_blob,
                                                      pac_srv_sig, pac_kdc_sig);
                if (!NT_STATUS_IS_OK(nt_status)) {