apparmor/utils/test
Christian Boltz 6ae047d0c1 Let set_profile_flags() change the flags for all hats
It did this in the old 2.8 code, but didn't in 2.9.x (first there was a
broken hat regex, then I commented out the hat handling to avoid
breakage caused by the broken regex).

This patch makes sure the hat flags get set when setting the flags for
the main profile.

Also change RE_PROFILE_HAT_DEF to use more named matches
(leadingwhitespace and hat_keyword). Luckily all code that uses the
regex uses named matches already, which means adding another (...) pair
doesn't hurt.

Finally adjust the tests:
- change _test_set_flags to accept another optional parameter
  expected_more_rules (used to specify the expected hat definition)
- add tests for hats (with '^foobar' and 'hat foobar' syntax)
- add tests for child profiles, one of them commented out (see below)


Remaining known issues (also added as TODO notes):

- The hat and child profile flags are *overwritten* with the flags used
  for the main profile. (That's well-known behaviour from 2.8 :-/ but we
  have more flags now, which makes this more annoying.)
  The correct behaviour would be to add or remove the specified flag,
  while keeping other flags unchanged.

- Child profiles are not handled/changed if you specify the 'program'
  parameter. This means:
  - 'aa-complain smbldap-useradd' or 'aa-complain /usr/sbin/smbldap-useradd'
    _will not_ change the flags for the nscd child profile
  - 'aa-complain /etc/apparmor.d/usr.sbin.smbldap-useradd' _will_ change
    the flags for the nscd child profile (and any other profile and
    child profile in that file)


Even with those remaining issues (which need bigger changes in
set_profile_flags() and maybe also in the whole flags handling), the
patch improves things and fixes the regression from the 2.8 code.



Acked-by: Steve Beattie <steve@nxnw.org> for trunk and 2.9

Bug: https://launchpad.net/bugs/1501913
2015-05-28 22:16:36 +02:00
..
aa_test.py Add some tests for logparser.py based on the log lines from 2015-01-18 14:57:10 +01:00
cleanprof_test.in Merge in Kshitij Gupta <kgupta8592@gmail.com>'s rewrite of the 2014-02-12 15:54:00 -08:00
cleanprof_test.out Merge in Kshitij Gupta <kgupta8592@gmail.com>'s rewrite of the 2014-02-12 15:54:00 -08:00
common_test.py Enable testloops for nosetests 2015-04-22 22:03:36 +02:00
config_test.py Set PYTHONPATH=.. in runtests-py3.sh to make sure the tests use the in- 2014-07-22 21:25:25 +02:00
easyprof.conf This patchset is broken into 4 parts: 2012-05-07 22:37:48 -07:00
logprof.conf Update perl abstraction, logprof.conf, severity.db and tests for Debian/Ubuntu 2014-08-20 19:14:24 -05:00
Makefile utils: add python coverage generation 2014-11-04 13:01:14 -08:00
minitools_test.py test if aa-enforce removes force-complain symlinks 2014-09-26 22:03:14 +02:00
regex_tests.ini Ensure the that the {**,} and {,**} regexs are being properly parsed by 2014-08-14 10:51:42 -07:00
runtests-py2.sh utils/tests: fix bashisms in runtests-py2.sh 2014-09-03 13:00:33 -07:00
runtests-py3.sh fix utils/test/runtests-py*.sh exitcode 2014-10-03 11:48:21 +02:00
severity.db Update perl abstraction, logprof.conf, severity.db and tests for Debian/Ubuntu 2014-08-20 19:14:24 -05:00
severity_broken.db Update perl abstraction, logprof.conf, severity.db and tests for Debian/Ubuntu 2014-08-20 19:14:24 -05:00
test-aa-decode.py utils: make all tests consistent in verbosity 2014-07-25 17:49:06 -07:00
test-aa-easyprof.py cherrypick from trunk: 2015-03-31 16:24:31 -05:00
test-aa.py Let set_profile_flags() change the flags for all hats 2015-05-28 22:16:36 +02:00
test-aamode.py aamode.py - fix LOG_MODE_RE 2014-12-01 22:49:54 +01:00
test-dbus_parse.py Subject: utils tests: restructure DBUS parse tests 2014-09-03 18:26:19 -07:00
test-example.py Enable testloops for nosetests 2015-04-22 22:03:36 +02:00
test-logparser.py logparser.py: change mask only for path events 2015-04-16 01:53:39 +02:00
test-mount_parse.py utils tests: restructure mount parse tests 2014-09-03 18:28:18 -07:00
test-pivot_root_parse.py utils tests: restructure pivotroot parse tests 2014-09-03 18:31:09 -07:00
test-ptrace_parse.py utils tests: restructure ptrace parse tests 2014-09-03 18:32:59 -07:00
test-regex_matches.py Split off RE_PROFILE_NAME and RE_PROFILE_PATH from RE_PROFILE_START 2015-05-09 01:10:59 +02:00
test-severity.py fix "unknown capability: CAP_whatever" in aa-logprof 2014-11-14 02:27:33 +01:00
test-signal_parse.py utils tests: restructure signal parse tests 2014-09-03 18:36:11 -07:00
test-unix_parse.py utils tests: restructure Unix Parse tests 2014-09-03 18:24:57 -07:00