Previous Next

NdisCloseAdapter

NdisCloseAdapter releases the binding established and the resources allocated when the protocol called NdisOpenAdapter.

VOID
  NdisCloseAdapter(
    OUT PNDIS_STATUS  Status,
    IN NDIS_HANDLE  NdisBindingHandle
    );

Parameters

Status
Pointer to a caller-supplied variable in which this function returns the status of the close operation, which can be one of the following values:
NDIS_STATUS_SUCCESS
The binding was closed and all resources pertaining to that binding have been released.
NDIS_STATUS_PENDING
A close-adapter request is being handled asynchronously, and the caller’s ProtocolCloseAdapterComplete function will be called when the close operation is done.
NdisBindingHandle
Specifies the handle returned by NdisOpenAdapter that identifies the virtual adapter or NIC to be closed.

Headers

Declared in Ndis.h. Include Ndis.h.

Comments

A protocol driver typically calls NdisCloseAdapter from its ProtocolUnbindAdapter function. It can also call NdisCloseAdapter from its ProtocolBindAdapter function, for example, if it failed to set an OID value after calling NdisOpenAdapter to set up a binding.

As soon as a protocol calls NdisCloseAdapter, the handle at NdisBindingHandle should be considered invalid by the caller. It is a programming error to pass this handle in any subsequent call to an NdisXxx function.

Callers of NdisCloseAdapter run at IRQL = PASSIVE_LEVEL.

See Also

NdisCompleteUnbindAdapter, NdisOpenAdapter, ProtocolCloseAdapterComplete, ProtocolUnbindAdapter