private static Int32 GetSecurity( IntPtr FileSystemPtr, ref FullContext FullContext, IntPtr SecurityDescriptor, IntPtr PSecurityDescriptorSize) { FileSystemBase FileSystem = (FileSystemBase)Api.GetUserContext(FileSystemPtr); try { Object FileNode, FileDesc; Byte[] SecurityDescriptorBytes; Int32 Result; Api.GetFullContext(ref FullContext, out FileNode, out FileDesc); SecurityDescriptorBytes = ByteBufferNotNull; Result = FileSystem.GetSecurity( FileNode, FileDesc, ref SecurityDescriptorBytes); if (0 <= Result) { Result = Api.CopySecurityDescriptor(SecurityDescriptorBytes, SecurityDescriptor, PSecurityDescriptorSize); } return(Result); } catch (Exception ex) { return(ExceptionHandler(FileSystem, ex)); } }