From 3c3838d83ae8690961f117f4e0363310a58cba99 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 6 Nov 2009 14:08:09 -0800 Subject: [PATCH] Fix bug 6875 - trans2 FIND_FIRST2 response --> FIND_FIRST2 Data -> Fille Attributes are returned as 0x220 for LANMAN2.1 dialect Jeremy. --- source3/smbd/dosmode.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/source3/smbd/dosmode.c b/source3/smbd/dosmode.c index 5ae7151..45ea74d 100644 --- a/source3/smbd/dosmode.c +++ b/source3/smbd/dosmode.c @@ -20,6 +20,8 @@ #include "includes.h" +extern enum protocol_types Protocol; + static int set_sparse_flag(const SMB_STRUCT_STAT * const sbuf) { #if defined (HAVE_STAT_ST_BLOCKS) && defined(STAT_ST_BLOCKSIZE) @@ -341,6 +343,12 @@ uint32 dos_mode_msdfs(connection_struct *conn, const char *path,SMB_STRUCT_STAT result |= aHIDDEN; } + if (Protocol <= PROTOCOL_LANMAN2) { + DEBUG(10,("dos_mode_msdfs : filtering result 0x%x\n", + (unsigned int)result )); + result &= 0xff; + } + DEBUG(8,("dos_mode_msdfs returning ")); if (result & aHIDDEN) DEBUG(8, ("h")); @@ -518,6 +526,12 @@ uint32 dos_mode(connection_struct *conn, const char *path,SMB_STRUCT_STAT *sbuf) result |= aHIDDEN; } + if (Protocol <= PROTOCOL_LANMAN2) { + DEBUG(10,("dos_mode : filtering result 0x%x\n", + (unsigned int)result )); + result &= 0xff; + } + DEBUG(8,("dos_mode returning ")); if (result & aHIDDEN) DEBUG(8, ("h")); -- 1.5.4.3