The branch, master has been updated via 76a2999 libcli/smb: outbuf length is a IVAL ie a uint32_t via 9785fe5 s3/rpc_server: shared rpc modules loading from 0e1deb7 s3: VFS: Don't allow symlink, link or rename on already converted paths.
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 76a2999744cd3dd872e0113cc036bcebe2323a2a Author: Ralph Boehme <s...@samba.org> Date: Mon Jan 30 06:49:58 2017 +0100 libcli/smb: outbuf length is a IVAL ie a uint32_t Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> Autobuild-User(master): Jeremy Allison <j...@samba.org> Autobuild-Date(master): Tue Jan 31 04:34:29 CET 2017 on sn-devel-144 commit 9785fe5af6613a728a7d92c82bbc31cabbe3a0b9 Author: Ralph Boehme <s...@samba.org> Date: Mon Jan 30 18:49:39 2017 +0100 s3/rpc_server: shared rpc modules loading The previous commit 58889e04bd545d7420d1193e134351bd0ccb8430 for this bug was broken as it didn't move the goto into the "if (errno != ENOENT)" condition. This updated fix folds the test "mod_init_fns == NULL" and the check for the errno into one if condition. Bug: https://bugzilla.samba.org/show_bug.cgi?id=12184 Signed-off-by: Ralph Boehme <s...@samba.org> Reviewed-by: Jeremy Allison <j...@samba.org> ----------------------------------------------------------------------- Summary of changes: libcli/smb/smb2cli_query_directory.c | 2 +- source3/rpc_server/rpc_service_setup.c | 21 +++++++++------------ 2 files changed, 10 insertions(+), 13 deletions(-) Changeset truncated at 500 lines: diff --git a/libcli/smb/smb2cli_query_directory.c b/libcli/smb/smb2cli_query_directory.c index d1ccdb8..e6321ff 100644 --- a/libcli/smb/smb2cli_query_directory.c +++ b/libcli/smb/smb2cli_query_directory.c @@ -80,7 +80,7 @@ struct tevent_req *smb2cli_query_directory_send(TALLOC_CTX *mem_ctx, SBVAL(fixed, 16, fid_volatile); SSVAL(fixed, 24, SMB2_HDR_BODY + 32); SSVAL(fixed, 26, dyn_len); - SSVAL(fixed, 28, outbuf_len); + SIVAL(fixed, 28, outbuf_len); if (dyn_len == 0) { dyn = state->dyn_pad; diff --git a/source3/rpc_server/rpc_service_setup.c b/source3/rpc_server/rpc_service_setup.c index 263fcaf..751a638 100644 --- a/source3/rpc_server/rpc_service_setup.c +++ b/source3/rpc_server/rpc_service_setup.c @@ -535,18 +535,15 @@ bool dcesrv_ep_setup(struct tevent_context *ev_ctx, /* Initialize shared modules */ mod_init_fns = load_samba_modules(tmp_ctx, "rpc"); - if (mod_init_fns == NULL) { - if (errno != ENOENT) { - /* - * ENOENT means the directory doesn't exist - * which can happen if all modules are - * static. So ENOENT is ok, everything else is - * not ok. - */ - DBG_ERR("Loading shared RPC modules failed [%s]\n", - strerror(errno)); - ok = false; - } + if ((mod_init_fns == NULL) && (errno != ENOENT)) { + /* + * ENOENT means the directory doesn't exist which can happen if + * all modules are static. So ENOENT is ok, everything else is + * not ok. + */ + DBG_ERR("Loading shared RPC modules failed [%s]\n", + strerror(errno)); + ok = false; goto done; } -- Samba Shared Repository