summaryrefslogtreecommitdiffstats
path: root/kbx
diff options
context:
space:
mode:
authorWerner Koch <wk@gnupg.org>2016-01-06 08:39:08 +0100
committerWerner Koch <wk@gnupg.org>2016-01-06 08:39:08 +0100
commitdb82b6131d437bf6ba34db0e08b7dfa9edb11e45 (patch)
treed56b3bd97e7301fa960d81c39b516256a92b133f /kbx
parentdirmngr: Silence one regression test. (diff)
downloadgnupg2-db82b6131d437bf6ba34db0e08b7dfa9edb11e45.tar.xz
gnupg2-db82b6131d437bf6ba34db0e08b7dfa9edb11e45.zip
kbx: Avoid faulty fclose in an error case.
* kbx/keybox-update.c (blob_filecopy): Do not close an uninitialized file pointer after a failure to create a temp file. * kbx/keybox-openpgp.c (next_packet): Remove duplicate assignment of PKTLEN. Signed-off-by: Werner Koch <wk@gnupg.org>
Diffstat (limited to 'kbx')
-rw-r--r--kbx/keybox-openpgp.c1
-rw-r--r--kbx/keybox-update.c3
2 files changed, 1 insertions, 3 deletions
diff --git a/kbx/keybox-openpgp.c b/kbx/keybox-openpgp.c
index a5f602b7b..a0e4ab9f7 100644
--- a/kbx/keybox-openpgp.c
+++ b/kbx/keybox-openpgp.c
@@ -71,7 +71,6 @@ next_packet (unsigned char const **bufptr, size_t *buflen,
if ( !(ctb & 0x80) )
return gpg_error (GPG_ERR_INV_PACKET); /* Invalid CTB. */
- pktlen = 0;
if ((ctb & 0x40)) /* New style (OpenPGP) CTB. */
{
pkttype = (ctb & 0x3f);
diff --git a/kbx/keybox-update.c b/kbx/keybox-update.c
index ef3e33009..aa8086550 100644
--- a/kbx/keybox-update.c
+++ b/kbx/keybox-update.c
@@ -271,12 +271,11 @@ blob_filecopy (int mode, const char *fname, KEYBOXBLOB blob,
goto leave;
}
- /* Create the new file. */
+ /* Create the new file. On success NEWFP is initialized. */
rc = create_tmp_file (fname, &bakfname, &tmpfname, &newfp);
if (rc)
{
fclose (fp);
- fclose (newfp);
goto leave;
}