From: Jeremy Allison Date: Tue, 17 Aug 2004 18:59:13 +0000 (+0000) Subject: r1866: Fix for bug #1602 reported by . X-Git-Tag: samba-misc-tags/initial-v3-0-unstable~5914 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c137accb25c928551ce666e8c7cfbbcaa60ad771;p=thirdparty%2Fsamba.git r1866: Fix for bug #1602 reported by . Access to a share with wide links = No follow symlinks = No Was failing with access denied. Jeremy. --- diff --git a/source/smbd/vfs.c b/source/smbd/vfs.c index 13cfdac0f35..a47f040f6a8 100644 --- a/source/smbd/vfs.c +++ b/source/smbd/vfs.c @@ -814,7 +814,7 @@ BOOL canonicalize_path(connection_struct *conn, pstring path) it is below dir in the heirachy. This uses realpath. ********************************************************************/ -BOOL reduce_name(connection_struct *conn, pstring fname) +BOOL reduce_name(connection_struct *conn, const pstring fname) { #ifdef REALPATH_TAKES_NULL BOOL free_resolved_name = True; @@ -924,7 +924,11 @@ BOOL reduce_name(connection_struct *conn, pstring fname) } if (!*p) { - pstrcpy(resolved_name, "."); + if (fname[0] == '.' && fname[1] == '/' && fname[2] == '\0') { + pstrcpy(resolved_name, "./"); + } else { + pstrcpy(resolved_name, "."); + } p = resolved_name; }