Doubts on OID_802_3_MULTICAST_LIST OID request for Miniport driver

After reading the the Microsoft document for OID_802_3_MULTICAST_LIST OID

https://msdn.microsoft.com/en-us/library/windows/hardware/ff569073(v=vs.85).aspx

I have some doubt on this implementation on mini port and Filter driver .

As per microsoft doc , As a set request, NDIS and overlying protocol drivers use the OID_802_3_MULTICAST_LIST OID request to replace the current multicast address list on a miniport adapter. If an address is present in the list, that address is enabled to receive multicast packets.

1 ). I am using Virtual miniport driver and a filter driver binds on each physical NIC . So should i handle OID_802_3_MULTICAST_LIST set request for both Filter driver and miniport ? or on miniport driver only ?

2). should i add NDIS_PACKET_TYPE_MULTICAST and NDIS_PACKET_TYPE_ALL_MULTICAST flags on OID_GEN_CURRENT_PACKET_FILTER set request OID for both miniport and filter driver ?

Then how the multicast address list is shared between each driver ?

> I am using Virtual miniport driver and a filter driver binds on each
physical NIC

Now this is confusing. Are your network devices physical or virtual? Where the packets go on the wire/air? Anyway, the filter hides the miniports from protocols. When the filter receives OID_802_3_MULTICAST_LIST and OID_GEN_CURRENT_PACKET_FILTER it forwards it downstairs. The multicast list is not shared between your filter and miniportx

The interesting part begins here. You need to figure out what filters the miniport(s) support , what you want them to receive, and what you will make up to keep NDIS and protocols happy.

My network devices is virtual . I am binding filter driver over each physical NIC . So when i receive , filter driver get packet directly with out virtual miniport . Isn’t ?

When the filter receives OID_802_3_MULTICAST_LIST and OID_GEN_CURRENT_PACKET_FILTER it forwards it downstairs. So should i handle this OID inside filter or just ignore this OID ?

My miniport support following Filters

NDIS_PACKET_TYPE_DIRECTED |
NDIS_PACKET_TYPE_MULTICAST |
NDIS_PACKET_TYPE_BROADCAST |
NDIS_PACKET_TYPE_PROMISCUOUS |
NDIS_PACKET_TYPE_ALL_MULTICAST