blob: fd147a18be34a45c9ff7d7d67adac0ddb1c353bd [file] [log] [blame]
Brad Bishop1d80a2e2019-11-15 16:35:03 -05001From 1b3156edd291e0882d80a695d035dd30521345d1 Mon Sep 17 00:00:00 2001
2From: Michael Olbrich <m.olbrich@pengutronix.de>
3Date: Fri, 6 Sep 2019 15:04:01 +0200
4Subject: [PATCH] pstore: fix use after free
5
6The memory is still needed in the sd_journal_sendv() after the 'if' block.
7
8(cherry picked from commit 1e19f5ac0d680a63eccae7ef1fc6ce225dca0bbf)
9
10Upstream-Status: Backport
11
12Signed-off-by: Yongxin Liu <yongxin.liu@windriver.com>
13---
14 src/pstore/pstore.c | 2 +-
15 1 file changed, 1 insertion(+), 1 deletion(-)
16
17diff --git a/src/pstore/pstore.c b/src/pstore/pstore.c
18index c760b3e899..8ffe523830 100644
19--- a/src/pstore/pstore.c
20+++ b/src/pstore/pstore.c
21@@ -117,6 +117,7 @@ static int compare_pstore_entries(const void *_a, const void *_b) {
22
23 static int move_file(PStoreEntry *pe, const char *subdir) {
24 _cleanup_free_ char *ifd_path = NULL, *ofd_path = NULL;
25+ _cleanup_free_ void *field = NULL;
26 const char *suffix, *message;
27 struct iovec iovec[2];
28 int n_iovec = 0, r;
29@@ -138,7 +139,6 @@ static int move_file(PStoreEntry *pe, const char *subdir) {
30 iovec[n_iovec++] = IOVEC_MAKE_STRING(message);
31
32 if (pe->content_size > 0) {
33- _cleanup_free_ void *field = NULL;
34 size_t field_size;
35
36 field_size = strlen("FILE=") + pe->content_size;
37--
382.14.4
39