You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
39 lines
965 B
39 lines
965 B
2 years ago
|
From 2f1740eab432abc8e85172531d97eba33342474c Mon Sep 17 00:00:00 2001
|
||
|
From: Bruno Meneguele <bmeneg@redhat.com>
|
||
|
Date: Mon, 16 Aug 2021 12:11:15 -0300
|
||
|
Subject: [PATCH] evmctl: fix memory leak in get_password
|
||
|
|
||
|
The variable "password" is not freed nor returned in case get_password()
|
||
|
succeeds. Return it instead of the intermediary variable "pwd". Issue found
|
||
|
by Coverity scan tool.
|
||
|
|
||
|
src/evmctl.c:2565: leaked_storage: Variable "password" going out of scope
|
||
|
leaks the storage it points to.
|
||
|
|
||
|
Signed-off-by: Bruno Meneguele <bmeneg@redhat.com>
|
||
|
---
|
||
|
src/evmctl.c | 7 ++++++-
|
||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/evmctl.c b/src/evmctl.c
|
||
|
index a8065bbe124a..ab7173723095 100644
|
||
|
--- a/src/evmctl.c
|
||
|
+++ b/src/evmctl.c
|
||
|
@@ -2625,7 +2625,12 @@ static char *get_password(void)
|
||
|
return NULL;
|
||
|
}
|
||
|
|
||
|
- return pwd;
|
||
|
+ if (pwd == NULL) {
|
||
|
+ free(password);
|
||
|
+ return NULL;
|
||
|
+ }
|
||
|
+
|
||
|
+ return password;
|
||
|
}
|
||
|
|
||
|
int main(int argc, char *argv[])
|
||
|
--
|
||
|
2.31.1
|
||
|
|