The protocol edge of the Hyper-V extensible switch issues an object identifier (OID) set request of OID_SWITCH_NIC_DISCONNECT to notify underlying extensible switch extensions that a connection between an extensible switch port and a network adapter is being torn down. After the connection is completely torn down, the protocol edge of the extensible switch will issue an OID set request of OID_SWITCH_NIC_DELETE.
The Index member of the NDIS_SWITCH_NIC_PARAMETERS structure specifies the index of a network adapter for which the disconnect notification is being made. The network adapter with the specified Index value is connected to the extensible switch port specified by the PortId member. For more information on these index values, see Network Adapter Index Values.
The extension must follow these guidelines when it handles OID set requests of OID_SWITCH_NIC_DISCONNECT:
The extension must not modify the NDIS_SWITCH_NIC_PARAMETERS structure that is associated with the OID request.
The OID_SWITCH_NIC_DISCONNECT request only notifies the extension that the extensible switch connection is being torn down between the specified network adapter and extensible switch port. After the extension handles this OID request, it must not do the following:
Generate any packet traffic to the network adapter connection on the extensible switch port for which the OID_SWITCH_NIC_DISCONNECT OID request was issued.
Call ReferenceSwitchNic to increment the extensible switch reference counter for the specified network adapter connection on the extensible switch port.
Forward or originate OID requests of OID_SWITCH_NIC_REQUEST to an underlying network adapter for which the OID_SWITCH_NIC_DISCONNECT OID request was issued.
Note If the extension called ReferenceSwitchNic to increment the extensible switch reference counter before the OID_SWITCH_NIC_DISCONNECT is issued, the extension can still forward or originate OID requests.
Forward or originate NDIS status indications of NDIS_STATUS_SWITCH_NIC_STATUS from an underlying network adapter for which the OID_SWITCH_NIC_DISCONNECT OID request was issued.
Note If the extension called ReferenceSwitchNic to increment the extensible switch reference counter before the OID_SWITCH_NIC_DISCONNECT is issued, the extension can still forward or originate NDIS status indications.
**Note** If the extension previously called [*ReferenceSwitchNic*](https://msdn.microsoft.com/library/windows/hardware/hh598294) to increment the extensible switch reference counter, it does not need to synchronize its calls to originate or forward OID requests or NDIS status indications with its code that manages Hyper-V extensible switch OID requests. After the extension increments the reference counter, the extensible switch interface will not issue an OID set request of [OID\_SWITCH\_NIC\_DELETE](oid-switch-nic-delete.md).
The extension must always forward this OID set request to underlying extensions. The extension must not complete the request.
The extensible switch external network adapter can bind to one or more underlying physical adapters. For every physical network adapter that is bound to the external network adapter, the protocol edge of the extensible switch issues a separate OID set request of OID_SWITCH_NIC_DISCONNECT. Each OID set request specifies a different network adapter connection index value. For more information on these index values, see Network Adapter Index Values.
The extension must maintain the connection state for each underlying physical adapter. For more information about the different configurations in which physical network adapters can be bound to the external network adapter, see Types of Physical Network Adapter Configurations.
Note The extension must not issue its own OID set requests of OID_SWITCH_NIC_DISCONNECT.
For more information about the states of extensible switch ports and network adapter connections, see Hyper-V Extensible Switch Port and Network Adapter States.
Return Status Codes
The underlying miniport edge of the extensible switch completes the OID query request of OID_SWITCH_NIC_DISCONNECT and returns the following status code.
The OID request completed successfully.
Supported in NDIS 6.30 and later.
|Ntddndis.h (include Ndis.h)|