← Back to team overview

touch-packages team mailing list archive

[Bug 1340927] Re: libapparmor aalogparse memory leak

 

I reproduced the memory leaks with libapparmor from apparmor
2.8.95~2430-0ubuntu5.1 from trusty-updates, and verified that
libapparmor from apparmor 2.8.95~2430-0ubuntu5.2 in trusty-proposed
fixes the issue. I did this by running valgrind on aa-notify against
each version of the library after having run apparmor regressions tests
to generate a lot of events in syslog. Valgrind reported before
updating:

  definitely lost: 11,586,610 bytes in 1,005,004 blocks

after updating, valgrind reported:

  definitely lost: 40,263 bytes in 824 blocks

with the remaining leaked memory looking to be in perl itself.

Marking verification-done.

** Tags added: verification-done

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to apparmor in Ubuntu.
https://bugs.launchpad.net/bugs/1340927

Title:
  libapparmor aalogparse memory leak

Status in AppArmor Linux application security framework:
  Fix Released
Status in AppArmor 2.8 series:
  Fix Released
Status in apparmor package in Ubuntu:
  Fix Released

Bug description:
  My kern.log is filled by lots of messages so aa-notify tries to parse
  them on first run.

  My OS is going down when there's no memory left because aa-notify
  leaks.

  I've found that leak is in /usr/bin/aa-notify file in function
  parse_message.

  If I comment lines from 
  my ($test) = LibAppArmorc::parse_record($msg);
  to
  LibAppArmorc::free_record($test);
  then all goes fine. Program parses file and no memory leak is happened.

  Do I've got sources of my version (libapparmor-perl (2.8.0-5.1) from ubuntu) and found that some variables from aa_log_record struct were not freed by the free_record function. These are
  char *net_local_addr;
  char *net_foreign_addr;

  Could this be a reason of a leak?

  I haven't much time right now to compile and run tests. So I posted
  just information I've found and commented lines in bugged function to
  get my system working.

To manage notifications about this bug go to:
https://bugs.launchpad.net/apparmor/+bug/1340927/+subscriptions