Compartir a través de


NDIS_SWITCH_REFERENCE_SWITCH_PORT función de devolución de llamada (ndis.h)

La función ReferenceSwitchPort incrementa el contador de referencia de conmutador extensible Hyper-V para un puerto de conmutador extensible.

Sintaxis

NDIS_SWITCH_REFERENCE_SWITCH_PORT NdisSwitchReferenceSwitchPort;

NDIS_STATUS NdisSwitchReferenceSwitchPort(
  [in] NDIS_SWITCH_CONTEXT NdisSwitchContext,
  [in] NDIS_SWITCH_PORT_ID SwitchPortId
)
{...}

Parámetros

[in] NdisSwitchContext

Valor NDIS_SWITCH_CONTEXT que contiene el identificador del módulo de conmutador extensible al que se adjunta la extensión de conmutador extensible Hyper-V. Cuando la extensión llama a NdisFGetOptionalSwitchHandlers, este identificador se devuelve a través del parámetro NdisSwitchContext.

[in] SwitchPortId

Valor NDIS_SWITCH_PORT_ID que contiene el identificador único del puerto de conmutador extensible para el que se incrementa el contador de referencia del conmutador extensible.

Nota El parámetro SwitchPortId debe especificar el identificador de un puerto que se encuentra en un estado creado. No se pueden especificar identificadores para los puertos que están en estado de desmontaje o eliminado. Para obtener más información sobre los estados de puerto, consulte Hyper-V puerto de conmutador extensible y estados del adaptador de red.
 

Valor devuelto

Si la llamada se realiza correctamente, la función devuelve NDIS_STATUS_SUCCESS. De lo contrario, devuelve un NDIS_STATUS_código de error xxx definido en Ndis.h.

Observaciones

La extensión de conmutador extensible llama a ReferenceSwitchPort para incrementar el contador de referencia de un puerto de conmutador extensible. Aunque el contador de referencia tiene un valor distinto de cero, el borde del protocolo del conmutador extensible no emitirá una solicitud de conjunto de identificador de objeto (OID) de OID_SWITCH_PORT_DELETE para eliminar el puerto de conmutador extensible.

Una vez que la extensión llama a ReferenceSwitchPort, debe llamar a DereferenceSwitchPort para disminuir el contador de referencia.

La extensión llama ReferenceSwitchPort después de que el puerto haya alcanzado el estado puerto creado. La extensión no debe llamar a ReferenceSwitchPort después de que la conexión haya alcanzado el puerto de o Puerto no creado estados. Para obtener más información sobre estos estados, vea Hyper-V estados de adaptador de red y puerto de conmutador extensible.

La extensión debe llamar a ReferenceSwitchPort cuando realice cualquier operación que requiera que el puerto esté en un estado activo. Por ejemplo, la extensión debe llamar a ReferenceSwitchPort antes de que emite una solicitud de método OID de OID_SWITCH_PORT_PROPERTY_ENUM.

La extensión llama ReferenceSwitchPort después de que el puerto haya alcanzado el estado puerto creado. La extensión no debe llamar a ReferenceSwitchNic después de que el puerto haya alcanzado el estado Desmontaje del puerto. Para obtener más información sobre estos estados, vea Hyper-V estados de adaptador de red y puerto de conmutador extensible.

Nota Cuando la extensión llama a ReferenceSwitchPort, no tiene que sincronizar la llamada con su código que controla las solicitudes OID. Como resultado, es posible que la extensión llame a ReferenceSwitchPort mientras que el borde del protocolo del conmutador extensible emite una solicitud OID de OID_SWITCH_PORT_TEARDOWN. Sin embargo, si la llamada a ReferenceSwitchPort se completa con NDIS_STATUS_SUCCESS, la extensión todavía puede emitir la solicitud OID de OID_SWITCH_PORT_PROPERTY_ENUM después de controlar la solicitud de OID de OID_SWITCH_PORT_TEARDOWN.
 

Requisitos

Requisito Valor
cliente mínimo admitido Compatible con NDIS 6.30 y versiones posteriores.
de la plataforma de destino de Escritorio
encabezado de ndis.h (incluya Ndis.h)
irQL <= DISPATCH_LEVEL

Consulte también

DereferenceSwitchNic

NdisFGetOptionalSwitchHandlers

OID_SWITCH_PORT_DELETE

OID_SWITCH_PORT_PROPERTY_ENUM

OID_SWITCH_PORT_TEARDOWN