~ubuntu-branches/ubuntu/precise/apparmor/precise-security

« back to all changes in this revision

Viewing changes to parser/parser_regex.c

  • Committer: Package Import Robot
  • Author(s): Steve Beattie, Jamie Strandboge, Serge Hallyn, Steve Beattie
  • Date: 2012-04-12 06:17:42 UTC
  • Revision ID: package-import@ubuntu.com-20120412061742-9v75hjko2mjtbewv
Tags: 2.7.102-0ubuntu3
[ Jamie Strandboge ]
* debian/patches/0007-ubuntu-manpage-updates.patch: update apparmor(5)
  to describe Ubuntu's two-stage policy load and how to add utilize it
  when developing policy (LP: #974089)

[ Serge Hallyn ]
* debian/apparmor.init: do nothing in a container.  This can be
  removed once stacked profiles are supported and used by lxc.
  (LP: #978297)

[ Steve Beattie ]
* debian/patches/0008-apparmor-lp963756.patch: Fix permission mapping
  for change_profile onexec (LP: #963756)
* debian/patches/0009-apparmor-lp959560-part1.patch,
  debian/patches/0010-apparmor-lp959560-part2.patch: Update the parser
  to support the 'in' keyword for value lists, and make mount
  operations aware of 'in' keyword so they can affect the flags build
  list (LP: #959560)
* debian/patches/0011-apparmor-lp872446.patch: fix logprof missing
  exec events in complain mode (LP: #872446)
* debian/patches/0012-apparmor-lp978584.patch: allow inet6 access in
  dovecot imap-login profile (LP: #978584)
* debian/patches/0013-apparmor-lp800826.patch: fix libapparmor
  log parsing library from dropping apparmor network events that
  contain ip addresses or ports in them (LP: #800826)
* debian/patches/0014-apparmor-lp979095.patch: document new mount rule
  syntax and usage in apparmor.d(5) manpage (LP: #979095)
* debian/patches/0015-apparmor-lp963756.patch: Fix change_onexec
  for profiles without attachment specification (LP: #963756,
  LP: #978038)
* debian/patches/0016-apparmor-lp968956.patch: Fix protocol error when
  loading policy to kernels without compat patches (LP: #968956)
* debian/patches/0017-apparmor-lp979135.patch: Fix change_profile to
  grant access to /proc/attr api (LP: #979135)

Show diffs side-by-side

added added

removed removed

Lines of Context:
510
510
                        return FALSE;
511
511
        }
512
512
        if (entry->mode & AA_CHANGE_PROFILE) {
 
513
                char *vec[3];
 
514
                char lbuf[PATH_MAX + 8];
 
515
                int index = 1;
 
516
 
 
517
                /* allow change_profile for all execs */
 
518
                vec[0] = "/[^\\x00]*";
 
519
 
513
520
                if (entry->namespace) {
514
 
                        char *vec[2];
515
 
                        char lbuf[PATH_MAX + 8];
516
521
                        int pos;
517
522
                        ptype = convert_aaregex_to_pcre(entry->namespace, 0, lbuf, PATH_MAX + 8, &pos);
518
 
                        vec[0] = lbuf;
519
 
                        vec[1] = tbuf;
520
 
                        if (!aare_add_rule_vec(dfarules, 0, AA_CHANGE_PROFILE, 0, 2, vec, dfaflags))
521
 
                            return FALSE;
522
 
                } else {
523
 
                  if (!aare_add_rule(dfarules, tbuf, 0, AA_CHANGE_PROFILE, 0, dfaflags))
524
 
                                return FALSE;
 
523
                        vec[index++] = lbuf;
525
524
                }
 
525
                vec[index++] = tbuf;
 
526
 
 
527
                /* regular change_profile rule */
 
528
                if (!aare_add_rule_vec(dfarules, 0, AA_CHANGE_PROFILE | AA_ONEXEC, 0, index - 1, &vec[1], dfaflags))
 
529
                        return FALSE;
 
530
                /* onexec rules - both rules are needed for onexec */
 
531
                if (!aare_add_rule_vec(dfarules, 0, AA_ONEXEC, 0, 1, vec, dfaflags))
 
532
                        return FALSE;
 
533
                if (!aare_add_rule_vec(dfarules, 0, AA_ONEXEC, 0, index, vec, dfaflags))
 
534
                        return FALSE;
526
535
        }
527
536
        if (entry->mode & (AA_USER_PTRACE | AA_OTHER_PTRACE)) {
528
537
                int mode = entry->mode & (AA_USER_PTRACE | AA_OTHER_PTRACE);