FLT_PARAMETERS für IRP_MJ_QUERY_QUOTA Union

Union-Komponente, die verwendet wird, wenn das Feld MajorFunction der FLT_IO_PARAMETER_BLOCK-Struktur für den Vorgang IRP_MJ_QUERY_QUOTA ist.

Syntax

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;

Member

  • QueryQuota: Struktur, die die folgenden Member enthält.

  • Länge: Länge des Puffers, auf den QuotaBuffer verweist, in Bytes.

  • StartSid: Optionaler Zeiger auf die Sicherheits-ID (SID) des Eintrags, an dem mit dem Scannen der Kontingentliste begonnen werden soll. Dieser Parameter wird ignoriert, wenn das flag SL_INDEX_SPECIFIED in der FLT_IO_PARAMETER_BLOCK-Struktur für den Vorgang nicht festgelegt ist oder wenn SidList auf eine nicht leere Liste verweist.

  • SidList: Zeiger auf einen vom Aufrufer bereitgestellten FILE_GET_QUOTA_INFORMATION strukturierten Eingabepuffer, der die SIDs angibt, deren Kontingentinformationen abgefragt werden sollen.

  • SidListLength: Länge des Puffers, auf den SidList verweist, in Bytes.

  • QuotaBuffer: Zeiger auf einen vom Aufrufer bereitgestellten FILE_QUOTA_INFORMATION strukturierten Ausgabepuffer, in dem die Kontingentinformationen zurückgegeben werden sollen. Dieser Member ist optional und kann NULL sein, wenn eine MDL in MdlAddress bereitgestellt wird. Siehe Hinweise.

  • MdlAddress: Adresse einer Speicherdeskriptorliste (Memory Descriptor List, MDL), die den Puffer beschreibt, auf den QuotaBuffer zeigt. Dieser Member ist optional und kann NULL sein, wenn in QuotaBuffer ein Puffer bereitgestellt wird. Siehe Hinweise.

Hinweise

Die FLT_PARAMETERS-Struktur für IRP_MJ_QUERY_QUOTA-Vorgänge enthält die Parameter für einen IRP-basierten Abfragekontingentinformationsvorgang, der durch eine Rückrufdatenstruktur (FLT_CALLBACK_DATA) dargestellt wird. Sie ist in einer FLT_IO_PARAMETER_BLOCK-Struktur enthalten.

Wenn sowohl ein QuotaBuffer - als auch ein MdlAddress-Puffer bereitgestellt werden, wird empfohlen, dass Minifilter die MDL verwenden. Der Speicher, auf den QuotaBuffer verweist, ist gültig, wenn es sich um eine Benutzermodusadresse handelt, auf die im Kontext des aufrufenden Prozesses zugegriffen wird, oder wenn es sich um eine Kernelmodusadresse handelt.

Wenn ein Minifilter den Wert von MdlAddress ändert, gibt der Filter-Manager nach dem Rückruf nach dem Vorgang die derzeit in MdlAddress gespeicherte MDL frei und stellt den vorherigen Wert von MdlAddress wieder her.

IRP_MJ_QUERY_QUOTA ist ein IRP-basierter Vorgang.

Anforderungen

Anforderungstyp Anforderung
Header Fltkernel.h ( fltkernel.h einschließen)

Weitere Informationen

FILE_QUOTA_INFORMATION

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FLT_IS_FASTIO_OPERATION

FLT_IS_FS_FILTER_OPERATION

FLT_IS_IRP_OPERATION

FLT_PARAMETERS

IoCheckQuotaBufferValidity

IRP_MJ_QUERY_QUOTA

SID