Compare commits

...

5 Commits

Author SHA1 Message Date
David Anderson
5f5ef88fd8 up to date
modified:   ChangeLog
2025-08-20 14:44:32 -07:00
David Anderson
550d3570b2 When LIBDWARFTEMP is defined change the name
of the temp file to start with junk
to better match what is routine in the regressiontests.
And to something that works just fine with Win msys2.
(in msys2 "/tmp/anything" will not work for open(  "wb")
whereas "anything" will work.)
        modified:   fuzz/fuzz_aranges.c
	modified:   fuzz/fuzz_crc.c
	modified:   fuzz/fuzz_crc_32.c
	modified:   fuzz/fuzz_debug_addr_access.c
	modified:   fuzz/fuzz_debug_str.c
	modified:   fuzz/fuzz_debuglink.c
	modified:   fuzz/fuzz_die_cu.c
	modified:   fuzz/fuzz_die_cu_attrs.c
	modified:   fuzz/fuzz_die_cu_attrs_loclist.c
	modified:   fuzz/fuzz_die_cu_e.c
	modified:   fuzz/fuzz_die_cu_e_print.c
	modified:   fuzz/fuzz_die_cu_info1.c
	modified:   fuzz/fuzz_die_cu_offset.c
	modified:   fuzz/fuzz_die_cu_print.c
	modified:   fuzz/fuzz_dnames.c
	modified:   fuzz/fuzz_findfuncbypc.c
	modified:   fuzz/fuzz_gdbindex.c
	modified:   fuzz/fuzz_globals.c
	modified:   fuzz/fuzz_gnu_index.c
	modified:   fuzz/fuzz_init_b.c
	modified:   fuzz/fuzz_init_binary.c
	modified:   fuzz/fuzz_init_path.c
	modified:   fuzz/fuzz_macro_dwarf4.c
	modified:   fuzz/fuzz_macro_dwarf5.c
	modified:   fuzz/fuzz_rng.c
	modified:   fuzz/fuzz_set_frame_all.c
	modified:   fuzz/fuzz_showsectgrp.c
	modified:   fuzz/fuzz_simplereader_tu.c
	modified:   fuzz/fuzz_srcfiles.c
	modified:   fuzz/fuzz_stack_frame_access.c
	modified:   fuzz/fuzz_str_offsets.c
	modified:   fuzz/fuzz_tie.c
	modified:   fuzz/fuzz_xuindex.c
	modified:   src/lib/libdwarf/libdwarf.h
2025-08-20 14:40:18 -07:00
David Anderson
06ba15c057 Corrected the project name here to "libdwarf"
modified:   doc/Doxyfile
2025-08-20 09:16:19 -07:00
David Anderson
a6a4e37656 Adding release information to places it was
accidentally omitted for previous releases.
	modified:   bugxml/dwarfbug.html
	modified:   bugxml/dwarfbug.xml
	modified:   bugxml/dwarfbuglohi.html
2025-08-14 11:35:58 -07:00
David Anderson
bc1a83a568 Documenting DW202508-001.
modified:   ChangeLog
	modified:   bugxml/data.txt
2025-08-09 15:58:51 -07:00
40 changed files with 562 additions and 169 deletions

102
ChangeLog
View File

@@ -1,3 +1,105 @@
2025-08-20: David Anderson
commit 550d3570b2fbebe2f9dd28d7e8df754543a1d45f
When LIBDWARFTEMP is defined change the name
of the temp file to start with junk
to better match what is routine in the regressiontests.
And to something that works just fine with Win msys2.
(in msys2 "/tmp/anything" will not work for open( "wb")
whereas "anything" will work.)
modified: fuzz/fuzz_aranges.c
modified: fuzz/fuzz_crc.c
modified: fuzz/fuzz_crc_32.c
modified: fuzz/fuzz_debug_addr_access.c
modified: fuzz/fuzz_debug_str.c
modified: fuzz/fuzz_debuglink.c
modified: fuzz/fuzz_die_cu.c
modified: fuzz/fuzz_die_cu_attrs.c
modified: fuzz/fuzz_die_cu_attrs_loclist.c
modified: fuzz/fuzz_die_cu_e.c
modified: fuzz/fuzz_die_cu_e_print.c
modified: fuzz/fuzz_die_cu_info1.c
modified: fuzz/fuzz_die_cu_offset.c
modified: fuzz/fuzz_die_cu_print.c
modified: fuzz/fuzz_dnames.c
modified: fuzz/fuzz_findfuncbypc.c
modified: fuzz/fuzz_gdbindex.c
modified: fuzz/fuzz_globals.c
modified: fuzz/fuzz_gnu_index.c
modified: fuzz/fuzz_init_b.c
modified: fuzz/fuzz_init_binary.c
modified: fuzz/fuzz_init_path.c
modified: fuzz/fuzz_macro_dwarf4.c
modified: fuzz/fuzz_macro_dwarf5.c
modified: fuzz/fuzz_rng.c
modified: fuzz/fuzz_set_frame_all.c
modified: fuzz/fuzz_showsectgrp.c
modified: fuzz/fuzz_simplereader_tu.c
modified: fuzz/fuzz_srcfiles.c
modified: fuzz/fuzz_stack_frame_access.c
modified: fuzz/fuzz_str_offsets.c
modified: fuzz/fuzz_tie.c
modified: fuzz/fuzz_xuindex.c
modified: src/lib/libdwarf/libdwarf.h
2025-08-20: David Anderson
commit 06ba15c0576f3747f6bf68eefcaa451519a2d77b
Corrected the project name here to "libdwarf"
modified: doc/Doxyfile
2025-08-14: David Anderson
commit a6a4e37656ac8df696d7fee26c696fcbc6ae0566
Adding release information to places it was
accidentally omitted for previous releases.
modified: bugxml/dwarfbug.html
modified: bugxml/dwarfbug.xml
modified: bugxml/dwarfbuglohi.html
2025-08-09: David Anderson
commit bc1a83a568347519e37fce070d4bc7ea679b5a84
Documenting DW202508-001.
modified: ChangeLog
modified: bugxml/data.txt
2025-08-08: David Anderson
commit 67c26c25f776303c154079a419bab34f29f35547
Regenerated with bug 202508-001
modified: bugxml/dwarfbug.html
modified: bugxml/dwarfbug.xml
modified: bugxml/dwarfbuglohi.html
2025-08-08: David Anderson
commit aedc3c4cebdc84fe1e4b342df18b1b53110df534
Noting bug ossfuzz 437060549 in vulnerabilities.
modified: bugxml/data.txt
2025-08-08: David Anderson
commit efa242489a69b13bc6eedc6766880335ac42d158
Fixing ossfuzz 437060549 .
Also known as DW202508-001.
An addition of offsets was not checked for overflow.
Now we check.
The code has been unsafe (in reading a carefully
corrupted object file) for many years.
The bug was in release 20060308 (March 2006)
(look for MIN_CU_HDR_SIZE).
modified: dwarf_global.c
2025-08-08: David Anderson
commit 2da2b4059e477600e359483bdbcfd9fa492369aa
Previous changes update.
modified: ChangeLog
Now --print-all-srcfiles adds the count of
duplicated (across the entire object) DWARF file names.
modified: src/bin/dwarfdump/dd_all_srcfiles.c
2025-08-08: David Anderson
commit 587e95c21f519b59d11ee7cc34fd61c74058dbec

View File

@@ -6,16 +6,14 @@ reportedby: David Korczynski
vulnerability: Heap buffer overflow in dwarf_globals.c
product: libdwarf
description: A corrupt (fuzzed) object file resulted
in an overflow and an incorrect check and
incorrect access to memory.
in an overflow and an incorrect check and incorrect access to memory.
The error check is now valid.
This has been a vulnerability for 20 years, I suspect,
though the exact date of the error has not been
determined.
The bug has been present since at least 2006 (release dwarf-20060308).
Look for MIN_CU_HDR_SIZE in dwarf_global.c .
datefixed: 2025-08-08
references: regressiontests/ossfuzz437060549/fuzz_globals-4771320878661632
gitfixid: efa242489a69b13bc6eedc6766880335ac42d158
tarrelease:
tarrelease: predicting 2.2.0
endrec: DW202508-001
@@ -34,7 +32,7 @@ description: A corrupt (fuzzed) .debug_macro resulted in
datefixed: 2025-01-07
references: regressiontests/ossfuzz394644267/fuzz_macro_dwarf5-5504709091983360 fuzz_macro_dwarf5-5504709091983360
gitfixid: 156156a80affdc63b851fbf7fdc01e4d41849eb0
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202502-001
@@ -56,7 +54,7 @@ description: A 20K list of attributes to one DIE in
datefixed: 2024-12-28
references: regressiontests/DW202412-011/fuzz_die_cu_attrs-5424995441901568
gitfixid: 2161332885c50074f15c0e1a7339c330cbf88c62
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-011
id: DW202412-010
@@ -74,7 +72,7 @@ description: A mistake made in 2021 resulted in adding
datefixed: 2024-12-23
references: regressiontests/ossfuzz385742125/fuzz_die_cu_print-5500979604160512
gitfixid: 375d102768ee1ff953f97a93345318db3f63ea3c
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-010
@@ -95,7 +93,7 @@ description: A very badly damaged MachO object
datefixed: 2024-12-24
references: regressiontests/DW202412-009/fuzz_init_path-5854698061496320
gitfixid:
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-009
@@ -120,7 +118,7 @@ description: A very badly damaged object
datefixed: 2024-12-23
references: regressiontests/ossfuzz385466100/fuzz_die_cu_offset-6604029974609920
gitfixid: 4e6e7cafa6bef0629e5ea2bbf63a4e2f84c5a938
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-008
id: DW202412-007
@@ -139,7 +137,7 @@ description: A certain corrupted location expression
datefixed: 2024-12-11
references: regressiontests/ossfuzz42536144/fuzz_die_cu_attrs_loclist-5906068650655744
gitfixid: a0d983611468e3882c9fee92197d321ae4580c1a
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-007
id: DW202412-006
@@ -163,7 +161,7 @@ description: In dwarf_dnames_header()
datefixed: 2024-12-10
references:regressiontests/ossfuzz383170474/fuzz_globals-4515360770228224.fuzz
gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-006
@@ -182,7 +180,7 @@ description: A corrupted PE object results
datefixed: 2024-12-10
references:regressiontests/ossfuzz380108595/fuzz_aranges-5572243180027904
gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-005
id: DW202412-004
@@ -199,7 +197,7 @@ description: A corrupted PE object results
datefixed: 2024-12-11
references:regressiontests/ossfuzz379159140/fuzz_die_cu_print-5335984847257600
gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-004
@@ -219,7 +217,7 @@ description: A corrupted PE object results
datefixed: 2024-12-11
references:regressiontests/ossfuzz372754161/fuzz_globals-6058837938864128
gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-003
id: DW202412-002
@@ -245,7 +243,7 @@ description: A corrupted object results
datefixed: 2024-12-12
references:regressiontests/ossfuzz371659894/fuzz_die_cu_attrs-6661686947282944
gitfixid: e69eb5da569ce8d3a76ac1aa2f1ae9d371729dbf
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-002
id: DW202412-001
@@ -261,7 +259,7 @@ description: Too large a malloc due to reading a
datefixed: 2024-12-11
references:regressiontests/ossfuzz371721677/fuzz_die_cu_e_print-4913953320271872
gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202412-001
@@ -287,7 +285,7 @@ description: Reading from address zero due to a lack of
datefixed: 2024-12-05
references: regressiontests/ossfuzz42538203/fuzz_findfuncbypc-5117956621664256
gitfixid: 9f11f8351c85f7715144943f72cd72f011616fe8
tarrelease:
tarrelease: libdwarf-0.12.0.tar.xz
endrec: DW202409-001
id: DW202407-012
@@ -307,7 +305,7 @@ description: The code added in git fix id
datefixed: 2024-07-28
references: regressiontests/ossfuzz70763/fuzz_macro_dwarf5-5161075908083712
gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-012
id: DW202407-011
@@ -327,7 +325,7 @@ description: The code added in git fix id
datefixed: 2024-07-28
references: regressiontests/ossfuzz70753/fuzz_die_cu_offset-6598270743281664
gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-011
id: DW202407-010
@@ -345,7 +343,7 @@ description: Libdwarf was referencing freed space
datefixed: 2024-07-27
references: regressiontests/ossfuzz70721/fuzz_macro_dwarf5-4907954017468416
gitfixid: 6fa96f95e043bac9b98ca6f7a9a542dae8f46cd
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-010
@@ -362,7 +360,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70287/
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-009
@@ -380,7 +378,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70282/
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-008
id: DW202407-007
@@ -396,7 +394,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70278/
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-007
@@ -413,7 +411,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70277/
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-006
@@ -430,7 +428,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70266/fuzz_findfuncbypc-6093996460408832
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-005
@@ -447,7 +445,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70263/fuzz_die_cu-4960441042796544
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-004
id: DW202407-003
@@ -463,7 +461,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70256/fuzz_rng-483822291655065
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-003
id: DW202407-002
@@ -479,7 +477,7 @@ description: Libdwarf was not checking a field in
datefixed: 2024-07-10
references: regressiontests/ossfuzz70246/fuzz_macro_dwarf5-5128935898152960
gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-002
id: DW202407-001
@@ -494,7 +492,7 @@ description: Libdwarf was failing to free()
datefixed: 2024-07-09
references: regressiontests/ossfuzz70244/fuzz_die_cu_attrs_loclist-4958134427254784
gitfixid: 906a4428a5d92e17948da4249cfccbe8f5ae8005
tarrelease:
tarrelease: libdwarf-0.11.0.tar.xz
endrec: DW202407-001

View File

@@ -65,12 +65,10 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
<p>product: libdwarf
</p>
<p>description: A corrupt (fuzzed) object file resulted
in an overflow and an incorrect check and
incorrect access to memory.
in an overflow and an incorrect check and incorrect access to memory.
The error check is now valid.
This has been a vulnerability for 20 years, I suspect,
though the exact date of the error has not been
determined.
The bug has been present since at least 2006 (release dwarf-20060308).
Look for MIN_CU_HDR_SIZE in dwarf_global.c .
</p>
<p>datefixed: 2025-08-08
</p>
@@ -78,7 +76,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: efa242489a69b13bc6eedc6766880335ac42d158
</p>
<p>tarrelease:</p>
<p>tarrelease: predicting 2.2.0
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202502-001">2) DW202502-001</h3>
<p>id: DW202502-001
@@ -107,7 +106,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 156156a80affdc63b851fbf7fdc01e4d41849eb0
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-011">3) DW202412-011</h3>
<p>id: DW202412-011
@@ -139,7 +139,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 2161332885c50074f15c0e1a7339c330cbf88c62
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-010">4) DW202412-010</h3>
<p>id: DW202412-010
@@ -168,7 +169,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 375d102768ee1ff953f97a93345318db3f63ea3c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-009">5) DW202412-009</h3>
<p>id: DW202412-009
@@ -198,7 +200,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
<p>references: regressiontests/DW202412-009/fuzz_init_path-5854698061496320
</p>
<p>gitfixid:</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-008">6) DW202412-008</h3>
<p>id: DW202412-008
@@ -232,7 +235,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 4e6e7cafa6bef0629e5ea2bbf63a4e2f84c5a938
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-007">7) DW202412-007</h3>
<p>id: DW202412-007
@@ -262,7 +266,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: a0d983611468e3882c9fee92197d321ae4580c1a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-006">8) DW202412-006</h3>
<p>id: DW202412-006
@@ -297,7 +302,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-005">9) DW202412-005</h3>
<p>id: DW202412-005
@@ -325,7 +331,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-004">10) DW202412-004</h3>
<p>id: DW202412-004
@@ -353,7 +360,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-003">11) DW202412-003</h3>
<p>id: DW202412-003
@@ -381,7 +389,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-002">12) DW202412-002</h3>
<p>id: DW202412-002
@@ -418,7 +427,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e69eb5da569ce8d3a76ac1aa2f1ae9d371729dbf
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-001">13) DW202412-001</h3>
<p>id: DW202412-001
@@ -445,7 +455,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202409-001">14) DW202409-001</h3>
<p>id: DW202409-001
@@ -480,7 +491,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 9f11f8351c85f7715144943f72cd72f011616fe8
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-012">15) DW202407-012</h3>
<p>id: DW202407-012
@@ -511,7 +523,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-011">16) DW202407-011</h3>
<p>id: DW202407-011
@@ -542,7 +555,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-010">17) DW202407-010</h3>
<p>id: DW202407-010
@@ -571,7 +585,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 6fa96f95e043bac9b98ca6f7a9a542dae8f46cd
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-009">18) DW202407-009</h3>
<p>id: DW202407-009
@@ -598,7 +613,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-008">19) DW202407-008</h3>
<p>id: DW202407-008
@@ -625,7 +641,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-007">20) DW202407-007</h3>
<p>id: DW202407-007
@@ -652,7 +669,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-006">21) DW202407-006</h3>
<p>id: DW202407-006
@@ -679,7 +697,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-005">22) DW202407-005</h3>
<p>id: DW202407-005
@@ -706,7 +725,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-004">23) DW202407-004</h3>
<p>id: DW202407-004
@@ -733,7 +753,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-003">24) DW202407-003</h3>
<p>id: DW202407-003
@@ -760,7 +781,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-002">25) DW202407-002</h3>
<p>id: DW202407-002
@@ -787,7 +809,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-001">26) DW202407-001</h3>
<p>id: DW202407-001
@@ -813,7 +836,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 906a4428a5d92e17948da4249cfccbe8f5ae8005
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202406-002">27) DW202406-002</h3>
<p>id: DW202406-002

View File

@@ -10,18 +10,16 @@
<vulnerability> Heap buffer overflow in dwarf_globals.c
</vulnerability>
<description> A corrupt (fuzzed) object file resulted
in an overflow and an incorrect check and
incorrect access to memory.
in an overflow and an incorrect check and incorrect access to memory.
The error check is now valid.
This has been a vulnerability for 20 years, I suspect,
though the exact date of the error has not been
determined.
The bug has been present since at least 2006 (release dwarf-20060308).
Look for MIN_CU_HDR_SIZE in dwarf_global.c .
</description>
<datefixed>2025-08-08</datefixed>
<references> regressiontests/ossfuzz437060549/fuzz_globals-4771320878661632
</references>
<gitfixid>efa242489a69b13bc6eedc6766880335ac42d158</gitfixid>
<tarrelease></tarrelease>
<tarrelease>predicting 2.2.0</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202502-001</dwid>
@@ -43,7 +41,7 @@
<references> regressiontests/ossfuzz394644267/fuzz_macro_dwarf5-5504709091983360 fuzz_macro_dwarf5-5504709091983360
</references>
<gitfixid>156156a80affdc63b851fbf7fdc01e4d41849eb0</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-011</dwid>
@@ -68,7 +66,7 @@
<references> regressiontests/DW202412-011/fuzz_die_cu_attrs-5424995441901568
</references>
<gitfixid>2161332885c50074f15c0e1a7339c330cbf88c62</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-010</dwid>
@@ -90,7 +88,7 @@
<references> regressiontests/ossfuzz385742125/fuzz_die_cu_print-5500979604160512
</references>
<gitfixid>375d102768ee1ff953f97a93345318db3f63ea3c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-009</dwid>
@@ -114,7 +112,7 @@
<references> regressiontests/DW202412-009/fuzz_init_path-5854698061496320
</references>
<gitfixid></gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-008</dwid>
@@ -141,7 +139,7 @@
<references> regressiontests/ossfuzz385466100/fuzz_die_cu_offset-6604029974609920
</references>
<gitfixid>4e6e7cafa6bef0629e5ea2bbf63a4e2f84c5a938</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-007</dwid>
@@ -164,7 +162,7 @@
<references> regressiontests/ossfuzz42536144/fuzz_die_cu_attrs_loclist-5906068650655744
</references>
<gitfixid>a0d983611468e3882c9fee92197d321ae4580c1a</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-006</dwid>
@@ -192,7 +190,7 @@
<references>regressiontests/ossfuzz383170474/fuzz_globals-4515360770228224.fuzz
</references>
<gitfixid>43be4567488c8b531d1ae98fe128f5eda374098e</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-005</dwid>
@@ -213,7 +211,7 @@
<references>regressiontests/ossfuzz380108595/fuzz_aranges-5572243180027904
</references>
<gitfixid>43be4567488c8b531d1ae98fe128f5eda374098e</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-004</dwid>
@@ -234,7 +232,7 @@
<references>regressiontests/ossfuzz379159140/fuzz_die_cu_print-5335984847257600
</references>
<gitfixid>e9340b7fb01f9ee479a1a26cc10895d4eb305cc6</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-003</dwid>
@@ -255,7 +253,7 @@
<references>regressiontests/ossfuzz372754161/fuzz_globals-6058837938864128
</references>
<gitfixid>e9340b7fb01f9ee479a1a26cc10895d4eb305cc6</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-002</dwid>
@@ -285,7 +283,7 @@
<references>regressiontests/ossfuzz371659894/fuzz_die_cu_attrs-6661686947282944
</references>
<gitfixid>e69eb5da569ce8d3a76ac1aa2f1ae9d371729dbf</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202412-001</dwid>
@@ -305,7 +303,7 @@
<references>regressiontests/ossfuzz371721677/fuzz_die_cu_e_print-4913953320271872
</references>
<gitfixid>e9340b7fb01f9ee479a1a26cc10895d4eb305cc6</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202409-001</dwid>
@@ -333,7 +331,7 @@
<references> regressiontests/ossfuzz42538203/fuzz_findfuncbypc-5117956621664256
</references>
<gitfixid>9f11f8351c85f7715144943f72cd72f011616fe8</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.12.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-012</dwid>
@@ -357,7 +355,7 @@
<references> regressiontests/ossfuzz70763/fuzz_macro_dwarf5-5161075908083712
</references>
<gitfixid>1b79d618bf5aab2bda9be495c531b13e94ae056a</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-011</dwid>
@@ -381,7 +379,7 @@
<references> regressiontests/ossfuzz70753/fuzz_die_cu_offset-6598270743281664
</references>
<gitfixid>1b79d618bf5aab2bda9be495c531b13e94ae056a</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-010</dwid>
@@ -403,7 +401,7 @@
<references> regressiontests/ossfuzz70721/fuzz_macro_dwarf5-4907954017468416
</references>
<gitfixid>6fa96f95e043bac9b98ca6f7a9a542dae8f46cd</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-009</dwid>
@@ -423,7 +421,7 @@
<references> regressiontests/ossfuzz70287/
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-008</dwid>
@@ -443,7 +441,7 @@
<references> regressiontests/ossfuzz70282/
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-007</dwid>
@@ -463,7 +461,7 @@
<references> regressiontests/ossfuzz70278/
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-006</dwid>
@@ -483,7 +481,7 @@
<references> regressiontests/ossfuzz70277/
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-005</dwid>
@@ -503,7 +501,7 @@
<references> regressiontests/ossfuzz70266/fuzz_findfuncbypc-6093996460408832
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-004</dwid>
@@ -523,7 +521,7 @@
<references> regressiontests/ossfuzz70263/fuzz_die_cu-4960441042796544
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-003</dwid>
@@ -543,7 +541,7 @@
<references> regressiontests/ossfuzz70256/fuzz_rng-483822291655065
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-002</dwid>
@@ -563,7 +561,7 @@
<references> regressiontests/ossfuzz70246/fuzz_macro_dwarf5-5128935898152960
</references>
<gitfixid>d7c4efdcc7952b38a237a36ccedf364018e0fb1c</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202407-001</dwid>
@@ -582,7 +580,7 @@
<references> regressiontests/ossfuzz70244/fuzz_die_cu_attrs_loclist-4958134427254784
</references>
<gitfixid>906a4428a5d92e17948da4249cfccbe8f5ae8005</gitfixid>
<tarrelease></tarrelease>
<tarrelease>libdwarf-0.11.0.tar.xz</tarrelease>
</dwbug>
<dwbug>
<dwid>DW202406-002</dwid>

View File

@@ -5947,7 +5947,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 906a4428a5d92e17948da4249cfccbe8f5ae8005
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-002">179) DW202407-002</h3>
<p>id: DW202407-002
@@ -5974,7 +5975,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-003">180) DW202407-003</h3>
<p>id: DW202407-003
@@ -6001,7 +6003,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-004">181) DW202407-004</h3>
<p>id: DW202407-004
@@ -6028,7 +6031,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-005">182) DW202407-005</h3>
<p>id: DW202407-005
@@ -6055,7 +6059,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-006">183) DW202407-006</h3>
<p>id: DW202407-006
@@ -6082,7 +6087,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-007">184) DW202407-007</h3>
<p>id: DW202407-007
@@ -6109,7 +6115,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-008">185) DW202407-008</h3>
<p>id: DW202407-008
@@ -6136,7 +6143,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-009">186) DW202407-009</h3>
<p>id: DW202407-009
@@ -6163,7 +6171,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: d7c4efdcc7952b38a237a36ccedf364018e0fb1c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-010">187) DW202407-010</h3>
<p>id: DW202407-010
@@ -6192,7 +6201,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 6fa96f95e043bac9b98ca6f7a9a542dae8f46cd
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-011">188) DW202407-011</h3>
<p>id: DW202407-011
@@ -6223,7 +6233,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202407-012">189) DW202407-012</h3>
<p>id: DW202407-012
@@ -6254,7 +6265,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 1b79d618bf5aab2bda9be495c531b13e94ae056a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.11.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202409-001">190) DW202409-001</h3>
<p>id: DW202409-001
@@ -6289,7 +6301,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 9f11f8351c85f7715144943f72cd72f011616fe8
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-001">191) DW202412-001</h3>
<p>id: DW202412-001
@@ -6316,7 +6329,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-002">192) DW202412-002</h3>
<p>id: DW202412-002
@@ -6353,7 +6367,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e69eb5da569ce8d3a76ac1aa2f1ae9d371729dbf
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-003">193) DW202412-003</h3>
<p>id: DW202412-003
@@ -6381,7 +6396,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-004">194) DW202412-004</h3>
<p>id: DW202412-004
@@ -6409,7 +6425,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: e9340b7fb01f9ee479a1a26cc10895d4eb305cc6
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-005">195) DW202412-005</h3>
<p>id: DW202412-005
@@ -6437,7 +6454,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-006">196) DW202412-006</h3>
<p>id: DW202412-006
@@ -6472,7 +6490,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 43be4567488c8b531d1ae98fe128f5eda374098e
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-007">197) DW202412-007</h3>
<p>id: DW202412-007
@@ -6502,7 +6521,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: a0d983611468e3882c9fee92197d321ae4580c1a
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-008">198) DW202412-008</h3>
<p>id: DW202412-008
@@ -6536,7 +6556,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 4e6e7cafa6bef0629e5ea2bbf63a4e2f84c5a938
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-009">199) DW202412-009</h3>
<p>id: DW202412-009
@@ -6566,7 +6587,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
<p>references: regressiontests/DW202412-009/fuzz_init_path-5854698061496320
</p>
<p>gitfixid:</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-010">200) DW202412-010</h3>
<p>id: DW202412-010
@@ -6595,7 +6617,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 375d102768ee1ff953f97a93345318db3f63ea3c
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202412-011">201) DW202412-011</h3>
<p>id: DW202412-011
@@ -6627,7 +6650,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 2161332885c50074f15c0e1a7339c330cbf88c62
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202502-001">202) DW202502-001</h3>
<p>id: DW202502-001
@@ -6656,7 +6680,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: 156156a80affdc63b851fbf7fdc01e4d41849eb0
</p>
<p>tarrelease:</p>
<p>tarrelease: libdwarf-0.12.0.tar.xz
</p>
<p> <a href="#top">[top]</a> </p>
<h3 id="DW202508-001">203) DW202508-001</h3>
<p>id: DW202508-001
@@ -6673,12 +6698,10 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
<p>product: libdwarf
</p>
<p>description: A corrupt (fuzzed) object file resulted
in an overflow and an incorrect check and
incorrect access to memory.
in an overflow and an incorrect check and incorrect access to memory.
The error check is now valid.
This has been a vulnerability for 20 years, I suspect,
though the exact date of the error has not been
determined.
The bug has been present since at least 2006 (release dwarf-20060308).
Look for MIN_CU_HDR_SIZE in dwarf_global.c .
</p>
<p>datefixed: 2025-08-08
</p>
@@ -6686,7 +6709,8 @@ Vulnerabilities <a href="./dwarfbuglohi.html">listed oldest-first</a>.
</p>
<p>gitfixid: efa242489a69b13bc6eedc6766880335ac42d158
</p>
<p>tarrelease:</p>
<p>tarrelease: predicting 2.2.0
</p>
<p> <a href="#top">[top]</a> </p>
<p> <a href="#top">[top]</a> </p>
</body>

View File

@@ -42,7 +42,7 @@ DOXYFILE_ENCODING = UTF-8
# title of most generated pages and in a few other places.
# The default value is: My Project.
PROJECT_NAME = "My Project"
PROJECT_NAME = "libdwarf"
# The PROJECT_NUMBER tag can be used to enter a project or revision number. This
# could be handy for archiving the generated documentation or if some version

View File

@@ -39,10 +39,17 @@ int arange_processing_example(Dwarf_Debug dbg, Dwarf_Error *error);
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef LIBDWARFTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,12 +32,20 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);
fclose(fp);

View File

@@ -33,10 +33,17 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef LIBDWARFTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -33,10 +33,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "libfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,10 +32,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "libfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,12 +32,19 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "libfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);
fclose(fp);

View File

@@ -34,10 +34,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -58,10 +58,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -33,10 +33,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -34,10 +34,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -34,12 +34,19 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);
fclose(fp);

View File

@@ -33,10 +33,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -34,10 +34,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -34,10 +34,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -40,10 +40,16 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -92,11 +92,21 @@ DW_UT_partial 0x03 /* DWARF5 */
#endif
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filepath[256];
sprintf(filepath, "/tmp/libfuzzer.%d", getpid());
char filename[256];
FILE *fp = fopen(filepath, "wb");
#ifdef DWREGRESSIONTEMP
/* under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/. No need for
/tmp/ in Linux anyway. libdwarf regressiontests
use it this way. */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);
@@ -117,7 +127,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
check_coup_dir (for example). */
memset(&target_data,0,sizeof(target_data));
int res =
dwarf_init_path(filepath, 0, 0, DW_GROUPNUMBER_ANY, 0, 0, &dbg, &error);
dwarf_init_path(filename, 0, 0, DW_GROUPNUMBER_ANY, 0, 0, &dbg, &error);
if (res == DW_DLV_ERROR) {
dwarf_dealloc_error(dbg, error);
dwarf_finish(dbg);
@@ -126,7 +136,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
res = dwarf_finish(dbg);
}
unlink(filepath);
unlink(filename);
return 0;
}

View File

@@ -36,10 +36,18 @@ int examplex(Dwarf_Gdbindex gdbindex, Dwarf_Error *error);
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -36,10 +36,18 @@ int get_globals_example(Dwarf_Debug dbg, Dwarf_Error *error);
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,10 +32,18 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,10 +32,18 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -33,10 +33,18 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -27,10 +27,18 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -32,10 +32,18 @@ limitations under the License.
*/
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -30,10 +30,18 @@ int examplep5(Dwarf_Die cu_die, Dwarf_Error *error);
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -34,10 +34,18 @@ to avoid memory leaks (and close the fd, of course). */
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -58,10 +58,18 @@ static void dump_block(char *prefix, Dwarf_Small *data, Dwarf_Unsigned len);
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -26,10 +26,18 @@ limitations under the License.
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -26,10 +26,18 @@ limitations under the License.
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -28,11 +28,18 @@ int examplee(Dwarf_Debug dbg, Dwarf_Die somedie, Dwarf_Error *error);
int exampled(Dwarf_Die somedie, Dwarf_Error *error);
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
return 0;
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return EXIT_FAILURE;
}
fwrite(data, size, 1, fp);
fclose(fp);

View File

@@ -27,10 +27,18 @@ limitations under the License.
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -26,10 +26,18 @@ limitations under the License.
int string_offsets_example(Dwarf_Debug dbg, Dwarf_Error *error);
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -26,10 +26,18 @@ limitations under the License.
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -26,10 +26,18 @@ limitations under the License.
int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
char filename[256];
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#ifdef DWREGRESSIONTEMP
/* Under msys2, the /tmp/ results in an open fail,
so we discard the /tmp/ here */
sprintf(filename, "junklibfuzzer.%d", getpid());
#else
sprintf(filename, "/tmp/libfuzzer.%d", getpid());
#endif
FILE *fp = fopen(filename, "wb");
if (!fp) {
printf("FAIL libfuzzer cannot open temp as writeable %s\n",
filename);
return 0;
}
fwrite(data, size, 1, fp);

View File

@@ -1928,11 +1928,6 @@ DW_API int dwarf_get_tied_dbg(Dwarf_Debug dw_dbg,
New in v0.9.0 November 2023.
The library keeps track of where it is in the object file
and it knows where to find 'next'.
It returns the CU_DIE pointer through dw_cu_die;
dwarf_next_cu_header_e() is preferred over
dwarf_next_cu_header_d() as the latter requires
a second (immediate) step to access the CU-DIE
@@ -2019,10 +2014,16 @@ DW_API int dwarf_next_cu_header_e(Dwarf_Debug dw_dbg,
libdwarf v0.8.0 and earlier (and it also works
for later versions).
This version will eventually be deprecated.
Replace all uses of dwarf_next_cu_header_d()
and use dwarf_next_cu_header_e instead.
Assuming you continue to use dwarf_next_cu_header_d()
read the following carefully.
The library keeps track of where it is in the object file
and it knows where to find 'next'.
following a call to dwarf_next_cu_header_d()
and it knows (see next paragraph) how to
interpret dwarf_siblingof_b(dw_dbg,NULL,dw_is_info, &cu_die,...).
In order to read the DIE tree of the CU this
records information in the dw_dbg data and
@@ -2040,7 +2041,8 @@ DW_API int dwarf_next_cu_header_e(Dwarf_Debug dw_dbg,
@see examplecuhdrd
All arguments are the same as dwarf_next_cu_header_e()
except that there is no dw_cu_die argument here.
except that there is no dw_cu_die argument in
dwarf_next_cu_header_d().
*/
DW_API int dwarf_next_cu_header_d(Dwarf_Debug dw_dbg,
@@ -3017,7 +3019,11 @@ DW_API int dwarf_language_version_data(
int *dw_default_lower_bound,
const char **dw_version_string);
/* OBSOLETE NAME. Do Not use, use dwarf_language_version_data */
/*! @brief dwarf_language_version_string is obsolete.
OBSOLETE NAME. Do Not use dwarf_language_version_string()
use dwarf_language_version_data().
*/
DW_API int dwarf_language_version_string(
Dwarf_Unsigned dw_lname_name,
int *dw_default_lower_bound,
@@ -6654,7 +6660,7 @@ DW_API Dwarf_Half dwarf_set_frame_undefined_value(
When libdwarf itself reads abbreviations to
access DIEs the offset comes
from the Compilation Unit Header debug_abbrev_offset field.
@see dwarf_next_cu_header_d
@see dwarf_next_cu_header_e
@param dw_dbg
The Dwarf_Debug of interest.