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 <[email protected]>
Date: Tue Jun 30 14:10:50 2015 +0200
libldap: Fix CID 1308982 Unchecked return value from library
Signed-off-by: Volker Lendecke <[email protected]>
Reviewed-by: Jeremy Allison <[email protected]>
Autobuild-User(master): Jeremy Allison <[email protected]>
Autobuild-Date(master): Wed Jul 1 00:11:41 CEST 2015 on sn-devel-104
commit 2749e08437ad27fabaabf354e6dedac1e47f1c33
Author: Günther Deschner <[email protected]>
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 <[email protected]>
Reviewed-by: Jeremy Allison <[email protected]>
commit c638ce839bb7ac754c1cbb61afcc700bac8788fc
Author: Günther Deschner <[email protected]>
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 <[email protected]>
Pair-Programmed-With: Michael Adam <[email protected]>
Signed-off-by: Guenther Deschner <[email protected]>
Signed-off-by: Stefan Metzmacher <[email protected]>
Signed-off-by: Michael Adam <[email protected]>
Reviewed-by: Andreas Schneider <[email protected]>
-----------------------------------------------------------------------
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