The branch, v4-1-test has been updated via ce98b19 librpc/nbt: increase MAX_COMPONENTS limit for nbt_names. via 09e750b dfs: always call create_conn_struct with root privileges from 629e95e VERSION: Bump version number up to 4.1.6...
http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v4-1-test - Log ----------------------------------------------------------------- commit ce98b1995f09d2f2739d520e09044b78596756a5 Author: Günther Deschner <g...@samba.org> Date: Tue Feb 4 16:38:46 2014 +0100 librpc/nbt: increase MAX_COMPONENTS limit for nbt_names. domains with more then 10 subdomains are not so uncommon. https://bugzilla.samba.org/show_bug.cgi?id=10439 Guenther Signed-off-by: Günther Deschner <g...@samba.org> Reviewed-by: Andreas Schneider <a...@samba.org> Autobuild-User(master): Günther Deschner <g...@samba.org> Autobuild-Date(master): Thu Feb 13 16:30:50 CET 2014 on sn-devel-104 (cherry picked from commit 4e05bad0d18e351cb2a2db74860e77adea727c79) Signed-off-by: Andreas Schneider <a...@samba.org> Autobuild-User(v4-1-test): Karolin Seeger <ksee...@samba.org> Autobuild-Date(v4-1-test): Fri Feb 21 13:19:27 CET 2014 on sn-devel-104 commit 09e750b25e9901ed36ca9d6946d0781149d6254d Author: Garming Sam <garm...@catalyst.net.nz> Date: Thu Dec 19 09:55:44 2013 +1300 dfs: always call create_conn_struct with root privileges This fixes a bug in dfs_samba4 identified by Daniel Müller. create_conn_struct calls SMB_VFS_CONNECT which requires root privileges. SMB_VFS_CONNECT in turn calls dfs_samba4_connect which connects to samdb. Calls were made to this function without ever becoming root (notably via setup_dfs_referral) which resulted in an error and the VFS connect failing. This happens when you have an active directory domain controller with host msdfs = yes in smb.conf and dfs links in place. Signed-off-by: Garming Sam <garm...@catalyst.net.nz> Reviewed-by: Bjoern Baumbach <b...@sernet.de> Reviewed-by: Jeremy Allison <j...@samba.org> Autobuild-User(master): Jeremy Allison <j...@samba.org> Autobuild-Date(master): Fri Jan 10 20:11:03 CET 2014 on sn-devel-104 (cherry picked from commit 24a687642de21ce872d25f16b3525003844d05f9) Fix bug #10378 - dfs: always call create_conn_struct with root privileges. ----------------------------------------------------------------------- Summary of changes: librpc/ndr/ndr_nbt.c | 2 +- source3/smbd/msdfs.c | 31 ++++++++++++++++++++++++++++++- 2 files changed, 31 insertions(+), 2 deletions(-) Changeset truncated at 500 lines: diff --git a/librpc/ndr/ndr_nbt.c b/librpc/ndr/ndr_nbt.c index f2a1ca3..842e972 100644 --- a/librpc/ndr/ndr_nbt.c +++ b/librpc/ndr/ndr_nbt.c @@ -27,7 +27,7 @@ #include "../libcli/netlogon/netlogon.h" /* don't allow an unlimited number of name components */ -#define MAX_COMPONENTS 10 +#define MAX_COMPONENTS 128 /** print a nbt string diff --git a/source3/smbd/msdfs.c b/source3/smbd/msdfs.c index 52a2a48..096a3a0 100644 --- a/source3/smbd/msdfs.c +++ b/source3/smbd/msdfs.c @@ -221,9 +221,11 @@ static NTSTATUS parse_dfs_path(connection_struct *conn, Fake up a connection struct for the VFS layer, for use in applications (such as the python bindings), that do not want the global working directory changed under them. + + SMB_VFS_CONNECT requires root privileges. *********************************************************/ -NTSTATUS create_conn_struct(TALLOC_CTX *ctx, +static NTSTATUS create_conn_struct_as_root(TALLOC_CTX *ctx, struct tevent_context *ev, struct messaging_context *msg, connection_struct **pconn, @@ -347,6 +349,33 @@ NTSTATUS create_conn_struct(TALLOC_CTX *ctx, } /******************************************************** + Fake up a connection struct for the VFS layer, for use in + applications (such as the python bindings), that do not want the + global working directory changed under them. + + SMB_VFS_CONNECT requires root privileges. +*********************************************************/ + +NTSTATUS create_conn_struct(TALLOC_CTX *ctx, + struct tevent_context *ev, + struct messaging_context *msg, + connection_struct **pconn, + int snum, + const char *path, + const struct auth_session_info *session_info) +{ + NTSTATUS status; + become_root(); + status = create_conn_struct_as_root(ctx, ev, + msg, pconn, + snum, path, + session_info); + unbecome_root(); + + return status; +} + +/******************************************************** Fake up a connection struct for the VFS layer. Note: this performs a vfs connect and CHANGES CWD !!!! JRA. -- Samba Shared Repository