Освобождение порта NDIS

Драйвер мини-порта должен освободить все порты NDIS, выделенные для адаптеров минипорта, в функции MiniportInitializeEx . Он может освободить порт в любое время, вызвав NdisMFreePort, за исключением двух случаев, указанных ниже.

Драйвер мини-порта должен освободить все выделенные порты в следующих случаях:

  • Если функция MiniportInitializeEx драйвера завершается сбоем, она должна освободить все выделенные порты.
  • Если адаптер минипорта остановлен, функция MiniportHaltEx драйвера должна освободить все выделенные порты.

Драйвер мини-порта не может просто вызвать NdisMFreePort в следующих случаях:

  • Если порт является портом по умолчанию, NDIS освобождает его автоматически, поэтому драйвер минипорта не должен освобождать его. При попытке освободить порт по умолчаниюNdisMFreePort возвращает ошибку NDIS_STATUS_INVALID_PORT.
  • Если порт активен, драйвер мини-порта должен отключить его перед вызовом NdisMFreePort.

Выделение портов NDIS

Деактивация портов NDIS

Порт NDIS по умолчанию