Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Home NTDEV

Before Posting...

Please check out the Community Guidelines in the Announcements and Administration Category.

More Info on Driver Writing and Debugging


The free OSR Learning Library has more than 50 articles on a wide variety of topics about writing and debugging device drivers and Minifilters. From introductory level to advanced. All the articles have been recently reviewed and updated, and are written using the clear and definitive style you've come to expect from OSR over the years.


Check out The OSR Learning Library at: https://www.osr.com/osr-learning-library/


Intermediate NDIS driver question

OSR_Community_UserOSR_Community_User Member Posts: 110,217
Hi All!

I am writting the intermediate NDIS driver (IMSAMP sample has been taken as base).
In the DDK documentation they write that the function ProtocolReceive must return the one of next statuses:
NDIS_STATUS_SUCCESS or NDIS_STATUS_NOT_ACCEPTED.

I can`t find why there is no NDIS_STATUS_RESOURCES also in that list?

If e.g. I has`t get the packet descriptor from packet pool in the ProtocolReceive function I have to return NDIS_STATUS_NOT_ACCEPTED. That mean that the received useful packet will be losed ( will not be reindicated later ).
In the MiniportSendPackets function in that case I can set the Status = NDIS_STATUS_RESOURCES for packet descriptor and return NDIS_STATUS_FAILURE. Subsequently the packet arrived from overlying protocol will not be losed, it will be reindicate later.


Thanks and best regards,
E.Egorov
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. Sign in or register to get started.

Upcoming OSR Seminars
OSR has suspended in-person seminars due to the Covid-19 outbreak. But, don't miss your training! Attend via the internet instead!
Writing WDF Drivers 12 September 2022 Live, Online
Internals & Software Drivers 23 October 2022 Live, Online
Kernel Debugging 14 November 2022 Live, Online
Developing Minifilters 5 December 2022 Live, Online