[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] tools/libxl: Fix two errors with libxl_userdata_unlink()



On 24/09/14 15:24, Ian Campbell wrote:
> On Wed, 2014-09-24 at 12:39 +0100, Andrew Cooper wrote:
>> Coverity-ID: 1240235
>>  * filename may be NULL, at which point calling unlink() would be unwise.
> Oops!
>
>> Coverity-ID: 1240237
>>  * Initalise rc to 0 to avoid returning stack junk in the success case.
> Doing this right before the out: label is helpful since it helps the
> compiler catch failure paths which forget to set rc.

Good point - v2 incoming.

~Andrew

>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
>> CC: Ian Campbell <Ian.Campbell@xxxxxxxxxx>
>> CC: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
>> CC: Wei Liu <wei.liu2@xxxxxxxxxx>
>> ---
>>  tools/libxl/libxl_dom.c |    4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c
>> index bd21841..11c2683 100644
>> --- a/tools/libxl/libxl_dom.c
>> +++ b/tools/libxl/libxl_dom.c
>> @@ -2097,7 +2097,7 @@ int libxl_userdata_unlink(libxl_ctx *ctx, uint32_t 
>> domid,
>>                            const char *userdata_userid)
>>  {
>>      GC_INIT(ctx);
>> -    int rc;
>> +    int rc = 0;
>>  
>>      libxl__domain_userdata_lock *lock;
>>      const char *filename;
>> @@ -2110,7 +2110,7 @@ int libxl_userdata_unlink(libxl_ctx *ctx, uint32_t 
>> domid,
>>      }
>>  
>>      filename = libxl__userdata_path(gc, domid, userdata_userid, "d");
>> -    if (unlink(filename)) rc = ERROR_FAIL;
>> +    if (!filename || unlink(filename)) rc = ERROR_FAIL;
>>  
>>      libxl__unlock_domain_userdata(lock);
>>  out:
>


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.