svn commit: r359370 - in stable/12/contrib/elftoolchain: libdwarf libelftc libpe readelf
Mark Johnston
markj at FreeBSD.org
Fri Mar 27 17:06:36 UTC 2020
Author: markj
Date: Fri Mar 27 17:06:24 2020
New Revision: 359370
URL: https://svnweb.freebsd.org/changeset/base/359370
Log:
MFC r359172-r359176:
elftoolchain coverity fixes
Modified:
stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c
stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
stable/12/contrib/elftoolchain/libpe/pe_symtab.c
stable/12/contrib/elftoolchain/readelf/readelf.c
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c
==============================================================================
--- stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c Fri Mar 27 17:04:46 2020 (r359369)
+++ stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c Fri Mar 27 17:06:24 2020 (r359370)
@@ -70,8 +70,7 @@ _dwarf_die_add(Dwarf_CU cu, uint64_t offset, uint64_t
die->die_cu = cu;
die->die_dbg = cu->cu_dbg;
- if (diep != NULL)
- *diep = die;
+ *diep = die;
return (DW_DLE_NONE);
}
Modified: stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
==============================================================================
--- stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 27 17:04:46 2020 (r359369)
+++ stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 27 17:06:24 2020 (r359370)
@@ -2912,7 +2912,7 @@ again:
if (len <= 0)
goto clean;
if (!vector_str_push(&v.ext_name, ddata->cur, len))
- return (0);
+ goto clean;
ddata->cur += len;
if (!vector_type_qualifier_push(&v, TYPE_EXT))
goto clean;
Modified: stable/12/contrib/elftoolchain/libpe/pe_symtab.c
==============================================================================
--- stable/12/contrib/elftoolchain/libpe/pe_symtab.c Fri Mar 27 17:04:46 2020 (r359369)
+++ stable/12/contrib/elftoolchain/libpe/pe_symtab.c Fri Mar 27 17:06:24 2020 (r359370)
@@ -33,7 +33,7 @@ ELFTC_VCSID("$Id: pe_symtab.c 3312 2016-01-10 09:23:51
int
pe_update_symtab(PE *pe, char *symtab, size_t sz, unsigned int nsym)
{
- PE_Scn *ps;
+ PE_Scn *ps, *pstmp;
PE_SecBuf *sb;
PE_SecHdr *sh;
@@ -48,7 +48,7 @@ pe_update_symtab(PE *pe, char *symtab, size_t sz, unsi
}
/* Remove the old symbol table. */
- STAILQ_FOREACH(ps, &pe->pe_scn, ps_next) {
+ STAILQ_FOREACH_SAFE(ps, &pe->pe_scn, ps_next, pstmp) {
if (ps->ps_ndx == 0xFFFFFFFFU)
libpe_release_scn(ps);
}
Modified: stable/12/contrib/elftoolchain/readelf/readelf.c
==============================================================================
--- stable/12/contrib/elftoolchain/readelf/readelf.c Fri Mar 27 17:04:46 2020 (r359369)
+++ stable/12/contrib/elftoolchain/readelf/readelf.c Fri Mar 27 17:06:24 2020 (r359370)
@@ -5915,6 +5915,7 @@ dump_dwarf_frame_regtable(struct readelf *re, Dwarf_Fd
for (; cur_pc < end_pc; cur_pc++) {
if (dwarf_get_fde_info_for_all_regs(fde, cur_pc, &rt, &row_pc,
&de) != DW_DLV_OK) {
+ free(vec);
warnx("dwarf_get_fde_info_for_all_regs failed: %s\n",
dwarf_errmsg(de));
return (-1);
@@ -7088,6 +7089,7 @@ dump_ar(struct readelf *re, int fd)
}
printf("Binary %s(%s) contains:\n",
re->filename, arhdr->ar_name);
+ elf_end(e);
}
printf("\t%s\n", arsym[i].as_name);
}
More information about the svn-src-stable-12
mailing list