OID_GEN_CURRENT_PACKET_FILTER (Windows CE 5.0)

Send Feedback

This object specifies the types of net packets for which a protocol receives indications from a NIC driver.

The NIC driver reports its medium type as one for which the system provides a filter library. The following table shows the types that the packet filter combines using an inclusive OR operation.

Type Description
NDIS_PACKET_TYPE_ALL_FUNCTIONAL All functional address packets, not just the ones in the current functional address.
NDIS_PACKET_TYPE_ALL_MULTICAST All multicast address packets, not just the ones enumerated in the multicast address list.
NDIS_PACKET_TYPE_ALL_LOCAL All packets sent by installed protocols and all packets indicated by the NIC that is identified by a given NdisBindingHandle.
NDIS_PACKET_TYPE_BROADCAST Broadcast packets.
NDIS_PACKET_TYPE_DIRECTED Directed packets. Directed packets contain a destination address equal to the station address of the NIC.
NDIS_PACKET_TYPE_FUNCTIONAL Functional address packets sent to addresses included in the current functional address.
NDIS_PACKET_TYPE_GROUP Packets sent to the current group address.
NDIS_PACKET_TYPE_MAC_FRAME NIC driver frames that a Token Ring NIC receives.
NDIS_PACKET_TYPE_SMT SMT packets that an FDDI NIC receives.
NDIS_PACKET_TYPE_MULTICAST Multicast address packets sent to addresses in the multicast address list.
A protocol driver can receive Ethernet (802.3) multicast packets or Token Ring (802.5) functional address packets by specifying the multicast or functional address packet type. Setting the multicast address list or functional address determines which multicast address groups the NIC driver enables.
NDIS_PACKET_TYPE_PROMISCUOUS Specifies all packets.
NDIS_PACKET_TYPE_SOURCE_ROUTING All source routing packets. If the protocol driver sets this bit, the NDIS library attempts to act as a source routing bridge.

During a call to NdisOpenAdapter, NDIS disables packet reception, along with multicast and functional addresses.

For a query, NDIS returns the binding filters that are combined using the OR operator.

For a set, the specified packet filter replaces the previous packet filter for the binding. If the NIC driver previously enabled a packet type but the protocol driver does not specify that type in a new filter, the protocol driver will not receive packets of this type.

If the NIC driver does not set a bit for a particular packet type in response to this query, the protocol driver will not receive packets of that type. Consequently, a protocol driver can disable packet reception by calling the NdisRequest function using a filter of 0. In these circumstances, if promiscuous mode is enabled with the NDIS_PACKET_TYPE_PROMISCUOUS bit, the protocol driver continues to receive packets even if the sending network node does not direct them to it. NDIS then sends the protocol driver all packets the NIC receives.

Setting a specific packet filter does not alter the packet filter for other protocols that are bound to (or above) the same NIC. For example, if one bound protocol enables promiscuous mode, other bound protocols do not receive packets that they have not specifically requested with their own packet filters.

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: Ntddndis.h.

See Also

MiniportQueryInformation | NdisOpenAdapter | NdisRequest | NDIS_REQUEST

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.