[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Tue Jun 30 16:12:08 MDT 2015


The branch, master has been updated
       via  e1a87d8 libldap: Fix CID 1308982 Unchecked return value from library
       via  2749e08 ntlmssp: add NTLMSSP_WINDOWS_MINOR_VERSION_3 as seen from Windows 8.1 clients.
       via  c638ce8 s3-smbd: reset protocol in smbXsrv_connection_init_tables failure paths.
      from  6fc65aa lib: Fix rundown of open_socket_out()

https://git.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit e1a87d86764d0c677b69c7d7a99c5388d4e85570
Author: Volker Lendecke <vl at samba.org>
Date:   Tue Jun 30 14:10:50 2015 +0200

    libldap: Fix CID 1308982 Unchecked return value from library
    
    Signed-off-by: Volker Lendecke <vl at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>
    
    Autobuild-User(master): Jeremy Allison <jra at samba.org>
    Autobuild-Date(master): Wed Jul  1 00:11:41 CEST 2015 on sn-devel-104

commit 2749e08437ad27fabaabf354e6dedac1e47f1c33
Author: Günther Deschner <gd at samba.org>
Date:   Thu May 28 20:32:00 2015 +0200

    ntlmssp: add NTLMSSP_WINDOWS_MINOR_VERSION_3 as seen from Windows 8.1 clients.
    
    Guenther
    
    Signed-off-by: Günther Deschner <gd at samba.org>
    Reviewed-by: Jeremy Allison <jra at samba.org>

commit c638ce839bb7ac754c1cbb61afcc700bac8788fc
Author: Günther Deschner <gd at samba.org>
Date:   Wed Jun 10 17:07:15 2015 +0200

    s3-smbd: reset protocol in smbXsrv_connection_init_tables failure paths.
    
    BUG: https://bugzilla.samba.org/show_bug.cgi?id=11373
    
    Guenther
    
    Pair-Programmed-With: Stefan Metzmacher <metze at samba.org>
    Pair-Programmed-With: Michael Adam <obnox at samba.org>
    
    Signed-off-by: Guenther Deschner <gd at samba.org>
    Signed-off-by: Stefan Metzmacher <metze at samba.org>
    Signed-off-by: Michael Adam <obnox at samba.org>
    Reviewed-by: Andreas Schneider <asn at samba.org>

-----------------------------------------------------------------------

Summary of changes:
 librpc/idl/ntlmssp.idl            | 3 ++-
 source3/smbd/process.c            | 7 ++++++-
 source4/libcli/ldap/ldap_client.c | 8 +++++++-
 3 files changed, 15 insertions(+), 3 deletions(-)


Changeset truncated at 500 lines:

diff --git a/librpc/idl/ntlmssp.idl b/librpc/idl/ntlmssp.idl
index 7c3b8fe..4a9e7c2 100644
--- a/librpc/idl/ntlmssp.idl
+++ b/librpc/idl/ntlmssp.idl
@@ -71,7 +71,8 @@ interface ntlmssp
 	typedef [enum8bit] enum {
 		NTLMSSP_WINDOWS_MINOR_VERSION_0	= 0x00,
 		NTLMSSP_WINDOWS_MINOR_VERSION_1	= 0x01,
-		NTLMSSP_WINDOWS_MINOR_VERSION_2	= 0x02
+		NTLMSSP_WINDOWS_MINOR_VERSION_2	= 0x02,
+		NTLMSSP_WINDOWS_MINOR_VERSION_3	= 0x03
 	} ntlmssp_WindowsMinorVersion;
 
 	/*
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 958c82b..c83f3bc 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -3464,36 +3464,41 @@ NTSTATUS smbXsrv_connection_init_tables(struct smbXsrv_connection *conn,
 {
 	NTSTATUS status;
 
-	set_Protocol(protocol);
 	conn->protocol = protocol;
 
 	if (protocol >= PROTOCOL_SMB2_02) {
 		status = smb2srv_session_table_init(conn);
 		if (!NT_STATUS_IS_OK(status)) {
+			conn->protocol = PROTOCOL_NONE;
 			return status;
 		}
 
 		status = smb2srv_open_table_init(conn);
 		if (!NT_STATUS_IS_OK(status)) {
+			conn->protocol = PROTOCOL_NONE;
 			return status;
 		}
 	} else {
 		status = smb1srv_session_table_init(conn);
 		if (!NT_STATUS_IS_OK(status)) {
+			conn->protocol = PROTOCOL_NONE;
 			return status;
 		}
 
 		status = smb1srv_tcon_table_init(conn);
 		if (!NT_STATUS_IS_OK(status)) {
+			conn->protocol = PROTOCOL_NONE;
 			return status;
 		}
 
 		status = smb1srv_open_table_init(conn);
 		if (!NT_STATUS_IS_OK(status)) {
+			conn->protocol = PROTOCOL_NONE;
 			return status;
 		}
 	}
 
+	set_Protocol(protocol);
 	return NT_STATUS_OK;
 }
 
diff --git a/source4/libcli/ldap/ldap_client.c b/source4/libcli/ldap/ldap_client.c
index e49df9e..68ebfcf 100644
--- a/source4/libcli/ldap/ldap_client.c
+++ b/source4/libcli/ldap/ldap_client.c
@@ -514,7 +514,13 @@ static void ldap_connect_got_sock(struct composite_context *ctx,
 	TALLOC_FREE(state->sock);
 
 	smb_set_close_on_exec(fd);
-	set_blocking(fd, false);
+
+	ret = set_blocking(fd, false);
+	if (ret == -1) {
+		NTSTATUS status = map_nt_error_from_unix_common(errno);
+		composite_error(state->ctx, status);
+		return;
+	}
 
 	ret = tstream_bsd_existing_socket(state, fd, &state->raw);
 	if (ret == -1) {


-- 
Samba Shared Repository


More information about the samba-cvs mailing list