summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2008-02-29 22:38:10 +0100
committerKarolin Seeger <ks@sernet.de>2008-03-03 11:40:12 +0100
commit4170259e5f83c281966a80916e4ece6937e08988 (patch)
tree38477a7bb241de399609ed3843f12c667c6345ff
parent575b829b390f7f07138305adc2988918eda95ce1 (diff)
downloadsamba-4170259e5f83c281966a80916e4ece6937e08988.tar.gz
samba-4170259e5f83c281966a80916e4ece6937e08988.tar.xz
samba-4170259e5f83c281966a80916e4ece6937e08988.zip
Restore 3.0 behaviour with empty /etc/hosts
Jeremy, in 3.0 we allowed get_mydnsdomname and get_mydnsfullname to fail without filling in anything useful. Worked fine. Without this patch and a empty /etc/hosts and no DNS configured, session setup would return NT_STATUS_BAD_NETWORK_NAME. This is confusing at best, BAD_NETWORK_NAME afaik is only ever returned from tcon normally. This restores the 3.0 behaviour. Comments? Volker
-rw-r--r--source/libsmb/ntlmssp.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/source/libsmb/ntlmssp.c b/source/libsmb/ntlmssp.c
index 35c20ed6475..7082ea7e4e7 100644
--- a/source/libsmb/ntlmssp.c
+++ b/source/libsmb/ntlmssp.c
@@ -566,13 +566,16 @@ static NTSTATUS ntlmssp_server_negotiate(struct ntlmssp_state *ntlmssp_state,
/* This should be a 'netbios domain -> DNS domain' mapping */
dnsdomname = get_mydnsdomname(ntlmssp_state->mem_ctx);
if (!dnsdomname) {
- return NT_STATUS_BAD_NETWORK_NAME;
+ dnsdomname = talloc_strdup(ntlmssp_state->mem_ctx, "");
+ }
+ if (!dnsdomname) {
+ return NT_STATUS_NO_MEMORY;
}
strlower_m(dnsdomname);
dnsname = get_mydnsfullname();
- if (!dnsdomname) {
- return NT_STATUS_INVALID_COMPUTER_NAME;
+ if (!dnsname) {
+ dnsname = "";
}
/* This creates the 'blob' of names that appears at the end of the packet */