[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] xenstore: add missing checks for allocation failure
commit 670a34bb3e118fd729c39f667550d5d49b0f9118 Author: Juergen Gross <jgross@xxxxxxxx> AuthorDate: Mon Mar 20 09:00:21 2017 +0100 Commit: Wei Liu <wei.liu2@xxxxxxxxxx> CommitDate: Wed Mar 22 11:23:14 2017 +0000 xenstore: add missing checks for allocation failure Add missing allocation failure checks. Signed-off-by: Juergen Gross <jgross@xxxxxxxx> Reviewed-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- tools/xenstore/xenstored_core.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/xenstore/xenstored_core.c b/tools/xenstore/xenstored_core.c index ed80345..fe11ff2 100644 --- a/tools/xenstore/xenstored_core.c +++ b/tools/xenstore/xenstored_core.c @@ -946,6 +946,8 @@ static struct node *construct_node(struct connection *conn, const void *ctx, base = basename(name); baselen = strlen(base) + 1; children = talloc_array(ctx, char, parent->childlen + baselen); + if (!children) + goto nomem; memcpy(children, parent->children, parent->childlen); memcpy(children + parent->childlen, base, baselen); parent->children = children; @@ -953,13 +955,19 @@ static struct node *construct_node(struct connection *conn, const void *ctx, /* Allocate node */ node = talloc(ctx, struct node); + if (!node) + goto nomem; node->tdb = tdb_context(conn); node->name = talloc_strdup(node, name); + if (!node->name) + goto nomem; /* Inherit permissions, except unprivileged domains own what they create */ node->num_perms = parent->num_perms; node->perms = talloc_memdup(node, parent->perms, node->num_perms * sizeof(node->perms[0])); + if (!node->perms) + goto nomem; if (domain_is_unprivileged(conn)) node->perms[0].id = conn->id; @@ -969,6 +977,10 @@ static struct node *construct_node(struct connection *conn, const void *ctx, node->parent = parent; domain_entry_inc(conn, node); return node; + +nomem: + errno = ENOMEM; + return NULL; } static int destroy_node(void *_node) -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |