Closing an Address Family in a CoNDIS Client

To close AFs, a CoNDIS client must provide a ProtocolClNotifyCloseAf function. NDIS calls ProtocolClNotifyCloseAf when a stand-alone call manager or MCM calls the NdisCmNotifyCloseAddressFamily function or the NdisMCmNotifyCloseAddressFamily function, respectively.

From within ProtocolClNotifyCloseAf, the client finishes closing the specified AF, or it returns NDIS_STATUS_PENDING and calls the NdisClNotifyCloseAddressFamilyComplete function to complete the operation. After the client calls NdisClNotifyCloseAddressFamilyComplete, NDIS calls the ProtocolCmNotifyCloseAfComplete function to notify the call manager that the client closed the AF.

To close the AF, the client should:

  1. If the client has active multipoint connections, call the NdisClDropParty function as many times as necessary until only a single party remains active on each multipoint virtual connection (VC).

  2. Call the NdisClCloseCall function as many times as necessary to close all of the calls that are still open and are associated with the address family.

  3. Call the NdisClDeregisterSap function as many times as necessary to deregister all of the service access points (SAPs) that the client registered with the call manager.

  4. Call the NdisClCloseAddressFamily function to close the AF.