Coverage Report

Created: 2026-07-24 06:20

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/elfutils/lib/system.h
Line
Count
Source
1
/* Declarations for common convenience functions.
2
   Copyright (C) 2006-2011 Red Hat, Inc.
3
   Copyright (C) 2022, 2026 Mark J. Wielaard <mark@klomp.org>
4
   Copyright (C) 2023 Khem Raj.
5
   This file is part of elfutils.
6
7
   This file is free software; you can redistribute it and/or modify
8
   it under the terms of either
9
10
     * the GNU Lesser General Public License as published by the Free
11
       Software Foundation; either version 3 of the License, or (at
12
       your option) any later version
13
14
   or
15
16
     * the GNU General Public License as published by the Free
17
       Software Foundation; either version 2 of the License, or (at
18
       your option) any later version
19
20
   or both in parallel, as here.
21
22
   elfutils is distributed in the hope that it will be useful, but
23
   WITHOUT ANY WARRANTY; without even the implied warranty of
24
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
25
   General Public License for more details.
26
27
   You should have received copies of the GNU General Public License and
28
   the GNU Lesser General Public License along with this program.  If
29
   not, see <http://www.gnu.org/licenses/>.  */
30
31
#ifndef LIB_SYSTEM_H
32
#define LIB_SYSTEM_H  1
33
34
/* Prevent double inclusion of config.h, config.h includes eu-config.h.  */
35
#ifdef HAVE_CONFIG_H
36
#ifndef EU_CONFIG_H
37
# include <config.h>
38
#endif
39
#endif
40
41
#include <errno.h>
42
#include <fcntl.h>
43
#include <stdbool.h>
44
#include <stddef.h>
45
#include <stdint.h>
46
#include <string.h>
47
#include <stdarg.h>
48
#include <stdlib.h>
49
50
/* System dependent headers */
51
#include <byteswap.h>
52
#include <endian.h>
53
#include <sys/mman.h>
54
#include <sys/param.h>
55
#include <unistd.h>
56
57
#if defined(HAVE_SYS_RANDOM_H)
58
#include <sys/random.h>
59
#endif
60
61
#if defined(HAVE_ERROR_H)
62
#include <error.h>
63
#elif defined(HAVE_ERR_H)
64
extern int error_message_count;
65
void error(int status, int errnum, const char *format, ...);
66
#else
67
#error "err.h or error.h must be available"
68
#endif
69
70
/* error (EXIT_FAILURE, ...) should be noreturn but on some systems it
71
   isn't.  This may cause warnings about code that should not be reachable.
72
   So have an explicit error_exit wrapper that is noreturn (because it
73
   calls exit explicitly).  */
74
#define error_exit(errnum,...) do { \
75
    error (EXIT_FAILURE,errnum,__VA_ARGS__); \
76
    exit (EXIT_FAILURE); \
77
  } while (0)
78
79
#if BYTE_ORDER == LITTLE_ENDIAN
80
1.44M
# define LE32(n)  (n)
81
521k
# define LE64(n)  (n)
82
481k
# define BE32(n)  bswap_32 (n)
83
753k
# define BE64(n)  bswap_64 (n)
84
#elif BYTE_ORDER == BIG_ENDIAN
85
# define BE32(n)  (n)
86
# define BE64(n)  (n)
87
# define LE32(n)  bswap_32 (n)
88
# define LE64(n)  bswap_64 (n)
89
#else
90
# error "Unknown byte order"
91
#endif
92
93
#ifndef MAX
94
#define MAX(m, n) ((m) < (n) ? (n) : (m))
95
#endif
96
97
#ifndef MIN
98
#define MIN(m, n) ((m) < (n) ? (m) : (n))
99
#endif
100
101
#if !HAVE_DECL_POWEROF2
102
#define powerof2(x) (((x) & ((x) - 1)) == 0)
103
#endif
104
105
#if !HAVE_DECL_MEMPCPY
106
#define mempcpy(dest, src, n) \
107
    ((void *) ((char *) memcpy (dest, src, n) + (size_t) n))
108
#endif
109
110
#if !HAVE_DECL_REALLOCARRAY
111
static inline void *
112
reallocarray (void *ptr, size_t nmemb, size_t size)
113
{
114
  if (size > 0 && nmemb > SIZE_MAX / size)
115
    {
116
      errno = ENOMEM;
117
      return NULL;
118
    }
119
  return realloc (ptr, nmemb * size);
120
}
121
#endif
122
123
/* Return TRUE if the start of STR matches PREFIX, FALSE otherwise.  */
124
125
static inline int
126
startswith (const char *str, const char *prefix)
127
881k
{
128
881k
  return strncmp (str, prefix, strlen (prefix)) == 0;
129
881k
}
Unexecuted instantiation: fuzz-libdwfl.c:startswith
Unexecuted instantiation: dwfl_begin.c:startswith
Unexecuted instantiation: dwfl_end.c:startswith
Unexecuted instantiation: dwfl_error.c:startswith
Unexecuted instantiation: dwfl_module.c:startswith
Unexecuted instantiation: offline.c:startswith
Unexecuted instantiation: dwfl_module_getdwarf.c:startswith
Unexecuted instantiation: find-debuginfo.c:startswith
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:startswith
Unexecuted instantiation: libdwfl_crc32_file.c:startswith
Unexecuted instantiation: open.c:startswith
Unexecuted instantiation: image-header.c:startswith
Unexecuted instantiation: dwfl_frame.c:startswith
Unexecuted instantiation: frame_unwind.c:startswith
Unexecuted instantiation: dwfl_frame_pc.c:startswith
Unexecuted instantiation: dwfl_frame_regs.c:startswith
Unexecuted instantiation: gzip.c:startswith
Unexecuted instantiation: dwflst_process_tracker.c:startswith
Unexecuted instantiation: dwflst_tracker_find_elf.c:startswith
Unexecuted instantiation: dwflst_tracker_elftab.c:startswith
Unexecuted instantiation: dwflst_tracker_dwfltab.c:startswith
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:startswith
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:startswith
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:startswith
Unexecuted instantiation: eblopenbackend.c:startswith
Unexecuted instantiation: i386_initreg_sample.c:startswith
Unexecuted instantiation: x86_64_initreg_sample.c:startswith
Unexecuted instantiation: arm_symbol.c:startswith
Unexecuted instantiation: aarch64_symbol.c:startswith
Unexecuted instantiation: aarch64_initreg.c:startswith
Unexecuted instantiation: sparc_initreg.c:startswith
Unexecuted instantiation: ppc_initreg.c:startswith
Unexecuted instantiation: s390_initreg.c:startswith
Unexecuted instantiation: riscv_init.c:startswith
Unexecuted instantiation: riscv_initreg.c:startswith
Unexecuted instantiation: csky_initreg.c:startswith
Unexecuted instantiation: loongarch_initreg.c:startswith
Unexecuted instantiation: mips_init.c:startswith
Unexecuted instantiation: mips_symbol.c:startswith
Unexecuted instantiation: mips_regs.c:startswith
Unexecuted instantiation: mips_retval.c:startswith
Unexecuted instantiation: i386_disasm.c:startswith
Unexecuted instantiation: x86_64_disasm.c:startswith
Unexecuted instantiation: bpf_disasm.c:startswith
Unexecuted instantiation: riscv_disasm.c:startswith
dwarf_begin_elf.c:startswith
Line
Count
Source
127
881k
{
128
881k
  return strncmp (str, prefix, strlen (prefix)) == 0;
129
881k
}
Unexecuted instantiation: dwarf_end.c:startswith
Unexecuted instantiation: dwarf_tag.c:startswith
Unexecuted instantiation: dwarf_error.c:startswith
Unexecuted instantiation: dwarf_attr.c:startswith
Unexecuted instantiation: dwarf_abbrev_hash.c:startswith
Unexecuted instantiation: dwarf_sig8_hash.c:startswith
Unexecuted instantiation: dwarf_attr_integrate.c:startswith
Unexecuted instantiation: dwarf_hasattr_integrate.c:startswith
Unexecuted instantiation: dwarf_child.c:startswith
Unexecuted instantiation: dwarf_formudata.c:startswith
Unexecuted instantiation: dwarf_formref_die.c:startswith
Unexecuted instantiation: dwarf_siblingof.c:startswith
Unexecuted instantiation: dwarf_diecu.c:startswith
Unexecuted instantiation: dwarf_hasattr.c:startswith
Unexecuted instantiation: dwarf_bytesize.c:startswith
Unexecuted instantiation: dwarf_bitsize.c:startswith
Unexecuted instantiation: dwarf_formflag.c:startswith
Unexecuted instantiation: libdw_findcu.c:startswith
Unexecuted instantiation: libdw_form.c:startswith
Unexecuted instantiation: libdw_alloc.c:startswith
Unexecuted instantiation: frame-cache.c:startswith
Unexecuted instantiation: dwarf_frame_cfa.c:startswith
Unexecuted instantiation: dwarf_frame_register.c:startswith
Unexecuted instantiation: dwarf_cfi_addrframe.c:startswith
Unexecuted instantiation: dwarf_cfi_end.c:startswith
Unexecuted instantiation: dwarf_aggregate_size.c:startswith
Unexecuted instantiation: dwarf_getalt.c:startswith
Unexecuted instantiation: dwarf_setalt.c:startswith
Unexecuted instantiation: dwarf_peel_type.c:startswith
Unexecuted instantiation: dwarf_default_lower_bound.c:startswith
Unexecuted instantiation: libdw_find_split_unit.c:startswith
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:startswith
Unexecuted instantiation: dwfl_report_elf.c:startswith
Unexecuted instantiation: relocate.c:startswith
Unexecuted instantiation: dwfl_module_build_id.c:startswith
Unexecuted instantiation: dwfl_build_id_find_elf.c:startswith
Unexecuted instantiation: linux-proc-maps.c:startswith
Unexecuted instantiation: dwfl_addrmodule.c:startswith
Unexecuted instantiation: libdwfl_crc32.c:startswith
Unexecuted instantiation: elf-from-memory.c:startswith
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:startswith
Unexecuted instantiation: dwfl_module_eh_cfi.c:startswith
Unexecuted instantiation: linux-pid-attach.c:startswith
Unexecuted instantiation: dwarf_begin.c:startswith
Unexecuted instantiation: dwarf_getabbrev.c:startswith
Unexecuted instantiation: dwarf_nextcu.c:startswith
Unexecuted instantiation: dwarf_offdie.c:startswith
Unexecuted instantiation: dwarf_formstring.c:startswith
Unexecuted instantiation: dwarf_haschildren.c:startswith
Unexecuted instantiation: dwarf_formsdata.c:startswith
Unexecuted instantiation: dwarf_formref.c:startswith
Unexecuted instantiation: dwarf_srclang.c:startswith
Unexecuted instantiation: dwarf_getlocation.c:startswith
Unexecuted instantiation: fde.c:startswith
Unexecuted instantiation: cfi.c:startswith
Unexecuted instantiation: dwarf_getcfi.c:startswith
Unexecuted instantiation: dwarf_getcfi_elf.c:startswith
Unexecuted instantiation: dwarf_get_units.c:startswith
Unexecuted instantiation: segment.c:startswith
Unexecuted instantiation: dwarf_formaddr.c:startswith
Unexecuted instantiation: dwarf_lowpc.c:startswith
Unexecuted instantiation: dwarf_ranges.c:startswith
Unexecuted instantiation: dwarf_formblock.c:startswith
Unexecuted instantiation: dwarf_next_cfi.c:startswith
Unexecuted instantiation: cie.c:startswith
Unexecuted instantiation: dwarf_highpc.c:startswith
Unexecuted instantiation: elf_version.c:startswith
Unexecuted instantiation: elf_hash.c:startswith
Unexecuted instantiation: elf_error.c:startswith
Unexecuted instantiation: elf_begin.c:startswith
Unexecuted instantiation: elf_next.c:startswith
Unexecuted instantiation: elf_end.c:startswith
Unexecuted instantiation: elf_kind.c:startswith
Unexecuted instantiation: gelf_getclass.c:startswith
Unexecuted instantiation: elf_getident.c:startswith
Unexecuted instantiation: gelf_fsize.c:startswith
Unexecuted instantiation: elf32_xlatetof.c:startswith
Unexecuted instantiation: elf32_xlatetom.c:startswith
Unexecuted instantiation: elf64_xlatetof.c:startswith
Unexecuted instantiation: elf64_xlatetom.c:startswith
Unexecuted instantiation: gelf_xlate.c:startswith
Unexecuted instantiation: gelf_getehdr.c:startswith
Unexecuted instantiation: gelf_getphdr.c:startswith
Unexecuted instantiation: elf_getarhdr.c:startswith
Unexecuted instantiation: elf_rawfile.c:startswith
Unexecuted instantiation: elf_readall.c:startswith
Unexecuted instantiation: elf_cntl.c:startswith
Unexecuted instantiation: elf_getscn.c:startswith
Unexecuted instantiation: elf_nextscn.c:startswith
Unexecuted instantiation: elf_ndxscn.c:startswith
Unexecuted instantiation: gelf_getshdr.c:startswith
Unexecuted instantiation: gelf_update_shdr.c:startswith
Unexecuted instantiation: elf_strptr.c:startswith
Unexecuted instantiation: elf_rawdata.c:startswith
Unexecuted instantiation: elf_getdata.c:startswith
Unexecuted instantiation: elf_getdata_rawchunk.c:startswith
Unexecuted instantiation: elf_memory.c:startswith
Unexecuted instantiation: gelf_getrel.c:startswith
Unexecuted instantiation: gelf_getrela.c:startswith
Unexecuted instantiation: gelf_update_rel.c:startswith
Unexecuted instantiation: gelf_update_rela.c:startswith
Unexecuted instantiation: gelf_getdyn.c:startswith
Unexecuted instantiation: gelf_getnote.c:startswith
Unexecuted instantiation: gelf_xlatetof.c:startswith
Unexecuted instantiation: gelf_xlatetom.c:startswith
Unexecuted instantiation: gelf_getsymshndx.c:startswith
Unexecuted instantiation: elf_getphdrnum.c:startswith
Unexecuted instantiation: elf_getshdrnum.c:startswith
Unexecuted instantiation: elf_getshdrstrndx.c:startswith
Unexecuted instantiation: gelf_offscn.c:startswith
Unexecuted instantiation: elf_compress.c:startswith
Unexecuted instantiation: elf_compress_gnu.c:startswith
Unexecuted instantiation: elf32_getphdr.c:startswith
Unexecuted instantiation: elf64_getphdr.c:startswith
Unexecuted instantiation: elf32_getshdr.c:startswith
Unexecuted instantiation: elf64_getshdr.c:startswith
Unexecuted instantiation: elf32_offscn.c:startswith
Unexecuted instantiation: elf64_offscn.c:startswith
Unexecuted instantiation: gelf_getchdr.c:startswith
Unexecuted instantiation: elf32_getchdr.c:startswith
Unexecuted instantiation: elf64_getchdr.c:startswith
Unexecuted instantiation: core-file.c:startswith
Unexecuted instantiation: linux-core-attach.c:startswith
Unexecuted instantiation: dwfl_segment_report_module.c:startswith
Unexecuted instantiation: link_map.c:startswith
Unexecuted instantiation: dwfl_module_report_build_id.c:startswith
Unexecuted instantiation: derelocate.c:startswith
Unexecuted instantiation: elf_clone.c:startswith
Unexecuted instantiation: fuzz-libelf.c:startswith
130
131
/* Return TRUE if STR[FROM] is a valid string with a zero terminator
132
   at or before STR[TO - 1].  Note FROM is an index into the STR
133
   array, while TO is the maximum size of the STR array.  This
134
   function returns FALSE when TO is zero or FROM >= TO.  */
135
static inline bool
136
validate_str (const char *str, size_t from, size_t to)
137
524k
{
138
524k
#if HAVE_DECL_MEMRCHR
139
  // Check end first, which is likely a zero terminator,
140
  // to prevent function call
141
524k
  return (to > 0
142
524k
    && (str[to - 1] == '\0'
143
265k
        || (to > from
144
265k
      && memrchr (&str[from], '\0', to - from - 1) != NULL)));
145
#else
146
  do {
147
    if (to <= from)
148
      return false;
149
150
    to--;
151
  } while (str[to]);
152
153
  return true;
154
#endif
155
524k
}
Unexecuted instantiation: fuzz-libdwfl.c:validate_str
Unexecuted instantiation: dwfl_begin.c:validate_str
Unexecuted instantiation: dwfl_end.c:validate_str
Unexecuted instantiation: dwfl_error.c:validate_str
Unexecuted instantiation: dwfl_module.c:validate_str
Unexecuted instantiation: offline.c:validate_str
Unexecuted instantiation: dwfl_module_getdwarf.c:validate_str
Unexecuted instantiation: find-debuginfo.c:validate_str
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:validate_str
Unexecuted instantiation: libdwfl_crc32_file.c:validate_str
Unexecuted instantiation: open.c:validate_str
Unexecuted instantiation: image-header.c:validate_str
Unexecuted instantiation: dwfl_frame.c:validate_str
Unexecuted instantiation: frame_unwind.c:validate_str
Unexecuted instantiation: dwfl_frame_pc.c:validate_str
Unexecuted instantiation: dwfl_frame_regs.c:validate_str
Unexecuted instantiation: gzip.c:validate_str
Unexecuted instantiation: dwflst_process_tracker.c:validate_str
Unexecuted instantiation: dwflst_tracker_find_elf.c:validate_str
Unexecuted instantiation: dwflst_tracker_elftab.c:validate_str
Unexecuted instantiation: dwflst_tracker_dwfltab.c:validate_str
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:validate_str
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:validate_str
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:validate_str
Unexecuted instantiation: eblopenbackend.c:validate_str
Unexecuted instantiation: i386_initreg_sample.c:validate_str
Unexecuted instantiation: x86_64_initreg_sample.c:validate_str
Unexecuted instantiation: arm_symbol.c:validate_str
Unexecuted instantiation: aarch64_symbol.c:validate_str
Unexecuted instantiation: aarch64_initreg.c:validate_str
Unexecuted instantiation: sparc_initreg.c:validate_str
Unexecuted instantiation: ppc_initreg.c:validate_str
Unexecuted instantiation: s390_initreg.c:validate_str
Unexecuted instantiation: riscv_init.c:validate_str
Unexecuted instantiation: riscv_initreg.c:validate_str
Unexecuted instantiation: csky_initreg.c:validate_str
Unexecuted instantiation: loongarch_initreg.c:validate_str
Unexecuted instantiation: mips_init.c:validate_str
Unexecuted instantiation: mips_symbol.c:validate_str
Unexecuted instantiation: mips_regs.c:validate_str
Unexecuted instantiation: mips_retval.c:validate_str
Unexecuted instantiation: i386_disasm.c:validate_str
Unexecuted instantiation: x86_64_disasm.c:validate_str
Unexecuted instantiation: bpf_disasm.c:validate_str
Unexecuted instantiation: riscv_disasm.c:validate_str
Unexecuted instantiation: dwarf_begin_elf.c:validate_str
Unexecuted instantiation: dwarf_end.c:validate_str
Unexecuted instantiation: dwarf_tag.c:validate_str
Unexecuted instantiation: dwarf_error.c:validate_str
Unexecuted instantiation: dwarf_attr.c:validate_str
Unexecuted instantiation: dwarf_abbrev_hash.c:validate_str
Unexecuted instantiation: dwarf_sig8_hash.c:validate_str
Unexecuted instantiation: dwarf_attr_integrate.c:validate_str
Unexecuted instantiation: dwarf_hasattr_integrate.c:validate_str
Unexecuted instantiation: dwarf_child.c:validate_str
Unexecuted instantiation: dwarf_formudata.c:validate_str
Unexecuted instantiation: dwarf_formref_die.c:validate_str
Unexecuted instantiation: dwarf_siblingof.c:validate_str
Unexecuted instantiation: dwarf_diecu.c:validate_str
Unexecuted instantiation: dwarf_hasattr.c:validate_str
Unexecuted instantiation: dwarf_bytesize.c:validate_str
Unexecuted instantiation: dwarf_bitsize.c:validate_str
Unexecuted instantiation: dwarf_formflag.c:validate_str
Unexecuted instantiation: libdw_findcu.c:validate_str
Unexecuted instantiation: libdw_form.c:validate_str
Unexecuted instantiation: libdw_alloc.c:validate_str
Unexecuted instantiation: frame-cache.c:validate_str
Unexecuted instantiation: dwarf_frame_cfa.c:validate_str
Unexecuted instantiation: dwarf_frame_register.c:validate_str
Unexecuted instantiation: dwarf_cfi_addrframe.c:validate_str
Unexecuted instantiation: dwarf_cfi_end.c:validate_str
Unexecuted instantiation: dwarf_aggregate_size.c:validate_str
Unexecuted instantiation: dwarf_getalt.c:validate_str
Unexecuted instantiation: dwarf_setalt.c:validate_str
Unexecuted instantiation: dwarf_peel_type.c:validate_str
Unexecuted instantiation: dwarf_default_lower_bound.c:validate_str
Unexecuted instantiation: libdw_find_split_unit.c:validate_str
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:validate_str
Unexecuted instantiation: dwfl_report_elf.c:validate_str
Unexecuted instantiation: relocate.c:validate_str
Unexecuted instantiation: dwfl_module_build_id.c:validate_str
Unexecuted instantiation: dwfl_build_id_find_elf.c:validate_str
Unexecuted instantiation: linux-proc-maps.c:validate_str
Unexecuted instantiation: dwfl_addrmodule.c:validate_str
Unexecuted instantiation: libdwfl_crc32.c:validate_str
Unexecuted instantiation: elf-from-memory.c:validate_str
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:validate_str
Unexecuted instantiation: dwfl_module_eh_cfi.c:validate_str
Unexecuted instantiation: linux-pid-attach.c:validate_str
Unexecuted instantiation: dwarf_begin.c:validate_str
Unexecuted instantiation: dwarf_getabbrev.c:validate_str
Unexecuted instantiation: dwarf_nextcu.c:validate_str
Unexecuted instantiation: dwarf_offdie.c:validate_str
Unexecuted instantiation: dwarf_formstring.c:validate_str
Unexecuted instantiation: dwarf_haschildren.c:validate_str
Unexecuted instantiation: dwarf_formsdata.c:validate_str
Unexecuted instantiation: dwarf_formref.c:validate_str
Unexecuted instantiation: dwarf_srclang.c:validate_str
Unexecuted instantiation: dwarf_getlocation.c:validate_str
Unexecuted instantiation: fde.c:validate_str
Unexecuted instantiation: cfi.c:validate_str
Unexecuted instantiation: dwarf_getcfi.c:validate_str
Unexecuted instantiation: dwarf_getcfi_elf.c:validate_str
Unexecuted instantiation: dwarf_get_units.c:validate_str
Unexecuted instantiation: segment.c:validate_str
Unexecuted instantiation: dwarf_formaddr.c:validate_str
Unexecuted instantiation: dwarf_lowpc.c:validate_str
Unexecuted instantiation: dwarf_ranges.c:validate_str
Unexecuted instantiation: dwarf_formblock.c:validate_str
Unexecuted instantiation: dwarf_next_cfi.c:validate_str
Unexecuted instantiation: cie.c:validate_str
Unexecuted instantiation: dwarf_highpc.c:validate_str
Unexecuted instantiation: elf_version.c:validate_str
Unexecuted instantiation: elf_hash.c:validate_str
Unexecuted instantiation: elf_error.c:validate_str
Unexecuted instantiation: elf_begin.c:validate_str
Unexecuted instantiation: elf_next.c:validate_str
Unexecuted instantiation: elf_end.c:validate_str
Unexecuted instantiation: elf_kind.c:validate_str
Unexecuted instantiation: gelf_getclass.c:validate_str
Unexecuted instantiation: elf_getident.c:validate_str
Unexecuted instantiation: gelf_fsize.c:validate_str
Unexecuted instantiation: elf32_xlatetof.c:validate_str
Unexecuted instantiation: elf32_xlatetom.c:validate_str
Unexecuted instantiation: elf64_xlatetof.c:validate_str
Unexecuted instantiation: elf64_xlatetom.c:validate_str
Unexecuted instantiation: gelf_xlate.c:validate_str
Unexecuted instantiation: gelf_getehdr.c:validate_str
Unexecuted instantiation: gelf_getphdr.c:validate_str
Unexecuted instantiation: elf_getarhdr.c:validate_str
Unexecuted instantiation: elf_rawfile.c:validate_str
Unexecuted instantiation: elf_readall.c:validate_str
Unexecuted instantiation: elf_cntl.c:validate_str
Unexecuted instantiation: elf_getscn.c:validate_str
Unexecuted instantiation: elf_nextscn.c:validate_str
Unexecuted instantiation: elf_ndxscn.c:validate_str
Unexecuted instantiation: gelf_getshdr.c:validate_str
Unexecuted instantiation: gelf_update_shdr.c:validate_str
elf_strptr.c:validate_str
Line
Count
Source
137
524k
{
138
524k
#if HAVE_DECL_MEMRCHR
139
  // Check end first, which is likely a zero terminator,
140
  // to prevent function call
141
524k
  return (to > 0
142
524k
    && (str[to - 1] == '\0'
143
265k
        || (to > from
144
265k
      && memrchr (&str[from], '\0', to - from - 1) != NULL)));
145
#else
146
  do {
147
    if (to <= from)
148
      return false;
149
150
    to--;
151
  } while (str[to]);
152
153
  return true;
154
#endif
155
524k
}
Unexecuted instantiation: elf_rawdata.c:validate_str
Unexecuted instantiation: elf_getdata.c:validate_str
Unexecuted instantiation: elf_getdata_rawchunk.c:validate_str
Unexecuted instantiation: elf_memory.c:validate_str
Unexecuted instantiation: gelf_getrel.c:validate_str
Unexecuted instantiation: gelf_getrela.c:validate_str
Unexecuted instantiation: gelf_update_rel.c:validate_str
Unexecuted instantiation: gelf_update_rela.c:validate_str
Unexecuted instantiation: gelf_getdyn.c:validate_str
Unexecuted instantiation: gelf_getnote.c:validate_str
Unexecuted instantiation: gelf_xlatetof.c:validate_str
Unexecuted instantiation: gelf_xlatetom.c:validate_str
Unexecuted instantiation: gelf_getsymshndx.c:validate_str
Unexecuted instantiation: elf_getphdrnum.c:validate_str
Unexecuted instantiation: elf_getshdrnum.c:validate_str
Unexecuted instantiation: elf_getshdrstrndx.c:validate_str
Unexecuted instantiation: gelf_offscn.c:validate_str
Unexecuted instantiation: elf_compress.c:validate_str
Unexecuted instantiation: elf_compress_gnu.c:validate_str
Unexecuted instantiation: elf32_getphdr.c:validate_str
Unexecuted instantiation: elf64_getphdr.c:validate_str
Unexecuted instantiation: elf32_getshdr.c:validate_str
Unexecuted instantiation: elf64_getshdr.c:validate_str
Unexecuted instantiation: elf32_offscn.c:validate_str
Unexecuted instantiation: elf64_offscn.c:validate_str
Unexecuted instantiation: gelf_getchdr.c:validate_str
Unexecuted instantiation: elf32_getchdr.c:validate_str
Unexecuted instantiation: elf64_getchdr.c:validate_str
Unexecuted instantiation: core-file.c:validate_str
Unexecuted instantiation: linux-core-attach.c:validate_str
Unexecuted instantiation: dwfl_segment_report_module.c:validate_str
Unexecuted instantiation: link_map.c:validate_str
Unexecuted instantiation: dwfl_module_report_build_id.c:validate_str
Unexecuted instantiation: derelocate.c:validate_str
Unexecuted instantiation: elf_clone.c:validate_str
Unexecuted instantiation: fuzz-libelf.c:validate_str
156
157
/* A special gettext function we use if the strings are too short.  */
158
#define sgettext(Str) \
159
  ({ const char *__res = strrchr (_(Str), '|');           \
160
     __res ? __res + 1 : Str; })
161
162
#define gettext_noop(Str) Str
163
164
#ifndef TEMP_FAILURE_RETRY
165
#define TEMP_FAILURE_RETRY(expression) \
166
  ({ ssize_t __res; \
167
     do \
168
       __res = expression; \
169
     while (__res == -1 && errno == EINTR); \
170
     __res; })
171
#endif
172
173
#ifndef ACCESSPERMS
174
#define ACCESSPERMS (S_IRWXU|S_IRWXG|S_IRWXO) /* 0777 */
175
#endif
176
177
#ifndef ALLPERMS
178
#define ALLPERMS (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) /* 07777 */
179
#endif
180
181
#ifndef DEFFILEMODE
182
#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)/* 0666 */
183
#endif
184
185
static inline ssize_t __attribute__ ((unused))
186
pwrite_retry (int fd, const void *buf, size_t len, off_t off)
187
0
{
188
0
  ssize_t recvd = 0;
189
0
190
0
  do
191
0
    {
192
0
      ssize_t ret = TEMP_FAILURE_RETRY (pwrite (fd, ((char *)buf) + recvd, len - recvd,
193
0
            off + recvd));
194
0
      if (ret <= 0)
195
0
  return ret < 0 ? ret : recvd;
196
0
197
0
      recvd += ret;
198
0
    }
199
0
  while ((size_t) recvd < len);
200
0
201
0
  return recvd;
202
0
}
Unexecuted instantiation: fuzz-libdwfl.c:pwrite_retry
Unexecuted instantiation: dwfl_begin.c:pwrite_retry
Unexecuted instantiation: dwfl_end.c:pwrite_retry
Unexecuted instantiation: dwfl_error.c:pwrite_retry
Unexecuted instantiation: dwfl_module.c:pwrite_retry
Unexecuted instantiation: offline.c:pwrite_retry
Unexecuted instantiation: dwfl_module_getdwarf.c:pwrite_retry
Unexecuted instantiation: find-debuginfo.c:pwrite_retry
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:pwrite_retry
Unexecuted instantiation: libdwfl_crc32_file.c:pwrite_retry
Unexecuted instantiation: open.c:pwrite_retry
Unexecuted instantiation: image-header.c:pwrite_retry
Unexecuted instantiation: dwfl_frame.c:pwrite_retry
Unexecuted instantiation: frame_unwind.c:pwrite_retry
Unexecuted instantiation: dwfl_frame_pc.c:pwrite_retry
Unexecuted instantiation: dwfl_frame_regs.c:pwrite_retry
Unexecuted instantiation: gzip.c:pwrite_retry
Unexecuted instantiation: dwflst_process_tracker.c:pwrite_retry
Unexecuted instantiation: dwflst_tracker_find_elf.c:pwrite_retry
Unexecuted instantiation: dwflst_tracker_elftab.c:pwrite_retry
Unexecuted instantiation: dwflst_tracker_dwfltab.c:pwrite_retry
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:pwrite_retry
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:pwrite_retry
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:pwrite_retry
Unexecuted instantiation: eblopenbackend.c:pwrite_retry
Unexecuted instantiation: i386_initreg_sample.c:pwrite_retry
Unexecuted instantiation: x86_64_initreg_sample.c:pwrite_retry
Unexecuted instantiation: arm_symbol.c:pwrite_retry
Unexecuted instantiation: aarch64_symbol.c:pwrite_retry
Unexecuted instantiation: aarch64_initreg.c:pwrite_retry
Unexecuted instantiation: sparc_initreg.c:pwrite_retry
Unexecuted instantiation: ppc_initreg.c:pwrite_retry
Unexecuted instantiation: s390_initreg.c:pwrite_retry
Unexecuted instantiation: riscv_init.c:pwrite_retry
Unexecuted instantiation: riscv_initreg.c:pwrite_retry
Unexecuted instantiation: csky_initreg.c:pwrite_retry
Unexecuted instantiation: loongarch_initreg.c:pwrite_retry
Unexecuted instantiation: mips_init.c:pwrite_retry
Unexecuted instantiation: mips_symbol.c:pwrite_retry
Unexecuted instantiation: mips_regs.c:pwrite_retry
Unexecuted instantiation: mips_retval.c:pwrite_retry
Unexecuted instantiation: i386_disasm.c:pwrite_retry
Unexecuted instantiation: x86_64_disasm.c:pwrite_retry
Unexecuted instantiation: bpf_disasm.c:pwrite_retry
Unexecuted instantiation: riscv_disasm.c:pwrite_retry
Unexecuted instantiation: dwarf_begin_elf.c:pwrite_retry
Unexecuted instantiation: dwarf_end.c:pwrite_retry
Unexecuted instantiation: dwarf_tag.c:pwrite_retry
Unexecuted instantiation: dwarf_error.c:pwrite_retry
Unexecuted instantiation: dwarf_attr.c:pwrite_retry
Unexecuted instantiation: dwarf_abbrev_hash.c:pwrite_retry
Unexecuted instantiation: dwarf_sig8_hash.c:pwrite_retry
Unexecuted instantiation: dwarf_attr_integrate.c:pwrite_retry
Unexecuted instantiation: dwarf_hasattr_integrate.c:pwrite_retry
Unexecuted instantiation: dwarf_child.c:pwrite_retry
Unexecuted instantiation: dwarf_formudata.c:pwrite_retry
Unexecuted instantiation: dwarf_formref_die.c:pwrite_retry
Unexecuted instantiation: dwarf_siblingof.c:pwrite_retry
Unexecuted instantiation: dwarf_diecu.c:pwrite_retry
Unexecuted instantiation: dwarf_hasattr.c:pwrite_retry
Unexecuted instantiation: dwarf_bytesize.c:pwrite_retry
Unexecuted instantiation: dwarf_bitsize.c:pwrite_retry
Unexecuted instantiation: dwarf_formflag.c:pwrite_retry
Unexecuted instantiation: libdw_findcu.c:pwrite_retry
Unexecuted instantiation: libdw_form.c:pwrite_retry
Unexecuted instantiation: libdw_alloc.c:pwrite_retry
Unexecuted instantiation: frame-cache.c:pwrite_retry
Unexecuted instantiation: dwarf_frame_cfa.c:pwrite_retry
Unexecuted instantiation: dwarf_frame_register.c:pwrite_retry
Unexecuted instantiation: dwarf_cfi_addrframe.c:pwrite_retry
Unexecuted instantiation: dwarf_cfi_end.c:pwrite_retry
Unexecuted instantiation: dwarf_aggregate_size.c:pwrite_retry
Unexecuted instantiation: dwarf_getalt.c:pwrite_retry
Unexecuted instantiation: dwarf_setalt.c:pwrite_retry
Unexecuted instantiation: dwarf_peel_type.c:pwrite_retry
Unexecuted instantiation: dwarf_default_lower_bound.c:pwrite_retry
Unexecuted instantiation: libdw_find_split_unit.c:pwrite_retry
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:pwrite_retry
Unexecuted instantiation: dwfl_report_elf.c:pwrite_retry
Unexecuted instantiation: relocate.c:pwrite_retry
Unexecuted instantiation: dwfl_module_build_id.c:pwrite_retry
Unexecuted instantiation: dwfl_build_id_find_elf.c:pwrite_retry
Unexecuted instantiation: linux-proc-maps.c:pwrite_retry
Unexecuted instantiation: dwfl_addrmodule.c:pwrite_retry
Unexecuted instantiation: libdwfl_crc32.c:pwrite_retry
Unexecuted instantiation: elf-from-memory.c:pwrite_retry
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:pwrite_retry
Unexecuted instantiation: dwfl_module_eh_cfi.c:pwrite_retry
Unexecuted instantiation: linux-pid-attach.c:pwrite_retry
Unexecuted instantiation: dwarf_begin.c:pwrite_retry
Unexecuted instantiation: dwarf_getabbrev.c:pwrite_retry
Unexecuted instantiation: dwarf_nextcu.c:pwrite_retry
Unexecuted instantiation: dwarf_offdie.c:pwrite_retry
Unexecuted instantiation: dwarf_formstring.c:pwrite_retry
Unexecuted instantiation: dwarf_haschildren.c:pwrite_retry
Unexecuted instantiation: dwarf_formsdata.c:pwrite_retry
Unexecuted instantiation: dwarf_formref.c:pwrite_retry
Unexecuted instantiation: dwarf_srclang.c:pwrite_retry
Unexecuted instantiation: dwarf_getlocation.c:pwrite_retry
Unexecuted instantiation: fde.c:pwrite_retry
Unexecuted instantiation: cfi.c:pwrite_retry
Unexecuted instantiation: dwarf_getcfi.c:pwrite_retry
Unexecuted instantiation: dwarf_getcfi_elf.c:pwrite_retry
Unexecuted instantiation: dwarf_get_units.c:pwrite_retry
Unexecuted instantiation: segment.c:pwrite_retry
Unexecuted instantiation: dwarf_formaddr.c:pwrite_retry
Unexecuted instantiation: dwarf_lowpc.c:pwrite_retry
Unexecuted instantiation: dwarf_ranges.c:pwrite_retry
Unexecuted instantiation: dwarf_formblock.c:pwrite_retry
Unexecuted instantiation: dwarf_next_cfi.c:pwrite_retry
Unexecuted instantiation: cie.c:pwrite_retry
Unexecuted instantiation: dwarf_highpc.c:pwrite_retry
Unexecuted instantiation: elf_version.c:pwrite_retry
Unexecuted instantiation: elf_hash.c:pwrite_retry
Unexecuted instantiation: elf_error.c:pwrite_retry
Unexecuted instantiation: elf_begin.c:pwrite_retry
Unexecuted instantiation: elf_next.c:pwrite_retry
Unexecuted instantiation: elf_end.c:pwrite_retry
Unexecuted instantiation: elf_kind.c:pwrite_retry
Unexecuted instantiation: gelf_getclass.c:pwrite_retry
Unexecuted instantiation: elf_getident.c:pwrite_retry
Unexecuted instantiation: gelf_fsize.c:pwrite_retry
Unexecuted instantiation: elf32_xlatetof.c:pwrite_retry
Unexecuted instantiation: elf32_xlatetom.c:pwrite_retry
Unexecuted instantiation: elf64_xlatetof.c:pwrite_retry
Unexecuted instantiation: elf64_xlatetom.c:pwrite_retry
Unexecuted instantiation: gelf_xlate.c:pwrite_retry
Unexecuted instantiation: gelf_getehdr.c:pwrite_retry
Unexecuted instantiation: gelf_getphdr.c:pwrite_retry
Unexecuted instantiation: elf_getarhdr.c:pwrite_retry
Unexecuted instantiation: elf_rawfile.c:pwrite_retry
Unexecuted instantiation: elf_readall.c:pwrite_retry
Unexecuted instantiation: elf_cntl.c:pwrite_retry
Unexecuted instantiation: elf_getscn.c:pwrite_retry
Unexecuted instantiation: elf_nextscn.c:pwrite_retry
Unexecuted instantiation: elf_ndxscn.c:pwrite_retry
Unexecuted instantiation: gelf_getshdr.c:pwrite_retry
Unexecuted instantiation: gelf_update_shdr.c:pwrite_retry
Unexecuted instantiation: elf_strptr.c:pwrite_retry
Unexecuted instantiation: elf_rawdata.c:pwrite_retry
Unexecuted instantiation: elf_getdata.c:pwrite_retry
Unexecuted instantiation: elf_getdata_rawchunk.c:pwrite_retry
Unexecuted instantiation: elf_memory.c:pwrite_retry
Unexecuted instantiation: gelf_getrel.c:pwrite_retry
Unexecuted instantiation: gelf_getrela.c:pwrite_retry
Unexecuted instantiation: gelf_update_rel.c:pwrite_retry
Unexecuted instantiation: gelf_update_rela.c:pwrite_retry
Unexecuted instantiation: gelf_getdyn.c:pwrite_retry
Unexecuted instantiation: gelf_getnote.c:pwrite_retry
Unexecuted instantiation: gelf_xlatetof.c:pwrite_retry
Unexecuted instantiation: gelf_xlatetom.c:pwrite_retry
Unexecuted instantiation: gelf_getsymshndx.c:pwrite_retry
Unexecuted instantiation: elf_getphdrnum.c:pwrite_retry
Unexecuted instantiation: elf_getshdrnum.c:pwrite_retry
Unexecuted instantiation: elf_getshdrstrndx.c:pwrite_retry
Unexecuted instantiation: gelf_offscn.c:pwrite_retry
Unexecuted instantiation: elf_compress.c:pwrite_retry
Unexecuted instantiation: elf_compress_gnu.c:pwrite_retry
Unexecuted instantiation: elf32_getphdr.c:pwrite_retry
Unexecuted instantiation: elf64_getphdr.c:pwrite_retry
Unexecuted instantiation: elf32_getshdr.c:pwrite_retry
Unexecuted instantiation: elf64_getshdr.c:pwrite_retry
Unexecuted instantiation: elf32_offscn.c:pwrite_retry
Unexecuted instantiation: elf64_offscn.c:pwrite_retry
Unexecuted instantiation: gelf_getchdr.c:pwrite_retry
Unexecuted instantiation: elf32_getchdr.c:pwrite_retry
Unexecuted instantiation: elf64_getchdr.c:pwrite_retry
Unexecuted instantiation: core-file.c:pwrite_retry
Unexecuted instantiation: linux-core-attach.c:pwrite_retry
Unexecuted instantiation: dwfl_segment_report_module.c:pwrite_retry
Unexecuted instantiation: link_map.c:pwrite_retry
Unexecuted instantiation: dwfl_module_report_build_id.c:pwrite_retry
Unexecuted instantiation: derelocate.c:pwrite_retry
Unexecuted instantiation: elf_clone.c:pwrite_retry
Unexecuted instantiation: fuzz-libelf.c:pwrite_retry
203
204
static inline ssize_t __attribute__ ((unused))
205
write_retry (int fd, const void *buf, size_t len)
206
18.1k
{
207
18.1k
  ssize_t recvd = 0;
208
209
18.1k
  do
210
18.1k
    {
211
18.1k
      ssize_t ret = TEMP_FAILURE_RETRY (write (fd, ((char *)buf) + recvd, len - recvd));
212
18.1k
      if (ret <= 0)
213
0
  return ret < 0 ? ret : recvd;
214
215
18.1k
      recvd += ret;
216
18.1k
    }
217
18.1k
  while ((size_t) recvd < len);
218
219
18.1k
  return recvd;
220
18.1k
}
fuzz-libdwfl.c:write_retry
Line
Count
Source
206
11.3k
{
207
11.3k
  ssize_t recvd = 0;
208
209
11.3k
  do
210
11.3k
    {
211
11.3k
      ssize_t ret = TEMP_FAILURE_RETRY (write (fd, ((char *)buf) + recvd, len - recvd));
212
11.3k
      if (ret <= 0)
213
0
  return ret < 0 ? ret : recvd;
214
215
11.3k
      recvd += ret;
216
11.3k
    }
217
11.3k
  while ((size_t) recvd < len);
218
219
11.3k
  return recvd;
220
11.3k
}
Unexecuted instantiation: dwfl_begin.c:write_retry
Unexecuted instantiation: dwfl_end.c:write_retry
Unexecuted instantiation: dwfl_error.c:write_retry
Unexecuted instantiation: dwfl_module.c:write_retry
Unexecuted instantiation: offline.c:write_retry
Unexecuted instantiation: dwfl_module_getdwarf.c:write_retry
Unexecuted instantiation: find-debuginfo.c:write_retry
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:write_retry
Unexecuted instantiation: libdwfl_crc32_file.c:write_retry
Unexecuted instantiation: open.c:write_retry
Unexecuted instantiation: image-header.c:write_retry
Unexecuted instantiation: dwfl_frame.c:write_retry
Unexecuted instantiation: frame_unwind.c:write_retry
Unexecuted instantiation: dwfl_frame_pc.c:write_retry
Unexecuted instantiation: dwfl_frame_regs.c:write_retry
Unexecuted instantiation: gzip.c:write_retry
Unexecuted instantiation: dwflst_process_tracker.c:write_retry
Unexecuted instantiation: dwflst_tracker_find_elf.c:write_retry
Unexecuted instantiation: dwflst_tracker_elftab.c:write_retry
Unexecuted instantiation: dwflst_tracker_dwfltab.c:write_retry
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:write_retry
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:write_retry
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:write_retry
Unexecuted instantiation: eblopenbackend.c:write_retry
Unexecuted instantiation: i386_initreg_sample.c:write_retry
Unexecuted instantiation: x86_64_initreg_sample.c:write_retry
Unexecuted instantiation: arm_symbol.c:write_retry
Unexecuted instantiation: aarch64_symbol.c:write_retry
Unexecuted instantiation: aarch64_initreg.c:write_retry
Unexecuted instantiation: sparc_initreg.c:write_retry
Unexecuted instantiation: ppc_initreg.c:write_retry
Unexecuted instantiation: s390_initreg.c:write_retry
Unexecuted instantiation: riscv_init.c:write_retry
Unexecuted instantiation: riscv_initreg.c:write_retry
Unexecuted instantiation: csky_initreg.c:write_retry
Unexecuted instantiation: loongarch_initreg.c:write_retry
Unexecuted instantiation: mips_init.c:write_retry
Unexecuted instantiation: mips_symbol.c:write_retry
Unexecuted instantiation: mips_regs.c:write_retry
Unexecuted instantiation: mips_retval.c:write_retry
Unexecuted instantiation: i386_disasm.c:write_retry
Unexecuted instantiation: x86_64_disasm.c:write_retry
Unexecuted instantiation: bpf_disasm.c:write_retry
Unexecuted instantiation: riscv_disasm.c:write_retry
Unexecuted instantiation: dwarf_begin_elf.c:write_retry
Unexecuted instantiation: dwarf_end.c:write_retry
Unexecuted instantiation: dwarf_tag.c:write_retry
Unexecuted instantiation: dwarf_error.c:write_retry
Unexecuted instantiation: dwarf_attr.c:write_retry
Unexecuted instantiation: dwarf_abbrev_hash.c:write_retry
Unexecuted instantiation: dwarf_sig8_hash.c:write_retry
Unexecuted instantiation: dwarf_attr_integrate.c:write_retry
Unexecuted instantiation: dwarf_hasattr_integrate.c:write_retry
Unexecuted instantiation: dwarf_child.c:write_retry
Unexecuted instantiation: dwarf_formudata.c:write_retry
Unexecuted instantiation: dwarf_formref_die.c:write_retry
Unexecuted instantiation: dwarf_siblingof.c:write_retry
Unexecuted instantiation: dwarf_diecu.c:write_retry
Unexecuted instantiation: dwarf_hasattr.c:write_retry
Unexecuted instantiation: dwarf_bytesize.c:write_retry
Unexecuted instantiation: dwarf_bitsize.c:write_retry
Unexecuted instantiation: dwarf_formflag.c:write_retry
Unexecuted instantiation: libdw_findcu.c:write_retry
Unexecuted instantiation: libdw_form.c:write_retry
Unexecuted instantiation: libdw_alloc.c:write_retry
Unexecuted instantiation: frame-cache.c:write_retry
Unexecuted instantiation: dwarf_frame_cfa.c:write_retry
Unexecuted instantiation: dwarf_frame_register.c:write_retry
Unexecuted instantiation: dwarf_cfi_addrframe.c:write_retry
Unexecuted instantiation: dwarf_cfi_end.c:write_retry
Unexecuted instantiation: dwarf_aggregate_size.c:write_retry
Unexecuted instantiation: dwarf_getalt.c:write_retry
Unexecuted instantiation: dwarf_setalt.c:write_retry
Unexecuted instantiation: dwarf_peel_type.c:write_retry
Unexecuted instantiation: dwarf_default_lower_bound.c:write_retry
Unexecuted instantiation: libdw_find_split_unit.c:write_retry
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:write_retry
Unexecuted instantiation: dwfl_report_elf.c:write_retry
Unexecuted instantiation: relocate.c:write_retry
Unexecuted instantiation: dwfl_module_build_id.c:write_retry
Unexecuted instantiation: dwfl_build_id_find_elf.c:write_retry
Unexecuted instantiation: linux-proc-maps.c:write_retry
Unexecuted instantiation: dwfl_addrmodule.c:write_retry
Unexecuted instantiation: libdwfl_crc32.c:write_retry
Unexecuted instantiation: elf-from-memory.c:write_retry
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:write_retry
Unexecuted instantiation: dwfl_module_eh_cfi.c:write_retry
Unexecuted instantiation: linux-pid-attach.c:write_retry
Unexecuted instantiation: dwarf_begin.c:write_retry
Unexecuted instantiation: dwarf_getabbrev.c:write_retry
Unexecuted instantiation: dwarf_nextcu.c:write_retry
Unexecuted instantiation: dwarf_offdie.c:write_retry
Unexecuted instantiation: dwarf_formstring.c:write_retry
Unexecuted instantiation: dwarf_haschildren.c:write_retry
Unexecuted instantiation: dwarf_formsdata.c:write_retry
Unexecuted instantiation: dwarf_formref.c:write_retry
Unexecuted instantiation: dwarf_srclang.c:write_retry
Unexecuted instantiation: dwarf_getlocation.c:write_retry
Unexecuted instantiation: fde.c:write_retry
Unexecuted instantiation: cfi.c:write_retry
Unexecuted instantiation: dwarf_getcfi.c:write_retry
Unexecuted instantiation: dwarf_getcfi_elf.c:write_retry
Unexecuted instantiation: dwarf_get_units.c:write_retry
Unexecuted instantiation: segment.c:write_retry
Unexecuted instantiation: dwarf_formaddr.c:write_retry
Unexecuted instantiation: dwarf_lowpc.c:write_retry
Unexecuted instantiation: dwarf_ranges.c:write_retry
Unexecuted instantiation: dwarf_formblock.c:write_retry
Unexecuted instantiation: dwarf_next_cfi.c:write_retry
Unexecuted instantiation: cie.c:write_retry
Unexecuted instantiation: dwarf_highpc.c:write_retry
Unexecuted instantiation: elf_version.c:write_retry
Unexecuted instantiation: elf_hash.c:write_retry
Unexecuted instantiation: elf_error.c:write_retry
Unexecuted instantiation: elf_begin.c:write_retry
Unexecuted instantiation: elf_next.c:write_retry
Unexecuted instantiation: elf_end.c:write_retry
Unexecuted instantiation: elf_kind.c:write_retry
Unexecuted instantiation: gelf_getclass.c:write_retry
Unexecuted instantiation: elf_getident.c:write_retry
Unexecuted instantiation: gelf_fsize.c:write_retry
Unexecuted instantiation: elf32_xlatetof.c:write_retry
Unexecuted instantiation: elf32_xlatetom.c:write_retry
Unexecuted instantiation: elf64_xlatetof.c:write_retry
Unexecuted instantiation: elf64_xlatetom.c:write_retry
Unexecuted instantiation: gelf_xlate.c:write_retry
Unexecuted instantiation: gelf_getehdr.c:write_retry
Unexecuted instantiation: gelf_getphdr.c:write_retry
Unexecuted instantiation: elf_getarhdr.c:write_retry
Unexecuted instantiation: elf_rawfile.c:write_retry
Unexecuted instantiation: elf_readall.c:write_retry
Unexecuted instantiation: elf_cntl.c:write_retry
Unexecuted instantiation: elf_getscn.c:write_retry
Unexecuted instantiation: elf_nextscn.c:write_retry
Unexecuted instantiation: elf_ndxscn.c:write_retry
Unexecuted instantiation: gelf_getshdr.c:write_retry
Unexecuted instantiation: gelf_update_shdr.c:write_retry
Unexecuted instantiation: elf_strptr.c:write_retry
Unexecuted instantiation: elf_rawdata.c:write_retry
Unexecuted instantiation: elf_getdata.c:write_retry
Unexecuted instantiation: elf_getdata_rawchunk.c:write_retry
Unexecuted instantiation: elf_memory.c:write_retry
Unexecuted instantiation: gelf_getrel.c:write_retry
Unexecuted instantiation: gelf_getrela.c:write_retry
Unexecuted instantiation: gelf_update_rel.c:write_retry
Unexecuted instantiation: gelf_update_rela.c:write_retry
Unexecuted instantiation: gelf_getdyn.c:write_retry
Unexecuted instantiation: gelf_getnote.c:write_retry
Unexecuted instantiation: gelf_xlatetof.c:write_retry
Unexecuted instantiation: gelf_xlatetom.c:write_retry
Unexecuted instantiation: gelf_getsymshndx.c:write_retry
Unexecuted instantiation: elf_getphdrnum.c:write_retry
Unexecuted instantiation: elf_getshdrnum.c:write_retry
Unexecuted instantiation: elf_getshdrstrndx.c:write_retry
Unexecuted instantiation: gelf_offscn.c:write_retry
Unexecuted instantiation: elf_compress.c:write_retry
Unexecuted instantiation: elf_compress_gnu.c:write_retry
Unexecuted instantiation: elf32_getphdr.c:write_retry
Unexecuted instantiation: elf64_getphdr.c:write_retry
Unexecuted instantiation: elf32_getshdr.c:write_retry
Unexecuted instantiation: elf64_getshdr.c:write_retry
Unexecuted instantiation: elf32_offscn.c:write_retry
Unexecuted instantiation: elf64_offscn.c:write_retry
Unexecuted instantiation: gelf_getchdr.c:write_retry
Unexecuted instantiation: elf32_getchdr.c:write_retry
Unexecuted instantiation: elf64_getchdr.c:write_retry
Unexecuted instantiation: core-file.c:write_retry
Unexecuted instantiation: linux-core-attach.c:write_retry
Unexecuted instantiation: dwfl_segment_report_module.c:write_retry
Unexecuted instantiation: link_map.c:write_retry
Unexecuted instantiation: dwfl_module_report_build_id.c:write_retry
Unexecuted instantiation: derelocate.c:write_retry
Unexecuted instantiation: elf_clone.c:write_retry
fuzz-libelf.c:write_retry
Line
Count
Source
206
6.81k
{
207
6.81k
  ssize_t recvd = 0;
208
209
6.81k
  do
210
6.81k
    {
211
6.81k
      ssize_t ret = TEMP_FAILURE_RETRY (write (fd, ((char *)buf) + recvd, len - recvd));
212
6.81k
      if (ret <= 0)
213
0
  return ret < 0 ? ret : recvd;
214
215
6.81k
      recvd += ret;
216
6.81k
    }
217
6.81k
  while ((size_t) recvd < len);
218
219
6.81k
  return recvd;
220
6.81k
}
221
222
static inline ssize_t __attribute__ ((unused))
223
pread_retry (int fd, void *buf, size_t len, off_t off)
224
149k
{
225
149k
  ssize_t recvd = 0;
226
227
149k
  do
228
149k
    {
229
149k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
149k
                 off + recvd));
231
149k
      if (ret <= 0)
232
14.0k
  return ret < 0 ? ret : recvd;
233
234
135k
      recvd += ret;
235
135k
    }
236
149k
  while ((size_t) recvd < len);
237
238
135k
  return recvd;
239
149k
}
Unexecuted instantiation: fuzz-libdwfl.c:pread_retry
Unexecuted instantiation: dwfl_begin.c:pread_retry
Unexecuted instantiation: dwfl_end.c:pread_retry
Unexecuted instantiation: dwfl_error.c:pread_retry
Unexecuted instantiation: dwfl_module.c:pread_retry
Unexecuted instantiation: offline.c:pread_retry
Unexecuted instantiation: dwfl_module_getdwarf.c:pread_retry
Unexecuted instantiation: find-debuginfo.c:pread_retry
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:pread_retry
Unexecuted instantiation: libdwfl_crc32_file.c:pread_retry
Unexecuted instantiation: open.c:pread_retry
Unexecuted instantiation: image-header.c:pread_retry
Unexecuted instantiation: dwfl_frame.c:pread_retry
Unexecuted instantiation: frame_unwind.c:pread_retry
Unexecuted instantiation: dwfl_frame_pc.c:pread_retry
Unexecuted instantiation: dwfl_frame_regs.c:pread_retry
Unexecuted instantiation: gzip.c:pread_retry
Unexecuted instantiation: dwflst_process_tracker.c:pread_retry
Unexecuted instantiation: dwflst_tracker_find_elf.c:pread_retry
Unexecuted instantiation: dwflst_tracker_elftab.c:pread_retry
Unexecuted instantiation: dwflst_tracker_dwfltab.c:pread_retry
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:pread_retry
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:pread_retry
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:pread_retry
Unexecuted instantiation: eblopenbackend.c:pread_retry
Unexecuted instantiation: i386_initreg_sample.c:pread_retry
Unexecuted instantiation: x86_64_initreg_sample.c:pread_retry
Unexecuted instantiation: arm_symbol.c:pread_retry
Unexecuted instantiation: aarch64_symbol.c:pread_retry
Unexecuted instantiation: aarch64_initreg.c:pread_retry
Unexecuted instantiation: sparc_initreg.c:pread_retry
Unexecuted instantiation: ppc_initreg.c:pread_retry
Unexecuted instantiation: s390_initreg.c:pread_retry
Unexecuted instantiation: riscv_init.c:pread_retry
Unexecuted instantiation: riscv_initreg.c:pread_retry
Unexecuted instantiation: csky_initreg.c:pread_retry
Unexecuted instantiation: loongarch_initreg.c:pread_retry
Unexecuted instantiation: mips_init.c:pread_retry
Unexecuted instantiation: mips_symbol.c:pread_retry
Unexecuted instantiation: mips_regs.c:pread_retry
Unexecuted instantiation: mips_retval.c:pread_retry
Unexecuted instantiation: i386_disasm.c:pread_retry
Unexecuted instantiation: x86_64_disasm.c:pread_retry
Unexecuted instantiation: bpf_disasm.c:pread_retry
Unexecuted instantiation: riscv_disasm.c:pread_retry
Unexecuted instantiation: dwarf_begin_elf.c:pread_retry
Unexecuted instantiation: dwarf_end.c:pread_retry
Unexecuted instantiation: dwarf_tag.c:pread_retry
Unexecuted instantiation: dwarf_error.c:pread_retry
Unexecuted instantiation: dwarf_attr.c:pread_retry
Unexecuted instantiation: dwarf_abbrev_hash.c:pread_retry
Unexecuted instantiation: dwarf_sig8_hash.c:pread_retry
Unexecuted instantiation: dwarf_attr_integrate.c:pread_retry
Unexecuted instantiation: dwarf_hasattr_integrate.c:pread_retry
Unexecuted instantiation: dwarf_child.c:pread_retry
Unexecuted instantiation: dwarf_formudata.c:pread_retry
Unexecuted instantiation: dwarf_formref_die.c:pread_retry
Unexecuted instantiation: dwarf_siblingof.c:pread_retry
Unexecuted instantiation: dwarf_diecu.c:pread_retry
Unexecuted instantiation: dwarf_hasattr.c:pread_retry
Unexecuted instantiation: dwarf_bytesize.c:pread_retry
Unexecuted instantiation: dwarf_bitsize.c:pread_retry
Unexecuted instantiation: dwarf_formflag.c:pread_retry
Unexecuted instantiation: libdw_findcu.c:pread_retry
Unexecuted instantiation: libdw_form.c:pread_retry
Unexecuted instantiation: libdw_alloc.c:pread_retry
Unexecuted instantiation: frame-cache.c:pread_retry
Unexecuted instantiation: dwarf_frame_cfa.c:pread_retry
Unexecuted instantiation: dwarf_frame_register.c:pread_retry
Unexecuted instantiation: dwarf_cfi_addrframe.c:pread_retry
Unexecuted instantiation: dwarf_cfi_end.c:pread_retry
Unexecuted instantiation: dwarf_aggregate_size.c:pread_retry
Unexecuted instantiation: dwarf_getalt.c:pread_retry
Unexecuted instantiation: dwarf_setalt.c:pread_retry
Unexecuted instantiation: dwarf_peel_type.c:pread_retry
Unexecuted instantiation: dwarf_default_lower_bound.c:pread_retry
Unexecuted instantiation: libdw_find_split_unit.c:pread_retry
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:pread_retry
Unexecuted instantiation: dwfl_report_elf.c:pread_retry
Unexecuted instantiation: relocate.c:pread_retry
Unexecuted instantiation: dwfl_module_build_id.c:pread_retry
Unexecuted instantiation: dwfl_build_id_find_elf.c:pread_retry
Unexecuted instantiation: linux-proc-maps.c:pread_retry
Unexecuted instantiation: dwfl_addrmodule.c:pread_retry
Unexecuted instantiation: libdwfl_crc32.c:pread_retry
Unexecuted instantiation: elf-from-memory.c:pread_retry
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:pread_retry
Unexecuted instantiation: dwfl_module_eh_cfi.c:pread_retry
Unexecuted instantiation: linux-pid-attach.c:pread_retry
Unexecuted instantiation: dwarf_begin.c:pread_retry
Unexecuted instantiation: dwarf_getabbrev.c:pread_retry
Unexecuted instantiation: dwarf_nextcu.c:pread_retry
Unexecuted instantiation: dwarf_offdie.c:pread_retry
Unexecuted instantiation: dwarf_formstring.c:pread_retry
Unexecuted instantiation: dwarf_haschildren.c:pread_retry
Unexecuted instantiation: dwarf_formsdata.c:pread_retry
Unexecuted instantiation: dwarf_formref.c:pread_retry
Unexecuted instantiation: dwarf_srclang.c:pread_retry
Unexecuted instantiation: dwarf_getlocation.c:pread_retry
Unexecuted instantiation: fde.c:pread_retry
Unexecuted instantiation: cfi.c:pread_retry
Unexecuted instantiation: dwarf_getcfi.c:pread_retry
Unexecuted instantiation: dwarf_getcfi_elf.c:pread_retry
Unexecuted instantiation: dwarf_get_units.c:pread_retry
Unexecuted instantiation: segment.c:pread_retry
Unexecuted instantiation: dwarf_formaddr.c:pread_retry
Unexecuted instantiation: dwarf_lowpc.c:pread_retry
Unexecuted instantiation: dwarf_ranges.c:pread_retry
Unexecuted instantiation: dwarf_formblock.c:pread_retry
Unexecuted instantiation: dwarf_next_cfi.c:pread_retry
Unexecuted instantiation: cie.c:pread_retry
Unexecuted instantiation: dwarf_highpc.c:pread_retry
Unexecuted instantiation: elf_version.c:pread_retry
Unexecuted instantiation: elf_hash.c:pread_retry
Unexecuted instantiation: elf_error.c:pread_retry
elf_begin.c:pread_retry
Line
Count
Source
224
35.4k
{
225
35.4k
  ssize_t recvd = 0;
226
227
35.4k
  do
228
35.4k
    {
229
35.4k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
35.4k
                 off + recvd));
231
35.4k
      if (ret <= 0)
232
14.0k
  return ret < 0 ? ret : recvd;
233
234
21.3k
      recvd += ret;
235
21.3k
    }
236
35.4k
  while ((size_t) recvd < len);
237
238
21.3k
  return recvd;
239
35.4k
}
Unexecuted instantiation: elf_next.c:pread_retry
Unexecuted instantiation: elf_end.c:pread_retry
Unexecuted instantiation: elf_kind.c:pread_retry
Unexecuted instantiation: gelf_getclass.c:pread_retry
Unexecuted instantiation: elf_getident.c:pread_retry
Unexecuted instantiation: gelf_fsize.c:pread_retry
Unexecuted instantiation: elf32_xlatetof.c:pread_retry
Unexecuted instantiation: elf32_xlatetom.c:pread_retry
Unexecuted instantiation: elf64_xlatetof.c:pread_retry
Unexecuted instantiation: elf64_xlatetom.c:pread_retry
Unexecuted instantiation: gelf_xlate.c:pread_retry
Unexecuted instantiation: gelf_getehdr.c:pread_retry
Unexecuted instantiation: gelf_getphdr.c:pread_retry
Unexecuted instantiation: elf_getarhdr.c:pread_retry
Unexecuted instantiation: elf_rawfile.c:pread_retry
elf_readall.c:pread_retry
Line
Count
Source
224
6.73k
{
225
6.73k
  ssize_t recvd = 0;
226
227
6.73k
  do
228
6.73k
    {
229
6.73k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
6.73k
                 off + recvd));
231
6.73k
      if (ret <= 0)
232
0
  return ret < 0 ? ret : recvd;
233
234
6.73k
      recvd += ret;
235
6.73k
    }
236
6.73k
  while ((size_t) recvd < len);
237
238
6.73k
  return recvd;
239
6.73k
}
Unexecuted instantiation: elf_cntl.c:pread_retry
Unexecuted instantiation: elf_getscn.c:pread_retry
Unexecuted instantiation: elf_nextscn.c:pread_retry
Unexecuted instantiation: elf_ndxscn.c:pread_retry
Unexecuted instantiation: gelf_getshdr.c:pread_retry
Unexecuted instantiation: gelf_update_shdr.c:pread_retry
Unexecuted instantiation: elf_strptr.c:pread_retry
Unexecuted instantiation: elf_rawdata.c:pread_retry
elf_getdata.c:pread_retry
Line
Count
Source
224
95.0k
{
225
95.0k
  ssize_t recvd = 0;
226
227
95.0k
  do
228
95.0k
    {
229
95.0k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
95.0k
                 off + recvd));
231
95.0k
      if (ret <= 0)
232
0
  return ret < 0 ? ret : recvd;
233
234
95.0k
      recvd += ret;
235
95.0k
    }
236
95.0k
  while ((size_t) recvd < len);
237
238
95.0k
  return recvd;
239
95.0k
}
Unexecuted instantiation: elf_getdata_rawchunk.c:pread_retry
Unexecuted instantiation: elf_memory.c:pread_retry
Unexecuted instantiation: gelf_getrel.c:pread_retry
Unexecuted instantiation: gelf_getrela.c:pread_retry
Unexecuted instantiation: gelf_update_rel.c:pread_retry
Unexecuted instantiation: gelf_update_rela.c:pread_retry
Unexecuted instantiation: gelf_getdyn.c:pread_retry
Unexecuted instantiation: gelf_getnote.c:pread_retry
Unexecuted instantiation: gelf_xlatetof.c:pread_retry
Unexecuted instantiation: gelf_xlatetom.c:pread_retry
Unexecuted instantiation: gelf_getsymshndx.c:pread_retry
Unexecuted instantiation: elf_getphdrnum.c:pread_retry
Unexecuted instantiation: elf_getshdrnum.c:pread_retry
elf_getshdrstrndx.c:pread_retry
Line
Count
Source
224
351
{
225
351
  ssize_t recvd = 0;
226
227
351
  do
228
351
    {
229
351
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
351
                 off + recvd));
231
351
      if (ret <= 0)
232
3
  return ret < 0 ? ret : recvd;
233
234
348
      recvd += ret;
235
348
    }
236
351
  while ((size_t) recvd < len);
237
238
348
  return recvd;
239
351
}
Unexecuted instantiation: gelf_offscn.c:pread_retry
Unexecuted instantiation: elf_compress.c:pread_retry
Unexecuted instantiation: elf_compress_gnu.c:pread_retry
Unexecuted instantiation: elf32_getphdr.c:pread_retry
Unexecuted instantiation: elf64_getphdr.c:pread_retry
elf32_getshdr.c:pread_retry
Line
Count
Source
224
9.58k
{
225
9.58k
  ssize_t recvd = 0;
226
227
9.58k
  do
228
9.58k
    {
229
9.58k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
9.58k
                 off + recvd));
231
9.58k
      if (ret <= 0)
232
0
  return ret < 0 ? ret : recvd;
233
234
9.58k
      recvd += ret;
235
9.58k
    }
236
9.58k
  while ((size_t) recvd < len);
237
238
9.58k
  return recvd;
239
9.58k
}
elf64_getshdr.c:pread_retry
Line
Count
Source
224
2.48k
{
225
2.48k
  ssize_t recvd = 0;
226
227
2.48k
  do
228
2.48k
    {
229
2.48k
      ssize_t ret = TEMP_FAILURE_RETRY (pread (fd, ((char *)buf) + recvd, len - recvd,
230
2.48k
                 off + recvd));
231
2.48k
      if (ret <= 0)
232
0
  return ret < 0 ? ret : recvd;
233
234
2.48k
      recvd += ret;
235
2.48k
    }
236
2.48k
  while ((size_t) recvd < len);
237
238
2.48k
  return recvd;
239
2.48k
}
Unexecuted instantiation: elf32_offscn.c:pread_retry
Unexecuted instantiation: elf64_offscn.c:pread_retry
Unexecuted instantiation: gelf_getchdr.c:pread_retry
Unexecuted instantiation: elf32_getchdr.c:pread_retry
Unexecuted instantiation: elf64_getchdr.c:pread_retry
Unexecuted instantiation: core-file.c:pread_retry
Unexecuted instantiation: linux-core-attach.c:pread_retry
Unexecuted instantiation: dwfl_segment_report_module.c:pread_retry
Unexecuted instantiation: link_map.c:pread_retry
Unexecuted instantiation: dwfl_module_report_build_id.c:pread_retry
Unexecuted instantiation: derelocate.c:pread_retry
Unexecuted instantiation: elf_clone.c:pread_retry
Unexecuted instantiation: fuzz-libelf.c:pread_retry
240
241
static inline ssize_t __attribute__ ((unused))
242
read_retry (int fd, void *buf, size_t len)
243
0
{
244
0
  ssize_t recvd = 0;
245
0
246
0
  do
247
0
    {
248
0
      ssize_t ret = TEMP_FAILURE_RETRY (read (fd, ((char *)buf) + recvd,
249
0
                len - recvd));
250
0
      if (ret <= 0)
251
0
  return ret < 0 ? ret : recvd;
252
0
253
0
      recvd += ret;
254
0
    }
255
0
  while ((size_t) recvd < len);
256
0
257
0
  return recvd;
258
0
}
Unexecuted instantiation: fuzz-libdwfl.c:read_retry
Unexecuted instantiation: dwfl_begin.c:read_retry
Unexecuted instantiation: dwfl_end.c:read_retry
Unexecuted instantiation: dwfl_error.c:read_retry
Unexecuted instantiation: dwfl_module.c:read_retry
Unexecuted instantiation: offline.c:read_retry
Unexecuted instantiation: dwfl_module_getdwarf.c:read_retry
Unexecuted instantiation: find-debuginfo.c:read_retry
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:read_retry
Unexecuted instantiation: libdwfl_crc32_file.c:read_retry
Unexecuted instantiation: open.c:read_retry
Unexecuted instantiation: image-header.c:read_retry
Unexecuted instantiation: dwfl_frame.c:read_retry
Unexecuted instantiation: frame_unwind.c:read_retry
Unexecuted instantiation: dwfl_frame_pc.c:read_retry
Unexecuted instantiation: dwfl_frame_regs.c:read_retry
Unexecuted instantiation: gzip.c:read_retry
Unexecuted instantiation: dwflst_process_tracker.c:read_retry
Unexecuted instantiation: dwflst_tracker_find_elf.c:read_retry
Unexecuted instantiation: dwflst_tracker_elftab.c:read_retry
Unexecuted instantiation: dwflst_tracker_dwfltab.c:read_retry
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:read_retry
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:read_retry
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:read_retry
Unexecuted instantiation: eblopenbackend.c:read_retry
Unexecuted instantiation: i386_initreg_sample.c:read_retry
Unexecuted instantiation: x86_64_initreg_sample.c:read_retry
Unexecuted instantiation: arm_symbol.c:read_retry
Unexecuted instantiation: aarch64_symbol.c:read_retry
Unexecuted instantiation: aarch64_initreg.c:read_retry
Unexecuted instantiation: sparc_initreg.c:read_retry
Unexecuted instantiation: ppc_initreg.c:read_retry
Unexecuted instantiation: s390_initreg.c:read_retry
Unexecuted instantiation: riscv_init.c:read_retry
Unexecuted instantiation: riscv_initreg.c:read_retry
Unexecuted instantiation: csky_initreg.c:read_retry
Unexecuted instantiation: loongarch_initreg.c:read_retry
Unexecuted instantiation: mips_init.c:read_retry
Unexecuted instantiation: mips_symbol.c:read_retry
Unexecuted instantiation: mips_regs.c:read_retry
Unexecuted instantiation: mips_retval.c:read_retry
Unexecuted instantiation: i386_disasm.c:read_retry
Unexecuted instantiation: x86_64_disasm.c:read_retry
Unexecuted instantiation: bpf_disasm.c:read_retry
Unexecuted instantiation: riscv_disasm.c:read_retry
Unexecuted instantiation: dwarf_begin_elf.c:read_retry
Unexecuted instantiation: dwarf_end.c:read_retry
Unexecuted instantiation: dwarf_tag.c:read_retry
Unexecuted instantiation: dwarf_error.c:read_retry
Unexecuted instantiation: dwarf_attr.c:read_retry
Unexecuted instantiation: dwarf_abbrev_hash.c:read_retry
Unexecuted instantiation: dwarf_sig8_hash.c:read_retry
Unexecuted instantiation: dwarf_attr_integrate.c:read_retry
Unexecuted instantiation: dwarf_hasattr_integrate.c:read_retry
Unexecuted instantiation: dwarf_child.c:read_retry
Unexecuted instantiation: dwarf_formudata.c:read_retry
Unexecuted instantiation: dwarf_formref_die.c:read_retry
Unexecuted instantiation: dwarf_siblingof.c:read_retry
Unexecuted instantiation: dwarf_diecu.c:read_retry
Unexecuted instantiation: dwarf_hasattr.c:read_retry
Unexecuted instantiation: dwarf_bytesize.c:read_retry
Unexecuted instantiation: dwarf_bitsize.c:read_retry
Unexecuted instantiation: dwarf_formflag.c:read_retry
Unexecuted instantiation: libdw_findcu.c:read_retry
Unexecuted instantiation: libdw_form.c:read_retry
Unexecuted instantiation: libdw_alloc.c:read_retry
Unexecuted instantiation: frame-cache.c:read_retry
Unexecuted instantiation: dwarf_frame_cfa.c:read_retry
Unexecuted instantiation: dwarf_frame_register.c:read_retry
Unexecuted instantiation: dwarf_cfi_addrframe.c:read_retry
Unexecuted instantiation: dwarf_cfi_end.c:read_retry
Unexecuted instantiation: dwarf_aggregate_size.c:read_retry
Unexecuted instantiation: dwarf_getalt.c:read_retry
Unexecuted instantiation: dwarf_setalt.c:read_retry
Unexecuted instantiation: dwarf_peel_type.c:read_retry
Unexecuted instantiation: dwarf_default_lower_bound.c:read_retry
Unexecuted instantiation: libdw_find_split_unit.c:read_retry
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:read_retry
Unexecuted instantiation: dwfl_report_elf.c:read_retry
Unexecuted instantiation: relocate.c:read_retry
Unexecuted instantiation: dwfl_module_build_id.c:read_retry
Unexecuted instantiation: dwfl_build_id_find_elf.c:read_retry
Unexecuted instantiation: linux-proc-maps.c:read_retry
Unexecuted instantiation: dwfl_addrmodule.c:read_retry
Unexecuted instantiation: libdwfl_crc32.c:read_retry
Unexecuted instantiation: elf-from-memory.c:read_retry
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:read_retry
Unexecuted instantiation: dwfl_module_eh_cfi.c:read_retry
Unexecuted instantiation: linux-pid-attach.c:read_retry
Unexecuted instantiation: dwarf_begin.c:read_retry
Unexecuted instantiation: dwarf_getabbrev.c:read_retry
Unexecuted instantiation: dwarf_nextcu.c:read_retry
Unexecuted instantiation: dwarf_offdie.c:read_retry
Unexecuted instantiation: dwarf_formstring.c:read_retry
Unexecuted instantiation: dwarf_haschildren.c:read_retry
Unexecuted instantiation: dwarf_formsdata.c:read_retry
Unexecuted instantiation: dwarf_formref.c:read_retry
Unexecuted instantiation: dwarf_srclang.c:read_retry
Unexecuted instantiation: dwarf_getlocation.c:read_retry
Unexecuted instantiation: fde.c:read_retry
Unexecuted instantiation: cfi.c:read_retry
Unexecuted instantiation: dwarf_getcfi.c:read_retry
Unexecuted instantiation: dwarf_getcfi_elf.c:read_retry
Unexecuted instantiation: dwarf_get_units.c:read_retry
Unexecuted instantiation: segment.c:read_retry
Unexecuted instantiation: dwarf_formaddr.c:read_retry
Unexecuted instantiation: dwarf_lowpc.c:read_retry
Unexecuted instantiation: dwarf_ranges.c:read_retry
Unexecuted instantiation: dwarf_formblock.c:read_retry
Unexecuted instantiation: dwarf_next_cfi.c:read_retry
Unexecuted instantiation: cie.c:read_retry
Unexecuted instantiation: dwarf_highpc.c:read_retry
Unexecuted instantiation: elf_version.c:read_retry
Unexecuted instantiation: elf_hash.c:read_retry
Unexecuted instantiation: elf_error.c:read_retry
Unexecuted instantiation: elf_begin.c:read_retry
Unexecuted instantiation: elf_next.c:read_retry
Unexecuted instantiation: elf_end.c:read_retry
Unexecuted instantiation: elf_kind.c:read_retry
Unexecuted instantiation: gelf_getclass.c:read_retry
Unexecuted instantiation: elf_getident.c:read_retry
Unexecuted instantiation: gelf_fsize.c:read_retry
Unexecuted instantiation: elf32_xlatetof.c:read_retry
Unexecuted instantiation: elf32_xlatetom.c:read_retry
Unexecuted instantiation: elf64_xlatetof.c:read_retry
Unexecuted instantiation: elf64_xlatetom.c:read_retry
Unexecuted instantiation: gelf_xlate.c:read_retry
Unexecuted instantiation: gelf_getehdr.c:read_retry
Unexecuted instantiation: gelf_getphdr.c:read_retry
Unexecuted instantiation: elf_getarhdr.c:read_retry
Unexecuted instantiation: elf_rawfile.c:read_retry
Unexecuted instantiation: elf_readall.c:read_retry
Unexecuted instantiation: elf_cntl.c:read_retry
Unexecuted instantiation: elf_getscn.c:read_retry
Unexecuted instantiation: elf_nextscn.c:read_retry
Unexecuted instantiation: elf_ndxscn.c:read_retry
Unexecuted instantiation: gelf_getshdr.c:read_retry
Unexecuted instantiation: gelf_update_shdr.c:read_retry
Unexecuted instantiation: elf_strptr.c:read_retry
Unexecuted instantiation: elf_rawdata.c:read_retry
Unexecuted instantiation: elf_getdata.c:read_retry
Unexecuted instantiation: elf_getdata_rawchunk.c:read_retry
Unexecuted instantiation: elf_memory.c:read_retry
Unexecuted instantiation: gelf_getrel.c:read_retry
Unexecuted instantiation: gelf_getrela.c:read_retry
Unexecuted instantiation: gelf_update_rel.c:read_retry
Unexecuted instantiation: gelf_update_rela.c:read_retry
Unexecuted instantiation: gelf_getdyn.c:read_retry
Unexecuted instantiation: gelf_getnote.c:read_retry
Unexecuted instantiation: gelf_xlatetof.c:read_retry
Unexecuted instantiation: gelf_xlatetom.c:read_retry
Unexecuted instantiation: gelf_getsymshndx.c:read_retry
Unexecuted instantiation: elf_getphdrnum.c:read_retry
Unexecuted instantiation: elf_getshdrnum.c:read_retry
Unexecuted instantiation: elf_getshdrstrndx.c:read_retry
Unexecuted instantiation: gelf_offscn.c:read_retry
Unexecuted instantiation: elf_compress.c:read_retry
Unexecuted instantiation: elf_compress_gnu.c:read_retry
Unexecuted instantiation: elf32_getphdr.c:read_retry
Unexecuted instantiation: elf64_getphdr.c:read_retry
Unexecuted instantiation: elf32_getshdr.c:read_retry
Unexecuted instantiation: elf64_getshdr.c:read_retry
Unexecuted instantiation: elf32_offscn.c:read_retry
Unexecuted instantiation: elf64_offscn.c:read_retry
Unexecuted instantiation: gelf_getchdr.c:read_retry
Unexecuted instantiation: elf32_getchdr.c:read_retry
Unexecuted instantiation: elf64_getchdr.c:read_retry
Unexecuted instantiation: core-file.c:read_retry
Unexecuted instantiation: linux-core-attach.c:read_retry
Unexecuted instantiation: dwfl_segment_report_module.c:read_retry
Unexecuted instantiation: link_map.c:read_retry
Unexecuted instantiation: dwfl_module_report_build_id.c:read_retry
Unexecuted instantiation: derelocate.c:read_retry
Unexecuted instantiation: elf_clone.c:read_retry
Unexecuted instantiation: fuzz-libelf.c:read_retry
259
260
/* The demangler from libstdc++.  */
261
extern char *__cxa_demangle (const char *mangled_name, char *output_buffer,
262
           size_t *length, int *status);
263
264
/* A static assertion.  This will cause a compile-time error if EXPR,
265
   which must be a compile-time constant, is false.  */
266
267
#define eu_static_assert(expr)            \
268
129M
  extern int never_defined_just_used_for_checking[(expr) ? 1 : -1]  \
269
129M
    __attribute__ ((unused))
270
271
/* We really want a basename implementation that doesn't modify the
272
   input argument.  Normally you get that from string.h with _GNU_SOURCE
273
   define.  But some libc implementations don't define it and other
274
   define it, but provide an implementation that still modifies the
275
   argument.  So define our own and poison a bare basename symbol.  */
276
static inline const char *
277
xbasename(const char *s)
278
6.33k
{
279
6.33k
  const char *p = strrchr(s, '/');
280
6.33k
  return p ? p+1 : s;
281
6.33k
}
Unexecuted instantiation: fuzz-libdwfl.c:xbasename
Unexecuted instantiation: dwfl_begin.c:xbasename
Unexecuted instantiation: dwfl_end.c:xbasename
Unexecuted instantiation: dwfl_error.c:xbasename
Unexecuted instantiation: dwfl_module.c:xbasename
Unexecuted instantiation: offline.c:xbasename
Unexecuted instantiation: dwfl_module_getdwarf.c:xbasename
find-debuginfo.c:xbasename
Line
Count
Source
278
4.18k
{
279
4.18k
  const char *p = strrchr(s, '/');
280
4.18k
  return p ? p+1 : s;
281
4.18k
}
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:xbasename
Unexecuted instantiation: libdwfl_crc32_file.c:xbasename
Unexecuted instantiation: open.c:xbasename
Unexecuted instantiation: image-header.c:xbasename
Unexecuted instantiation: dwfl_frame.c:xbasename
Unexecuted instantiation: frame_unwind.c:xbasename
Unexecuted instantiation: dwfl_frame_pc.c:xbasename
Unexecuted instantiation: dwfl_frame_regs.c:xbasename
Unexecuted instantiation: gzip.c:xbasename
Unexecuted instantiation: dwflst_process_tracker.c:xbasename
Unexecuted instantiation: dwflst_tracker_find_elf.c:xbasename
Unexecuted instantiation: dwflst_tracker_elftab.c:xbasename
Unexecuted instantiation: dwflst_tracker_dwfltab.c:xbasename
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:xbasename
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:xbasename
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:xbasename
Unexecuted instantiation: eblopenbackend.c:xbasename
Unexecuted instantiation: i386_initreg_sample.c:xbasename
Unexecuted instantiation: x86_64_initreg_sample.c:xbasename
Unexecuted instantiation: arm_symbol.c:xbasename
Unexecuted instantiation: aarch64_symbol.c:xbasename
Unexecuted instantiation: aarch64_initreg.c:xbasename
Unexecuted instantiation: sparc_initreg.c:xbasename
Unexecuted instantiation: ppc_initreg.c:xbasename
Unexecuted instantiation: s390_initreg.c:xbasename
Unexecuted instantiation: riscv_init.c:xbasename
Unexecuted instantiation: riscv_initreg.c:xbasename
Unexecuted instantiation: csky_initreg.c:xbasename
Unexecuted instantiation: loongarch_initreg.c:xbasename
Unexecuted instantiation: mips_init.c:xbasename
Unexecuted instantiation: mips_symbol.c:xbasename
Unexecuted instantiation: mips_regs.c:xbasename
Unexecuted instantiation: mips_retval.c:xbasename
Unexecuted instantiation: i386_disasm.c:xbasename
Unexecuted instantiation: x86_64_disasm.c:xbasename
Unexecuted instantiation: bpf_disasm.c:xbasename
Unexecuted instantiation: riscv_disasm.c:xbasename
Unexecuted instantiation: dwarf_begin_elf.c:xbasename
Unexecuted instantiation: dwarf_end.c:xbasename
Unexecuted instantiation: dwarf_tag.c:xbasename
Unexecuted instantiation: dwarf_error.c:xbasename
Unexecuted instantiation: dwarf_attr.c:xbasename
Unexecuted instantiation: dwarf_abbrev_hash.c:xbasename
Unexecuted instantiation: dwarf_sig8_hash.c:xbasename
Unexecuted instantiation: dwarf_attr_integrate.c:xbasename
Unexecuted instantiation: dwarf_hasattr_integrate.c:xbasename
Unexecuted instantiation: dwarf_child.c:xbasename
Unexecuted instantiation: dwarf_formudata.c:xbasename
Unexecuted instantiation: dwarf_formref_die.c:xbasename
Unexecuted instantiation: dwarf_siblingof.c:xbasename
Unexecuted instantiation: dwarf_diecu.c:xbasename
Unexecuted instantiation: dwarf_hasattr.c:xbasename
Unexecuted instantiation: dwarf_bytesize.c:xbasename
Unexecuted instantiation: dwarf_bitsize.c:xbasename
Unexecuted instantiation: dwarf_formflag.c:xbasename
Unexecuted instantiation: libdw_findcu.c:xbasename
Unexecuted instantiation: libdw_form.c:xbasename
Unexecuted instantiation: libdw_alloc.c:xbasename
Unexecuted instantiation: frame-cache.c:xbasename
Unexecuted instantiation: dwarf_frame_cfa.c:xbasename
Unexecuted instantiation: dwarf_frame_register.c:xbasename
Unexecuted instantiation: dwarf_cfi_addrframe.c:xbasename
Unexecuted instantiation: dwarf_cfi_end.c:xbasename
Unexecuted instantiation: dwarf_aggregate_size.c:xbasename
Unexecuted instantiation: dwarf_getalt.c:xbasename
Unexecuted instantiation: dwarf_setalt.c:xbasename
Unexecuted instantiation: dwarf_peel_type.c:xbasename
Unexecuted instantiation: dwarf_default_lower_bound.c:xbasename
Unexecuted instantiation: libdw_find_split_unit.c:xbasename
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:xbasename
Unexecuted instantiation: dwfl_report_elf.c:xbasename
Unexecuted instantiation: relocate.c:xbasename
Unexecuted instantiation: dwfl_module_build_id.c:xbasename
Unexecuted instantiation: dwfl_build_id_find_elf.c:xbasename
Unexecuted instantiation: linux-proc-maps.c:xbasename
Unexecuted instantiation: dwfl_addrmodule.c:xbasename
Unexecuted instantiation: libdwfl_crc32.c:xbasename
Unexecuted instantiation: elf-from-memory.c:xbasename
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:xbasename
Unexecuted instantiation: dwfl_module_eh_cfi.c:xbasename
Unexecuted instantiation: linux-pid-attach.c:xbasename
Unexecuted instantiation: dwarf_begin.c:xbasename
Unexecuted instantiation: dwarf_getabbrev.c:xbasename
Unexecuted instantiation: dwarf_nextcu.c:xbasename
Unexecuted instantiation: dwarf_offdie.c:xbasename
Unexecuted instantiation: dwarf_formstring.c:xbasename
Unexecuted instantiation: dwarf_haschildren.c:xbasename
Unexecuted instantiation: dwarf_formsdata.c:xbasename
Unexecuted instantiation: dwarf_formref.c:xbasename
Unexecuted instantiation: dwarf_srclang.c:xbasename
Unexecuted instantiation: dwarf_getlocation.c:xbasename
Unexecuted instantiation: fde.c:xbasename
Unexecuted instantiation: cfi.c:xbasename
Unexecuted instantiation: dwarf_getcfi.c:xbasename
Unexecuted instantiation: dwarf_getcfi_elf.c:xbasename
Unexecuted instantiation: dwarf_get_units.c:xbasename
Unexecuted instantiation: segment.c:xbasename
Unexecuted instantiation: dwarf_formaddr.c:xbasename
Unexecuted instantiation: dwarf_lowpc.c:xbasename
Unexecuted instantiation: dwarf_ranges.c:xbasename
Unexecuted instantiation: dwarf_formblock.c:xbasename
Unexecuted instantiation: dwarf_next_cfi.c:xbasename
Unexecuted instantiation: cie.c:xbasename
Unexecuted instantiation: dwarf_highpc.c:xbasename
Unexecuted instantiation: elf_version.c:xbasename
Unexecuted instantiation: elf_hash.c:xbasename
Unexecuted instantiation: elf_error.c:xbasename
Unexecuted instantiation: elf_begin.c:xbasename
Unexecuted instantiation: elf_next.c:xbasename
Unexecuted instantiation: elf_end.c:xbasename
Unexecuted instantiation: elf_kind.c:xbasename
Unexecuted instantiation: gelf_getclass.c:xbasename
Unexecuted instantiation: elf_getident.c:xbasename
Unexecuted instantiation: gelf_fsize.c:xbasename
Unexecuted instantiation: elf32_xlatetof.c:xbasename
Unexecuted instantiation: elf32_xlatetom.c:xbasename
Unexecuted instantiation: elf64_xlatetof.c:xbasename
Unexecuted instantiation: elf64_xlatetom.c:xbasename
Unexecuted instantiation: gelf_xlate.c:xbasename
Unexecuted instantiation: gelf_getehdr.c:xbasename
Unexecuted instantiation: gelf_getphdr.c:xbasename
Unexecuted instantiation: elf_getarhdr.c:xbasename
Unexecuted instantiation: elf_rawfile.c:xbasename
Unexecuted instantiation: elf_readall.c:xbasename
Unexecuted instantiation: elf_cntl.c:xbasename
Unexecuted instantiation: elf_getscn.c:xbasename
Unexecuted instantiation: elf_nextscn.c:xbasename
Unexecuted instantiation: elf_ndxscn.c:xbasename
Unexecuted instantiation: gelf_getshdr.c:xbasename
Unexecuted instantiation: gelf_update_shdr.c:xbasename
Unexecuted instantiation: elf_strptr.c:xbasename
Unexecuted instantiation: elf_rawdata.c:xbasename
Unexecuted instantiation: elf_getdata.c:xbasename
Unexecuted instantiation: elf_getdata_rawchunk.c:xbasename
Unexecuted instantiation: elf_memory.c:xbasename
Unexecuted instantiation: gelf_getrel.c:xbasename
Unexecuted instantiation: gelf_getrela.c:xbasename
Unexecuted instantiation: gelf_update_rel.c:xbasename
Unexecuted instantiation: gelf_update_rela.c:xbasename
Unexecuted instantiation: gelf_getdyn.c:xbasename
Unexecuted instantiation: gelf_getnote.c:xbasename
Unexecuted instantiation: gelf_xlatetof.c:xbasename
Unexecuted instantiation: gelf_xlatetom.c:xbasename
Unexecuted instantiation: gelf_getsymshndx.c:xbasename
Unexecuted instantiation: elf_getphdrnum.c:xbasename
Unexecuted instantiation: elf_getshdrnum.c:xbasename
Unexecuted instantiation: elf_getshdrstrndx.c:xbasename
Unexecuted instantiation: gelf_offscn.c:xbasename
Unexecuted instantiation: elf_compress.c:xbasename
Unexecuted instantiation: elf_compress_gnu.c:xbasename
Unexecuted instantiation: elf32_getphdr.c:xbasename
Unexecuted instantiation: elf64_getphdr.c:xbasename
Unexecuted instantiation: elf32_getshdr.c:xbasename
Unexecuted instantiation: elf64_getshdr.c:xbasename
Unexecuted instantiation: elf32_offscn.c:xbasename
Unexecuted instantiation: elf64_offscn.c:xbasename
Unexecuted instantiation: gelf_getchdr.c:xbasename
Unexecuted instantiation: elf32_getchdr.c:xbasename
Unexecuted instantiation: elf64_getchdr.c:xbasename
core-file.c:xbasename
Line
Count
Source
278
1.32k
{
279
1.32k
  const char *p = strrchr(s, '/');
280
1.32k
  return p ? p+1 : s;
281
1.32k
}
Unexecuted instantiation: linux-core-attach.c:xbasename
dwfl_segment_report_module.c:xbasename
Line
Count
Source
278
835
{
279
835
  const char *p = strrchr(s, '/');
280
835
  return p ? p+1 : s;
281
835
}
Unexecuted instantiation: link_map.c:xbasename
Unexecuted instantiation: dwfl_module_report_build_id.c:xbasename
Unexecuted instantiation: derelocate.c:xbasename
Unexecuted instantiation: elf_clone.c:xbasename
Unexecuted instantiation: fuzz-libelf.c:xbasename
282
#pragma GCC poison basename
283
284
/* Get a random uint64_t.  Returns zero on success, minus one on failure.  */
285
static inline int
286
xrandom64 (uint64_t *r)
287
0
{
288
0
  /* Prefer getentropy if it is available, fallback to getrandom, if
289
0
     both are missing, or if they fail try reading from /dev/urandom.  */
290
0
#if HAVE_DECL_GETENTROPY
291
0
  if (getentropy (r, sizeof (*r)) == 0)
292
0
    return 0;
293
0
#elif HAVE_DECL_GETRANDOM
294
0
  if (TEMP_FAILURE_RETRY (getrandom (r, sizeof (*r), 0)) == sizeof (*r))
295
0
    return 0;
296
0
#endif
297
0
  int fd = open("/dev/urandom", O_RDONLY | O_CLOEXEC);
298
0
  if (fd < 0)
299
0
    return -1;
300
0
  if (read_retry (fd, r, sizeof (uint64_t)) == sizeof (uint64_t))
301
0
    {
302
0
      close (fd);
303
0
      return 0;
304
0
    }
305
0
  int save_errno = errno;
306
0
  close (fd);
307
0
  errno = save_errno;
308
0
  /* We could try some pseudo-random thing with getpid and
309
0
     clock_gettime.  But if even getting something from /dev/urandom
310
0
     fails it seems we tried hard enough already.  */
311
0
  return -1;
312
0
}
Unexecuted instantiation: fuzz-libdwfl.c:xrandom64
Unexecuted instantiation: dwfl_begin.c:xrandom64
Unexecuted instantiation: dwfl_end.c:xrandom64
Unexecuted instantiation: dwfl_error.c:xrandom64
Unexecuted instantiation: dwfl_module.c:xrandom64
Unexecuted instantiation: offline.c:xrandom64
Unexecuted instantiation: dwfl_module_getdwarf.c:xrandom64
Unexecuted instantiation: find-debuginfo.c:xrandom64
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:xrandom64
Unexecuted instantiation: libdwfl_crc32_file.c:xrandom64
Unexecuted instantiation: open.c:xrandom64
Unexecuted instantiation: image-header.c:xrandom64
Unexecuted instantiation: dwfl_frame.c:xrandom64
Unexecuted instantiation: frame_unwind.c:xrandom64
Unexecuted instantiation: dwfl_frame_pc.c:xrandom64
Unexecuted instantiation: dwfl_frame_regs.c:xrandom64
Unexecuted instantiation: gzip.c:xrandom64
Unexecuted instantiation: dwflst_process_tracker.c:xrandom64
Unexecuted instantiation: dwflst_tracker_find_elf.c:xrandom64
Unexecuted instantiation: dwflst_tracker_elftab.c:xrandom64
Unexecuted instantiation: dwflst_tracker_dwfltab.c:xrandom64
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:xrandom64
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:xrandom64
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:xrandom64
Unexecuted instantiation: eblopenbackend.c:xrandom64
Unexecuted instantiation: i386_initreg_sample.c:xrandom64
Unexecuted instantiation: x86_64_initreg_sample.c:xrandom64
Unexecuted instantiation: arm_symbol.c:xrandom64
Unexecuted instantiation: aarch64_symbol.c:xrandom64
Unexecuted instantiation: aarch64_initreg.c:xrandom64
Unexecuted instantiation: sparc_initreg.c:xrandom64
Unexecuted instantiation: ppc_initreg.c:xrandom64
Unexecuted instantiation: s390_initreg.c:xrandom64
Unexecuted instantiation: riscv_init.c:xrandom64
Unexecuted instantiation: riscv_initreg.c:xrandom64
Unexecuted instantiation: csky_initreg.c:xrandom64
Unexecuted instantiation: loongarch_initreg.c:xrandom64
Unexecuted instantiation: mips_init.c:xrandom64
Unexecuted instantiation: mips_symbol.c:xrandom64
Unexecuted instantiation: mips_regs.c:xrandom64
Unexecuted instantiation: mips_retval.c:xrandom64
Unexecuted instantiation: i386_disasm.c:xrandom64
Unexecuted instantiation: x86_64_disasm.c:xrandom64
Unexecuted instantiation: bpf_disasm.c:xrandom64
Unexecuted instantiation: riscv_disasm.c:xrandom64
Unexecuted instantiation: dwarf_begin_elf.c:xrandom64
Unexecuted instantiation: dwarf_end.c:xrandom64
Unexecuted instantiation: dwarf_tag.c:xrandom64
Unexecuted instantiation: dwarf_error.c:xrandom64
Unexecuted instantiation: dwarf_attr.c:xrandom64
Unexecuted instantiation: dwarf_abbrev_hash.c:xrandom64
Unexecuted instantiation: dwarf_sig8_hash.c:xrandom64
Unexecuted instantiation: dwarf_attr_integrate.c:xrandom64
Unexecuted instantiation: dwarf_hasattr_integrate.c:xrandom64
Unexecuted instantiation: dwarf_child.c:xrandom64
Unexecuted instantiation: dwarf_formudata.c:xrandom64
Unexecuted instantiation: dwarf_formref_die.c:xrandom64
Unexecuted instantiation: dwarf_siblingof.c:xrandom64
Unexecuted instantiation: dwarf_diecu.c:xrandom64
Unexecuted instantiation: dwarf_hasattr.c:xrandom64
Unexecuted instantiation: dwarf_bytesize.c:xrandom64
Unexecuted instantiation: dwarf_bitsize.c:xrandom64
Unexecuted instantiation: dwarf_formflag.c:xrandom64
Unexecuted instantiation: libdw_findcu.c:xrandom64
Unexecuted instantiation: libdw_form.c:xrandom64
Unexecuted instantiation: libdw_alloc.c:xrandom64
Unexecuted instantiation: frame-cache.c:xrandom64
Unexecuted instantiation: dwarf_frame_cfa.c:xrandom64
Unexecuted instantiation: dwarf_frame_register.c:xrandom64
Unexecuted instantiation: dwarf_cfi_addrframe.c:xrandom64
Unexecuted instantiation: dwarf_cfi_end.c:xrandom64
Unexecuted instantiation: dwarf_aggregate_size.c:xrandom64
Unexecuted instantiation: dwarf_getalt.c:xrandom64
Unexecuted instantiation: dwarf_setalt.c:xrandom64
Unexecuted instantiation: dwarf_peel_type.c:xrandom64
Unexecuted instantiation: dwarf_default_lower_bound.c:xrandom64
Unexecuted instantiation: libdw_find_split_unit.c:xrandom64
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:xrandom64
Unexecuted instantiation: dwfl_report_elf.c:xrandom64
Unexecuted instantiation: relocate.c:xrandom64
Unexecuted instantiation: dwfl_module_build_id.c:xrandom64
Unexecuted instantiation: dwfl_build_id_find_elf.c:xrandom64
Unexecuted instantiation: linux-proc-maps.c:xrandom64
Unexecuted instantiation: dwfl_addrmodule.c:xrandom64
Unexecuted instantiation: libdwfl_crc32.c:xrandom64
Unexecuted instantiation: elf-from-memory.c:xrandom64
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:xrandom64
Unexecuted instantiation: dwfl_module_eh_cfi.c:xrandom64
Unexecuted instantiation: linux-pid-attach.c:xrandom64
Unexecuted instantiation: dwarf_begin.c:xrandom64
Unexecuted instantiation: dwarf_getabbrev.c:xrandom64
Unexecuted instantiation: dwarf_nextcu.c:xrandom64
Unexecuted instantiation: dwarf_offdie.c:xrandom64
Unexecuted instantiation: dwarf_formstring.c:xrandom64
Unexecuted instantiation: dwarf_haschildren.c:xrandom64
Unexecuted instantiation: dwarf_formsdata.c:xrandom64
Unexecuted instantiation: dwarf_formref.c:xrandom64
Unexecuted instantiation: dwarf_srclang.c:xrandom64
Unexecuted instantiation: dwarf_getlocation.c:xrandom64
Unexecuted instantiation: fde.c:xrandom64
Unexecuted instantiation: cfi.c:xrandom64
Unexecuted instantiation: dwarf_getcfi.c:xrandom64
Unexecuted instantiation: dwarf_getcfi_elf.c:xrandom64
Unexecuted instantiation: dwarf_get_units.c:xrandom64
Unexecuted instantiation: segment.c:xrandom64
Unexecuted instantiation: dwarf_formaddr.c:xrandom64
Unexecuted instantiation: dwarf_lowpc.c:xrandom64
Unexecuted instantiation: dwarf_ranges.c:xrandom64
Unexecuted instantiation: dwarf_formblock.c:xrandom64
Unexecuted instantiation: dwarf_next_cfi.c:xrandom64
Unexecuted instantiation: cie.c:xrandom64
Unexecuted instantiation: dwarf_highpc.c:xrandom64
Unexecuted instantiation: elf_version.c:xrandom64
Unexecuted instantiation: elf_hash.c:xrandom64
Unexecuted instantiation: elf_error.c:xrandom64
Unexecuted instantiation: elf_begin.c:xrandom64
Unexecuted instantiation: elf_next.c:xrandom64
Unexecuted instantiation: elf_end.c:xrandom64
Unexecuted instantiation: elf_kind.c:xrandom64
Unexecuted instantiation: gelf_getclass.c:xrandom64
Unexecuted instantiation: elf_getident.c:xrandom64
Unexecuted instantiation: gelf_fsize.c:xrandom64
Unexecuted instantiation: elf32_xlatetof.c:xrandom64
Unexecuted instantiation: elf32_xlatetom.c:xrandom64
Unexecuted instantiation: elf64_xlatetof.c:xrandom64
Unexecuted instantiation: elf64_xlatetom.c:xrandom64
Unexecuted instantiation: gelf_xlate.c:xrandom64
Unexecuted instantiation: gelf_getehdr.c:xrandom64
Unexecuted instantiation: gelf_getphdr.c:xrandom64
Unexecuted instantiation: elf_getarhdr.c:xrandom64
Unexecuted instantiation: elf_rawfile.c:xrandom64
Unexecuted instantiation: elf_readall.c:xrandom64
Unexecuted instantiation: elf_cntl.c:xrandom64
Unexecuted instantiation: elf_getscn.c:xrandom64
Unexecuted instantiation: elf_nextscn.c:xrandom64
Unexecuted instantiation: elf_ndxscn.c:xrandom64
Unexecuted instantiation: gelf_getshdr.c:xrandom64
Unexecuted instantiation: gelf_update_shdr.c:xrandom64
Unexecuted instantiation: elf_strptr.c:xrandom64
Unexecuted instantiation: elf_rawdata.c:xrandom64
Unexecuted instantiation: elf_getdata.c:xrandom64
Unexecuted instantiation: elf_getdata_rawchunk.c:xrandom64
Unexecuted instantiation: elf_memory.c:xrandom64
Unexecuted instantiation: gelf_getrel.c:xrandom64
Unexecuted instantiation: gelf_getrela.c:xrandom64
Unexecuted instantiation: gelf_update_rel.c:xrandom64
Unexecuted instantiation: gelf_update_rela.c:xrandom64
Unexecuted instantiation: gelf_getdyn.c:xrandom64
Unexecuted instantiation: gelf_getnote.c:xrandom64
Unexecuted instantiation: gelf_xlatetof.c:xrandom64
Unexecuted instantiation: gelf_xlatetom.c:xrandom64
Unexecuted instantiation: gelf_getsymshndx.c:xrandom64
Unexecuted instantiation: elf_getphdrnum.c:xrandom64
Unexecuted instantiation: elf_getshdrnum.c:xrandom64
Unexecuted instantiation: elf_getshdrstrndx.c:xrandom64
Unexecuted instantiation: gelf_offscn.c:xrandom64
Unexecuted instantiation: elf_compress.c:xrandom64
Unexecuted instantiation: elf_compress_gnu.c:xrandom64
Unexecuted instantiation: elf32_getphdr.c:xrandom64
Unexecuted instantiation: elf64_getphdr.c:xrandom64
Unexecuted instantiation: elf32_getshdr.c:xrandom64
Unexecuted instantiation: elf64_getshdr.c:xrandom64
Unexecuted instantiation: elf32_offscn.c:xrandom64
Unexecuted instantiation: elf64_offscn.c:xrandom64
Unexecuted instantiation: gelf_getchdr.c:xrandom64
Unexecuted instantiation: elf32_getchdr.c:xrandom64
Unexecuted instantiation: elf64_getchdr.c:xrandom64
Unexecuted instantiation: core-file.c:xrandom64
Unexecuted instantiation: linux-core-attach.c:xrandom64
Unexecuted instantiation: dwfl_segment_report_module.c:xrandom64
Unexecuted instantiation: link_map.c:xrandom64
Unexecuted instantiation: dwfl_module_report_build_id.c:xrandom64
Unexecuted instantiation: derelocate.c:xrandom64
Unexecuted instantiation: elf_clone.c:xrandom64
Unexecuted instantiation: fuzz-libelf.c:xrandom64
313
314
/* There is no mkstempat needed for creating a temp file in a specific
315
   directory. Needed e.g. in combination with renameat to atomicly
316
   replace a file. So define one ourselves. Like mkstemp the template
317
   must end in "XXXXXX", which are replaced by an unique filename
318
   suffix. The file is created with user read/write permissions only
319
   in the given dirfd using openat.
320
   https://sourceware.org/bugzilla/show_bug.cgi?id=19866 */
321
static inline int
322
xmkstempat (int dirfd, char *templ)
323
0
{
324
0
  /* Only use these 64 chars.  */
325
0
  const char chars[] =
326
0
    "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_";
327
0
328
0
  /* Must end in 6X.  */
329
0
  size_t l = strlen (templ);
330
0
  if (l < 6 || memcmp (templ + l - 6, "XXXXXX", 6) != 0)
331
0
    {
332
0
      errno = EINVAL;
333
0
      return -1;
334
0
    }
335
0
336
0
  int tries = 128; /* Just fail with EEXIST if 128 tries wasn't enough.  */
337
0
  do
338
0
    {
339
0
      uint64_t r; /* We need at least 64^6 == 2^36  */
340
0
      if (xrandom64 (&r) != 0)
341
0
  return -1;
342
0
343
0
      /* Random chars for the template.  */
344
0
      for (int i = 0; i < 6; i++)
345
0
  {
346
0
    templ[l - 6 + i] = chars[r % 64];
347
0
    r /= 64;
348
0
  }
349
0
350
0
      /* Must be able to open exclusively.  */
351
0
      int fd = openat (dirfd, templ,
352
0
           O_RDWR | O_CREAT | O_EXCL | O_CLOEXEC,
353
0
           S_IRUSR | S_IWUSR);
354
0
      if (fd >= 0)
355
0
  return fd;
356
0
357
0
      tries--;
358
0
    }
359
0
  while (tries > 0 && errno == EEXIST);
360
0
361
0
  return -1;
362
0
}
Unexecuted instantiation: fuzz-libdwfl.c:xmkstempat
Unexecuted instantiation: dwfl_begin.c:xmkstempat
Unexecuted instantiation: dwfl_end.c:xmkstempat
Unexecuted instantiation: dwfl_error.c:xmkstempat
Unexecuted instantiation: dwfl_module.c:xmkstempat
Unexecuted instantiation: offline.c:xmkstempat
Unexecuted instantiation: dwfl_module_getdwarf.c:xmkstempat
Unexecuted instantiation: find-debuginfo.c:xmkstempat
Unexecuted instantiation: dwfl_build_id_find_debuginfo.c:xmkstempat
Unexecuted instantiation: libdwfl_crc32_file.c:xmkstempat
Unexecuted instantiation: open.c:xmkstempat
Unexecuted instantiation: image-header.c:xmkstempat
Unexecuted instantiation: dwfl_frame.c:xmkstempat
Unexecuted instantiation: frame_unwind.c:xmkstempat
Unexecuted instantiation: dwfl_frame_pc.c:xmkstempat
Unexecuted instantiation: dwfl_frame_regs.c:xmkstempat
Unexecuted instantiation: gzip.c:xmkstempat
Unexecuted instantiation: dwflst_process_tracker.c:xmkstempat
Unexecuted instantiation: dwflst_tracker_find_elf.c:xmkstempat
Unexecuted instantiation: dwflst_tracker_elftab.c:xmkstempat
Unexecuted instantiation: dwflst_tracker_dwfltab.c:xmkstempat
Unexecuted instantiation: dwelf_elf_gnu_debuglink.c:xmkstempat
Unexecuted instantiation: dwelf_dwarf_gnu_debugaltlink.c:xmkstempat
Unexecuted instantiation: dwelf_elf_gnu_build_id.c:xmkstempat
Unexecuted instantiation: eblopenbackend.c:xmkstempat
Unexecuted instantiation: i386_initreg_sample.c:xmkstempat
Unexecuted instantiation: x86_64_initreg_sample.c:xmkstempat
Unexecuted instantiation: arm_symbol.c:xmkstempat
Unexecuted instantiation: aarch64_symbol.c:xmkstempat
Unexecuted instantiation: aarch64_initreg.c:xmkstempat
Unexecuted instantiation: sparc_initreg.c:xmkstempat
Unexecuted instantiation: ppc_initreg.c:xmkstempat
Unexecuted instantiation: s390_initreg.c:xmkstempat
Unexecuted instantiation: riscv_init.c:xmkstempat
Unexecuted instantiation: riscv_initreg.c:xmkstempat
Unexecuted instantiation: csky_initreg.c:xmkstempat
Unexecuted instantiation: loongarch_initreg.c:xmkstempat
Unexecuted instantiation: mips_init.c:xmkstempat
Unexecuted instantiation: mips_symbol.c:xmkstempat
Unexecuted instantiation: mips_regs.c:xmkstempat
Unexecuted instantiation: mips_retval.c:xmkstempat
Unexecuted instantiation: i386_disasm.c:xmkstempat
Unexecuted instantiation: x86_64_disasm.c:xmkstempat
Unexecuted instantiation: bpf_disasm.c:xmkstempat
Unexecuted instantiation: riscv_disasm.c:xmkstempat
Unexecuted instantiation: dwarf_begin_elf.c:xmkstempat
Unexecuted instantiation: dwarf_end.c:xmkstempat
Unexecuted instantiation: dwarf_tag.c:xmkstempat
Unexecuted instantiation: dwarf_error.c:xmkstempat
Unexecuted instantiation: dwarf_attr.c:xmkstempat
Unexecuted instantiation: dwarf_abbrev_hash.c:xmkstempat
Unexecuted instantiation: dwarf_sig8_hash.c:xmkstempat
Unexecuted instantiation: dwarf_attr_integrate.c:xmkstempat
Unexecuted instantiation: dwarf_hasattr_integrate.c:xmkstempat
Unexecuted instantiation: dwarf_child.c:xmkstempat
Unexecuted instantiation: dwarf_formudata.c:xmkstempat
Unexecuted instantiation: dwarf_formref_die.c:xmkstempat
Unexecuted instantiation: dwarf_siblingof.c:xmkstempat
Unexecuted instantiation: dwarf_diecu.c:xmkstempat
Unexecuted instantiation: dwarf_hasattr.c:xmkstempat
Unexecuted instantiation: dwarf_bytesize.c:xmkstempat
Unexecuted instantiation: dwarf_bitsize.c:xmkstempat
Unexecuted instantiation: dwarf_formflag.c:xmkstempat
Unexecuted instantiation: libdw_findcu.c:xmkstempat
Unexecuted instantiation: libdw_form.c:xmkstempat
Unexecuted instantiation: libdw_alloc.c:xmkstempat
Unexecuted instantiation: frame-cache.c:xmkstempat
Unexecuted instantiation: dwarf_frame_cfa.c:xmkstempat
Unexecuted instantiation: dwarf_frame_register.c:xmkstempat
Unexecuted instantiation: dwarf_cfi_addrframe.c:xmkstempat
Unexecuted instantiation: dwarf_cfi_end.c:xmkstempat
Unexecuted instantiation: dwarf_aggregate_size.c:xmkstempat
Unexecuted instantiation: dwarf_getalt.c:xmkstempat
Unexecuted instantiation: dwarf_setalt.c:xmkstempat
Unexecuted instantiation: dwarf_peel_type.c:xmkstempat
Unexecuted instantiation: dwarf_default_lower_bound.c:xmkstempat
Unexecuted instantiation: libdw_find_split_unit.c:xmkstempat
Unexecuted instantiation: dwarf_cu_dwp_section_info.c:xmkstempat
Unexecuted instantiation: dwfl_report_elf.c:xmkstempat
Unexecuted instantiation: relocate.c:xmkstempat
Unexecuted instantiation: dwfl_module_build_id.c:xmkstempat
Unexecuted instantiation: dwfl_build_id_find_elf.c:xmkstempat
Unexecuted instantiation: linux-proc-maps.c:xmkstempat
Unexecuted instantiation: dwfl_addrmodule.c:xmkstempat
Unexecuted instantiation: libdwfl_crc32.c:xmkstempat
Unexecuted instantiation: elf-from-memory.c:xmkstempat
Unexecuted instantiation: dwfl_module_dwarf_cfi.c:xmkstempat
Unexecuted instantiation: dwfl_module_eh_cfi.c:xmkstempat
Unexecuted instantiation: linux-pid-attach.c:xmkstempat
Unexecuted instantiation: dwarf_begin.c:xmkstempat
Unexecuted instantiation: dwarf_getabbrev.c:xmkstempat
Unexecuted instantiation: dwarf_nextcu.c:xmkstempat
Unexecuted instantiation: dwarf_offdie.c:xmkstempat
Unexecuted instantiation: dwarf_formstring.c:xmkstempat
Unexecuted instantiation: dwarf_haschildren.c:xmkstempat
Unexecuted instantiation: dwarf_formsdata.c:xmkstempat
Unexecuted instantiation: dwarf_formref.c:xmkstempat
Unexecuted instantiation: dwarf_srclang.c:xmkstempat
Unexecuted instantiation: dwarf_getlocation.c:xmkstempat
Unexecuted instantiation: fde.c:xmkstempat
Unexecuted instantiation: cfi.c:xmkstempat
Unexecuted instantiation: dwarf_getcfi.c:xmkstempat
Unexecuted instantiation: dwarf_getcfi_elf.c:xmkstempat
Unexecuted instantiation: dwarf_get_units.c:xmkstempat
Unexecuted instantiation: segment.c:xmkstempat
Unexecuted instantiation: dwarf_formaddr.c:xmkstempat
Unexecuted instantiation: dwarf_lowpc.c:xmkstempat
Unexecuted instantiation: dwarf_ranges.c:xmkstempat
Unexecuted instantiation: dwarf_formblock.c:xmkstempat
Unexecuted instantiation: dwarf_next_cfi.c:xmkstempat
Unexecuted instantiation: cie.c:xmkstempat
Unexecuted instantiation: dwarf_highpc.c:xmkstempat
Unexecuted instantiation: elf_version.c:xmkstempat
Unexecuted instantiation: elf_hash.c:xmkstempat
Unexecuted instantiation: elf_error.c:xmkstempat
Unexecuted instantiation: elf_begin.c:xmkstempat
Unexecuted instantiation: elf_next.c:xmkstempat
Unexecuted instantiation: elf_end.c:xmkstempat
Unexecuted instantiation: elf_kind.c:xmkstempat
Unexecuted instantiation: gelf_getclass.c:xmkstempat
Unexecuted instantiation: elf_getident.c:xmkstempat
Unexecuted instantiation: gelf_fsize.c:xmkstempat
Unexecuted instantiation: elf32_xlatetof.c:xmkstempat
Unexecuted instantiation: elf32_xlatetom.c:xmkstempat
Unexecuted instantiation: elf64_xlatetof.c:xmkstempat
Unexecuted instantiation: elf64_xlatetom.c:xmkstempat
Unexecuted instantiation: gelf_xlate.c:xmkstempat
Unexecuted instantiation: gelf_getehdr.c:xmkstempat
Unexecuted instantiation: gelf_getphdr.c:xmkstempat
Unexecuted instantiation: elf_getarhdr.c:xmkstempat
Unexecuted instantiation: elf_rawfile.c:xmkstempat
Unexecuted instantiation: elf_readall.c:xmkstempat
Unexecuted instantiation: elf_cntl.c:xmkstempat
Unexecuted instantiation: elf_getscn.c:xmkstempat
Unexecuted instantiation: elf_nextscn.c:xmkstempat
Unexecuted instantiation: elf_ndxscn.c:xmkstempat
Unexecuted instantiation: gelf_getshdr.c:xmkstempat
Unexecuted instantiation: gelf_update_shdr.c:xmkstempat
Unexecuted instantiation: elf_strptr.c:xmkstempat
Unexecuted instantiation: elf_rawdata.c:xmkstempat
Unexecuted instantiation: elf_getdata.c:xmkstempat
Unexecuted instantiation: elf_getdata_rawchunk.c:xmkstempat
Unexecuted instantiation: elf_memory.c:xmkstempat
Unexecuted instantiation: gelf_getrel.c:xmkstempat
Unexecuted instantiation: gelf_getrela.c:xmkstempat
Unexecuted instantiation: gelf_update_rel.c:xmkstempat
Unexecuted instantiation: gelf_update_rela.c:xmkstempat
Unexecuted instantiation: gelf_getdyn.c:xmkstempat
Unexecuted instantiation: gelf_getnote.c:xmkstempat
Unexecuted instantiation: gelf_xlatetof.c:xmkstempat
Unexecuted instantiation: gelf_xlatetom.c:xmkstempat
Unexecuted instantiation: gelf_getsymshndx.c:xmkstempat
Unexecuted instantiation: elf_getphdrnum.c:xmkstempat
Unexecuted instantiation: elf_getshdrnum.c:xmkstempat
Unexecuted instantiation: elf_getshdrstrndx.c:xmkstempat
Unexecuted instantiation: gelf_offscn.c:xmkstempat
Unexecuted instantiation: elf_compress.c:xmkstempat
Unexecuted instantiation: elf_compress_gnu.c:xmkstempat
Unexecuted instantiation: elf32_getphdr.c:xmkstempat
Unexecuted instantiation: elf64_getphdr.c:xmkstempat
Unexecuted instantiation: elf32_getshdr.c:xmkstempat
Unexecuted instantiation: elf64_getshdr.c:xmkstempat
Unexecuted instantiation: elf32_offscn.c:xmkstempat
Unexecuted instantiation: elf64_offscn.c:xmkstempat
Unexecuted instantiation: gelf_getchdr.c:xmkstempat
Unexecuted instantiation: elf32_getchdr.c:xmkstempat
Unexecuted instantiation: elf64_getchdr.c:xmkstempat
Unexecuted instantiation: core-file.c:xmkstempat
Unexecuted instantiation: linux-core-attach.c:xmkstempat
Unexecuted instantiation: dwfl_segment_report_module.c:xmkstempat
Unexecuted instantiation: link_map.c:xmkstempat
Unexecuted instantiation: dwfl_module_report_build_id.c:xmkstempat
Unexecuted instantiation: derelocate.c:xmkstempat
Unexecuted instantiation: elf_clone.c:xmkstempat
Unexecuted instantiation: fuzz-libelf.c:xmkstempat
363
364
#endif /* system.h */