tools/xenstore: Harden xs_domain_is_introduced()
authorNorbert Manthey <nmanthey@amazon.de>
Fri, 26 Feb 2021 14:41:44 +0000 (15:41 +0100)
committerJulien Grall <jgrall@amazon.com>
Wed, 3 Mar 2021 18:22:06 +0000 (18:22 +0000)
commit243036df0d55673de59c214e240b9b914d278b65
treef028968c90b18bbbb12bb274dc00d2cd0860575d
parentff3e7e76813a7958e583e6d7e9090ff9b6df1ecd
tools/xenstore: Harden xs_domain_is_introduced()

The function single_with_domid() may return NULL if something
went wrong (e.g. XenStored returns an error or the connection is
in bad state).

They are unlikely but not impossible, so it would be better to
return an error and allow the caller to handle it gracefully rather
than crashing.

In this case we should treat it as the domain has disappeared (i.e.
return false) as the caller will not likely going to be able to
communicate with XenStored again.

This bug was discovered and resolved using Coverity Static Analysis
Security Testing (SAST) by Synopsys, Inc.

Signed-off-by: Norbert Manthey <nmanthey@amazon.de>
Reviewed-by: Julien Grall <jgrall@amazon.co.uk>
Reviewed-by: Raphael Ning <raphning@amazon.co.uk>
Reviewed-by: Juergen Gross <jgross@suse.com>
Release-Acked-by: Ian Jackson <iwj@xenproject.org>
tools/libs/store/xs.c