TNTFSSecurityItem

From Ultibo.org
Jump to: navigation, search

Return to Unit NTFSClass


Description


To be documented

Class definitions



TNTFSSecurityItem = class(TListObject)

Note: Data of stream $SDS in file $Secure
 
constructor Create(ALocalLock:TMutexHandle);  
destructor Destroy; override;  
private
FLocalLock:TMutexHandle;  
 
FSecurityHash:LongWord; Hash of Security Descriptor
FSecurityId:LongWord; Security Id
FSecurityOffset:Int64; Offset of this entry in $SDS
FSecuritySize:LongWord; Size of this entry in $SDS
 
FSecurity:TNTFSSecurity; Self-relative Security Descriptor
 
function AcquireLock:Boolean;  
function ReleaseLock:Boolean;  
 
function Compare(ASecurityItem:TNTFSSecurityItem):Integer; virtual;  
public
property SecurityHash:LongWord read FSecurityHash write FSecurityHash;  
property SecurityId:LongWord read FSecurityId write FSecurityId;  
property SecurityOffset:Int64 read FSecurityOffset write FSecurityOffset;  
property SecuritySize:LongWord read FSecuritySize write FSecuritySize;  
 
property Security:TNTFSSecurity read FSecurity;  
 
function CreateSecurity:Boolean;  
function NewSecurity(ASecurity:TNTFSSecurity):Boolean;  
function UpdateSecurity(ASecurity:TNTFSSecurity):Boolean;  
function DeleteSecurity:Boolean;  
function RemoveSecurity(AFree:Boolean):Boolean;  
 
function MirrorOffset:Int64;  
 
function Init(ASecurityId:LongWord; AVersion:Word):Boolean;  
 
function ReadSecurityItem(ABuffer:Pointer; var AOffset,ASize:LongWord; AVersion:Word):Boolean;  
function WriteSecurityItem(ABuffer:Pointer; var AOffset,ASize:LongWord; AVersion:Word):Boolean;  


Function declarations



constructor TNTFSSecurityItem.Create(ALocalLock:TMutexHandle);
Description: To be documented
Note None documented


destructor TNTFSSecurityItem.Destroy;
Description: To be documented
Note None documented


function TNTFSSecurityItem.AcquireLock:Boolean;
Description: To be documented
Note None documented


function TNTFSSecurityItem.ReleaseLock:Boolean;
Description: To be documented
Note None documented


function TNTFSSecurityItem.Compare(ASecurityItem:TNTFSSecurityItem):Integer;
Description: To be documented
Note Security Items are sorted by Offset not by Id


function TNTFSSecurityItem.CreateSecurity:Boolean;
Description: Create a security, setup properties do not update Item
Note None documented


function TNTFSSecurityItem.NewSecurity(ASecurity:TNTFSSecurity):Boolean;
Description: Create a security, setup properties and update Item
Note None documented


function TNTFSSecurityItem.UpdateSecurity(ASecurity:TNTFSSecurity):Boolean;
Description: To be documented
Note None documented


function TNTFSSecurityItem.DeleteSecurity:Boolean;
Description: To be documented
Note None documented


function TNTFSSecurityItem.RemoveSecurity(AFree:Boolean):Boolean;
Description: Called by RemoveSecurityItem to remove and free the security if requested
Note None documented


function TNTFSSecurityItem.MirrorOffset:Int64;
Description: To be documented
Note None documented


function TNTFSSecurityItem.Init(ASecurityId:LongWord; AVersion:Word):Boolean;
Description: To be documented
Note None documented


function TNTFSSecurityItem.ReadSecurityItem(ABuffer:Pointer; var AOffset,ASize:LongWord; AVersion:Word):Boolean;
Description: Read the security item data from the supplied buffer at the supplied offset
Note None documented


function TNTFSSecurityItem.WriteSecurityItem(ABuffer:Pointer; var AOffset,ASize:LongWord; AVersion:Word):Boolean;
Description: Write the security item data to the supplied buffer at the supplied offset
Note None documented


Return to Unit Reference