Managing a Pool of Keys in WDF

I am working on developing a driver to manage a pool of keys. The driver will check if a key is unused, mark it as used, and then proceed with further processing. The main objective is to identify a free key from the pool. Since I am new to the Windows Driver Framework (WDF), I am unsure if there is an existing data structure for managing a pool of keys. If there isn't, I plan to use a static array, as I know the maximum number of keys that need to be managed.

There's nothing magic about keys. It's just an array of data. You could use a WDFCOLLECTION.

Well you could do that but if you have a lot of keys searching an array sort of sucks. Personally I would have two linked lists of keys, one for free keys and one for in use keys. Then I just can pop a key off the free list and push it on the dirty list. Of course you need to have an appropriate lock to control access.

Hi,Tim! Excuse me,I have encountered a problem, which is in my article. Can you help me take a look? Thank you, because I found that there seem to be very few people online on the forum. :flushed: this is the topic link When I go to FltWriteFile during Pre or Post in Minifilter, it will cause me to continuously enter the SetFileImformation callback routine

Let's see how many violations you committed here.

  1. You hijacked another thread to ask a question of your own.
  2. You asked an NTFSD question on an NTDEV thread.
  3. You only waited a few hours (in the middle of the night in the US) before complaining about a lack of response.

NTFSD has exactly the right folks to answer your question. They'll answer when they can. Remember, we're all volunteers.

1 Like

Okay, thank you for your correction. I have always thought that everyone is a volunteer, and it may be because I used translation software that my tone of speech was impolite. I am very sorry, and I will actively correct any violations so as not to affect everyone