From 09de4e436409431a3182896a83576752b8012724 Mon Sep 17 00:00:00 2001 From: Jeremy Allison Date: Fri, 6 Nov 2009 14:10:49 -0800 Subject: [PATCH] Fix bug 6875 - trans2 FIND_FIRST2 response --> FIND_FIRST2 Data -> Fille Attributes are returned as 0x220 for LANMAN2.1 dialect Jeremy. --- source/smbd/dosmode.c | 14 ++++++++++++++ 1 files changed, 14 insertions(+), 0 deletions(-) diff --git a/source/smbd/dosmode.c b/source/smbd/dosmode.c index 8a5a7b0..07e1103 100644 --- a/source/smbd/dosmode.c +++ b/source/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) @@ -335,6 +337,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")); @@ -400,6 +408,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