From f7fc540d848d5f5950f4adf921b5972be2eb81a4 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Thu, 19 Apr 2007 00:51:18 +0000 Subject: r22354: Make client select krb5 encrpyt if krb5 already on. Jeremy. (This used to be commit 7b89a5de57cd5fed814eda95e44dcc345f380fb2) --- source3/client/client.c | 51 +++++++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 23 deletions(-) (limited to 'source3/client') diff --git a/source3/client/client.c b/source3/client/client.c index a4c75f2735..2df5c67db1 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -1789,34 +1789,39 @@ static int cmd_open(void) static int cmd_posix_encrypt(void) { - fstring buf; - fstring domain; - fstring user; - fstring password; NTSTATUS status; - if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { - d_printf("posix_encrypt domain user password\n"); - return 1; - } - fstrcpy(domain,buf); + if (cli->use_kerberos) { + status = cli_gss_smb_encryption_start(cli); + } else { + fstring buf; + fstring domain; + fstring user; + fstring password; - if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { - d_printf("posix_encrypt domain user password\n"); - return 1; - } - fstrcpy(user,buf); + if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { + d_printf("posix_encrypt domain user password\n"); + return 1; + } + fstrcpy(domain,buf); - if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { - d_printf("posix_encrypt domain user password\n"); - return 1; - } - fstrcpy(password,buf); + if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { + d_printf("posix_encrypt domain user password\n"); + return 1; + } + fstrcpy(user,buf); - status = cli_raw_ntlm_smb_encryption_start(cli, - user, - password, - domain); + if (!next_token_nr(NULL,buf,NULL,sizeof(buf))) { + d_printf("posix_encrypt domain user password\n"); + return 1; + } + fstrcpy(password,buf); + + status = cli_raw_ntlm_smb_encryption_start(cli, + user, + password, + domain); + } if (!NT_STATUS_IS_OK(status)) { d_printf("posix_encrypt failed with error %s\n", nt_errstr(status)); -- cgit