FddiChangeFilterShortAddresses

NDIS_STATUS
    FddiChangeFilterShortAddresses(
        IN PFDDI_FILTER  Filter,
        IN NDIS_HANDLE  NdisFilterHandle,
        IN PNDIS_REQUEST  NdisRequest,
        IN UINT  AddressCount,
        IN CHAR  Addresses[][FDDI_LENGTH_OF_SHORT_ADDRESS],
        IN BOOLEAN  Set
        );

FddiChangeFilterShortAddresses is called by the NIC driver to attempt to change the multicast short address list for a binding filter in the FDDI filter library database.

Parameters

Filter
Points to a previously created and initialized filter library database.
NdisFilterHandle
Specifies the handle that the filter library associates with the binding filter.
NdisRequest
Points to the request structure that this function passes to a NIC driver action function.
AddressCount
Specifies the number of elements to be added to the multicast short address list.
Addresses[][FDDI_LENGTH_OF_SHORT_ADDRESS]
Specifies a two-dimensional character array to contain the new multicast short address list for the specified binding. FDDI_LENGTH_OF_SHORT_ADDRESS is a constant specifying the length, in bytes, of an FDDI short address (defined in ffilter.h). The array is a sequence of 2-byte FDDI addresse with no padding between addresses.
Set
Specifies TRUE if changes do not result from the closing of a binding. This function does not use Set but passes it to a NIC driver action function.

Return Value

FddiChangeFilterShortAddresses can return the following status codes:

NDIS_STATUS_MULTICAST_FULL
NDIS_STATUS_PENDING
NDIS_STATUS_SUCCESS

Comments

If FddiChangeFilterShortAddresses does not change the filter short address list, it has no effect on this list or the multicast address list for the network interface card. If this function does change the filter short address list, it calls a NIC driver action function and waits for it to return. If the action function returns a status code that indicates neither pending nor success, FddiChangeFilterShortAddresses restores the filter library database to its original state.

A caller must be holding the database spin lock to call FddiChangeFilterShortAddresses, so the driver is running at IRQL DISPATCH_LEVEL.