9 instantiations of SafeFileHandle
NuGet.Packaging (1)
NuGetExtractionFileIO.cs (1)
75var sfh = new SafeFileHandle((IntPtr)fd, ownsHandle: true);
System.Console (1)
System\ConsolePal.Unix.cs (1)
68private static SafeFileHandle OpenStandardHandle(IntPtr fd) => new SafeFileHandle(fd, ownsHandle: false);
System.IO.IsolatedStorage (1)
System\IO\IsolatedStorage\IsolatedStorageFileStream.cs (1)
68: base(new SafeFileHandle(initializationData.NestedStream.SafeFileHandle.DangerousGetHandle(), ownsHandle: false), access, bufferSize)
System.IO.MemoryMappedFiles (2)
System\IO\MemoryMappedFiles\MemoryMappedView.Unix.cs (2)
61fd = new SafeFileHandle(new IntPtr(-1), false); 103new SafeFileHandle(new IntPtr(-1), false), // ignore the actual fd even if there was one
System.Private.CoreLib (4)
src\runtime\src\libraries\System.Private.CoreLib\src\Microsoft\Win32\SafeHandles\SafeFileHandle.Unix.cs (2)
186SafeFileHandle tempReadHandle = new(); 187SafeFileHandle tempWriteHandle = new();
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\FileStream.cs (1)
46SafeFileHandle safeHandle = new SafeFileHandle(handle, ownsHandle: ownsHandle);
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\SharedMemoryManager.Unix.cs (1)
163creationDeletionLockFileHandle = new AutoReleaseFileLock(new SafeFileHandle());
491 references to SafeFileHandle
aspire (3)
Processes\DetachedProcessLauncher.Windows.cs (3)
23using var nulHandle = CreateFileW( 269private static partial SafeFileHandle CreateFileW( 281SafeFileHandle hObject,
csc (3)
src\roslyn\src\Compilers\Shared\NativeMethods.cs (3)
120using var handle = CreateFileW( 170private static extern SafeFileHandle CreateFileW( 182SafeFileHandle hFile,
dotnet (3)
src\sdk\artifacts\.packages\microsoft.codeanalysis.buildclient\5.10.0-1.26377.101\contentFiles\cs\net11.0\NativeMethods.cs (3)
120using var handle = CreateFileW( 170private static extern SafeFileHandle CreateFileW( 182SafeFileHandle hFile,
dotnet-dev-certs (5)
src\aspnetcore\src\Shared\CertificateGeneration\MacOSCertificateManager.cs (1)
159using SafeFileHandle nullHandle = File.OpenNullHandle();
src\aspnetcore\src\Shared\CertificateGeneration\UnixCertificateManager.cs (4)
689using SafeFileHandle nullHandle = File.OpenNullHandle(); 709using SafeFileHandle nullHandle = File.OpenNullHandle(); 737using SafeFileHandle nullHandle = File.OpenNullHandle(); 760using SafeFileHandle nullHandle = File.OpenNullHandle();
Microsoft.AspNetCore.DeveloperCertificates.XPlat (5)
src\aspnetcore\src\Shared\CertificateGeneration\MacOSCertificateManager.cs (1)
159using SafeFileHandle nullHandle = File.OpenNullHandle();
src\aspnetcore\src\Shared\CertificateGeneration\UnixCertificateManager.cs (4)
689using SafeFileHandle nullHandle = File.OpenNullHandle(); 709using SafeFileHandle nullHandle = File.OpenNullHandle(); 737using SafeFileHandle nullHandle = File.OpenNullHandle(); 760using SafeFileHandle nullHandle = File.OpenNullHandle();
Microsoft.AspNetCore.InternalTesting (1)
DumpCollector\DumpCollector.Windows.cs (1)
35public static extern bool MiniDumpWriteDump(IntPtr hProcess, uint ProcessId, SafeFileHandle hFile, MINIDUMP_TYPE DumpType, ref MINIDUMP_EXCEPTION_INFORMATION ExceptionParam, IntPtr UserStreamParam, IntPtr CallbackParam);
Microsoft.AspNetCore.Server.Kestrel.Core (5)
src\aspnetcore\src\Shared\CertificateGeneration\MacOSCertificateManager.cs (1)
159using SafeFileHandle nullHandle = File.OpenNullHandle();
src\aspnetcore\src\Shared\CertificateGeneration\UnixCertificateManager.cs (4)
689using SafeFileHandle nullHandle = File.OpenNullHandle(); 709using SafeFileHandle nullHandle = File.OpenNullHandle(); 737using SafeFileHandle nullHandle = File.OpenNullHandle(); 760using SafeFileHandle nullHandle = File.OpenNullHandle();
Microsoft.Build.Tasks.CodeAnalysis (3)
src\roslyn\src\Compilers\Shared\NativeMethods.cs (3)
120using var handle = CreateFileW( 170private static extern SafeFileHandle CreateFileW( 182SafeFileHandle hFile,
Microsoft.NET.Build.Containers (3)
LocalDaemons\ContainerRuntimeOperations.cs (3)
55SafeFileHandle.CreateAnonymousPipe(out SafeFileHandle inputReadHandle, out SafeFileHandle inputWriteHandle, asyncWrite: true);
Microsoft.TestPlatform.Extensions.BlameDataCollector (1)
MiniDumpWriteDump.cs (1)
73public static extern bool MiniDumpWriteDump(IntPtr hProcess, uint processId, SafeFileHandle hFile, MinidumpType dumpType, ref MinidumpExceptionInformation exceptionParam, IntPtr userStreamParam, IntPtr callbackParam);
mscorlib (1)
src\runtime\src\libraries\shims\mscorlib\ref\mscorlib.cs (1)
23[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Win32.SafeHandles.SafeFileHandle))]
netstandard (1)
netstandard.cs (1)
7[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Win32.SafeHandles.SafeFileHandle))]
NuGet.Packaging (1)
NuGetExtractionFileIO.cs (1)
75var sfh = new SafeFileHandle((IntPtr)fd, ownsHandle: true);
PresentationCore (15)
MS\Internal\FontCache\FontCacheUtil.cs (1)
816using (SafeFileHandle fileHandle = UnsafeNativeMethods.CreateFile(
System\Windows\Media\Imaging\BitmapDecoder.cs (4)
163SafeFileHandle safeFilehandle 235SafeFileHandle safeFilehandle = null; 995out SafeFileHandle safeFilehandle 1663private SafeFileHandle _safeFilehandle;
System\Windows\Media\Imaging\BitmapDownload.cs (1)
124SafeFileHandle fileHandle = MS.Win32.UnsafeNativeMethods.CreateFile(
System\Windows\Media\Imaging\BmpBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\GifBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\IconBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\JpegBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\PngBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\TiffBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\UnknownBitmapDecoder.cs (1)
60SafeFileHandle safeFilehandle
System\Windows\Media\Imaging\WmpBitmapDecoder.cs (1)
70SafeFileHandle safeFilehandle
System\Windows\Media\UnsafeNativeMethodsMilCoreApi.cs (1)
698Microsoft.Win32.SafeHandles.SafeFileHandle /*ULONG_PTR*/ hFileHandle,
RepoTasks (5)
src\aspnetcore\src\Shared\CertificateGeneration\MacOSCertificateManager.cs (1)
159using SafeFileHandle nullHandle = File.OpenNullHandle();
src\aspnetcore\src\Shared\CertificateGeneration\UnixCertificateManager.cs (4)
689using SafeFileHandle nullHandle = File.OpenNullHandle(); 709using SafeFileHandle nullHandle = File.OpenNullHandle(); 737using SafeFileHandle nullHandle = File.OpenNullHandle(); 760using SafeFileHandle nullHandle = File.OpenNullHandle();
System.Console (36)
_generated\0\LibraryImports.g.cs (11)
57internal static partial int FLock(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, global::Interop.Sys.LockOperations operation) 65global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 172internal static partial bool IsATty(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd) 180global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 213internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle Open(string filename, global::Interop.Sys.OpenFlags flags, int mode) 220global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 223global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new(); 783internal static partial int GetWindowSize(global::Microsoft.Win32.SafeHandles.SafeFileHandle terminalHandle, out global::Interop.Sys.WinSize winSize) 792global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __terminalHandle_native__marshaller = new(); 856internal static partial void SetKeypadXmit(global::Microsoft.Win32.SafeHandles.SafeFileHandle terminalHandle, string terminfoString) 864global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __terminalHandle_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FLock.cs (1)
21internal static partial int FLock(SafeFileHandle fd, LockOperations operation);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.GetWindowWidth.cs (1)
22internal static partial int GetWindowSize(SafeFileHandle terminalHandle, out WinSize winSize);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.InitializeTerminalAndSignalHandling.cs (1)
16internal static partial void SetKeypadXmit(SafeFileHandle terminalHandle, string terminfoString);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.IsATty.cs (1)
18internal static partial bool IsATty(SafeFileHandle fd);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.Open.cs (1)
12internal static partial SafeFileHandle Open(string filename, OpenFlags flags, int mode);
System\Console.cs (6)
659/// <returns>A <see cref="SafeFileHandle"/> representing the standard input handle.</returns> 667public static SafeFileHandle OpenStandardInputHandle() 675/// <returns>A <see cref="SafeFileHandle"/> representing the standard output handle.</returns> 682public static SafeFileHandle OpenStandardOutputHandle() 690/// <returns>A <see cref="SafeFileHandle"/> representing the standard error handle.</returns> 697public static SafeFileHandle OpenStandardErrorHandle()
System\ConsolePal.Unix.ConsoleStream.cs (2)
16private readonly SafeFileHandle _handle; 24internal UnixConsoleStream(SafeFileHandle handle, FileAccess access, bool useReadLine = false)
System\ConsolePal.Unix.cs (10)
40private static SafeFileHandle? s_terminalHandle; // Tracks the handle used for writing to the terminal. 62public static SafeFileHandle OpenStandardInputHandle() => OpenStandardHandle(0); 64public static SafeFileHandle OpenStandardOutputHandle() => OpenStandardHandle(1); 66public static SafeFileHandle OpenStandardErrorHandle() => OpenStandardHandle(2); 68private static SafeFileHandle OpenStandardHandle(IntPtr fd) => new SafeFileHandle(fd, ownsHandle: false); 946private static unsafe int Read(SafeFileHandle fd, Span<byte> buffer) 956internal static void WriteToTerminal(ReadOnlySpan<byte> buffer, SafeFileHandle? handle = null, bool mayChangeCursorPosition = true) 967internal static unsafe void WriteFromConsoleStream(SafeFileHandle fd, ReadOnlySpan<byte> buffer) 981private static unsafe void Write(SafeFileHandle fd, ReadOnlySpan<byte> buffer, bool mayChangeCursorPosition = true) 1125internal static unsafe void WriteTerminalAnsiString(string? value, SafeFileHandle? handle = null, bool mayChangeCursorPosition = true)
System\TermInfo.DatabaseFactory.cs (2)
85private static bool TryOpen(string filePath, [NotNullWhen(true)] out SafeFileHandle? fd) 111SafeFileHandle? fd;
System.Diagnostics.PerformanceCounter (3)
_generated\0\LibraryImports.g.cs (2)
247internal static partial global::Microsoft.Win32.SafeHandles.SafeMemoryMappedFileHandle CreateFileMapping(global::Microsoft.Win32.SafeHandles.SafeFileHandle hFile, ref global::Interop.Kernel32.SECURITY_ATTRIBUTES lpFileMappingAttributes, int flProtect, int dwMaximumSizeHigh, int dwMaximumSizeLow, string lpName) 258global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __hFile_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Windows\Kernel32\Interop.CreateFileMapping.cs (1)
15SafeFileHandle hFile,
System.Diagnostics.Process (90)
_generated\0\LibraryImports.g.cs (4)
682internal static partial void SetKeypadXmit(global::Microsoft.Win32.SafeHandles.SafeFileHandle terminalHandle, string terminfoString) 690global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __terminalHandle_native__marshaller = new(); 1130internal static partial bool IsATty(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd) 1138global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new();
Microsoft\Win32\SafeHandles\SafeProcessHandle.cs (4)
187SafeFileHandle? childInputHandle = startInfo.StandardInputHandle; 188SafeFileHandle? childOutputHandle = startInfo.StandardOutputHandle; 189SafeFileHandle? childErrorHandle = startInfo.StandardErrorHandle; 191using SafeFileHandle? nullDeviceHandle = fallbackToNull
Microsoft\Win32\SafeHandles\SafeProcessHandle.Unix.cs (21)
202private delegate SafeProcessHandle StartWithShellExecuteDelegate(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle, out ProcessWaitState.Holder? waitStateHolder); 205private static SafeProcessHandle StartCore(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle, SafeHandle[]? inheritedHandlesSnapshot = null) 208internal static SafeProcessHandle StartCore(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, 209SafeFileHandle? stderrHandle, SafeHandle[]? inheritedHandles, out ProcessWaitState.Holder? waitStateHolder) 246internal static unsafe SafeProcessHandle StartWithCallback(ProcessStartInfo startInfo, SafeFileHandle? stdinFd, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle, 356private static SafeProcessHandle StartWithShellExecute(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, 357SafeFileHandle? stderrHandle, out ProcessWaitState.Holder? waitStateHolder) 425private static bool UsesTerminal(SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle) 432SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle,
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.ForkAndExecProcess.cs (3)
18out int lpChildPid, SafeFileHandle? stdinFd, SafeFileHandle? stdoutFd, SafeFileHandle? stderrFd,
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.InitializeTerminalAndSignalHandling.cs (1)
16internal static partial void SetKeypadXmit(SafeFileHandle terminalHandle, string terminfoString);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.IsATty.cs (1)
18internal static partial bool IsATty(SafeFileHandle fd);
System\Diagnostics\Process.cs (28)
1261SafeFileHandle? parentInputPipeHandle = null; 1262SafeFileHandle? parentOutputPipeHandle = null; 1263SafeFileHandle? parentErrorPipeHandle = null; 1265SafeFileHandle? childInputHandle = null; 1266SafeFileHandle? childOutputHandle = null; 1267SafeFileHandle? childErrorHandle = null; 1307ref SafeFileHandle? parentInputPipeHandle, 1308ref SafeFileHandle? parentOutputPipeHandle, 1309ref SafeFileHandle? parentErrorPipeHandle, 1310ref SafeFileHandle? childInputHandle, 1311ref SafeFileHandle? childOutputHandle, 1312ref SafeFileHandle? childErrorHandle) 1334SafeFileHandle.CreateAnonymousPipe(out childInputHandle, out parentInputPipeHandle); 1343SafeFileHandle.CreateAnonymousPipe(out parentOutputPipeHandle, out childOutputHandle, asyncRead: OperatingSystem.IsWindows()); 1352SafeFileHandle.CreateAnonymousPipe(out parentErrorPipeHandle, out childErrorHandle, asyncRead: OperatingSystem.IsWindows()); 1369SafeFileHandle nullDeviceHandle = File.OpenNullHandle(); 1383private static void CloseChildHandles(ProcessStartInfo startInfo, SafeFileHandle? childInputHandle, SafeFileHandle? childOutputHandle, SafeFileHandle? childErrorHandle) 1405private void CreateStandardStreams(ProcessStartInfo startInfo, SafeFileHandle? parentInputPipeHandle, SafeFileHandle? parentOutputPipeHandle, SafeFileHandle? parentErrorPipeHandle) 1443SafeFileHandle? parentInputPipeHandle = null; 1444SafeFileHandle? parentOutputPipeHandle = null; 1445SafeFileHandle? parentErrorPipeHandle = null; 1447SafeFileHandle? childInputHandle = null; 1448SafeFileHandle? childOutputHandle = null; 1449SafeFileHandle? childErrorHandle = null;
System\Diagnostics\Process.Scenarios.cs (2)
144using SafeFileHandle? nullHandle = silent ? File.OpenNullHandle() : null; 206using SafeFileHandle? nullHandle = silent ? File.OpenNullHandle() : null;
System\Diagnostics\Process.Unix.cs (7)
428private bool StartCore(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle, SafeHandle[]? inheritedHandles) 434private bool StartCoreWithCallback(ProcessStartInfo startInfo, SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, SafeFileHandle? stderrHandle, Func<UnixProcessStartArguments, int> callback) 479private static AnonymousPipeClientStream OpenStream(SafeFileHandle handle, FileAccess access)
System\Diagnostics\ProcessStartInfo.cs (18)
172/// Gets or sets a <see cref="SafeFileHandle"/> that will be used as the standard input of the child process. 180/// Use <see cref="SafeFileHandle.CreateAnonymousPipe"/> to create a pair of connected pipe handles, 194/// <value>A <see cref="SafeFileHandle"/> to use as the standard input handle of the child process, or <see langword="null"/> to use the default behavior.</value> 195public SafeFileHandle? StandardInputHandle { get; set; } 198/// Gets or sets a <see cref="SafeFileHandle"/> that will be used as the standard output of the child process. 206/// Use <see cref="SafeFileHandle.CreateAnonymousPipe"/> to create a pair of connected pipe handles, 220/// <value>A <see cref="SafeFileHandle"/> to use as the standard output handle of the child process, or <see langword="null"/> to use the default behavior.</value> 221public SafeFileHandle? StandardOutputHandle { get; set; } 224/// Gets or sets a <see cref="SafeFileHandle"/> that will be used as the standard error of the child process. 232/// Use <see cref="SafeFileHandle.CreateAnonymousPipe"/> to create a pair of connected pipe handles, 246/// <value>A <see cref="SafeFileHandle"/> to use as the standard error handle of the child process, or <see langword="null"/> to use the default behavior.</value> 247public SafeFileHandle? StandardErrorHandle { get; set; } 258/// Only <see cref="SafeFileHandle"/> and <see cref="SafePipeHandle"/> are supported in this list. 519case SafeFileHandle: 567static void ValidateHandle(SafeFileHandle? handle, string paramName) 583internal static void ValidateInheritedHandles(SafeFileHandle? stdinHandle, SafeFileHandle? stdoutHandle, 584SafeFileHandle? stderrHandle, SafeHandle[]? inheritedHandles = null)
System\Diagnostics\ProcessUtils.ConfigureTerminalForChildProcesses.Unix.cs (1)
65internal static bool IsTerminal(SafeFileHandle? standardHandle) => standardHandle is not null && Interop.Sys.IsATty(standardHandle);
System.IO.FileSystem (1)
System.IO.FileSystem.cs (1)
4[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Win32.SafeHandles.SafeFileHandle))]
System.IO.FileSystem.AccessControl (17)
_generated\0\LibraryImports.g.cs (3)
7private static unsafe partial global::Microsoft.Win32.SafeHandles.SafeFileHandle CreateFilePrivate(string lpFileName, int dwDesiredAccess, global::System.IO.FileShare dwShareMode, global::Interop.Kernel32.SECURITY_ATTRIBUTES* lpSecurityAttributes, global::System.IO.FileMode dwCreationDisposition, int dwFlagsAndAttributes, nint hTemplateFile) 13global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 16global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Windows\Kernel32\Interop.CreateFile.cs (3)
18private static unsafe partial SafeFileHandle CreateFilePrivate( 27internal static unsafe SafeFileHandle CreateFile( 40internal static unsafe SafeFileHandle CreateFile(
System\IO\FileSystemAclExtensions.cs (8)
69SafeFileHandle handle = fileStream.SafeFileHandle; 90SafeFileHandle handle = fileStream.SafeFileHandle; 178SafeFileHandle handle = CreateFileHandle(fileInfo.FullName, mode, rights, share, options, fileSecurity); 255private static unsafe SafeFileHandle CreateFileHandle(string fullPath, FileMode mode, FileSystemRights rights, FileShare share, FileOptions options, FileSecurity? security) 270SafeFileHandle handle; 289static SafeFileHandle CreateFileHandleInternal(string fullPath, FileMode mode, FileSystemRights rights, FileShare share, int flagsAndAttributes, Interop.Kernel32.SECURITY_ATTRIBUTES* secAttrs) 291SafeFileHandle handle; 303private static void ValidateFileHandle(SafeFileHandle handle, string fullPath)
System\Security\AccessControl\FileSecurity.cs (1)
21internal FileSecurity(SafeFileHandle? handle, AccessControlSections includeSections)
System\Security\AccessControl\FileSystemSecurity.cs (2)
25internal FileSystemSecurity(bool isContainer, SafeFileHandle? handle, AccessControlSections includeSections, bool isDirectory) 133internal void Persist(SafeFileHandle handle, string _ /*fullPath*/)
System.IO.FileSystem.Primitives (1)
System.IO.FileSystem.Primitives.cs (1)
4[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Win32.SafeHandles.SafeFileHandle))]
System.IO.FileSystem.Watcher (14)
_generated\0\LibraryImports.g.cs (7)
154internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle INotifyInit() 160global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 163global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new(); 201internal static partial int INotifyAddWatch(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, string pathName, uint mask) 211global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 247private static partial int INotifyRemoveWatch_private(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, int wd) 255global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Linux\System.Native\Interop.INotify.cs (4)
14internal static partial SafeFileHandle INotifyInit(); 17internal static partial int INotifyAddWatch(SafeFileHandle fd, string pathName, uint mask); 20private static partial int INotifyRemoveWatch_private(SafeFileHandle fd, int wd); 22internal static int INotifyRemoveWatch(SafeFileHandle fd, int wd)
System\IO\FileSystemWatcher.Linux.cs (3)
133private readonly SafeFileHandle _inotifyHandle; 146static SafeFileHandle CreateINotifyHandle() 148SafeFileHandle handle = Interop.Sys.INotifyInit();
System.IO.IsolatedStorage (1)
System\IO\IsolatedStorage\IsolatedStorageFileStream.cs (1)
341public override SafeFileHandle SafeFileHandle
System.IO.MemoryMappedFiles (38)
_generated\0\LibraryImports.g.cs (13)
296internal static partial nint MMap(nint addr, ulong len, global::Interop.Sys.MemoryMappedProtections prot, global::Interop.Sys.MemoryMappedFlags flags, global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long offset) 304global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 415internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle Open(string filename, global::Interop.Sys.OpenFlags flags, int mode) 422global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 425global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new(); 497internal static partial int FTruncate(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long length) 505global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 564internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle ShmOpen(string name, global::Interop.Sys.OpenFlags flags, int mode) 571global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 574global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new(); 661internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle MemfdCreate(string name, int isReadonly) 668global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 671global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new();
Microsoft\Win32\SafeMemoryMappedFileHandle.Unix.cs (2)
14internal SafeFileHandle? _fileStreamHandle; 39SafeFileHandle? fileHandle, bool ownsFileHandle, HandleInheritability inheritability,
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FTruncate.cs (1)
12internal static partial int FTruncate(SafeFileHandle fd, long length);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.MemfdCreate.cs (1)
13internal static partial SafeFileHandle MemfdCreate(string name, int isReadonly);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.MMap.cs (1)
35SafeFileHandle fd, long offset);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.Open.cs (1)
12internal static partial SafeFileHandle Open(string filename, OpenFlags flags, int mode);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.ShmOpen.cs (1)
12internal static partial SafeFileHandle ShmOpen(string name, OpenFlags flags, int mode);
System\IO\MemoryMappedFiles\MemoryMappedFile.cs (8)
14private readonly SafeFileHandle? _fileHandle; 28private MemoryMappedFile(SafeMemoryMappedFileHandle handle, SafeFileHandle fileHandle, bool leaveOpen) 127SafeFileHandle fileHandle = File.OpenHandle(path, mode, GetFileAccess(access), FileShare.Read, FileOptions.None); 171/// Creates a memory-mapped file from an existing file using a <see cref="SafeFileHandle"/>, 174/// <param name="fileHandle">The <see cref="SafeFileHandle"/> to the existing file. Caller is 208public static MemoryMappedFile CreateFromFile(SafeFileHandle fileHandle, string? mapName, long capacity, 263SafeFileHandle fileHandle = fileStream.SafeFileHandle; // access the property only once (it might perform a sys-call) 506private static void CleanupFile(SafeFileHandle fileHandle, bool existed, string path)
System\IO\MemoryMappedFiles\MemoryMappedFile.Unix.cs (9)
13private static void VerifyMemoryMappedFileAccess(MemoryMappedFileAccess access, long capacity, SafeFileHandle? fileHandle, long fileSize, out bool isRegularFile) 44SafeFileHandle? fileHandle, string? mapName, 157private static SafeFileHandle CreateSharedBackingObject(Interop.Sys.MemoryMappedProtections protections, long capacity, HandleInheritability inheritability) 165private static SafeFileHandle? CreateSharedBackingObjectUsingMemoryShmOpen( 184SafeFileHandle fd; 267private static SafeFileHandle CreateSharedBackingObjectUsingMemoryMemfdCreate( 273SafeFileHandle fd = Interop.Sys.MemfdCreate(GenerateMapName(), isReadonly); 306private static SafeFileHandle CreateSharedBackingObjectUsingFile(Interop.Sys.MemoryMappedProtections protections, long capacity, HandleInheritability inheritability) 318SafeFileHandle fileHandle = File.OpenHandle(path, FileMode.CreateNew, TranslateProtectionsToFileAccess(protections), share);
System\IO\MemoryMappedFiles\MemoryMappedView.Unix.cs (1)
52SafeFileHandle fd;
System.IO.Pipes (7)
_generated\0\LibraryImports.g.cs (5)
395internal static partial int FLock(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, global::Interop.Sys.LockOperations operation) 403global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 488internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle Open(string filename, global::Interop.Sys.OpenFlags flags, int mode) 495global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 498global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FLock.cs (1)
21internal static partial int FLock(SafeFileHandle fd, LockOperations operation);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.Open.cs (1)
12internal static partial SafeFileHandle Open(string filename, OpenFlags flags, int mode);
System.Net.Sockets (15)
System\Net\Sockets\Socket.cs (1)
4006private static SafeFileHandle? OpenFileHandle(string? name) => string.IsNullOrEmpty(name) ? null : File.OpenHandle(name, FileMode.Open, FileAccess.Read);
System\Net\Sockets\Socket.Unix.cs (1)
224using (SafeFileHandle? fileHandle = OpenFileHandle(fileName))
System\Net\Sockets\SocketAsyncContext.Unix.cs (3)
693public SafeFileHandle FileHandle = null!; // always set when constructed 2160public SocketError SendFile(SafeFileHandle fileHandle, long offset, long count, int timeout, out long bytesSent) 2190public SocketError SendFileAsync(SafeFileHandle fileHandle, long offset, long count, out long bytesSent, Action<long, SocketError> callback, CancellationToken cancellationToken = default)
System\Net\Sockets\SocketAsyncEventArgs.Unix.cs (3)
248SafeFileHandle[] fileHandles = new SafeFileHandle[elements.Length]; 266foreach (SafeFileHandle s in fileHandles)
System\Net\Sockets\SocketPal.Unix.cs (7)
371private static long SendFile(SafeSocketHandle socket, SafeFileHandle fileHandle, ref long offset, ref long count, out Interop.Error errno) 1036public static bool TryCompleteSendFile(SafeSocketHandle socket, SafeFileHandle handle, ref long offset, ref long count, ref long bytesSent, out SocketError errorCode) 1220public static SocketError SendFile(SafeSocketHandle handle, SafeFileHandle fileHandle) 2070private static SocketError SendFileAsync(SafeSocketHandle handle, SafeFileHandle fileHandle, long offset, long count, CancellationToken cancellationToken, Action<long, SocketError> callback) 2082Socket socket, TransmitFileOptions options, SendPacketsElement[] elements, SafeFileHandle[] fileHandles, CancellationToken cancellationToken, Action<long, SocketError> callback) 2100SafeFileHandle fileHandle = fileHandles[i] ?? e.FileStream!.SafeFileHandle; 2140foreach (SafeFileHandle fs in fileHandles)
System.Private.CoreLib (206)
_generated\2\LibraryImports.g.cs (27)
2108internal static partial int FChMod(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, int mode) 2116global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 2414internal static partial int CopyFile(global::Microsoft.Win32.SafeHandles.SafeFileHandle source, global::Microsoft.Win32.SafeHandles.SafeFileHandle destination, long sourceLength) 2423global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __destination_native__marshaller = new(); 2424global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __source_native__marshaller = new(); 2600internal static partial bool FileSystemSupportsLocking(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, global::Interop.Sys.LockOperations lockOperation, bool accessWrite) 2609global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 2643internal static partial int FLock(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, global::Interop.Sys.LockOperations operation) 2651global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 2710internal static partial int FSync(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd) 2718global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 2751internal static partial int FTruncate(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long length) 2759global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 3425internal static partial long LSeek(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long offset, global::Interop.Sys.SeekWhence whence) 3433global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 3615internal static partial nint MMap(nint addr, ulong len, global::Interop.Sys.MemoryMappedProtections prot, global::Interop.Sys.MemoryMappedFlags flags, global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long offset) 3623global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 3716internal static partial global::Microsoft.Win32.SafeHandles.SafeFileHandle Open(string filename, global::Interop.Sys.OpenFlags flags, int mode) 3723global::Microsoft.Win32.SafeHandles.SafeFileHandle __retVal = default; 3726global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedOut __retVal_native__marshaller = new(); 3813internal static partial int PosixFAdvise(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long offset, long length, global::Interop.Sys.FileAdvice advice) 3820global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 3850internal static partial int FAllocate(global::Microsoft.Win32.SafeHandles.SafeFileHandle fd, long offset, long length) 3858global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __fd_native__marshaller = new(); 5180internal static partial void SetKeypadXmit(global::Microsoft.Win32.SafeHandles.SafeFileHandle terminalHandle, string terminfoString) 5188global::System.Runtime.InteropServices.Marshalling.SafeHandleMarshaller<global::Microsoft.Win32.SafeHandles.SafeFileHandle>.ManagedToUnmanagedIn __terminalHandle_native__marshaller = new();
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.CopyFile.cs (2)
13internal static partial int CopyFile(SafeFileHandle source, SafeFileHandle destination, long sourceLength);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FAllocate.cs (1)
15internal static partial int FAllocate(SafeFileHandle fd, long offset, long length);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FChMod.cs (1)
13internal static partial int FChMod(SafeFileHandle fd, int mode);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FileSystemSupportsLocking.cs (1)
13internal static partial bool FileSystemSupportsLocking(SafeFileHandle fd, LockOperations lockOperation, [MarshalAs(UnmanagedType.Bool)] bool accessWrite);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FLock.cs (1)
21internal static partial int FLock(SafeFileHandle fd, LockOperations operation);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FSync.cs (1)
12internal static partial int FSync(SafeFileHandle fd);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.FTruncate.cs (1)
12internal static partial int FTruncate(SafeFileHandle fd, long length);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.InitializeTerminalAndSignalHandling.cs (1)
16internal static partial void SetKeypadXmit(SafeFileHandle terminalHandle, string terminfoString);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.LSeek.cs (1)
19internal static partial long LSeek(SafeFileHandle fd, long offset, SeekWhence whence);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.MMap.cs (1)
35SafeFileHandle fd, long offset);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.Open.cs (1)
12internal static partial SafeFileHandle Open(string filename, OpenFlags flags, int mode);
src\runtime\src\libraries\Common\src\Interop\Unix\System.Native\Interop.PosixFAdvise.cs (1)
33internal static partial int PosixFAdvise(SafeFileHandle fd, long offset, long length, FileAdvice advice);
src\runtime\src\libraries\System.Private.CoreLib\src\Microsoft\Win32\SafeHandles\SafeFileHandle.cs (2)
29public static partial void CreateAnonymousPipe(out SafeFileHandle readHandle, out SafeFileHandle writeHandle, bool asyncRead = false, bool asyncWrite = false);
src\runtime\src\libraries\System.Private.CoreLib\src\Microsoft\Win32\SafeHandles\SafeFileHandle.ThreadPoolValueTaskSource.cs (2)
32private readonly SafeFileHandle _fileHandle; 47internal ThreadPoolValueTaskSource(SafeFileHandle fileHandle)
src\runtime\src\libraries\System.Private.CoreLib\src\Microsoft\Win32\SafeHandles\SafeFileHandle.Unix.cs (12)
110private static SafeFileHandle Open(string path, Interop.Sys.OpenFlags flags, int mode, bool failForSymlink, out bool wasSymlink, 115SafeFileHandle handle = Interop.Sys.Open(path, flags, mode); 183public static partial void CreateAnonymousPipe(out SafeFileHandle readHandle, out SafeFileHandle writeHandle, bool asyncRead, bool asyncWrite) 186SafeFileHandle tempReadHandle = new(); 187SafeFileHandle tempWriteHandle = new(); 228internal static SafeFileHandle OpenReadOnly(string fullPath, FileOptions options, out long fileLength, out UnixFileMode filePermissions) 230SafeFileHandle handle = Open(fullPath, FileMode.Open, FileAccess.Read, FileShare.Read, options, preallocationSize: 0, DefaultCreateMode, out fileLength, out filePermissions, false, out _, null); 235internal static SafeFileHandle Open(string fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, long preallocationSize, UnixFileMode? unixCreateMode = null, 241internal static SafeFileHandle? OpenNoFollowSymlink(string fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, long preallocationSize, out bool wasSymlink, UnixFileMode? unixCreateMode = null, 247private static SafeFileHandle Open(string fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, long preallocationSize, UnixFileMode openPermissions, 254SafeFileHandle? safeFileHandle = null;
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\File.cs (50)
136/// Initializes a new instance of the <see cref="SafeFileHandle" /> class with the specified path, creation mode, read/write and sharing permission, the access other SafeFileHandles can have to the same file, additional file options and the allocation size. 138/// <param name="path">A relative or absolute path for the file that the current <see cref="SafeFileHandle" /> instance will encapsulate.</param> 144/// <param name="options">An object that describes optional <see cref="SafeFileHandle" /> parameters to use.</param> 165public static SafeFileHandle OpenHandle(string path, FileMode mode = FileMode.Open, FileAccess access = FileAccess.Read, 170return SafeFileHandle.Open(Path.GetFullPath(path), mode, access, share, options, preallocationSize); 176/// <returns>A <see cref="SafeFileHandle"/> to the system's null device.</returns> 194public static SafeFileHandle OpenNullHandle() 196return SafeFileHandle.Open(NullDevicePath, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite, FileOptions.None, preallocationSize: 0); 216/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the creation date and time information. 234public static void SetCreationTime(SafeFileHandle fileHandle, DateTime creationTime) 248/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the creation date and time information. 266public static void SetCreationTimeUtc(SafeFileHandle fileHandle, DateTime creationTimeUtc) 279/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain creation date and time information. 291public static DateTime GetCreationTime(SafeFileHandle fileHandle) 304/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain creation date and time information. 316public static DateTime GetCreationTimeUtc(SafeFileHandle fileHandle) 329/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the last access date and time information. 347public static void SetLastAccessTime(SafeFileHandle fileHandle, DateTime lastAccessTime) 360/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the last access date and time information. 378public static void SetLastAccessTimeUtc(SafeFileHandle fileHandle, DateTime lastAccessTimeUtc) 391/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain last access date and time information. 403public static DateTime GetLastAccessTime(SafeFileHandle fileHandle) 416/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain last access date and time information. 428public static DateTime GetLastAccessTimeUtc(SafeFileHandle fileHandle) 441/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the last write date and time information. 459public static void SetLastWriteTime(SafeFileHandle fileHandle, DateTime lastWriteTime) 472/// A <see cref="SafeFileHandle" /> to the file or directory for which to set the last write date and time information. 490public static void SetLastWriteTimeUtc(SafeFileHandle fileHandle, DateTime lastWriteTimeUtc) 503/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain last write date and time information. 515public static DateTime GetLastWriteTime(SafeFileHandle fileHandle) 528/// A <see cref="SafeFileHandle" /> to the file or directory for which to obtain last write date and time information. 540public static DateTime GetLastWriteTimeUtc(SafeFileHandle fileHandle) 553/// A <see cref="SafeFileHandle" /> to the file or directory for which the attributes are to be retrieved. 564public static FileAttributes GetAttributes(SafeFileHandle fileHandle) 577/// A <see cref="SafeFileHandle" /> to the file or directory for which <paramref name="fileAttributes"/> should be set. 590/// using the <see cref="SetAttributes(SafeFileHandle, FileAttributes)"/> method. 592public static void SetAttributes(SafeFileHandle fileHandle, FileAttributes fileAttributes) 616public static UnixFileMode GetUnixFileMode(SafeFileHandle fileHandle) 640public static void SetUnixFileMode(SafeFileHandle fileHandle, UnixFileMode mode) 724using (SafeFileHandle sfh = OpenHandle(path, FileMode.Open, FileAccess.Read, FileShare.Read, options)) 788using SafeFileHandle sfh = OpenHandle(path, FileMode.Create, FileAccess.Write, FileShare.Read); 838using SafeFileHandle fileHandle = OpenHandle(path, FileMode.Append, FileAccess.Write, FileShare.Read); 883using SafeFileHandle fileHandle = OpenHandle(path, FileMode.Append, FileAccess.Write, FileShare.Read, FileOptions.Asynchronous); 1203SafeFileHandle sfh = OpenHandle(path, FileMode.Open, FileAccess.Read, FileShare.Read, options); 1223private static async Task<byte[]> InternalReadAllBytesAsync(SafeFileHandle sfh, int count, CancellationToken cancellationToken) 1244private static async Task<byte[]> InternalReadAllBytesUnknownLengthAsync(SafeFileHandle sfh, CancellationToken cancellationToken) 1312using SafeFileHandle sfh = OpenHandle(path, FileMode.Create, FileAccess.Write, FileShare.Read, FileOptions.Asynchronous); 1508private static unsafe byte[] ReadAllBytesUnknownLength(SafeFileHandle sfh) 1558using SafeFileHandle fileHandle = OpenHandle(path, mode, FileAccess.Write, FileShare.Read, FileOptions.None, GetPreallocationSize(mode, contents, encoding, preambleSize)); 1614using SafeFileHandle fileHandle = OpenHandle(path, mode, FileAccess.Write, FileShare.Read, FileOptions.Asynchronous, GetPreallocationSize(mode, contents.Span, encoding, preambleSize));
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\File.Unix.cs (2)
15private static UnixFileMode GetUnixFileModeCore(SafeFileHandle fileHandle) 21private static void SetUnixFileModeCore(SafeFileHandle fileHandle, UnixFileMode mode)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\FileStatus.SetTimes.OtherUnix.cs (3)
14internal void SetCreationTime(SafeFileHandle handle, DateTimeOffset time, bool asDirectory) => 17private void SetAccessOrWriteTime(SafeFileHandle? handle, string? path, DateTimeOffset time, bool isAccessTime, bool asDirectory) => 22private static Interop.Error SetCreationTimeCore(SafeFileHandle? handle, string? path, long seconds, long nanoseconds) =>
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\FileStatus.Unix.cs (21)
190internal FileAttributes GetAttributes(SafeFileHandle handle, bool continueOnError = false) 193private FileAttributes GetAttributes(SafeFileHandle? handle, ReadOnlySpan<char> path, ReadOnlySpan<char> fileName, bool continueOnError = false) 221internal void SetAttributes(SafeFileHandle handle, FileAttributes attributes, bool asDirectory) 224private void SetAttributes(SafeFileHandle? handle, string? path, FileAttributes attributes, bool asDirectory) 294internal DateTimeOffset GetCreationTime(SafeFileHandle handle, bool continueOnError = false) 297private DateTimeOffset GetCreationTime(SafeFileHandle? handle, ReadOnlySpan<char> path, bool continueOnError = false) 318internal DateTimeOffset GetLastAccessTime(SafeFileHandle handle, bool continueOnError = false) 321private DateTimeOffset GetLastAccessTime(SafeFileHandle? handle, ReadOnlySpan<char> path, bool continueOnError = false) 334internal void SetLastAccessTime(SafeFileHandle handle, DateTimeOffset time, bool asDirectory) 337private void SetLastAccessTime(SafeFileHandle? handle, string? path, DateTimeOffset time, bool asDirectory) 343internal DateTimeOffset GetLastWriteTime(SafeFileHandle handle, bool continueOnError = false) 346private DateTimeOffset GetLastWriteTime(SafeFileHandle? handle, ReadOnlySpan<char> path, bool continueOnError = false) 359internal void SetLastWriteTime(SafeFileHandle handle, DateTimeOffset time, bool asDirectory) 362internal void SetLastWriteTime(SafeFileHandle? handle, string? path, DateTimeOffset time, bool asDirectory) 370private unsafe void SetAccessOrWriteTimeCore(SafeFileHandle? handle, string? path, DateTimeOffset time, bool isAccessTime, bool checkCreationTime, bool asDirectory) 451internal UnixFileMode GetUnixFileMode(SafeFileHandle handle, bool continueOnError = false) 454private UnixFileMode GetUnixFileMode(SafeFileHandle? handle, ReadOnlySpan<char> path, bool continueOnError = false) 467internal void SetUnixFileMode(SafeFileHandle handle, UnixFileMode mode) 470private void SetUnixFileMode(SafeFileHandle? handle, string? path, UnixFileMode mode) 491internal void RefreshCaches(SafeFileHandle? handle, ReadOnlySpan<char> path) 551internal void EnsureCachesInitialized(SafeFileHandle? handle, ReadOnlySpan<char> path, bool continueOnError = false)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\FileStream.cs (6)
46SafeFileHandle safeHandle = new SafeFileHandle(handle, ownsHandle: ownsHandle); 67private static void ValidateHandle(SafeFileHandle handle, FileAccess access, int bufferSize) 87public FileStream(SafeFileHandle handle, FileAccess access) 92public FileStream(SafeFileHandle handle, FileAccess access, int bufferSize) 99public FileStream(SafeFileHandle handle, FileAccess access, int bufferSize, bool isAsync) 428public virtual SafeFileHandle SafeFileHandle => _strategy.SafeFileHandle;
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\FileSystem.Unix.cs (14)
37using SafeFileHandle src = SafeFileHandle.OpenReadOnly(sourceFullPath, FileOptions.None, out fileLength, out filePermissions); 47using SafeFileHandle dst = SafeFileHandle.Open(destFullPath, overwrite ? FileMode.Create : FileMode.CreateNew, 592public static FileAttributes GetAttributes(SafeFileHandle fileHandle) 598public static void SetAttributes(SafeFileHandle fileHandle, FileAttributes attributes) 611public static UnixFileMode GetUnixFileMode(SafeFileHandle fileHandle) 617public static void SetUnixFileMode(SafeFileHandle fileHandle, UnixFileMode mode) 623public static DateTimeOffset GetCreationTime(SafeFileHandle fileHandle) 629public static void SetCreationTime(SafeFileHandle fileHandle, DateTimeOffset time) 635public static DateTimeOffset GetLastAccessTime(SafeFileHandle fileHandle) 641public static unsafe void SetLastAccessTime(SafeFileHandle fileHandle, DateTimeOffset time) 647public static DateTimeOffset GetLastWriteTime(SafeFileHandle fileHandle) 653public static unsafe void SetLastWriteTime(SafeFileHandle fileHandle, DateTimeOffset time)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\RandomAccess.cs (12)
23public static long GetLength(SafeFileHandle handle) 40public static void SetLength(SafeFileHandle handle, long length) 67public static int Read(SafeFileHandle handle, Span<byte> buffer, long fileOffset) 89public static long Read(SafeFileHandle handle, IReadOnlyList<Memory<byte>> buffers, long fileOffset) 113public static ValueTask<int> ReadAsync(SafeFileHandle handle, Memory<byte> buffer, long fileOffset, CancellationToken cancellationToken = default) 141public static ValueTask<long> ReadAsync(SafeFileHandle handle, IReadOnlyList<Memory<byte>> buffers, long fileOffset, CancellationToken cancellationToken = default) 168public static void Write(SafeFileHandle handle, ReadOnlySpan<byte> buffer, long fileOffset) 189public static void Write(SafeFileHandle handle, IReadOnlyList<ReadOnlyMemory<byte>> buffers, long fileOffset) 213public static ValueTask WriteAsync(SafeFileHandle handle, ReadOnlyMemory<byte> buffer, long fileOffset, CancellationToken cancellationToken = default) 241public static ValueTask WriteAsync(SafeFileHandle handle, IReadOnlyList<ReadOnlyMemory<byte>> buffers, long fileOffset, CancellationToken cancellationToken = default) 272public static void FlushToDisk(SafeFileHandle handle) 284private static void ValidateInput(SafeFileHandle handle, long fileOffset, bool allowUnseekableHandles = true)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\RandomAccess.Unix.cs (10)
22internal static unsafe void SetFileLength(SafeFileHandle handle, long length) => 25internal static unsafe int ReadAtOffset(SafeFileHandle handle, Span<byte> buffer, long fileOffset) 58internal static unsafe long ReadScatterAtOffset(SafeFileHandle handle, IReadOnlyList<Memory<byte>> buffers, long fileOffset) 104internal static ValueTask<int> ReadAtOffsetAsync(SafeFileHandle handle, Memory<byte> buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy? strategy = null) 107private static ValueTask<long> ReadScatterAtOffsetAsync(SafeFileHandle handle, IReadOnlyList<Memory<byte>> buffers, long fileOffset, CancellationToken cancellationToken) 110internal static unsafe void WriteAtOffset(SafeFileHandle handle, ReadOnlySpan<byte> buffer, long fileOffset) 113internal static unsafe void WriteAtOffset(SafeFileHandle handle, ReadOnlySpan<byte> buffer, ref long fileOffset) 175internal static unsafe void WriteGatherAtOffset(SafeFileHandle handle, IReadOnlyList<ReadOnlyMemory<byte>> buffers, long fileOffset) 270internal static ValueTask WriteAtOffsetAsync(SafeFileHandle handle, ReadOnlyMemory<byte> buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy? strategy = null) 273private static ValueTask WriteGatherAtOffsetAsync(SafeFileHandle handle, IReadOnlyList<ReadOnlyMemory<byte>> buffers, long fileOffset, CancellationToken cancellationToken)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\SharedMemoryManager.Unix.cs (14)
126private readonly SafeFileHandle _fileHandle; 131public SharedMemoryProcessDataHeader(SharedMemoryId id, SafeFileHandle fileHandle, SharedMemorySharedDataHeader* sharedDataHeader, nuint sharedDataTotalByteCount) 195SafeFileHandle fileHandle = SharedMemoryHelpers.CreateOrOpenFile(sharedMemoryFilePath, id, createIfNotExist, out bool createdFile); 420internal static SafeFileHandle CreateOrOpenFile(string sharedMemoryFilePath, SharedMemoryId id, bool createIfNotExist, out bool createdFile) 426SafeFileHandle fd = Interop.Sys.Open(sharedMemoryFilePath, Interop.Sys.OpenFlags.O_RDWR | Interop.Sys.OpenFlags.O_CLOEXEC, 0); 709internal static MemoryMappedFileHolder MemoryMapFile(SafeFileHandle fileHandle, nuint sharedDataTotalByteCount) 728internal static bool TryAcquireFileLock(SafeFileHandle sharedLockFileHandle, bool nonBlocking, bool exclusive = true) 772internal unsafe ref struct AutoReleaseFileLock(SafeFileHandle fd) 776public readonly SafeFileHandle FileHandle = fd; 800private SafeFileHandle? _creationDeletionLockFileHandle; 801private readonly Dictionary<uint, SafeFileHandle> _uidToFileHandleMap = []; 816SafeFileHandle? fd = id.IsUserScope ? GetUserScopeCreationDeletionLockFileHandle(id.Uid) : _creationDeletionLockFileHandle; 858SafeFileHandle? GetUserScopeCreationDeletionLockFileHandle(uint uid) 860_uidToFileHandleMap.TryGetValue(uid, out SafeFileHandle? fileHandle);
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\BufferedFileStreamStrategy.cs (1)
78internal override SafeFileHandle SafeFileHandle
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\DerivedFileStreamStrategy.cs (1)
45internal override SafeFileHandle SafeFileHandle
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\FileStreamHelpers.cs (1)
22internal static FileStreamStrategy ChooseStrategy(FileStream fileStream, SafeFileHandle handle, FileAccess access, int bufferSize, bool isAsync)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\FileStreamHelpers.Unix.cs (6)
12private static UnixFileStreamStrategy ChooseStrategyCore(SafeFileHandle handle, FileAccess access, bool isAsync) => 33internal static long Seek(SafeFileHandle handle, long offset, SeekOrigin origin) => 36internal static void ThrowInvalidArgument(SafeFileHandle handle) => 40internal static void FlushToDisk(SafeFileHandle handle) 59internal static void Lock(SafeFileHandle handle, bool canWrite, long position, long length) 69internal static void Unlock(SafeFileHandle handle, long position, long length)
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\FileStreamStrategy.cs (1)
16internal abstract SafeFileHandle SafeFileHandle { get; }
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\OSFileStreamStrategy.cs (4)
14protected readonly SafeFileHandle _fileHandle; // only ever null if ctor throws 20internal OSFileStreamStrategy(SafeFileHandle handle, FileAccess access) 46_fileHandle = SafeFileHandle.Open(fullPath, mode, access, share, options, preallocationSize, unixCreateMode); 96internal override SafeFileHandle SafeFileHandle
src\runtime\src\libraries\System.Private.CoreLib\src\System\IO\Strategies\UnixFileStreamStrategy.cs (2)
10internal UnixFileStreamStrategy(SafeFileHandle handle, FileAccess access) : base(handle, access) 19internal override SafeFileHandle SafeFileHandle
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\NamedMutex.Unix.cs (1)
397private readonly SafeFileHandle _sharedLockFileHandle;
src\runtime\src\libraries\System.Private.CoreLib\src\System\TimeZoneInfo.Unix.NonAndroid.cs (1)
268using (SafeFileHandle sfh = File.OpenHandle(filePath, FileMode.Open, FileAccess.Read, FileShare.Read))
System.Runtime (1)
src\runtime\artifacts\obj\System.Runtime\Release\net11.0\System.Runtime.Forwards.cs (1)
5[assembly: System.Runtime.CompilerServices.TypeForwardedTo(typeof(Microsoft.Win32.SafeHandles.SafeFileHandle))]
vbc (3)
src\roslyn\src\Compilers\Shared\NativeMethods.cs (3)
120using var handle = CreateFileW( 170private static extern SafeFileHandle CreateFileW( 182SafeFileHandle hFile,
VBCSCompiler (3)
src\roslyn\src\Compilers\Shared\NativeMethods.cs (3)
120using var handle = CreateFileW( 170private static extern SafeFileHandle CreateFileW( 182SafeFileHandle hFile,