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

Re: [Xen-devel] [PATCH] libxc: fix segfault on uninitialized xch->fmem



On Mon, Apr 03, 2017 at 06:02:30PM +0200, Seraphime Kirkovski wrote:
> Currently in xc_interface_open, xch->fmem is not initialized
> and in some rare case the code fails before ever assigning a value
> to it.
> 
> I got this in master:
> 
>    $ sudo ./xl/xl run
>    xencall: error: Could not obtain handle on privileged command interface: 
> No such file or directory
>    Segmentation fault
> 
> This initializes xch->fmem to NULL
> 
> Signed-off-by: Seraphime Kirkovski <kirkseraph@xxxxxxxxx>
> ---
>  tools/libxc/xc_private.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/libxc/xc_private.c b/tools/libxc/xc_private.c
> index 72e6242417..4ed46fde5f 100644
> --- a/tools/libxc/xc_private.c
> +++ b/tools/libxc/xc_private.c
> @@ -32,6 +32,7 @@ struct xc_interface_core 
> *xc_interface_open(xentoollog_logger *logger,
>  {
>      struct xc_interface_core xch_buf, *xch = &xch_buf;
>  
> +    xch->fmem = NULL;

Since there are a few handles in xch, it would be better to initialise
them all at once by doing:

    struct xc_interface_core xch_buf = { 0 }

>      xch->flags = open_flags;
>      xch->dombuild_logger_file = 0;
>      xc_clear_last_error(xch);
> -- 
> 2.11.0
> 

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

 


Rackspace

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