On Sun, Oct 6, 2019 at 6:49 PM Salvatore Mesoraca <s.mesoraca16@xxxxxxxxx> wrote: > Salvatore Mesoraca <s.mesoraca16@xxxxxxxxx> wrote: > > Jann Horn <jannh@xxxxxxxxxx> wrote: > > > On Sat, Jul 6, 2019 at 12:55 PM Salvatore Mesoraca > > > <s.mesoraca16@xxxxxxxxx> wrote: > > > > Creation of a generic Discrete Finite Automata implementation > > > > for string matching. The transition tables have to be produced > > > > in user-space. > > > > This allows us to possibly support advanced string matching > > > > patterns like regular expressions, but they need to be supported > > > > by user-space tools. > > > > > > AppArmor already has a DFA implementation that takes a DFA machine > > > from userspace and runs it against file paths; see e.g. > > > aa_dfa_match(). Did you look into whether you could move their DFA to > > > some place like lib/ and reuse it instead of adding yet another > > > generic rule interface to the kernel? > > > > Yes, using AppArmor DFA cloud be a possibility. > > Though, I didn't know how AppArmor's maintainers feel about this. > > I thought that was easier to just implement my own. > > Anyway I understand that re-using that code would be the optimal solution. > > I'm adding in CC AppArmor's maintainers, let's see what they think about this. > > I don't want this to prevent SARA from being up-streamed. > Do you think that having another DFA here could be acceptable anyway? > Would it be better if I just drop the DFA an go back to simple string > matching to speed up things? While I think that it would be nicer not to have yet another implementation of the same thing, I don't feel strongly about it.