From 3f3093933a2341da5329647b843ef8f06fc9e30b Mon Sep 17 00:00:00 2001 From: Andreas Schneider Date: Thu, 18 Mar 2021 13:39:54 +0100 Subject: [PATCH] s3:netapi: Remove use_ccache from 'struct libnetapi_ctx' Signed-off-by: Andreas Schneider Reviewed-by: Guenther Deschner --- source3/lib/netapi/cm.c | 5 ++++- source3/lib/netapi/netapi.c | 2 -- source3/lib/netapi/netapi_private.h | 1 - 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/source3/lib/netapi/cm.c b/source3/lib/netapi/cm.c index 58fc1fb57cd..29b35af7d3d 100644 --- a/source3/lib/netapi/cm.c +++ b/source3/lib/netapi/cm.c @@ -25,6 +25,7 @@ #include "libsmb/libsmb.h" #include "rpc_client/cli_pipe.h" #include "../libcli/smb/smbXcli_base.h" +#include "auth/gensec/gensec.h" /******************************************************************** ********************************************************************/ @@ -76,6 +77,7 @@ static WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, const char *password = NULL; NET_API_STATUS rc; enum credentials_use_kerberos krb5_state; + uint32_t gensec_features; if (!ctx || !pp || !server_name) { return WERR_INVALID_PARAMETER; @@ -107,6 +109,7 @@ static WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, } krb5_state = cli_credentials_get_kerberos_state(ctx->creds); + gensec_features = cli_credentials_get_gensec_features(ctx->creds); set_cmdline_auth_info_signing_state_raw(auth_info, SMB_SIGNING_IPC_DEFAULT); set_cmdline_auth_info_use_kerberos(auth_info, krb5_state == CRED_USE_KERBEROS_REQUIRED); @@ -123,7 +126,7 @@ static WERROR libnetapi_open_ipc_connection(struct libnetapi_ctx *ctx, set_cmdline_auth_info_fallback_after_kerberos(auth_info, true); } - if (ctx->use_ccache) { + if (gensec_features & GENSEC_FEATURE_NTLM_CCACHE) { set_cmdline_auth_info_use_ccache(auth_info, true); } creds = get_cmdline_auth_info_creds(auth_info); diff --git a/source3/lib/netapi/netapi.c b/source3/lib/netapi/netapi.c index 14567d04536..dfb11fdc951 100644 --- a/source3/lib/netapi/netapi.c +++ b/source3/lib/netapi/netapi.c @@ -333,8 +333,6 @@ NET_API_STATUS libnetapi_set_use_ccache(struct libnetapi_ctx *ctx) { uint32_t gensec_features; - ctx->use_ccache = true; - gensec_features = cli_credentials_get_gensec_features(ctx->creds); gensec_features |= GENSEC_FEATURE_NTLM_CCACHE; cli_credentials_set_gensec_features(ctx->creds, gensec_features); diff --git a/source3/lib/netapi/netapi_private.h b/source3/lib/netapi/netapi_private.h index 3f725c29f89..0f897514007 100644 --- a/source3/lib/netapi/netapi_private.h +++ b/source3/lib/netapi/netapi_private.h @@ -57,7 +57,6 @@ struct libnetapi_private_ctx { struct libnetapi_ctx { char *debuglevel; char *error_string; - int use_ccache; int disable_policy_handle_cache; struct cli_credentials *creds; -- 2.47.3