From 3db0d893f3d3b16cf0402c049e0534a23d9ccd75 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Sun, 1 Jun 2003 13:43:21 +0000 Subject: added the COMPRESSION_INFO trans2 QFILEINFO level and fixed the IS_NAME_VALID QPATHINFO level (This used to be commit 1634346e2a6e73af80d4e68d50c6398fb24869a5) --- source3/include/trans2.h | 1 + source3/smbd/trans2.c | 12 +++++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'source3') diff --git a/source3/include/trans2.h b/source3/include/trans2.h index 2ccf83478b..eb5b1bc79f 100644 --- a/source3/include/trans2.h +++ b/source3/include/trans2.h @@ -224,6 +224,7 @@ Byte offset Type name description #define SMB_QUERY_FILE_ALL_INFO 0x107 #define SMB_QUERY_FILE_ALT_NAME_INFO 0x108 #define SMB_QUERY_FILE_STREAM_INFO 0x109 +#define SMB_QUERY_COMPRESSION_INFO 0x10b #define SMB_FIND_FILE_DIRECTORY_INFO 0x101 #define SMB_FIND_FILE_FULL_DIRECTORY_INFO 0x102 diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c index a911bb5dde..8364c4b509 100644 --- a/source3/smbd/trans2.c +++ b/source3/smbd/trans2.c @@ -1932,6 +1932,14 @@ static int call_trans2qfilepathinfo(connection_struct *conn, SIVAL(pdata,l1_attrFile+2,4); /* this is what OS2 does */ break; + case SMB_INFO_IS_NAME_VALID: + if (tran_call == TRANSACT2_QFILEINFO) { + /* os/2 needs this ? really ?*/ + return ERROR_DOS(ERRDOS,ERRbadfunc); + } + data_size = 0; + break; + case SMB_INFO_QUERY_EAS_FROM_LIST: data_size = 24; put_dos_date2(pdata,0,c_time); @@ -1947,9 +1955,6 @@ static int call_trans2qfilepathinfo(connection_struct *conn, SIVAL(pdata,0,data_size); break; - case 6: - return ERROR_DOS(ERRDOS,ERRbadfunc); /* os/2 needs this */ - case SMB_FILE_BASIC_INFORMATION: case SMB_QUERY_FILE_BASIC_INFO: @@ -2121,6 +2126,7 @@ static int call_trans2qfilepathinfo(connection_struct *conn, } break; + case SMB_QUERY_COMPRESSION_INFO: case SMB_FILE_COMPRESSION_INFORMATION: SOFF_T(pdata,0,file_size); SIVAL(pdata,8,0); /* ??? */ -- cgit