aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNIIBE Yutaka <[email protected]>2021-11-24 01:43:38 +0000
committerNIIBE Yutaka <[email protected]>2021-11-24 01:43:38 +0000
commita9be9f4e6e6d451698afa3d4780a53ed3718b30b (patch)
tree62a4f991773eccd763bb61a515b8c99f79c855b3
parentgpg: Fix key conversion for SSH. (diff)
downloadgnupg-a9be9f4e6e6d451698afa3d4780a53ed3718b30b.tar.gz
gnupg-a9be9f4e6e6d451698afa3d4780a53ed3718b30b.zip
gpg: Fix format_keyid.
* g10/keyid.c (format_keyid): Allocate buffer earlier. -- Signed-off-by: NIIBE Yutaka <[email protected]>
-rw-r--r--g10/keyid.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/g10/keyid.c b/g10/keyid.c
index 522cc9cda..cf459a192 100644
--- a/g10/keyid.c
+++ b/g10/keyid.c
@@ -357,11 +357,12 @@ keyid_copy (u32 *dest, const u32 *src)
char *
format_keyid (u32 *keyid, int format, char *buffer, int len)
{
- char tmp[KEYID_STR_SIZE];
if (! buffer)
{
- buffer = tmp;
- len = sizeof (tmp);
+ len = KEYID_STR_SIZE;
+ buffer = xtrymalloc (len);
+ if (!buffer)
+ return NULL;
}
if (format == KF_DEFAULT)
@@ -396,8 +397,6 @@ format_keyid (u32 *keyid, int format, char *buffer, int len)
BUG();
}
- if (buffer == tmp)
- return xstrdup (buffer);
return buffer;
}