The branch, master has been updated via 46ea8b5 dfs_server: Use multi-byte string handling via aeb4ba1 Fix MSDFS with POSIX paths in vfs_dfs_samba4 from a12c2d0 script/librelease.sh: use download-master.samba.org:~ftp/pub/ for uploading
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 46ea8b59282aae8537f42da099333ed076972c7d Author: Robin McCorkell <rmccork...@karoshi.org.uk> Date: Thu Jul 9 21:20:13 2015 +0100 dfs_server: Use multi-byte string handling Pre-empt a bug with multi-byte DFS pathname handling by using strchr_m() Signed-off-by: Robin McCorkell <rmccork...@karoshi.org.uk> Reviewed-by: Jeremy Allison <j...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> Autobuild-User(master): Volker Lendecke <v...@samba.org> Autobuild-Date(master): Fri Jul 10 20:35:47 CEST 2015 on sn-devel-104 commit aeb4ba18012d71de350e99d9636a305f4817689c Author: Robin McCorkell <rmccork...@karoshi.org.uk> Date: Thu Jul 9 21:20:12 2015 +0100 Fix MSDFS with POSIX paths in vfs_dfs_samba4 Allow for POSIX path separators when parsing a DFS query string Signed-off-by: Robin McCorkell <rmccork...@karoshi.org.uk> Reviewed-by: Jeremy Allison <j...@samba.org> Reviewed-by: Volker Lendecke <v...@samba.org> ----------------------------------------------------------------------- Summary of changes: dfs_server/dfs_server_ad.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) Changeset truncated at 500 lines: diff --git a/dfs_server/dfs_server_ad.c b/dfs_server/dfs_server_ad.c index 2a1d9ec..3a25dff 100644 --- a/dfs_server/dfs_server_ad.c +++ b/dfs_server/dfs_server_ad.c @@ -799,6 +799,7 @@ NTSTATUS dfs_server_ad_get_referrals(struct loadparm_context *lp_ctx, const char *netbios_name; const char *dns_name; const char **netbios_aliases; + char path_separator; if (!lpcfg_host_msdfs(lp_ctx)) { return NT_STATUS_FS_DRIVER_REQUIRED; @@ -826,16 +827,18 @@ NTSTATUS dfs_server_ad_get_referrals(struct loadparm_context *lp_ctx, return NT_STATUS_NO_MEMORY; } - while(*server_name && *server_name == '\\') { + path_separator = (*server_name == '/') ? '/' : '\\'; + + while(*server_name && *server_name == path_separator) { server_name++; } - dfs_name = strchr(server_name, '\\'); + dfs_name = strchr_m(server_name, path_separator); if (dfs_name != NULL) { dfs_name[0] = '\0'; dfs_name++; - link_path = strchr(dfs_name, '\\'); + link_path = strchr_m(dfs_name, path_separator); if (link_path != NULL) { link_path[0] = '\0'; link_path++; -- Samba Shared Repository