summaryrefslogtreecommitdiff
path: root/source4/libcli/raw/clisession.c
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2004-01-15 23:19:07 +0000
committerAndrew Tridgell <tridge@samba.org>2004-01-15 23:19:07 +0000
commitff4a1461684bcf57da70067e4d40b0c5e183eed7 (patch)
tree2d9800007832dca5553250473f3b751f9bb6572f /source4/libcli/raw/clisession.c
parente0469838c8dc55f17f7f5eb3b584ee1f382db5d4 (diff)
downloadsamba-ff4a1461684bcf57da70067e4d40b0c5e183eed7.tar.gz
samba-ff4a1461684bcf57da70067e4d40b0c5e183eed7.tar.bz2
samba-ff4a1461684bcf57da70067e4d40b0c5e183eed7.zip
* fixed a segv when -U is not used in smbtorture.
* fixed the handling of anonymous logins (This used to be commit 7cbc4ad8710ad33387145bfc9974d0ed4b0fb231)
Diffstat (limited to 'source4/libcli/raw/clisession.c')
-rw-r--r--source4/libcli/raw/clisession.c12
1 files changed, 9 insertions, 3 deletions
diff --git a/source4/libcli/raw/clisession.c b/source4/libcli/raw/clisession.c
index 9d154e10cd..c5d4888089 100644
--- a/source4/libcli/raw/clisession.c
+++ b/source4/libcli/raw/clisession.c
@@ -272,7 +272,10 @@ static NTSTATUS smb_raw_session_setup_generic_old(struct cli_session *session,
s2.old.in.os = "Unix";
s2.old.in.lanman = "Samba";
- if (session->transport->negotiate.sec_mode & NEGOTIATE_SECURITY_CHALLENGE_RESPONSE) {
+ if (!parms->generic.in.password) {
+ s2.old.in.password = data_blob(NULL, 0);
+ } else if (session->transport->negotiate.sec_mode &
+ NEGOTIATE_SECURITY_CHALLENGE_RESPONSE) {
s2.old.in.password = lanman_blob(parms->generic.in.password,
session->transport->negotiate.secblob);
} else {
@@ -318,8 +321,11 @@ static NTSTATUS smb_raw_session_setup_generic_nt1(struct cli_session *session,
s2.nt1.in.os = "Unix";
s2.nt1.in.lanman = "Samba";
- if (s2.nt1.in.user[0] &&
- (session->transport->negotiate.sec_mode & NEGOTIATE_SECURITY_CHALLENGE_RESPONSE)) {
+ if (!parms->generic.in.password) {
+ s2.nt1.in.password1 = data_blob(NULL, 0);
+ s2.nt1.in.password2 = data_blob(NULL, 0);
+ } else if (session->transport->negotiate.sec_mode &
+ NEGOTIATE_SECURITY_CHALLENGE_RESPONSE) {
s2.nt1.in.password1 = lanman_blob(parms->generic.in.password,
session->transport->negotiate.secblob);
s2.nt1.in.password2 = nt_blob(parms->generic.in.password,