- NdisSetPacketPoolProtocolId????
- Posted by aman on December 27th, 2003
what is this call used for
NdisSetPacketPoolProtocolId.
i have not seen any reference for this in MSDN. google also gave only one
reference of OSR and that too is not working.
regards,
Puneet
- Posted by Thomas F. Divine on December 27th, 2003
The NDIS ProtocolId is associated with NDIS Task Offload. To get to
documentation that actually mentions the ProtocolId search for these topics
in the latest DDK documentation:
Offloading TCP/IP Checksum Tasks
OID_GEN_NETWORK_LAYER_ADDRESSES
The function that you are interested in is defined in ndis.h. However, the
actual ProtocolId bits flags are defined in ntddndis.h. There are also come
MACROs related to ProtocolId.
To find sample NDIS miniport drivers that exercise this call, examine the
e100bex miniport driver sample in the latest DDK.
Basically, the ProtocolId is not used (or, at least is not of practical
interest) unless the lower miniport has NDIS Task Offload capability _and_ a
transport driver (such as TCP/IP) has enabled NDIS Task Offload capability.
If NDIS Task Offload is _not_ enabled by a specific transport on a specific
miniport it would not be a good idea to even look at these bits.
Hope this helps.
Thomas F. Divine
www.ndis.com
"aman" <amanmehra_77 at yahoo dot co dot uk> wrote in message
news:OhsgRRGzDHA.4064@tk2msftngp13.phx.gbl...
- Posted by aman on December 27th, 2003
i saw this being used in NDISUIO
//
// Allocate packet pools.
//
NdisAllocatePacketPoolEx(
&Status,
&pOpenContext->SendPacketPool,
MIN_SEND_PACKET_POOL_SIZE,
MAX_SEND_PACKET_POOL_SIZE - MIN_SEND_PACKET_POOL_SIZE,
sizeof(NUIO_SEND_PACKET_RSVD));
if (Status != NDIS_STATUS_SUCCESS)
{
DEBUGP(DL_WARN, ("CreateBinding: failed to alloc"
" send packet pool: %x\n", Status));
break;
}
NdisSetPacketPoolProtocolId(pOpenContext->SendPacketPool, 0x4);
so wondering what's the use of this here.
regards
"Thomas F. Divine" <tdivine@NOpcausaSPAM.com> wrote in message
news:uspPkrIzDHA.2680@TK2MSFTNGP11.phx.gbl...
- Posted by Thomas F. Divine on December 27th, 2003
The NDISUIO sample has been superceeded by the NDISPROT sample found in the
Windows Server 2003 version of the DDK. The NDISPROT sample does _NOT_ make
the call to set the protocol ID.
It looks like the author of NDISUIO was attempting to use the protocol ID
field to identify send packets that belonged to the NDISUIO protocol. That
certainly would be handy. He picked an (apparently) unused protocol ID. It
apparently isn't necessary in this case AFAIK. Microsoft really should
provide a little more guidance if the use of this field - especially in the
context of non-Microsoft and NDIS IM drivers.
Thomas F. Divine
www.rawether.net
"aman" <amanmehra_77 at yahoo dot co dot uk> wrote in message
news:eIgj20IzDHA.3520@tk2msftngp13.phx.gbl...

