|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH for-4.15 2/5] tools/xenstored: Avoid unnecessary talloc_strdup() in do_lu_start()
From: Julien Grall <jgrall@xxxxxxxxxx>
At the moment, the return of talloc_strdup() is not checked. This means
we may dereference a NULL pointer if the allocation failed.
However, it is pointless to allocate the memory as send_reply() will
copy the data to a different buffer. So drop the use of talloc_strdup().
This bug was discovered and resolved using Coverity Static Analysis
Security Testing (SAST) by Synopsys, Inc.
Fixes: af216a99fb4a ("tools/xenstore: add the basic framework for doing the
live update")
Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx>
---
tools/xenstore/xenstored_control.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/tools/xenstore/xenstored_control.c
b/tools/xenstore/xenstored_control.c
index e8a501acdb62..8eb57827765c 100644
--- a/tools/xenstore/xenstored_control.c
+++ b/tools/xenstore/xenstored_control.c
@@ -638,7 +638,6 @@ static bool do_lu_start(struct delayed_request *req)
{
time_t now = time(NULL);
const char *ret;
- char *resp;
if (!lu_check_lu_allowed()) {
if (now < lu_status->started_at + lu_status->timeout)
@@ -660,8 +659,7 @@ static bool do_lu_start(struct delayed_request *req)
out:
talloc_free(lu_status);
- resp = talloc_strdup(req->in, ret);
- send_reply(lu_status->conn, XS_CONTROL, resp, strlen(resp) + 1);
+ send_reply(lu_status->conn, XS_CONTROL, ret, strlen(ret) + 1);
return true;
}
--
2.17.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |