struttura COPY_INFORMATION (ntifs.h)
La struttura COPY_INFORMATION correla le chiamate di lettura e scrittura a un'operazione di copia da NtCopyFileChunk.
Sintassi
typedef struct _COPY_INFORMATION {
PFILE_OBJECT SourceFileObject;
LONGLONG SourceFileOffset;
} COPY_INFORMATION, *PCOPY_INFORMATION;
Members
SourceFileObject
Oggetto file di origine della copia.
SourceFileOffset
Offset del file di origine della copia. Questo valore può essere confrontato con l'offset del file di destinazione durante la scrittura per garantire che la copia sia completa e fedele.
Commenti
Le operazioni di lettura e scrittura di una copia contengono le stesse informazioni nelle rispettive estensioni IRP, quindi la correlazione può essere eseguita usando COPY_INFORMATION per tutte le scritture con estensione IopCopyInformationType IRP.
Se le operazioni di lettura e scrittura sono correlate e i dati copiati vengono verificati, il file di destinazione scritto può essere considerato una copia completa e fedele dell'origine. Ciò significa che l'attendibilità può essere passata dal file di origine alla destinazione.
Le copie vengono in genere eseguite in blocchi. Per convalidare l'intera copia file:
Ogni blocco (ogni chiamata a NtCopyFileChunk) deve avere la relativa operazione di scrittura correlata a un'operazione di lettura precedente.
Tutti i blocchi copiati insieme devono coprire l'intero intervallo del file.
Un filtro può verificare la correttezza dei dati copiati con le informazioni di origine fornite nell'estensione IRP della scrittura come indicato di seguito:
- Verificare che si sia verificata una lettura corrispondente in SourceFileObject.
- Verificare che SourceFileOffset corrisponda all'offset del file dell'operazione di scrittura.
Per altre informazioni, vedere Copiare e rilevare scenari di file in modalità kernel .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 11 versione 22H2 |
Intestazione | ntifs.h |
Vedi anche
FltGetCopyInformationFromCallbackData
IoCheckFileObjectOpenedAsCopySource