[libvirt] [PATCH 5/4] security: Don't try to lock NULL paths

Michal Privoznik mprivozn at redhat.com
Tue Sep 25 11:01:59 UTC 2018


On 09/25/2018 12:47 PM, Erik Skultety wrote:
> On Tue, Sep 25, 2018 at 09:34:50AM +0200, Michal Privoznik wrote:
>> It may happen that in the list of paths/disk sources to relabel
>> there is a disk source. If that is the case, the path is NULL. In
> 
> Is there a way to prevent to such a source would not make it into the list in
> the first place?

Not at all. Disk source may consists of variety of strings. A path is
just one of the options. The other is host FQN for iscsi, rbd, ceph and
all sorts of other beasts. And yet, we might want to relabel them.

> 
>> that case, we shouldn't try to lock the path. It's likely a
>> network disk anyway and therefore there is nothing to lock.
>>
>> Signed-off-by: Michal Privoznik <mprivozn at redhat.com>
>> ---
>>  src/security/security_dac.c     | 3 ++-
>>  src/security/security_selinux.c | 3 ++-
>>  2 files changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/src/security/security_dac.c b/src/security/security_dac.c
>> index 876cca0f2f..04168feb3d 100644
>> --- a/src/security/security_dac.c
>> +++ b/src/security/security_dac.c
>> @@ -216,7 +216,8 @@ virSecurityDACTransactionRun(pid_t pid ATTRIBUTE_UNUSED,
>>      for (i = 0; i < list->nItems; i++) {
>>          const char *p = list->items[i]->path;
>>
>> -        if (virFileIsDir(p))
>> +        if (!p ||
>> +            virFileIsDir(p))
> 
> ^this easily fits on the same line...

Yep, I just wanted to separate these conditions as they both serve
different purposes. But I can move it onto a single line if desired.

Michal




More information about the libvir-list mailing list