NDIS_STATUS
MacChangeFddiAddresses(
IN UINT OldLongAddressCount,
IN CHAR OldLongAddresses[][FDDI_LENGTH_OF_LONG_ADDRESS],
IN UINT NewLongAddressCount,
IN CHAR NewLongAddresses[][FDDI_LENGTH_OF_LONG_ADDRESS],
IN UINT OldShortAddressCount,
IN CHAR OldShortAddresses[][FDDI_LENGTH_OF_SHORT_ADDRESS],
IN UINT NewShortAddressCount,
IN CHAR NewShortAddresses[][FDDI_LENGTH_OF_SHORT_ADDRESS],
IN NDIS_HANDLE MacBindingHandle,
IN PNDIS_REQUEST NdisRequest,
IN BOOLEAN Set
);
MacChangeFddiAddresses is a NIC driver action function the FDDI filter library calls when the multicast long or short address list changes.
MacChangeFddiAddresses can return the following status codes:
NDIS_STATUS_PENDING
NDIS_STATUS_RESET_IN_PROGRESS
NDIS_STATUS_SUCCESS
The NIC driver supplied the entry point for MacChangeFddiAddresses when it called FddiCreateFilter to set up the filter database.
FddiChangeFilterLongAddresses or FddiChangeFilterShortAddresses, which the NIC driver calls after it acquires the filter database spin lock, actually calls MacChangeFddiAddresses only after checking the current multicast long or short address list for all bound protocols and determining that it requires changes.
If MacChangeFddiAddresses returns anything other than NDIS_STATUS_SUCCESS or NDIS_STATUS_PENDING, FddiChangeFilter..Addresses discards any changes this function made to the corresponding multicast address list.
MacChangeFddiAddresses runs at IRQL DISPATCH_LEVEL.
FddiChangeFilterLongAddresses, FddiChangeFilterShortAddresses, FddiCreateFilter, MacAddAdapter, NdisAcquireSpinLock