mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-03 12:11:33 +01:00
kbx: Avoid uninitialized read
* kbx/kbx-client-util.c (datastream_thread): Initialize pointer * kbx/keybox-dump.c (_keybox_dump_cut_records): free blob * kbx/kbxserver.c (kbxd_start_command_handler): do not free passed ctrl * kbx/keyboxd.c (check_own_socket): free sockname -- Signed-off-by: Jakub Jelen <jjelen@redhat.com> GnuPG-bug-id: 5393
This commit is contained in:
parent
fa0771f609
commit
fc5fac83b7
@ -176,7 +176,8 @@ datastream_thread (void *arg)
|
|||||||
int rc;
|
int rc;
|
||||||
unsigned char lenbuf[4];
|
unsigned char lenbuf[4];
|
||||||
size_t nread, datalen;
|
size_t nread, datalen;
|
||||||
char *data, *tmpdata;
|
char *data = NULL;
|
||||||
|
char *tmpdata;
|
||||||
|
|
||||||
/* log_debug ("%s: started\n", __func__); */
|
/* log_debug ("%s: started\n", __func__); */
|
||||||
while (kcd->fp)
|
while (kcd->fp)
|
||||||
|
@ -844,7 +844,6 @@ kbxd_start_command_handler (ctrl_t ctrl, gnupg_fd_t fd, unsigned int session_id)
|
|||||||
{
|
{
|
||||||
log_error (_("can't allocate control structure: %s\n"),
|
log_error (_("can't allocate control structure: %s\n"),
|
||||||
gpg_strerror (gpg_error_from_syserror ()));
|
gpg_strerror (gpg_error_from_syserror ()));
|
||||||
xfree (ctrl);
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
ctrl->server_local->client_pid = ASSUAN_INVALID_PID;
|
ctrl->server_local->client_pid = ASSUAN_INVALID_PID;
|
||||||
|
@ -881,7 +881,7 @@ _keybox_dump_cut_records (const char *filename, unsigned long from,
|
|||||||
unsigned long to, FILE *outfp)
|
unsigned long to, FILE *outfp)
|
||||||
{
|
{
|
||||||
estream_t fp;
|
estream_t fp;
|
||||||
KEYBOXBLOB blob;
|
KEYBOXBLOB blob = NULL;
|
||||||
int rc;
|
int rc;
|
||||||
unsigned long recno = 0;
|
unsigned long recno = 0;
|
||||||
|
|
||||||
@ -902,6 +902,7 @@ _keybox_dump_cut_records (const char *filename, unsigned long from,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
_keybox_release_blob (blob);
|
_keybox_release_blob (blob);
|
||||||
|
blob = NULL;
|
||||||
recno++;
|
recno++;
|
||||||
}
|
}
|
||||||
if (rc == -1)
|
if (rc == -1)
|
||||||
@ -909,6 +910,7 @@ _keybox_dump_cut_records (const char *filename, unsigned long from,
|
|||||||
if (rc)
|
if (rc)
|
||||||
fprintf (stderr, "error reading '%s': %s\n", filename, gpg_strerror (rc));
|
fprintf (stderr, "error reading '%s': %s\n", filename, gpg_strerror (rc));
|
||||||
leave:
|
leave:
|
||||||
|
_keybox_release_blob (blob);
|
||||||
if (fp != es_stdin)
|
if (fp != es_stdin)
|
||||||
es_fclose (fp);
|
es_fclose (fp);
|
||||||
return rc;
|
return rc;
|
||||||
|
@ -1795,7 +1795,10 @@ check_own_socket (void)
|
|||||||
|
|
||||||
err = npth_attr_init (&tattr);
|
err = npth_attr_init (&tattr);
|
||||||
if (err)
|
if (err)
|
||||||
return;
|
{
|
||||||
|
xfree (sockname);
|
||||||
|
return;
|
||||||
|
}
|
||||||
npth_attr_setdetachstate (&tattr, NPTH_CREATE_DETACHED);
|
npth_attr_setdetachstate (&tattr, NPTH_CREATE_DETACHED);
|
||||||
err = npth_create (&thread, &tattr, check_own_socket_thread, sockname);
|
err = npth_create (&thread, &tattr, check_own_socket_thread, sockname);
|
||||||
if (err)
|
if (err)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user