]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
libsmb: Slightly simplify cli_session_creds_init
authorVolker Lendecke <vl@samba.org>
Tue, 28 May 2024 10:23:35 +0000 (12:23 +0200)
committerVolker Lendecke <vl@samba.org>
Tue, 4 Jun 2024 07:11:35 +0000 (07:11 +0000)
In this case a nested if seems easier to understand to me than another
if-expression duplicating half of a previous one.

Signed-off-by: Volker Lendecke <vl@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
source3/libsmb/cliconnect.c

index e6efde769e17ca5b7866e2a0ff18ed5fe57922fc..cac2445e1ebcde0c5b50f0a567ddd9b0d2f27f7f 100644 (file)
@@ -53,6 +53,7 @@ struct cli_credentials *cli_session_creds_init(TALLOC_CTX *mem_ctx,
        struct loadparm_context *lp_ctx = NULL;
        struct cli_credentials *creds = NULL;
        const char *principal = NULL;
+       enum credentials_use_kerberos creds_use_krb;
        char *tmp = NULL;
        char *p = NULL;
        bool ok;
@@ -118,26 +119,25 @@ struct cli_credentials *cli_session_creds_init(TALLOC_CTX *mem_ctx,
                principal = NULL;
        }
 
-       if (use_kerberos && fallback_after_kerberos) {
-               /*
-                * Keep what we learned from the
-                * "client use kerberos" option.
-                */
-               enum credentials_use_kerberos current_krb5 =
-                       cli_credentials_get_kerberos_state(creds);
-               cli_credentials_set_kerberos_state(creds,
-                                                  current_krb5,
-                                                  CRED_SPECIFIED);
-       } else if (use_kerberos) {
-               cli_credentials_set_kerberos_state(creds,
-                                                  CRED_USE_KERBEROS_REQUIRED,
-                                                  CRED_SPECIFIED);
+       if (use_kerberos) {
+               if (fallback_after_kerberos) {
+                       /*
+                        * Keep what we learned from the
+                        * "client use kerberos" option.
+                        */
+                       creds_use_krb = cli_credentials_get_kerberos_state(
+                               creds);
+               } else {
+                       creds_use_krb = CRED_USE_KERBEROS_REQUIRED;
+               }
        } else {
-               cli_credentials_set_kerberos_state(creds,
-                                                  CRED_USE_KERBEROS_DISABLED,
-                                                  CRED_SPECIFIED);
+               creds_use_krb = CRED_USE_KERBEROS_DISABLED;
        }
 
+       cli_credentials_set_kerberos_state(creds,
+                                          creds_use_krb,
+                                          CRED_SPECIFIED);
+
        if (use_ccache) {
                uint32_t features;