ProtocolCmDropParty (NDIS 5.1) function
Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.
The ProtocolCmDropParty function is required. NDIS calls ProtocolCmDropParty to request that the call manager remove a party from an existing multipoint call.
Syntax
NDIS_STATUS ProtocolCmDropParty(
_In_ NDIS_HANDLE CallMgrPartyContext,
_In_opt_ PVOID CloseData,
_In_opt_ UINT Size
);
Parameters
CallMgrPartyContext [in]
Specifies the handle to a call manager-allocated context area in which the call manager maintains its per-party state. This handle was provided to NDIS in the call managers ProtocolCmAddParty function.CloseData [in, optional]
Pointer to a buffer containing connection-oriented client-specific data that should be sent across the connection before the party is dropped. This parameter is NULL if the underlying network medium does not support transfers of data when closing a connection.Size [in, optional]
Specifies the length, in bytes, of the buffer at CloseData, zero if CloseData is NULL.
Return value
ProtocolCmDropParty returns the status of its operation(s) as one of the following values:
Return code | Description |
---|---|
NDIS_STATUS_SUCCESS | Indicates that the call manager has successfully dropped the party, sent any close data, and free the resources that were allocated for its context area. |
NDIS_STATUS_PENDING | Indicates that the call manager will complete the request to drop the party asynchronously. The call manager must call NdisCmDropPartyComplete when all processing has been finished to notify NDIS and the requesting actor that the party has been dropped. |
NDIS_STATUS_INVALID_DATA | Indicates that CloseData was specified to the call manager, but the media type does not support sending data concurrent with connection termination. |
Remarks
ProtocolCmDropParty communicates with network control devices or other media-specific agents, as necessary for its media, to drop a party from an existing multipoint call. If the call manager is required to communicated with network control agents (such as, a networking switch) it should use a virtual connection to the network control agents that it established in its ProtocolBindAdapter function.
If CloseData is non-NULL and sending data at connection termination is supported by its media type, the call manager should transmit the data specified at CloseData before completing termination. If sending data concurrent with connection termination is not supported by the media type, the call manager should return control with NDIS_STATUS_INVALID_DATA.
Call managers must also free any per-party resources that it allocated and stored at CallMgrPartyContext. In addition, the call manager must free the buffer stored CallMgrPartyContext itself. Failure to do so will result in a memory leak condition.
Requirements
Target platform |
Desktop |
Version |
See ProtocolCmDropParty. |
Header |
Ndis.h (include Ndis.h) |
IRQL |
<= DISPATCH_LEVEL |
See also