From: Volker Lendecke Date: Tue, 28 May 2024 10:38:18 +0000 (+0200) Subject: lib: Use cli_credentials_add_gensec_features in a few places X-Git-Tag: tdb-1.4.11~495 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=df30ec83c961d8333d76ed13aa1944a2e93f9050;p=thirdparty%2Fsamba.git lib: Use cli_credentials_add_gensec_features in a few places Capture a common pattern Signed-off-by: Volker Lendecke Reviewed-by: Andrew Bartlett --- diff --git a/lib/cmdline/cmdline.c b/lib/cmdline/cmdline.c index be729107f40..93d59d4f9d3 100644 --- a/lib/cmdline/cmdline.c +++ b/lib/cmdline/cmdline.c @@ -1009,14 +1009,8 @@ static void popt_common_credentials_callback(poptContext popt_ctx, } case OPT_USE_WINBIND_CCACHE: { - uint32_t gensec_features; - - gensec_features = cli_credentials_get_gensec_features(creds); - gensec_features |= GENSEC_FEATURE_NTLM_CCACHE; - - ok = cli_credentials_set_gensec_features(creds, - gensec_features, - CRED_SPECIFIED); + ok = cli_credentials_add_gensec_features( + creds, GENSEC_FEATURE_NTLM_CCACHE, CRED_SPECIFIED); if (!ok) { fprintf(stderr, "Failed to set gensec feature!\n"); diff --git a/source3/lib/netapi/netapi.c b/source3/lib/netapi/netapi.c index 471dd274292..dff9f7de35b 100644 --- a/source3/lib/netapi/netapi.c +++ b/source3/lib/netapi/netapi.c @@ -429,12 +429,8 @@ NET_API_STATUS libnetapi_get_use_kerberos(struct libnetapi_ctx *ctx, NET_API_STATUS libnetapi_set_use_ccache(struct libnetapi_ctx *ctx) { - uint32_t gensec_features; - - gensec_features = cli_credentials_get_gensec_features(ctx->creds); - gensec_features |= GENSEC_FEATURE_NTLM_CCACHE; - cli_credentials_set_gensec_features(ctx->creds, - gensec_features, + cli_credentials_add_gensec_features(ctx->creds, + GENSEC_FEATURE_NTLM_CCACHE, CRED_SPECIFIED); return NET_API_STATUS_SUCCESS; diff --git a/source3/libsmb/cliconnect.c b/source3/libsmb/cliconnect.c index cac2445e1eb..bd75393ac07 100644 --- a/source3/libsmb/cliconnect.c +++ b/source3/libsmb/cliconnect.c @@ -139,12 +139,8 @@ struct cli_credentials *cli_session_creds_init(TALLOC_CTX *mem_ctx, CRED_SPECIFIED); if (use_ccache) { - uint32_t features; - - features = cli_credentials_get_gensec_features(creds); - features |= GENSEC_FEATURE_NTLM_CCACHE; - cli_credentials_set_gensec_features(creds, - features, + cli_credentials_add_gensec_features(creds, + GENSEC_FEATURE_NTLM_CCACHE, CRED_SPECIFIED); if (password != NULL && strlen(password) == 0) { diff --git a/source3/libsmb/libsmb_context.c b/source3/libsmb/libsmb_context.c index 441dec170e2..97a4430fd6a 100644 --- a/source3/libsmb/libsmb_context.c +++ b/source3/libsmb/libsmb_context.c @@ -793,12 +793,8 @@ void smbc_set_credentials_with_fallback(SMBCCTX *context, kerberos_state, CRED_SPECIFIED); if (smbc_getOptionUseCCache(context)) { - uint32_t gensec_features; - - gensec_features = cli_credentials_get_gensec_features(creds); - gensec_features |= GENSEC_FEATURE_NTLM_CCACHE; - cli_credentials_set_gensec_features(creds, - gensec_features, + cli_credentials_add_gensec_features(creds, + GENSEC_FEATURE_NTLM_CCACHE, CRED_SPECIFIED); } diff --git a/source3/utils/net.c b/source3/utils/net.c index cc31bb53d09..9c070372600 100644 --- a/source3/utils/net.c +++ b/source3/utils/net.c @@ -1373,7 +1373,6 @@ static struct functable net_func[] = { cli_credentials_get_principal_obtained(c->creds); enum credentials_obtained password_obtained = cli_credentials_get_password_obtained(c->creds); - uint32_t gensec_features; if (principal_obtained == CRED_SPECIFIED) { c->explicit_credentials = true; @@ -1384,12 +1383,11 @@ static struct functable net_func[] = { c->opt_workgroup = cli_credentials_get_domain(c->creds); - gensec_features = cli_credentials_get_gensec_features(c->creds); if (c->legacy_opt_ccache) { - gensec_features |= GENSEC_FEATURE_NTLM_CCACHE; - cli_credentials_set_gensec_features(c->creds, - gensec_features, - CRED_SPECIFIED); + cli_credentials_add_gensec_features( + c->creds, + GENSEC_FEATURE_NTLM_CCACHE, + CRED_SPECIFIED); } }