]> git.ipfire.org Git - thirdparty/libvirt.git/commit
cgroup: reuse buffer for getline
authorJán Tomko <jtomko@redhat.com>
Wed, 17 Jul 2013 08:56:05 +0000 (10:56 +0200)
committerJán Tomko <jtomko@redhat.com>
Wed, 17 Jul 2013 12:08:11 +0000 (14:08 +0200)
commitcc7329317fee6088055d7b09594c19f1b8fec5e3
treeff0e788e4d4b399386f05e11a649abb0704e4cfd
parente80e07f65734ed4c1a487f6f9ddc06c84dee4787
cgroup: reuse buffer for getline

Reuse the buffer for getline and track buffer allocation
separately from the string length to prevent unlikely
out-of-bounds memory access.

This fixes the following leak that happened when zero bytes were read:

==404== 120 bytes in 1 blocks are definitely lost in loss record 1,344 of 1,671
==404==    at 0x4C2C71B: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
==404==    by 0x906F862: getdelim (iogetdelim.c:68)
==404==    by 0x52A48FB: virCgroupPartitionNeedsEscaping (vircgroup.c:1136)
==404==    by 0x52A0FB4: virCgroupPartitionEscape (vircgroup.c:1171)
==404==    by 0x52A0EA4: virCgroupNewDomainPartition (vircgroup.c:1450)
src/util/vircgroup.c