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: 1

Hi!

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.

Comments

  • rod_widdowsonrod_widdowson Member - All Emails Posts: 1,045

    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.

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
Developing Minifilters 29 July 2019 OSR Seminar Space
Writing WDF Drivers 23 Sept 2019 OSR Seminar Space
Kernel Debugging 21 Oct 2019 OSR Seminar Space
Internals & Software Drivers 18 Nov 2019 Dulles, VA