Sdílet prostřednictvím


Správa informací o stavu vlastní funkce portu

Rozhraní rozšiřitelného přepínače Hyper-V používá následující identifikátor objektu (OID) k dotazování vlastních informací o stavu pro rozšiřitelný port přepínače. Tyto informace o stavu se označují jako informace o stavu funkce portu:

OID_SWITCH_PORT_FEATURE_STATUS_QUERY
Tento požadavek metody OID vydává hrana protokolu rozšiřitelného přepínače pro získání informací o stavu vlastní funkce pro zadanou vlastnost portu.

Po úspěšném návratu z tohoto požadavku metody OID obsahuje člen InformationBuffer struktury NDIS_OID_REQUEST ukazatel na vyrovnávací paměť. Tato vyrovnávací paměť obsahuje následující data:

  • Struktura NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS, která určuje informace o stavu vlastní funkce, jež mají být vráceny.

    Poznámka Pro stav vlastní funkce je člen FeatureStatusType nastaven na NdisSwitchPortPropertyTypeCustom.

  • Struktura NDIS_SWITCH_PORT_FEATURE_STATUS_CUSTOM, která obsahuje informace o stavu vlastní vlastnosti přiřazené rozšiřitelnému portu přepínače.

    Když hrana protokolu rozšiřitelného přepínače vydá požadavek OID_SWITCH_PORT_FEATURE_STATUS_QUERY, nastaví parametry FeatureStatusCustomBufferLength a FeatureStatusCustomBufferOffset na adresu v členu InformationBuffer, kterou rozšíření může využít k vrácení informací o stavu funkce.

Rozšíření rozšiřitelného přepínače musí postupovat podle těchto pokynů, když obdrží požadavek metody OID OID_SWITCH_PORT_FEATURE_STATUS_QUERY:

  • Rozšíření musí zpracovat požadavek OID, pokud spravuje vlastní vlastnost portu rozšiřitelného přepínače, která odpovídá členu FeatureStatusId ve struktuře NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS.

  • Pokud rozšíření zpracovává požadavek metody OID, musí vrátit informace o stavu funkce, které odpovídají parametrům určeným NDIS_SWITCH_PORT_FEATURE_STATUS_PARAMETERS strukturou.

    Pokud je vyrovnávací paměť stavu funkce příliš malá, rozšíření musí způsobit selhání požadavku OID s NDIS_STATUS_INVALID_LENGTH. Rozšíření musí nastavit DATA.SET_INFORMATION.BytesNeeded člena ve struktuře NDIS_OID_REQUEST na minimální požadovanou velikost vyrovnávací paměti.

    V opačném případě musí rozšíření vrátit informace o stavu funkce a dokončit OID požadavek s NDIS_STATUS_SUCCESS.

  • Pokud rozšíření nespravuje vlastní vlastnost rozšiřitelného přepínače, musí volat NdisFOidRequest, aby předalo požadavek OID dolů do zásobníku ovladačů rozšiřitelného přepínače.

    Další informace o předávání požadavků OID naleznete v tématu Filtrování požadavků OID v ovladači filtru NDIS.

Další informace o definování a registraci informací o stavu funkce portu naleznete v tématu stav vlastní funkce portu.