From: Volker Lendecke Date: Fri, 29 Feb 2008 21:38:10 +0000 (+0100) Subject: Restore 3.0 behaviour with empty /etc/hosts X-Git-Tag: samba-3.2.0pre2~24 X-Git-Url: http://git.samba.org/?a=commitdiff_plain;h=4170259e5f83c281966a80916e4ece6937e08988;p=samba.git 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 --- 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 */