31 lines
821 B
Diff
31 lines
821 B
Diff
From 0f7082ea46562b15221f428860b993e0519c6cbd Mon Sep 17 00:00:00 2001
|
|
From: Veronika Hanulikova <vhanulik@redhat.com>
|
|
Date: Wed, 16 Feb 2022 11:59:27 +0100
|
|
Subject: [PATCH] Fix usage of pointer after realloc
|
|
|
|
---
|
|
src/sm/sm-iso.c | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/sm/sm-iso.c b/src/sm/sm-iso.c
|
|
index 5baded77c6..2c3f6bcabd 100644
|
|
--- a/src/sm/sm-iso.c
|
|
+++ b/src/sm/sm-iso.c
|
|
@@ -181,13 +181,14 @@ static int format_le(size_t le, struct sc_asn1_entry *le_entry,
|
|
|
|
static int prefix_buf(u8 prefix, u8 *buf, size_t buflen, u8 **cat)
|
|
{
|
|
- u8 *p;
|
|
+ u8 *p = NULL;
|
|
+ int ptr_same = *cat == buf;
|
|
|
|
p = realloc(*cat, buflen + 1);
|
|
if (!p)
|
|
return SC_ERROR_OUT_OF_MEMORY;
|
|
|
|
- if (*cat == buf) {
|
|
+ if (ptr_same) {
|
|
memmove(p + 1, p, buflen);
|
|
} else {
|
|
/* Flawfinder: ignore */
|