[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 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.

> 
> 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®.