aboutsummaryrefslogtreecommitdiff
path: root/security/apparmor/include
AgeCommit message (Collapse)AuthorFilesLines
2010-08-02AppArmor: dfa match engineJohn Johansen1-0/+132
A basic dfa matching engine based off the dfa engine in the Dragon Book. It uses simple row comb compression with a check field. This allows AppArmor to do pattern matching in linear time, and also avoids stack issues that an nfa based engine may have. The dfa engine uses a byte based comparison, with all values being valid. Any potential character encoding are handled user side when the dfa tables are created. By convention AppArmor uses \0 to separate two dependent path matches since \0 is not a valid path character (this is done in the link permission check). The dfa tables are generated in user space and are verified at load time to be internally consistent. There are several future improvements planned for the dfa engine: * The dfa engine may be converted to a hybrid nfa-dfa engine, with a fixed size limited stack. This would allow for size time tradeoffs, by inserting limited nfa states to help control state explosion that can occur with dfas. * The dfa engine may pickup the ability to do limited dynamic variable matching, instead of fixing all variables at policy load time. Signed-off-by: John Johansen <[email protected]> Signed-off-by: James Morris <[email protected]>
2010-08-02AppArmor: contexts used in attaching policy to system objectsJohn Johansen1-0/+154
AppArmor contexts attach profiles and state to tasks, files, etc. when a direct profile reference is not sufficient. Signed-off-by: John Johansen <[email protected]> Signed-off-by: James Morris <[email protected]>
2010-08-02AppArmor: basic auditing infrastructure.John Johansen1-0/+123
Update lsm_audit for AppArmor specific data, and add the core routines for AppArmor uses for auditing. Signed-off-by: John Johansen <[email protected]> Signed-off-by: James Morris <[email protected]>
2010-08-02AppArmor: misc. base functions and definesJohn Johansen2-0/+123
Miscellaneous functions and defines needed by AppArmor, including the base path resolution routines. Signed-off-by: John Johansen <[email protected]> Signed-off-by: James Morris <[email protected]>