The following Win32 API calls are supported on Network Appliance filers running
CIFS. This list is Network Appliance confidential. Third parties may not share
it with other 3rd parties.
The authoritative source of information for every routine mentioned herein
is the MSDN article(s) pertaining to that routine. Failure of the filer to
obey the semantics given in Microsoft's documentation is nearly always a bug,
and should be reported as such.
Note: Win32 and Windows are trademarks of Microsoft Corporation.
| Win32
routines |
Native Win32 calls |
| |
CreateFile |
Open (or create) a file |
| |
CreateFileForMapping |
Open a file for memory mapping. This call looks to the server like
CreateFile(); the client does the memory mapping. There are numerous
other routines related to memory mapping not listed here. |
| |
CloseHandle |
Close a stream |
| |
CopyFile |
Copy a file |
| |
CopyFileEx |
Extended copy |
| |
CreateDirectory |
Create a directory |
| |
CreateDirectoryEx |
Extended directory create |
| |
DeleteFile |
Delete a file |
| |
FlushFileBuffers |
Flush a file's memory buffers to disk |
| |
GetDiskFreeSpace |
Get info about a logical drive, which might possibly be a network
drive mounted on a remote server |
| |
GetDiskFreeSpaceEx |
|
| |
GetFileAttributes |
Get file attributes |
| |
GetFileAttributesEx |
|
| |
GetFileInformationByHandle |
Get info about a file from its HANDLE |
| |
GetFileSecurity |
Get NT file permissions (ACEs on an ACL, i.e. Access Control Entries
on an Access Control List) |
| |
GetFileSize |
Size of file |
| |
GetFileSizeEx |
|
| |
LockFile |
Lock a range or all of a file |
| |
LockFileEx |
|
| |
MoveFile |
Move a file from one place to another, swapping pointers if possible
and copying if necessary |
| |
MoveFileEx |
|
| |
MoveFileWithProgress |
The client actually does the progress indication based on the write
size and what GetFileSize() says the amount to be written is |
| |
ReadDirectoryChangesW |
Set change-notify status on a directory |
| |
ReadFile |
Read part or all of a file |
| |
ReadFileEx |
|
| |
ReadFileScatter |
|
| |
RemoveDirectory |
Remove an empty directory |
| |
ReplaceFile |
Replace one file with another, possibly backing up the replaced file
first |
| |
SetEndOfFile |
Truncate or (possibly sparsely) extend a file |
| |
SetFileAttributes |
File setattr |
| |
SetFileSecurity |
Set NT file permissions (ACEs on an ACL, i.e. Access Control Entries
on an Access Control List) |
| |
SetFileShortName |
Set the DOS 8.3 name of a file |
| |
UnlockFile |
Unlock a byte range or whole file lock |
| |
UnlockFileEx |
|
| |
WriteFile |
Write to a file |
| |
WriteFileEx |
|
| |
WriteFileGather |
|
| FILE*
routines |
ANSI calls FILE*s
"streams". These are not the same thing as NTFS streams,
though an NTFS stream may be opened as an ANSI stream by using <filename>:<streamname>
notation. |
| |
fopen |
_tfopen |
_wfopen |
Open (or create) a file |
| |
freopen |
_tfreopen |
_wfreopen |
Reassign a file pointer |
| |
fclose |
_tfclose |
_wfclose |
Close a stream |
| |
_fcloseall |
|
|
Close all open streams |
| |
|
_tfdopen |
_wfdopen |
Associate a stream with a file that was previously opened for low-level
I/O |
| |
fsetpos |
|
|
Set the stream-position indicator |
| |
fread |
|
|
Read data from a stream (an ANSI stream, a FILE*, not an NTFS stream) |
| |
fwrite |
|
|
Write data to a stream |
| |
fgetc |
_fgettc |
fgetwc |
Get a character from a stream |
| |
fputc |
_fputtc |
fputwc |
Put a character to a stream |
| |
fgets |
_fgetts |
fgetws |
Get a string from a stream |
| |
rewind |
|
|
Reset the file pointer to the beginning of the file |
| |
fprintf |
_ftprintf |
fwprintf |
Formatted print to file |
| |
vfprintf |
_vftprintf |
vfwprintf |
Formatted print to file using varargs list |
| |
fflush |
|
|
Flush stream buffers to file |
| |
_flushall |
|
|
Flush all open streams |
| |
fseek |
|
|
Set file pointer to a specified position |
| |
_fdopen |
_tfdopen |
_wfdopen |
Associate a stream with a file previously opened for low-level I/O |
| |
_popen |
_tpopen |
_wpopen |
Open a pipe |
| |
_sopen |
_tsopen |
_wsopen |
Open a file for sharing |
| |
_fsopen |
_tfsopen |
_wfsopen |
Open a stream for sharing |
Local users (a maximum of 99 local users are permitted).
The filer supports the Service Manager just enough to tell Windows systems
that no services are running.