diff options
author | Jeremy Allison <jra@samba.org> | 1998-04-29 19:22:01 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 1998-04-29 19:22:01 +0000 |
commit | e305c2c9e2e657974d34d1d58a8f9372921fdae2 (patch) | |
tree | cf35e6a21e2ba4cdc00539c24cb41b229b55a06b /source3/libsmb | |
parent | 4eb37c104d3a23ecefcefe9038de5d10515078dd (diff) | |
download | samba-e305c2c9e2e657974d34d1d58a8f9372921fdae2.tar.gz samba-e305c2c9e2e657974d34d1d58a8f9372921fdae2.tar.bz2 samba-e305c2c9e2e657974d34d1d58a8f9372921fdae2.zip |
clientgen.c: Fixed null session setup bug.
password.c: Stopped cli_nt_logout call (we don't have it correct yet).
Added Luke object-orientation fix :-).
smb.h: Added clnt_name_slash to cli_state.
lib/rpc/client/cli_login.c: Changed global_myname to clnt_name_slash where needed.
lib/rpc/client/cli_netlogon.c: Fixed debug messages, don't check creds on error.
lib/rpc/client/cli_pipe.c: Fixed debug messages, Added Luke object-orientation fix.
lib/rpc/parse/parse_misc.c: Fixed STRING2 linearization bug that was adding 1.
Jeremy.
(This used to be commit c6c22df20196cb7f0ae84b1a1dd202a87adb8d4e)
Diffstat (limited to 'source3/libsmb')
-rw-r--r-- | source3/libsmb/clientgen.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c index 7fc19a5f39..d72040505f 100644 --- a/source3/libsmb/clientgen.c +++ b/source3/libsmb/clientgen.c @@ -593,12 +593,17 @@ BOOL cli_session_setup(struct cli_state *cli, return False; } - if ((cli->sec_mode & 2) && passlen != 24) { - passlen = 24; - SMBencrypt((uchar *)pass,(uchar *)cli->cryptkey,(uchar *)pword); - } else { - memcpy(pword, pass, passlen); - } + if(((passlen == 0) || (passlen == 1)) && (pass[0] == '\0')) { + /* Null session connect. */ + pword[0] = '\0'; + } else { + if ((cli->sec_mode & 2) && passlen != 24) { + passlen = 24; + SMBencrypt((uchar *)pass,(uchar *)cli->cryptkey,(uchar *)pword); + } else { + memcpy(pword, pass, passlen); + } + } /* if in share level security then don't send a password now */ if (!(cli->sec_mode & 1)) {fstrcpy(pword, "");passlen=1;} |