1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-24 21:34:56 +03:00

updated some info levels based on WSPP docs

(This used to be commit f84620324a)
This commit is contained in:
Andrew Tridgell 2008-06-02 11:02:57 +10:00
parent 9835b4fde1
commit 3850d47fef
3 changed files with 52 additions and 21 deletions

View File

@ -906,15 +906,24 @@ enum smb_setfileinfo_level {
RAW_SFILEINFO_RENAME_INFORMATION = SMB_SFILEINFO_RENAME_INFORMATION,
RAW_SFILEINFO_DISPOSITION_INFORMATION = SMB_SFILEINFO_DISPOSITION_INFORMATION,
RAW_SFILEINFO_POSITION_INFORMATION = SMB_SFILEINFO_POSITION_INFORMATION,
RAW_SFILEINFO_FULL_EA_INFORMATION = SMB_SFILEINFO_FULL_EA_INFORMATION,
RAW_SFILEINFO_MODE_INFORMATION = SMB_SFILEINFO_MODE_INFORMATION,
RAW_SFILEINFO_ALLOCATION_INFORMATION = SMB_SFILEINFO_ALLOCATION_INFORMATION,
RAW_SFILEINFO_END_OF_FILE_INFORMATION = SMB_SFILEINFO_END_OF_FILE_INFORMATION,
RAW_SFILEINFO_1023 = SMB_SFILEINFO_1023,
RAW_SFILEINFO_PIPE_INFORMATION = SMB_SFILEINFO_PIPE_INFORMATION,
RAW_SFILEINFO_VALID_DATA_INFORMATION = SMB_SFILEINFO_VALID_DATA_INFORMATION,
RAW_SFILEINFO_SHORT_NAME_INFORMATION = SMB_SFILEINFO_SHORT_NAME_INFORMATION,
RAW_SFILEINFO_1025 = SMB_SFILEINFO_1025,
RAW_SFILEINFO_1027 = SMB_SFILEINFO_1027,
RAW_SFILEINFO_1029 = SMB_SFILEINFO_1029,
RAW_SFILEINFO_1030 = SMB_SFILEINFO_1030,
RAW_SFILEINFO_1031 = SMB_SFILEINFO_1031,
RAW_SFILEINFO_1032 = SMB_SFILEINFO_1032,
RAW_SFILEINFO_1039 = SMB_SFILEINFO_1039,
RAW_SFILEINFO_1040 = SMB_SFILEINFO_1040,
RAW_SFILEINFO_1036 = SMB_SFILEINFO_1036,
RAW_SFILEINFO_1041 = SMB_SFILEINFO_1041,
RAW_SFILEINFO_1042 = SMB_SFILEINFO_1042,
RAW_SFILEINFO_1043 = SMB_SFILEINFO_1043,
RAW_SFILEINFO_1044 = SMB_SFILEINFO_1044,
/* cope with breakage in SMB2 */
RAW_SFILEINFO_RENAME_INFORMATION_SMB2 = SMB_SFILEINFO_RENAME_INFORMATION|0x80000000,
@ -1901,7 +1910,7 @@ union smb_lock {
uint16_t ulock_cnt;
uint16_t lock_cnt;
struct smb_lock_entry {
uint16_t pid;
uint32_t pid; /* 16 bits in SMB1 */
uint64_t offset;
uint64_t count;
} *locks; /* unlocks are first in the arrray */

View File

@ -110,12 +110,20 @@ bool smb_raw_setfileinfo_passthru(TALLOC_CTX *mem_ctx,
}
/* Unhandled levels */
case RAW_SFILEINFO_1023:
case RAW_SFILEINFO_PIPE_INFORMATION:
case RAW_SFILEINFO_VALID_DATA_INFORMATION:
case RAW_SFILEINFO_SHORT_NAME_INFORMATION:
case RAW_SFILEINFO_1025:
case RAW_SFILEINFO_1027:
case RAW_SFILEINFO_1029:
case RAW_SFILEINFO_1030:
case RAW_SFILEINFO_1031:
case RAW_SFILEINFO_1032:
case RAW_SFILEINFO_1039:
case RAW_SFILEINFO_1040:
case RAW_SFILEINFO_1036:
case RAW_SFILEINFO_1041:
case RAW_SFILEINFO_1042:
case RAW_SFILEINFO_1043:
case RAW_SFILEINFO_1044:
break;
default:
@ -227,12 +235,21 @@ static bool smb_raw_setinfo_backend(struct smbcli_tree *tree,
parms, blob);
/* Unhandled passthru levels */
case RAW_SFILEINFO_1023:
case RAW_SFILEINFO_PIPE_INFORMATION:
case RAW_SFILEINFO_VALID_DATA_INFORMATION:
case RAW_SFILEINFO_SHORT_NAME_INFORMATION:
case RAW_SFILEINFO_FULL_EA_INFORMATION:
case RAW_SFILEINFO_1025:
case RAW_SFILEINFO_1027:
case RAW_SFILEINFO_1029:
case RAW_SFILEINFO_1030:
case RAW_SFILEINFO_1031:
case RAW_SFILEINFO_1032:
case RAW_SFILEINFO_1039:
case RAW_SFILEINFO_1040:
case RAW_SFILEINFO_1036:
case RAW_SFILEINFO_1041:
case RAW_SFILEINFO_1042:
case RAW_SFILEINFO_1043:
case RAW_SFILEINFO_1044:
return smb_raw_setfileinfo_passthru(mem_ctx, parms->generic.level,
parms, blob);

View File

@ -217,32 +217,37 @@ Found 13 valid levels
#define SMB_SFILEINFO_UNIX_INFO2 0x20b
#define SMB_SFILEINFO_BASIC_INFORMATION 1004
#define SMB_SFILEINFO_RENAME_INFORMATION 1010
#define SMB_SFILEINFO_LINK_INFORMATION 1011
#define SMB_SFILEINFO_DISPOSITION_INFORMATION 1013
#define SMB_SFILEINFO_POSITION_INFORMATION 1014
#define SMB_SFILEINFO_FULL_EA_INFORMATION 1015
#define SMB_SFILEINFO_MODE_INFORMATION 1016
#define SMB_SFILEINFO_ALLOCATION_INFORMATION 1019
#define SMB_SFILEINFO_END_OF_FILE_INFORMATION 1020
/* filemon shows FilePipeInformation */
#define SMB_SFILEINFO_1023 1023
#define SMB_SFILEINFO_PIPE_INFORMATION 1023
#define SMB_SFILEINFO_VALID_DATA_INFORMATION 1039
#define SMB_SFILEINFO_SHORT_NAME_INFORMATION 1040
/* filemon shows FilePipeRemoteInformation */
#define SMB_SFILEINFO_1025 1025
/* vista scan responds */
#define SMB_SFILEINFO_1027 1027
/* filemon shows CopyOnWriteInformation */
#define SMB_SFILEINFO_1029 1029
/* filemon shows OleClassIdInformation */
#define SMB_SFILEINFO_1032 1032
/* seems to be the file size - perhaps valid data size?
filemon shows 'InheritContentIndexInfo'
*/
#define SMB_SFILEINFO_1039 1039
/* OLE_INFORMATION? */
#define SMB_SFILEINFO_1040 1040
/* vista scan responds to these */
#define SMB_SFILEINFO_1030 1030
#define SMB_SFILEINFO_1031 1031
#define SMB_SFILEINFO_1036 1036
#define SMB_SFILEINFO_1041 1041
#define SMB_SFILEINFO_1042 1042
#define SMB_SFILEINFO_1043 1043
#define SMB_SFILEINFO_1044 1044
/* trans2 findfirst levels */
/*