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

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

Accessing PFLT_INSTANCE Instance from DriverEntry()

benjibenji Member Posts: 5


While my minifilter is living it allocates some structures with FltAllocatePoolAlignedWithTag().
Then when it dies I would like to clean them up.
But how can I retrieve a PFLT_INSTANCE from my _FLT_REGISTRATION.PFLT_FILTER_UNLOAD_CALLBACK routine in order to call FltFreePoolAlignedWithTag?
I could record this PFLT_INSTANCE in a global variable may be, but is there a nicer way to do it?

Thank you.


  • rod_widdowsonrod_widdowson Member - All Emails Posts: 1,113

    Less that a minute of googling got me FltEnumerateVolumes and FltEnumerateInstances but why not either keep them in a list that you manage (insert in your create callback and remove in your free callback).

    You also need to be aware that when you call FltTearDownFiltering(or whatever it is called), all your instances will be called at their detach entry point.

  • benjibenji Member Posts: 5

    Thank you!

Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

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!
Kernel Debugging 30 Mar 2020 OSR Seminar Space
Developing Minifilters 20 Apr 2020 LIVE ONLINE
Writing WDF Drivers 11 May 2020 LIVE ONLINE
Internals & Software Drivers 28 Sept 2020 Dulles, VA