xenstore: handle daemon creation errors

In rare cases, the path to the daemon socket cannot be created as it is
longer than PATH_MAX. Instead of failing with a NULL pointer dereference,
terminate the application with an error message.

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: Thomas Friebel <friebelt@amazon.de>
Reviewed-by: Julien Grall <jgrall@amazon.co.uk>
Reviewed-by: Juergen Gross <jgross@suse.com>
This commit is contained in:
Norbert Manthey authored and Julien Grall committed 2021-04-01 17:12:05 +01:00
1 parent 00948dcd6a
commit 60f0ba136d
1 file changed
+3
+3
View File
@@ -2005,6 +2005,9 @@ static void init_sockets(void)
struct sockaddr_un addr;
const char *soc_str = xs_daemon_socket();
if (!soc_str)
barf_perror("Failed to obtain xs domain socket");
/* Create sockets for them to listen to. */
atexit(destroy_fds);
sock = socket(PF_UNIX, SOCK_STREAM, 0);
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.