[libvirt] [PATCH] storage_backend_fs: avoid NULL dereference on opendir failure
Jim Meyering
jim at meyering.net
Wed Sep 2 10:53:53 UTC 2009
Daniel P. Berrange wrote:
> On Wed, Sep 02, 2009 at 10:05:03AM +0200, Jim Meyering wrote:
>> >From 7f453c68bc709d542e4c40a388c92c7969ad0a3a Mon Sep 17 00:00:00 2001
>> From: Jim Meyering <meyering at redhat.com>
>> Date: Wed, 2 Sep 2009 09:58:50 +0200
>> Subject: [PATCH 3/4] lxc: avoid NULL dereference when we find no mount point
>>
>> * src/lxc_container.c (lxcContainerUnmountOldFS): Don't pass
>> a NULL pointer to qsort.
>> ---
>> src/lxc_container.c | 5 +++--
>> 1 files changed, 3 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/lxc_container.c b/src/lxc_container.c
>> index 950dd50..2073864 100644
>> --- a/src/lxc_container.c
>> +++ b/src/lxc_container.c
>> @@ -546,8 +546,9 @@ static int lxcContainerUnmountOldFS(void)
>> }
>> endmntent(procmnt);
>>
>> - qsort(mounts, nmounts, sizeof(mounts[0]),
>> - lxcContainerChildMountSort);
>> + if (mounts)
>> + qsort(mounts, nmounts, sizeof(mounts[0]),
>> + lxcContainerChildMountSort);
>>
>> for (i = 0 ; i < nmounts ; i++) {
>> VIR_DEBUG("Umount %s", mounts[i]);
>
> This would is impossible to hit, since you must at least have a /proc
> filesystem if we've got this far, but doesn't hurt to check anyway :-)
It can be triggered when the first getmntent call fails.
I'll revise the log to mention that.
More information about the libvir-list
mailing list