FLT_PARAMETERS per l'unione IRP_MJ_QUERY_QUOTA
Componente unione usato quando il campo MajorFunction della struttura FLT_IO_PARAMETER_BLOCK per l'operazione è IRP_MJ_QUERY_QUOTA.
Sintassi
typedef union _FLT_PARAMETERS {
... ;
struct {
ULONG Length;
PSID StartSid;
PFILE_GET_QUOTA_INFORMATION SidList;
ULONG SidListLength;
PVOID QuotaBuffer;
PMLD MdlAddress;
} QueryQuota;
... ;
} FLT_PARAMETERS, *PFLT_PARAMETERS;
Members
QueryQuota: struttura contenente i membri seguenti.
Lunghezza: lunghezza, in byte, del buffer a cui QuotaBuffer punta.
StartSid: puntatore facoltativo all'identificatore di sicurezza (SID) della voce in cui iniziare a analizzare l'elenco delle quote. Questo parametro viene ignorato se il flag di SL_INDEX_SPECIFIED non è impostato nella struttura di FLT_IO_PARAMETER_BLOCK per l'operazione o se SidList punta a un elenco non interrotto.
SidList: puntatore a un chiamante fornito FILE_GET_QUOTA_INFORMATION buffer di input strutturato specificando i SID le cui informazioni sulla quota devono essere sottoposte a query.
SidListLength: lunghezza, in byte, del buffer a cui punta SidList .
QuotaBuffer: puntatore a un buffer di output FILE_QUOTA_INFORMATION strutturato fornito dal chiamante in cui devono essere restituite le informazioni sulla quota. Questo membro è facoltativo e può essere NULL se viene fornito un MDL in MdlAddress. Vedere Osservazioni.
MdlAddress: indirizzo di un elenco di descrittori di memoria (MDL) che descrive il buffer a cui QuotaBuffer punta. Questo membro è facoltativo e può essere NULL se viene fornito un buffer in QuotaBuffer. Vedere Osservazioni.
Commenti
La struttura FLT_PARAMETERS per le operazioni IRP_MJ_QUERY_QUOTA contiene i parametri per un'operazione query-quota-information basata su IRP rappresentata da una struttura di callback (FLT_CALLBACK_DATA). È contenuta in una struttura di FLT_IO_PARAMETER_BLOCK.
Se vengono forniti sia un buffer QuotaBuffer che MdlAddress , è consigliabile usare minifilter. La memoria a cui QuotaBuffer punta è valida quando si tratta di un indirizzo in modalità utente a cui si accede nel contesto del processo chiamante o se si tratta di un indirizzo in modalità kernel.
Se un minifiltro modifica il valore di MdlAddress, dopo il callback dell'operazione successiva, Filter Manager libera l'MDL attualmente archiviato in MdlAddress e ripristina il valore precedente di MdlAddress.
IRP_MJ_QUERY_QUOTA è un'operazione basata su IRP.
Requisiti
Tipo di requisito | Requisito |
---|---|
Intestazione | Fltkernel.h (include Fltkernel.h) |