The field isn’t really used for Ethernet (media type == NdisMedium802_3). NDIS and protocols know how to parse the Ethernet/SNAP header to extract the ethertype, and generally prefer that information over the NetBufferListProtocolId.
But on non-Ethernet media (e.g., WWAN or tunneling interfaces), then NetBufferListProtocolId is used.
If you’re writing a protocol driver, be very hesitant to trust the value over an Ethernet miniport, since it’s likely that some miniports don’t bother setting it. If you’re writing a miniport driver, set it to the network byte order of the ethertype (e.g., htons(0x0800) for ipv4).
-----Original Message-----
From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Thomas F. Divine
Sent: Tuesday, February 14, 2012 6:26 PM
To: Windows System Software Devs Interest List
Subject: Re: [ntdev] NDIS6x NetBufferListFrameType format
For your first question, see this URL:
http://msdn.microsoft.com/en-us/library/windows/hardware/ff559110(v=vs.85).aspx
Also note that this has alternate definition as NetBufferListProtocolId.
If you have a separate NDIS protocol and separate NDIS miniport I would avoid counting on that value being passed along correctly if there were filter modules in between the two.
Thomas F. Divine
http://www.pcausa.com
From:
Sent: Tuesday, February 14, 2012 8:59 PM
To: “Windows System Software Devs Interest List”
Subject: [ntdev] NDIS6x NetBufferListFrameType format
> Hi
> In my NDIS6x protocol driver I want to set
> NET_BUFFER_LIST_INFO(NetBufferList, NetBufferListFrameType) for my
> miniport to use.
>
> Is there any rule or suggestion that the ether_type filed should be in
> network byte order etc.? I do not see any and any ways for other OOBs
> (like Ieee8021QNetBufferListInfo) we do not do any such.
>
> Also does any of the OS (or other) protocols or NDIS use this
> NetBufferListFrameType?
>
> Thx
>
> —
> NTDEV is sponsored by OSR
>
> For our schedule of WDF, WDM, debugging and other seminars visit:
> http://www.osr.com/seminars
>
> To unsubscribe, visit the List Server section of OSR Online at
> http://www.osronline.com/page.cfm?name=ListServer
—
NTDEV is sponsored by OSR
For our schedule of WDF, WDM, debugging and other seminars visit:
http://www.osr.com/seminars
To unsubscribe, visit the List Server section of OSR Online at http://www.osronline.com/page.cfm?name=ListServer