[PATCH] util: Prevent a NULl pointer from being accessed

Peter Krempa pkrempa at redhat.com
Wed Feb 12 14:29:22 UTC 2020


On Wed, Feb 12, 2020 at 22:10:20 +0800, Yi Wang wrote:
> From: Huang Zijiang <huang.zijiang at zte.com.cn>
> 
> virJSONValueObjectGetObject maybe return NULL if the key is
> missing or if value is not the correct TYPE, so we have to prevent
> a NULl pointer from being accessed.
> 
> Signed-off-by: Huang Zijiang <huang.zijiang at zte.com.cn>
> Signed-off-by: Yi Wang <wang.yi59 at zte.com.cn>
> ---
>  src/util/virstoragefile.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
> index e46ac99..53224b5 100644
> --- a/src/util/virstoragefile.c
> +++ b/src/util/virstoragefile.c
> @@ -3378,6 +3378,11 @@ virStorageSourceParseBackingJSONSheepdog(virStorageSourcePtr src,
>      const char *filename;
>      const char *vdi = virJSONValueObjectGetString(json, "vdi");
>      virJSONValuePtr server = virJSONValueObjectGetObject(json, "server");
> +    if (!server) {
> +    virReportError(VIR_ERR_INVALID_ARG, "%s",
> +                        _("missing server in JSON backing volume definition"));
> +         return -1;    
> +    }

Server is passed only to virStorageSourceParseBackingJSONSocketAddress
as the '@json' variable where it's checked and the same error is
actually reported, so it's not needed to check it here.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20200212/0a973965/attachment-0001.sig>


More information about the libvir-list mailing list