Share via


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

NdisCmDropPartyComplete

ProtocolCmAddParty

 

 

Send comments about this topic to Microsoft