Upravit

Sdílet prostřednictvím


OID_802_3_DELETE_MULTICAST_ADDRESS

As a set request, NDIS and overlying protocol drivers use the OID_802_3_DELETE_MULTICAST_ADDRESS OID to delete a previously added multicast address from the multicast address list of a miniport adapter. The multicast address is an array of 6 bytes. Deleting an address disables that address so that it can no longer receive multicast packets.

Version Information

Windows Vista
Supported.

NDIS 6.0 and later miniport drivers
Not requested.

Remarks

The InformationBuffer member of the NDIS_OID_REQUEST structure contains the 6-byte address to be deleted from the multicast address list.

The OID_802_3_DELETE_MULTICAST_ADDRESS OID request can delete only one address. To delete more than one address, the protocol driver must issue multiple OID_802_3_DELETE_MULTICAST_ADDRESS OID requests.

NDIS miniport drivers do not receive this OID request directly. Instead, NDIS consolidates each sequence of OID_802_3_ADD_MULTICAST_ADDRESS and OID_802_3_DELETE_MULTICAST_ADDRESS OID requests into a single OID_802_3_MULTICAST_LIST OID request.

To replace or delete the entire multicast list, the protocol driver can use the OID_802_3_MULTICAST_LIST OID request.

To add an address to the list, the protocol driver can use the OID_802_3_ADD_MULTICAST_ADDRESS OID request.

The overlying protocol driver can add a given multicast address multiple times by sending multiple OID_802_3_ADD_MULTICAST_ADDRESS OID requests. If NDIS succeeds the first add request for a given multicast address, NDIS will succeed all subsequent add requests for that address. To delete a multicast address that was added more than once, the overlying driver must delete the address the same number of times that it added the address.

Return status codes

The miniport driver's MiniportOidRequest function returns one of the following values for this request:

Term Description

NDIS_STATUS_SUCCESS

The miniport driver completed the request successfully.

NDIS_STATUS_PENDING

The miniport driver will complete the request asynchronously. After the miniport driver has completed all processing, it must succeed the request by calling the NdisMOidRequestComplete function, passing NDIS_STATUS_SUCCESS for the Status parameter.

NDIS_STATUS_NOT_ACCEPTED

The miniport driver is resetting.

NDIS_STATUS_REQUEST_ABORTED

The miniport driver stopped processing the request. For example, NDIS called the MiniportResetEx function.

Requirements

Header

Ntddndis.h (include Ndis.h)

See also

OID_802_3_ADD_MULTICAST_ADDRESS

OID_802_3_MAXIMUM_LIST_SIZE

OID_802_3_MULTICAST_LIST