Поделиться через


Закрытие семейства адресов в клиенте CoNDIS

Чтобы закрыть AFs, клиент CoNDIS должен предоставить функцию ProtocolClNotifyCloseAf . NDIS вызывает ProtocolClNotifyCloseAf , когда автономный диспетчер вызовов или MCM вызывает функцию NdisCmNotifyCloseAddressFamily или функцию NdisMCmNotifyCloseAddressFamily соответственно.

В protocolClNotifyCloseAf клиент завершает закрытие указанной af или возвращает NDIS_STATUS_PENDING и вызывает функцию NdisClNotifyCloseAddressFamilyComplete для завершения операции. После того как клиент вызывает NdisClNotifyCloseAddressFamilyComplete, NDIS вызывает функцию ProtocolCmNotifyCloseAfComplete , чтобы уведомить диспетчера вызовов о том, что клиент закрыл af.

Чтобы закрыть af, клиент должен:

  1. Если у клиента есть активные многоточечные подключения, вызывайте функцию NdisClDropParty столько раз, сколько необходимо, пока только одна сторона не останется активной в каждом многоточеичном виртуальном подключении .

  2. Вызовите функцию NdisCloseCall столько раз, сколько необходимо, чтобы закрыть все вызовы, которые все еще открыты и связаны с семейством адресов.

  3. Вызовите функцию NdisClDeregisterSap столько раз, сколько необходимо, чтобы отменить регистрацию всех точек доступа службы (SAP), зарегистрированных клиентом в диспетчере вызовов.

  4. Вызовите функцию NdisCloseAddressFamily , чтобы закрыть af.