libqsearch provides an API for finding a set of reasons. libqsearch is a C library to find all patterns in Buffers as quickly as possible. It has also been brought to the space.The kernel idea is to have an API that gives you the ability to load plugins. Each module can provide one or more algorithms. Research Objectives Each algorithm can be instantiated to one or more. Then you add patterns to the object (the models may include (!), And may be case sensitive or not, are wild, ..). Then you compile it. The object of research will be able to simultaneously search all sorts of reasons (even heterogeneous types) in a given buffer. One of interest is the use of statements to summarize search.States past are trivially implemented for algorithms based on Automata, and are not so difficult to implement for other algorithms (if n is the oldest model, retaining only the last n-1 bytes in the state for the next search). This gives you the ability to match patterns that overlap 2 buffer without having to worry about that (IDS TCP reassembly is greatly simplified: no need to move to areas adjacent paylods not need to take a paylod in memory waiting for the next. Benefits for AV that work on the flow could be very good too). This API is also implemented for the Linux kernel. For each algorithm, a wrapper is generated automatically so that it can be compiled with the kernel. The API and algorithms can also be compiled in the LKM.