"Fossies" - the Fresh Open Source Software Archive

Member "rdesktop-1.9.0/disk.h" (10 Apr 2019, 4607 Bytes) of package /linux/privat/rdesktop-1.9.0.tar.gz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "disk.h" see the Fossies "Dox" file reference documentation.

    1 /*
    2    rdesktop: A Remote Desktop Protocol client.
    3    Disk Redirection definitions
    4    Copyright (C) Jeroen Meijer 2003-2008
    5    Copyright (C) Peter Astrand 2004-2008
    6 
    7    This program is free software: you can redistribute it and/or modify
    8    it under the terms of the GNU General Public License as published by
    9    the Free Software Foundation, either version 3 of the License, or
   10    (at your option) any later version.
   11 
   12    This program is distributed in the hope that it will be useful,
   13    but WITHOUT ANY WARRANTY; without even the implied warranty of
   14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   15    GNU General Public License for more details.
   16 
   17    You should have received a copy of the GNU General Public License
   18    along with this program.  If not, see <http://www.gnu.org/licenses/>.
   19 */
   20 
   21 #define FILE_ATTRIBUTE_READONLY         0x00000001
   22 #define FILE_ATTRIBUTE_HIDDEN           0x00000002
   23 #define FILE_ATTRIBUTE_SYSTEM           0x00000004
   24 #define FILE_ATTRIBUTE_DIRECTORY        0x00000010
   25 #define FILE_ATTRIBUTE_ARCHIVE          0x00000020
   26 #define FILE_ATTRIBUTE_DEVICE           0x00000040
   27 #define FILE_ATTRIBUTE_UNKNOWNXXX0      0x00000060  /* ??? ACTION i.e. 0x860 == compress this file ? */
   28 #define FILE_ATTRIBUTE_NORMAL           0x00000080
   29 #define FILE_ATTRIBUTE_TEMPORARY        0x00000100
   30 #define FILE_ATTRIBUTE_SPARSE_FILE      0x00000200
   31 #define FILE_ATTRIBUTE_REPARSE_POINT        0x00000400
   32 #define FILE_ATTRIBUTE_COMPRESSED       0x00000800
   33 #define FILE_ATTRIBUTE_OFFLINE          0x00001000
   34 #define FILE_ATTRIBUTE_NOT_CONTENT_INDEXED  0x00002000
   35 #define FILE_ATTRIBUTE_ENCRYPTED        0x00004000
   36 
   37 #define FILE_FLAG_OPEN_NO_RECALL        0x00100000
   38 #define FILE_FLAG_OPEN_REPARSE_POINT        0x00200000
   39 #define FILE_FLAG_POSIX_SEMANTICS       0x01000000
   40 #define FILE_FLAG_BACKUP_SEMANTICS      0x02000000  /* sometimes used to create a directory */
   41 #define FILE_FLAG_DELETE_ON_CLOSE       0x04000000
   42 #define FILE_FLAG_SEQUENTIAL_SCAN       0x08000000
   43 #define FILE_FLAG_RANDOM_ACCESS         0x10000000
   44 #define FILE_FLAG_NO_BUFFERING          0x20000000
   45 #define FILE_FLAG_OVERLAPPED            0x40000000
   46 #define FILE_FLAG_WRITE_THROUGH         0x80000000
   47 
   48 #define FILE_SHARE_READ             0x01
   49 #define FILE_SHARE_WRITE            0x02
   50 #define FILE_SHARE_DELETE           0x04
   51 
   52 #define FILE_BASIC_INFORMATION          0x04
   53 #define FILE_STANDARD_INFORMATION       0x05
   54 
   55 #define FS_CASE_SENSITIVE           0x00000001
   56 #define FS_CASE_IS_PRESERVED            0x00000002
   57 #define FS_UNICODE_STORED_ON_DISK       0x00000004
   58 #define FS_PERSISTENT_ACLS          0x00000008
   59 #define FS_FILE_COMPRESSION         0x00000010
   60 #define FS_VOLUME_QUOTAS            0x00000020
   61 #define FS_SUPPORTS_SPARSE_FILES        0x00000040
   62 #define FS_SUPPORTS_REPARSE_POINTS      0x00000080
   63 #define FS_SUPPORTS_REMOTE_STORAGE      0X00000100
   64 #define FS_VOL_IS_COMPRESSED            0x00008000
   65 #define FILE_READ_ONLY_VOLUME           0x00080000
   66 
   67 #define OPEN_EXISTING               1
   68 #define CREATE_NEW              2
   69 #define OPEN_ALWAYS             3
   70 #define TRUNCATE_EXISTING           4
   71 #define CREATE_ALWAYS               5
   72 
   73 #define GENERIC_READ                0x80000000
   74 #define GENERIC_WRITE               0x40000000
   75 #define GENERIC_EXECUTE             0x20000000
   76 #define GENERIC_ALL             0x10000000
   77 
   78 #define ERROR_FILE_NOT_FOUND            2L
   79 #define ERROR_ALREADY_EXISTS            183L
   80 
   81 #define MAX_OPEN_FILES  0x100
   82 
   83 typedef enum _FILE_INFORMATION_CLASS
   84 {
   85     FileDirectoryInformation = 1,
   86     FileFullDirectoryInformation,
   87     FileBothDirectoryInformation,
   88     FileBasicInformation,
   89     FileStandardInformation,
   90     FileInternalInformation,
   91     FileEaInformation,
   92     FileAccessInformation,
   93     FileNameInformation,
   94     FileRenameInformation,
   95     FileLinkInformation,
   96     FileNamesInformation,
   97     FileDispositionInformation,
   98     FilePositionInformation,
   99     FileFullEaInformation,
  100     FileModeInformation,
  101     FileAlignmentInformation,
  102     FileAllInformation,
  103     FileAllocationInformation,
  104     FileEndOfFileInformation,
  105     FileAlternateNameInformation,
  106     FileStreamInformation,
  107     FilePipeInformation,
  108     FilePipeLocalInformation,
  109     FilePipeRemoteInformation,
  110     FileMailslotQueryInformation,
  111     FileMailslotSetInformation,
  112     FileCompressionInformation,
  113     FileCopyOnWriteInformation,
  114     FileCompletionInformation,
  115     FileMoveClusterInformation,
  116     FileOleClassIdInformation,
  117     FileOleStateBitsInformation,
  118     FileNetworkOpenInformation,
  119     FileObjectIdInformation,
  120     FileOleAllInformation,
  121     FileOleDirectoryInformation,
  122     FileContentIndexInformation,
  123     FileInheritContentIndexInformation,
  124     FileOleInformation,
  125     FileMaximumInformation
  126 } FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
  127 
  128 typedef enum _FSINFOCLASS
  129 {
  130     FileFsVolumeInformation = 1,
  131     FileFsLabelInformation,
  132     FileFsSizeInformation,
  133     FileFsDeviceInformation,
  134     FileFsAttributeInformation,
  135     FileFsControlInformation,
  136     FileFsFullSizeInformation,
  137     FileFsObjectIdInformation,
  138     FileFsDriverPathInformation,
  139     FileFsMaximumInformation
  140 } FS_INFORMATION_CLASS, *PFS_INFORMATION_CLASS;