Compare commits
	
		
			No commits in common. "c8" and "a9-disable-debuginfod-urls" have entirely different histories.
		
	
	
		
			c8
			...
			a9-disable
		
	
		
@ -1,2 +1 @@
 | 
				
			|||||||
b33fdb927bc154f6ca6285194d0e40fb76877dd0 SOURCES/elfutils-0.190.tar.bz2
 | 
					2dbae5652dcf5927213df0058969a62070dfa56e SOURCES/elfutils-0.192.tar.bz2
 | 
				
			||||||
f9875667f09b76d7a2c2bf19c9df80a5a95c1824 SOURCES/testcore-noncontig.bz2
 | 
					 | 
				
			||||||
 | 
				
			|||||||
							
								
								
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -1,2 +1 @@
 | 
				
			|||||||
SOURCES/elfutils-0.190.tar.bz2
 | 
					SOURCES/elfutils-0.192.tar.bz2
 | 
				
			||||||
SOURCES/testcore-noncontig.bz2
 | 
					 | 
				
			||||||
 | 
				
			|||||||
@ -1,329 +0,0 @@
 | 
				
			|||||||
From c791d16b7dcf9d985ebe0e852481142753603353 Mon Sep 17 00:00:00 2001
 | 
					 | 
				
			||||||
From: Aaron Merey <amerey@redhat.com>
 | 
					 | 
				
			||||||
Date: Fri, 8 Dec 2023 16:44:35 -0500
 | 
					 | 
				
			||||||
Subject: [PATCH] libdwfl: Correctly handle corefile non-contiguous segments
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
It is possible for segments of different shared libaries to be interleaved
 | 
					 | 
				
			||||||
in memory such that the segments of one library are located in between
 | 
					 | 
				
			||||||
non-contiguous segments of another library.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
For example, this can be seen with firefox on RHEL 7.9 where multiple
 | 
					 | 
				
			||||||
shared libraries could be mapped in between ld-2.17.so segments:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      [...]
 | 
					 | 
				
			||||||
      7f0972082000-7f09720a4000 00000000 139264      /usr/lib64/ld-2.17.so
 | 
					 | 
				
			||||||
      7f09720a4000-7f09720a5000 00000000 4096        /memfd:mozilla-ipc (deleted)
 | 
					 | 
				
			||||||
      7f09720a5000-7f09720a7000 00000000 8192        /memfd:mozilla-ipc (deleted)
 | 
					 | 
				
			||||||
      7f09720a7000-7f09720a9000 00000000 8192        /memfd:mozilla-ipc (deleted)
 | 
					 | 
				
			||||||
      7f0972134000-7f0972136000 00000000 8192        /usr/lib64/firefox/libmozwayland.so
 | 
					 | 
				
			||||||
      7f0972136000-7f0972137000 00002000 4096        /usr/lib64/firefox/libmozwayland.so
 | 
					 | 
				
			||||||
      7f0972137000-7f0972138000 00003000 4096        /usr/lib64/firefox/libmozwayland.so
 | 
					 | 
				
			||||||
      7f0972138000-7f0972139000 00003000 4096        /usr/lib64/firefox/libmozwayland.so
 | 
					 | 
				
			||||||
      7f097213a000-7f0972147000 00000000 53248       /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f0972147000-7f097221e000 0000d000 880640      /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f097221e000-7f0972248000 000e4000 172032      /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f0972248000-7f0972249000 0010e000 4096        /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f0972249000-7f097224c000 0010e000 12288       /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f097224c000-7f0972250000 00111000 16384       /usr/lib64/firefox/libmozsqlite3.so
 | 
					 | 
				
			||||||
      7f0972250000-7f0972253000 00000000 12288       /usr/lib64/firefox/liblgpllibs.so
 | 
					 | 
				
			||||||
      [...]
 | 
					 | 
				
			||||||
      7f09722a3000-7f09722a4000 00021000 4096        /usr/lib64/ld-2.17.so
 | 
					 | 
				
			||||||
      7f09722a4000-7f09722a5000 00022000 4096        /usr/lib64/ld-2.17.so
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
dwfl_segment_report_module did not account for the possibility of
 | 
					 | 
				
			||||||
interleaving non-contiguous segments, resulting in premature closure
 | 
					 | 
				
			||||||
of modules as well as failing to report modules.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Fix this by removing segment skipping in dwfl_segment_report_module.
 | 
					 | 
				
			||||||
When dwfl_segment_report_module reported a module, it would return
 | 
					 | 
				
			||||||
the index of the segment immediately following the end address of the
 | 
					 | 
				
			||||||
current module.  Since there's a chance that other modules might fall
 | 
					 | 
				
			||||||
within this address range, dwfl_segment_report_module instead returns
 | 
					 | 
				
			||||||
the index of the next segment.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
This patch also fixes premature module closure that can occur in
 | 
					 | 
				
			||||||
dwfl_segment_report_module when interleaving non-contiguous segments
 | 
					 | 
				
			||||||
are found.  Previously modules with start and end addresses that overlap
 | 
					 | 
				
			||||||
with the current segment would have their build-ids compared with the
 | 
					 | 
				
			||||||
current segment's build-id.  If there was a mismatch, that module would
 | 
					 | 
				
			||||||
be closed.  Avoid closing modules in this case when mismatching build-ids
 | 
					 | 
				
			||||||
correspond to distinct modules.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
https://sourceware.org/bugzilla/show_bug.cgi?id=30975
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Signed-off-by: Aaron Merey <amerey@redhat.com>
 | 
					 | 
				
			||||||
---
 | 
					 | 
				
			||||||
 libdwfl/dwfl_segment_report_module.c | 37 +++++++++----
 | 
					 | 
				
			||||||
 tests/Makefile.am                    |  8 ++-
 | 
					 | 
				
			||||||
 tests/dwfl-core-noncontig.c          | 82 ++++++++++++++++++++++++++++
 | 
					 | 
				
			||||||
 tests/run-dwfl-core-noncontig.sh     | 63 +++++++++++++++++++++
 | 
					 | 
				
			||||||
 4 files changed, 176 insertions(+), 14 deletions(-)
 | 
					 | 
				
			||||||
 create mode 100644 tests/dwfl-core-noncontig.c
 | 
					 | 
				
			||||||
 create mode 100755 tests/run-dwfl-core-noncontig.sh
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
diff --git a/libdwfl/dwfl_segment_report_module.c b/libdwfl/dwfl_segment_report_module.c
 | 
					 | 
				
			||||||
index 3ef62a7..09ee37b 100644
 | 
					 | 
				
			||||||
--- a/libdwfl/dwfl_segment_report_module.c
 | 
					 | 
				
			||||||
+++ b/libdwfl/dwfl_segment_report_module.c
 | 
					 | 
				
			||||||
@@ -737,17 +737,34 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
 | 
					 | 
				
			||||||
 	        && invalid_elf (module->elf, module->disk_file_has_build_id,
 | 
					 | 
				
			||||||
 				&build_id))
 | 
					 | 
				
			||||||
 	      {
 | 
					 | 
				
			||||||
-		elf_end (module->elf);
 | 
					 | 
				
			||||||
-		close (module->fd);
 | 
					 | 
				
			||||||
-		module->elf = NULL;
 | 
					 | 
				
			||||||
-		module->fd = -1;
 | 
					 | 
				
			||||||
+		/* If MODULE's build-id doesn't match the disk file's
 | 
					 | 
				
			||||||
+		   build-id, close ELF only if MODULE and ELF refer to
 | 
					 | 
				
			||||||
+		   different builds of files with the same name.  This
 | 
					 | 
				
			||||||
+		   prevents premature closure of the correct ELF in cases
 | 
					 | 
				
			||||||
+		   where segments of a module are non-contiguous in memory.  */
 | 
					 | 
				
			||||||
+		if (name != NULL && module->name[0] != '\0'
 | 
					 | 
				
			||||||
+		    && strcmp (basename (module->name), basename (name)) == 0)
 | 
					 | 
				
			||||||
+		  {
 | 
					 | 
				
			||||||
+		    elf_end (module->elf);
 | 
					 | 
				
			||||||
+		    close (module->fd);
 | 
					 | 
				
			||||||
+		    module->elf = NULL;
 | 
					 | 
				
			||||||
+		    module->fd = -1;
 | 
					 | 
				
			||||||
+		  }
 | 
					 | 
				
			||||||
 	      }
 | 
					 | 
				
			||||||
-	    if (module->elf != NULL)
 | 
					 | 
				
			||||||
+	    else if (module->elf != NULL)
 | 
					 | 
				
			||||||
 	      {
 | 
					 | 
				
			||||||
-		/* Ignore this found module if it would conflict in address
 | 
					 | 
				
			||||||
-		   space with any already existing module of DWFL.  */
 | 
					 | 
				
			||||||
+		/* This module has already been reported.  */
 | 
					 | 
				
			||||||
 		skip_this_module = true;
 | 
					 | 
				
			||||||
 	      }
 | 
					 | 
				
			||||||
+	    else
 | 
					 | 
				
			||||||
+	      {
 | 
					 | 
				
			||||||
+		/* Only report this module if we haven't already done so.  */
 | 
					 | 
				
			||||||
+		for (Dwfl_Module *mod = dwfl->modulelist; mod != NULL;
 | 
					 | 
				
			||||||
+		     mod = mod->next)
 | 
					 | 
				
			||||||
+		  if (mod->low_addr == module_start
 | 
					 | 
				
			||||||
+		      && mod->high_addr == module_end)
 | 
					 | 
				
			||||||
+		    skip_this_module = true;
 | 
					 | 
				
			||||||
+	      }
 | 
					 | 
				
			||||||
 	  }
 | 
					 | 
				
			||||||
       if (skip_this_module)
 | 
					 | 
				
			||||||
 	goto out;
 | 
					 | 
				
			||||||
@@ -781,10 +798,6 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
 | 
					 | 
				
			||||||
 	}
 | 
					 | 
				
			||||||
     }
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
-  /* Our return value now says to skip the segments contained
 | 
					 | 
				
			||||||
-     within the module.  */
 | 
					 | 
				
			||||||
-  ndx = addr_segndx (dwfl, segment, module_end, true);
 | 
					 | 
				
			||||||
-
 | 
					 | 
				
			||||||
   /* Examine its .dynamic section to get more interesting details.
 | 
					 | 
				
			||||||
      If it has DT_SONAME, we'll use that as the module name.
 | 
					 | 
				
			||||||
      If it has a DT_DEBUG, then it's actually a PIE rather than a DSO.
 | 
					 | 
				
			||||||
@@ -929,6 +942,8 @@ dwfl_segment_report_module (Dwfl *dwfl, int ndx, const char *name,
 | 
					 | 
				
			||||||
       ndx = -1;
 | 
					 | 
				
			||||||
       goto out;
 | 
					 | 
				
			||||||
     }
 | 
					 | 
				
			||||||
+  else
 | 
					 | 
				
			||||||
+    ndx++;
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
   /* We have reported the module.  Now let the caller decide whether we
 | 
					 | 
				
			||||||
      should read the whole thing in right now.  */
 | 
					 | 
				
			||||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
 | 
					 | 
				
			||||||
index 7fb8efb..9f8f769 100644
 | 
					 | 
				
			||||||
--- a/tests/Makefile.am
 | 
					 | 
				
			||||||
+++ b/tests/Makefile.am
 | 
					 | 
				
			||||||
@@ -42,7 +42,7 @@ check_PROGRAMS = arextract arsymtest newfile saridx scnnames sectiondump \
 | 
					 | 
				
			||||||
 		  dwfl-bug-addr-overflow arls dwfl-bug-fd-leak \
 | 
					 | 
				
			||||||
 		  dwfl-addr-sect dwfl-bug-report early-offscn \
 | 
					 | 
				
			||||||
 		  dwfl-bug-getmodules dwarf-getmacros dwarf-ranges addrcfi \
 | 
					 | 
				
			||||||
-		  dwarfcfi \
 | 
					 | 
				
			||||||
+		  dwfl-core-noncontig dwarfcfi \
 | 
					 | 
				
			||||||
 		  test-flag-nobits dwarf-getstring rerequest_tag \
 | 
					 | 
				
			||||||
 		  alldts typeiter typeiter2 low_high_pc \
 | 
					 | 
				
			||||||
 		  test-elf_cntl_gelf_getshdr dwflsyms dwfllines \
 | 
					 | 
				
			||||||
@@ -212,7 +212,7 @@ TESTS = run-arextract.sh run-arsymtest.sh run-ar.sh newfile test-nlist \
 | 
					 | 
				
			||||||
 	$(asm_TESTS) run-disasm-bpf.sh run-low_high_pc-dw-form-indirect.sh \
 | 
					 | 
				
			||||||
 	run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \
 | 
					 | 
				
			||||||
 	run-readelf-dw-form-indirect.sh run-strip-largealign.sh \
 | 
					 | 
				
			||||||
-	run-readelf-Dd.sh
 | 
					 | 
				
			||||||
+	run-readelf-Dd.sh run-dwfl-core-noncontig.sh
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 if !BIARCH
 | 
					 | 
				
			||||||
 export ELFUTILS_DISABLE_BIARCH = 1
 | 
					 | 
				
			||||||
@@ -632,7 +632,8 @@ EXTRA_DIST = run-arextract.sh run-arsymtest.sh run-ar.sh \
 | 
					 | 
				
			||||||
 	     run-nvidia-extended-linemap-libdw.sh run-nvidia-extended-linemap-readelf.sh \
 | 
					 | 
				
			||||||
 	     testfile_nvidia_linemap.bz2 \
 | 
					 | 
				
			||||||
 	     testfile-largealign.o.bz2 run-strip-largealign.sh \
 | 
					 | 
				
			||||||
-	     run-funcretval++11.sh
 | 
					 | 
				
			||||||
+	     run-funcretval++11.sh \
 | 
					 | 
				
			||||||
+	     run-dwfl-core-noncontig.sh testcore-noncontig.bz2
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 
 | 
					 | 
				
			||||||
 if USE_VALGRIND
 | 
					 | 
				
			||||||
@@ -738,6 +739,7 @@ dwfl_bug_fd_leak_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
 | 
					 | 
				
			||||||
 dwfl_bug_report_LDADD = $(libdw) $(libebl) $(libelf)
 | 
					 | 
				
			||||||
 dwfl_bug_getmodules_LDADD = $(libeu) $(libdw) $(libebl) $(libelf)
 | 
					 | 
				
			||||||
 dwfl_addr_sect_LDADD = $(libeu) $(libdw) $(libebl) $(libelf) $(argp_LDADD)
 | 
					 | 
				
			||||||
+dwfl_core_noncontig_LDADD = $(libdw) $(libelf)
 | 
					 | 
				
			||||||
 dwarf_getmacros_LDADD = $(libdw)
 | 
					 | 
				
			||||||
 dwarf_ranges_LDADD = $(libdw)
 | 
					 | 
				
			||||||
 dwarf_getstring_LDADD = $(libdw)
 | 
					 | 
				
			||||||
diff --git a/tests/dwfl-core-noncontig.c b/tests/dwfl-core-noncontig.c
 | 
					 | 
				
			||||||
new file mode 100644
 | 
					 | 
				
			||||||
index 0000000..04558e2
 | 
					 | 
				
			||||||
--- /dev/null
 | 
					 | 
				
			||||||
+++ b/tests/dwfl-core-noncontig.c
 | 
					 | 
				
			||||||
@@ -0,0 +1,82 @@
 | 
					 | 
				
			||||||
+/* Test program for dwfl_getmodules bug.
 | 
					 | 
				
			||||||
+   Copyright (C) 2008 Red Hat, Inc.
 | 
					 | 
				
			||||||
+   This file is part of elfutils.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+   This file is free software; you can redistribute it and/or modify
 | 
					 | 
				
			||||||
+   it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
+   the Free Software Foundation; either version 3 of the License, or
 | 
					 | 
				
			||||||
+   (at your option) any later version.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+   elfutils is distributed in the hope that it will be useful, but
 | 
					 | 
				
			||||||
+   WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
+   GNU General Public License for more details.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+   You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+#include <config.h>
 | 
					 | 
				
			||||||
+#include <stdio.h>
 | 
					 | 
				
			||||||
+#include <fcntl.h>
 | 
					 | 
				
			||||||
+#include <assert.h>
 | 
					 | 
				
			||||||
+#include ELFUTILS_HEADER(dwfl)
 | 
					 | 
				
			||||||
+#include ELFUTILS_HEADER(elf)
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+static const Dwfl_Callbacks cb =
 | 
					 | 
				
			||||||
+{
 | 
					 | 
				
			||||||
+  NULL,
 | 
					 | 
				
			||||||
+  NULL,
 | 
					 | 
				
			||||||
+  NULL,
 | 
					 | 
				
			||||||
+  NULL,
 | 
					 | 
				
			||||||
+};
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+int
 | 
					 | 
				
			||||||
+main (int argc, char **argv)
 | 
					 | 
				
			||||||
+{
 | 
					 | 
				
			||||||
+  assert (argc == 2);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  Dwfl *dwfl = dwfl_begin (&cb);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  int fd = open (argv[1], O_RDONLY);
 | 
					 | 
				
			||||||
+  assert (fd != -1);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  Elf *elf = elf_begin (fd, ELF_C_READ, NULL);
 | 
					 | 
				
			||||||
+  (void) dwfl_core_file_report (dwfl, elf, argv[0]);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  /* testcore-noncontig contains a shared library mapped between 
 | 
					 | 
				
			||||||
+     non-contiguous segments of another shared library:
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+     [...]
 | 
					 | 
				
			||||||
+     7f14e458c000-7f14e45ae000 00000000 139264      /usr/lib64/ld-2.17.so             (1)
 | 
					 | 
				
			||||||
+     7f14e4795000-7f14e4798000 00000000 12288       /usr/lib64/firefox/liblgpllibs.so (2)
 | 
					 | 
				
			||||||
+     7f14e4798000-7f14e479d000 00003000 20480       /usr/lib64/firefox/liblgpllibs.so
 | 
					 | 
				
			||||||
+     7f14e479d000-7f14e479f000 00008000 8192        /usr/lib64/firefox/liblgpllibs.so
 | 
					 | 
				
			||||||
+     7f14e479f000-7f14e47a0000 00009000 4096        /usr/lib64/firefox/liblgpllibs.so
 | 
					 | 
				
			||||||
+     7f14e47a0000-7f14e47a1000 0000a000 4096        /usr/lib64/firefox/liblgpllibs.so (3)
 | 
					 | 
				
			||||||
+     7f14e47ad000-7f14e47ae000 00021000 4096        /usr/lib64/ld-2.17.so             (4)
 | 
					 | 
				
			||||||
+     7f14e47ae000-7f14e47af000 00022000 4096        /usr/lib64/ld-2.17.so  */
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  /* First segment of the non-contiguous module (1).  */
 | 
					 | 
				
			||||||
+  int seg = dwfl_addrsegment (dwfl, 0x7f14e458c000, NULL);
 | 
					 | 
				
			||||||
+  assert (seg == 32);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  /* First segment of the module within the non-contiguous module's address
 | 
					 | 
				
			||||||
+     range (2).  */
 | 
					 | 
				
			||||||
+  seg = dwfl_addrsegment (dwfl, 0x7f14e4795000, NULL);
 | 
					 | 
				
			||||||
+  assert (seg == 33);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  /* Last segment of the module within the non-contiguous module's
 | 
					 | 
				
			||||||
+     address range (3).  */
 | 
					 | 
				
			||||||
+  seg = dwfl_addrsegment (dwfl, 0x7f14e47a0000, NULL);
 | 
					 | 
				
			||||||
+  assert (seg == 37);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  /* First segment of non-contiguous module following its address space
 | 
					 | 
				
			||||||
+     gap (4).  */
 | 
					 | 
				
			||||||
+  seg = dwfl_addrsegment (dwfl, 0x7f14e47ad000, NULL);
 | 
					 | 
				
			||||||
+  assert (seg == 40);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  dwfl_end (dwfl);
 | 
					 | 
				
			||||||
+  elf_end (elf);
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+  return 0;
 | 
					 | 
				
			||||||
+}
 | 
					 | 
				
			||||||
diff --git a/tests/run-dwfl-core-noncontig.sh b/tests/run-dwfl-core-noncontig.sh
 | 
					 | 
				
			||||||
new file mode 100755
 | 
					 | 
				
			||||||
index 0000000..1245b67
 | 
					 | 
				
			||||||
--- /dev/null
 | 
					 | 
				
			||||||
+++ b/tests/run-dwfl-core-noncontig.sh
 | 
					 | 
				
			||||||
@@ -0,0 +1,63 @@
 | 
					 | 
				
			||||||
+#! /bin/sh
 | 
					 | 
				
			||||||
+# Copyright (C) 2023 Red Hat, Inc.
 | 
					 | 
				
			||||||
+# This file is part of elfutils.
 | 
					 | 
				
			||||||
+#
 | 
					 | 
				
			||||||
+# This file is free software; you can redistribute it and/or modify
 | 
					 | 
				
			||||||
+# it under the terms of the GNU General Public License as published by
 | 
					 | 
				
			||||||
+# the Free Software Foundation; either version 3 of the License, or
 | 
					 | 
				
			||||||
+# (at your option) any later version.
 | 
					 | 
				
			||||||
+#
 | 
					 | 
				
			||||||
+# elfutils is distributed in the hope that it will be useful, but
 | 
					 | 
				
			||||||
+# WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
					 | 
				
			||||||
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
					 | 
				
			||||||
+# GNU General Public License for more details.
 | 
					 | 
				
			||||||
+#
 | 
					 | 
				
			||||||
+# You should have received a copy of the GNU General Public License
 | 
					 | 
				
			||||||
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+. $srcdir/test-subr.sh
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+# Test whether libdwfl can handle corefiles containing non-contiguous
 | 
					 | 
				
			||||||
+# segments where multiple modules are contained within the address
 | 
					 | 
				
			||||||
+# space of some other module.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+# testcore-noncontig was generated from the following program with
 | 
					 | 
				
			||||||
+# systemd-coredump on RHEL 7.9 Workstation, kernel
 | 
					 | 
				
			||||||
+# 3.10.0-1160.105.1.el7.x86_64. liblgpllibs.so was packaged with
 | 
					 | 
				
			||||||
+# firefox-115.4.0-1.el7_9.x86_64.rpm.
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+# #include <unistd.h>
 | 
					 | 
				
			||||||
+# #include <dlfcn.h>
 | 
					 | 
				
			||||||
+#
 | 
					 | 
				
			||||||
+# int main () {
 | 
					 | 
				
			||||||
+#   dlopen ("/usr/lib64/firefox/liblgpllibs.so", RTLD_GLOBAL | RTLD_NOW);
 | 
					 | 
				
			||||||
+#   sleep (60);
 | 
					 | 
				
			||||||
+#   return 0;
 | 
					 | 
				
			||||||
+# }
 | 
					 | 
				
			||||||
+#
 | 
					 | 
				
			||||||
+# gcc -ldl -o test test.c
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+tempfiles out
 | 
					 | 
				
			||||||
+testfiles testcore-noncontig
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+testrun ${abs_builddir}/dwfl-core-noncontig testcore-noncontig
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+# Remove parts of the output that could change depending on which
 | 
					 | 
				
			||||||
+# libraries are locally installed.
 | 
					 | 
				
			||||||
+testrun ${abs_top_builddir}/src/unstrip -n --core testcore-noncontig \
 | 
					 | 
				
			||||||
+  | sed 's/+/ /g' | cut -d " " -f1,3 | sort > out
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+testrun_compare cat out <<\EOF
 | 
					 | 
				
			||||||
+0x400000 3a1748a544b40a38b3be3d2d13ffa34a2a5a71c0@0x400284
 | 
					 | 
				
			||||||
+0x7f14e357e000 edf51350c7f71496149d064aa8b1441f786df88a@0x7f14e357e1d8
 | 
					 | 
				
			||||||
+0x7f14e3794000 7615604eaf4a068dfae5085444d15c0dee93dfbd@0x7f14e37941d8
 | 
					 | 
				
			||||||
+0x7f14e3a96000 09cfb171310110bc7ea9f4476c9fa044d85baff4@0x7f14e3a96210
 | 
					 | 
				
			||||||
+0x7f14e3d9e000 e10cc8f2b932fc3daeda22f8dac5ebb969524e5b@0x7f14e3d9e248
 | 
					 | 
				
			||||||
+0x7f14e3fba000 fc4fa58e47a5acc137eadb7689bce4357c557a96@0x7f14e3fba280
 | 
					 | 
				
			||||||
+0x7f14e4388000 7f2e9cb0769d7e57bd669b485a74b537b63a57c4@0x7f14e43881d8
 | 
					 | 
				
			||||||
+0x7f14e458c000 62c449974331341bb08dcce3859560a22af1e172@0x7f14e458c1d8
 | 
					 | 
				
			||||||
+0x7f14e4795000 175efdcef445455872a86a6fbee7567ca16a513e@0x7f14e4795248
 | 
					 | 
				
			||||||
+0x7ffcfe59f000 80d79b32785868a2dc10047b39a80d1daec8923d@0x7ffcfe59f328
 | 
					 | 
				
			||||||
+EOF
 | 
					 | 
				
			||||||
+
 | 
					 | 
				
			||||||
+exit 0
 | 
					 | 
				
			||||||
-- 
 | 
					 | 
				
			||||||
2.43.0
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							
								
								
									
										26
									
								
								SOURCES/elfutils-0.192-fix-configure-conditional.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								SOURCES/elfutils-0.192-fix-configure-conditional.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					From fb4753feb0ed7e3387f52b54bb02c6c74aac6a3e Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Aaron Merey <amerey@redhat.com>
 | 
				
			||||||
 | 
					Date: Tue, 29 Oct 2024 14:54:10 -0400
 | 
				
			||||||
 | 
					Subject: [PATCH] Fix ENABLE_DEBUGINFOD_IMA_VERIFICATION always
 | 
				
			||||||
 | 
					evaluating to false
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 configure.ac | 2 +-
 | 
				
			||||||
 | 
					 1 file changed, 1 insertion(+), 1 deletion(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/configure.ac b/configure.ac
 | 
				
			||||||
 | 
					index f191488..3d2d3ee 100644
 | 
				
			||||||
 | 
					--- a/configure.ac
 | 
				
			||||||
 | 
					+++ b/configure.ac
 | 
				
			||||||
 | 
					@@ -892,7 +892,7 @@ AS_IF([test "x$enable_debuginfod" != "xno"],AC_DEFINE([ENABLE_DEBUGINFOD],[1],[B
 | 
				
			||||||
 | 
					 AM_CONDITIONAL([DEBUGINFOD],[test "x$enable_debuginfod" = "xyes"])
 | 
				
			||||||
 | 
					 AS_IF([test "x$enable_debuginfod_ima_verification" = "xyes"],AC_DEFINE([ENABLE_IMA_VERIFICATION],[1],[Build IMA verification]))
 | 
				
			||||||
 | 
					 AS_IF([test "x$have_libarchive" = "xyes"],AC_DEFINE([HAVE_LIBARCHIVE],[1],[Define to 1 if libarchive is available]))
 | 
				
			||||||
 | 
					-AM_CONDITIONAL([ENABLE_IMA_VERIFICATION],[test "$enable_debuginfod_ima_verification" = "xyes"])
 | 
				
			||||||
 | 
					+AM_CONDITIONAL([ENABLE_IMA_VERIFICATION],[test "x$enable_debuginfod_ima_verification" = "xyes"])
 | 
				
			||||||
 | 
					 AM_CONDITIONAL([OLD_LIBMICROHTTPD],[test "x$old_libmicrohttpd" = "xyes"])
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 dnl for /etc/profile.d/elfutils.{csh,sh}
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.47.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										38
									
								
								SOURCES/elfutils-0.192-fix-free.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								SOURCES/elfutils-0.192-fix-free.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,38 @@
 | 
				
			|||||||
 | 
					From 1be0787d6654ed71bf659e8bfd34895fea7589eb Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Aaron Merey <amerey@redhat.com>
 | 
				
			||||||
 | 
					Date: Fri, 24 Jan 2025 19:43:19 -0500
 | 
				
			||||||
 | 
					Subject: [PATCH] debuginfod-client.c: Avoid freeing uninitialized value
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					debuginfod_validate_imasig might call free on an uninitialized sig_buf
 | 
				
			||||||
 | 
					due to a goto that can occur before sig_buf is set to NULL.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Fix this by setting sig_buf to NULL before the goto.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Aaron Merey <amerey@redhat.com>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 debuginfod/debuginfod-client.c | 2 +-
 | 
				
			||||||
 | 
					 1 file changed, 1 insertion(+), 1 deletion(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c
 | 
				
			||||||
 | 
					index deff19ff..d89beae9 100644
 | 
				
			||||||
 | 
					--- a/debuginfod/debuginfod-client.c
 | 
				
			||||||
 | 
					+++ b/debuginfod/debuginfod-client.c
 | 
				
			||||||
 | 
					@@ -1587,6 +1587,7 @@ debuginfod_validate_imasig (debuginfod_client *c, int fd)
 | 
				
			||||||
 | 
					 {
 | 
				
			||||||
 | 
					   int rc = ENOSYS;
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+    char* sig_buf = NULL;
 | 
				
			||||||
 | 
					     EVP_MD_CTX *ctx = NULL;
 | 
				
			||||||
 | 
					     if (!c || !c->winning_headers)
 | 
				
			||||||
 | 
					     {
 | 
				
			||||||
 | 
					@@ -1594,7 +1595,6 @@ debuginfod_validate_imasig (debuginfod_client *c, int fd)
 | 
				
			||||||
 | 
					       goto exit_validate;
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					     // Extract the HEX IMA-signature from the header
 | 
				
			||||||
 | 
					-    char* sig_buf = NULL;
 | 
				
			||||||
 | 
					     char* hdr_ima_sig = strcasestr(c->winning_headers, "x-debuginfod-imasignature");
 | 
				
			||||||
 | 
					     if (!hdr_ima_sig || 1 != sscanf(hdr_ima_sig + strlen("x-debuginfod-imasignature:"), "%ms", &sig_buf))
 | 
				
			||||||
 | 
					     {
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.48.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										36
									
								
								SOURCES/elfutils-0.192-libelf-static.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								SOURCES/elfutils-0.192-libelf-static.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,36 @@
 | 
				
			|||||||
 | 
					From 0a65a54593ae489d40cb993caa74095d45bc47fd Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Mark Wielaard <mark@klomp.org>
 | 
				
			||||||
 | 
					Date: Tue, 22 Oct 2024 15:03:42 +0200
 | 
				
			||||||
 | 
					Subject: [PATCH] libelf: Add libeu objects to libelf.a static archive
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					libelf might use some symbols from libeu.a, specifically the eu-search
 | 
				
			||||||
 | 
					wrappers. But we don't ship libeu.a separately. So include the libeu
 | 
				
			||||||
 | 
					objects in the libelf.a archive to facilitate static linking.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						* libelf/Makefile.am (libeu_objects): New variable.
 | 
				
			||||||
 | 
						(libelf_a_LIBADD): New, add libeu_objects.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					https://sourceware.org/bugzilla/show_bug.cgi?id=32293
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Signed-off-by: Mark Wielaard <mark@klomp.org>
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 libelf/Makefile.am | 3 +++
 | 
				
			||||||
 | 
					 1 file changed, 3 insertions(+)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/libelf/Makefile.am b/libelf/Makefile.am
 | 
				
			||||||
 | 
					index 3402863e..2d3dbdf2 100644
 | 
				
			||||||
 | 
					--- a/libelf/Makefile.am
 | 
				
			||||||
 | 
					+++ b/libelf/Makefile.am
 | 
				
			||||||
 | 
					@@ -122,6 +122,9 @@ libelf.so: $(srcdir)/libelf.map $(libelf_so_LIBS) $(libelf_so_DEPS)
 | 
				
			||||||
 | 
					 	@$(textrel_check)
 | 
				
			||||||
 | 
					 	$(AM_V_at)ln -fs $@ $@.$(VERSION)
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					+libeu_objects = $(shell $(AR) t ../lib/libeu.a)
 | 
				
			||||||
 | 
					+libelf_a_LIBADD = $(addprefix ../lib/,$(libeu_objects))
 | 
				
			||||||
 | 
					+
 | 
				
			||||||
 | 
					 install: install-am libelf.so
 | 
				
			||||||
 | 
					 	$(mkinstalldirs) $(DESTDIR)$(libdir)
 | 
				
			||||||
 | 
					 	$(INSTALL_PROGRAM) libelf.so $(DESTDIR)$(libdir)/libelf-$(PACKAGE_VERSION).so
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.47.0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										48
									
								
								SOURCES/elfutils-0.192-skip-ima-test.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								SOURCES/elfutils-0.192-skip-ima-test.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,48 @@
 | 
				
			|||||||
 | 
					From 36bd0ffe72f63a187902679823dfd50510bf7300 Mon Sep 17 00:00:00 2001
 | 
				
			||||||
 | 
					From: Aaron Merey <amerey@redhat.com>
 | 
				
			||||||
 | 
					Date: Fri, 13 Dec 2024 11:14:39 -0500
 | 
				
			||||||
 | 
					Subject: [PATCH] run-debuginfod-ima-verification.sh: Skip test 4
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Test 4 requires `rpmsign --delfilesign` to remove IMA signatures.
 | 
				
			||||||
 | 
					RHEL 9 rpmsign does not currently support delfilesign, so skip this
 | 
				
			||||||
 | 
					test for now.
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					 tests/run-debuginfod-ima-verification.sh | 22 +++++++++++-----------
 | 
				
			||||||
 | 
					 1 file changed, 11 insertions(+), 11 deletions(-)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/tests/run-debuginfod-ima-verification.sh b/tests/run-debuginfod-ima-verification.sh
 | 
				
			||||||
 | 
					index d582af5f..a5e6eeb2 100755
 | 
				
			||||||
 | 
					--- a/tests/run-debuginfod-ima-verification.sh
 | 
				
			||||||
 | 
					+++ b/tests/run-debuginfod-ima-verification.sh
 | 
				
			||||||
 | 
					@@ -127,17 +127,17 @@ RC=0
 | 
				
			||||||
 | 
					 testrun ${abs_top_builddir}/debuginfod/debuginfod-find executable $RPM_BUILDID || RC=1
 | 
				
			||||||
 | 
					 test $RC -ne 0
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					-echo Test 4: A rpm without a signature will fail
 | 
				
			||||||
 | 
					-cp signed.rpm R/signed.rpm
 | 
				
			||||||
 | 
					-rpmsign --delfilesign R/signed.rpm
 | 
				
			||||||
 | 
					-rm -rf $DEBUGINFOD_CACHE_PATH # clean it from previous tests
 | 
				
			||||||
 | 
					-kill -USR1 $PID1
 | 
				
			||||||
 | 
					-wait_ready $PORT1 'thread_work_total{role="traverse"}' 4
 | 
				
			||||||
 | 
					-wait_ready $PORT1 'thread_work_pending{role="scan"}' 0
 | 
				
			||||||
 | 
					-wait_ready $PORT1 'thread_busy{role="scan"}' 0
 | 
				
			||||||
 | 
					-RC=0
 | 
				
			||||||
 | 
					-testrun ${abs_top_builddir}/debuginfod/debuginfod-find executable $RPM_BUILDID || RC=1
 | 
				
			||||||
 | 
					-test $RC -ne 0
 | 
				
			||||||
 | 
					+#echo Test 4: A rpm without a signature will fail
 | 
				
			||||||
 | 
					+#cp signed.rpm R/signed.rpm
 | 
				
			||||||
 | 
					+#rpmsign --delfilesign R/signed.rpm
 | 
				
			||||||
 | 
					+#rm -rf $DEBUGINFOD_CACHE_PATH # clean it from previous tests
 | 
				
			||||||
 | 
					+#kill -USR1 $PID1
 | 
				
			||||||
 | 
					+#wait_ready $PORT1 'thread_work_total{role="traverse"}' 4
 | 
				
			||||||
 | 
					+#wait_ready $PORT1 'thread_work_pending{role="scan"}' 0
 | 
				
			||||||
 | 
					+#wait_ready $PORT1 'thread_busy{role="scan"}' 0
 | 
				
			||||||
 | 
					+#RC=0
 | 
				
			||||||
 | 
					+#testrun ${abs_top_builddir}/debuginfod/debuginfod-find executable $RPM_BUILDID || RC=1
 | 
				
			||||||
 | 
					+#test $RC -ne 0
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					 echo Test 5: Only tests 1,2 will result in extracted signature
 | 
				
			||||||
 | 
					 [[ $(curl -s http://127.0.0.1:$PORT1/metrics | grep 'http_responses_total{extra="ima-sigs-extracted"}' | awk '{print $NF}') -eq 2 ]]
 | 
				
			||||||
 | 
					-- 
 | 
				
			||||||
 | 
					2.47.1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										35
									
								
								SOURCES/elfutils-0.192-stacktrace-lto.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								SOURCES/elfutils-0.192-stacktrace-lto.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,35 @@
 | 
				
			|||||||
 | 
					commit 43829fb8780ecbe9d17aaed22d3dfcb806cb5f45
 | 
				
			||||||
 | 
					Author: Mark Wielaard <mark@klomp.org>
 | 
				
			||||||
 | 
					Date:   Thu Oct 24 10:44:25 2024 +0200
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    stacktrace: Init elf_fd in sysprof_init_dwfl
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    When building with LTO gcc believes elf_fd can be used uninitialized:
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    In function ‘sysprof_init_dwfl’,
 | 
				
			||||||
 | 
					        inlined from ‘sysprof_unwind_cb’ at stacktrace.c:1235:16:
 | 
				
			||||||
 | 
					    stacktrace.c:1087:7: error: ‘elf_fd’ may be used uninitialized [-Werror=maybe-uninitialized]
 | 
				
			||||||
 | 
					     1087 |       close (elf_fd);
 | 
				
			||||||
 | 
					          |       ^
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    This code won't be reached because if find_procfile doesn't initialize
 | 
				
			||||||
 | 
					    elf_fd, it will return an error. But help the compiler by initializing
 | 
				
			||||||
 | 
					    elf_fd to -1.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					            * src/stacktrace.c (sysprof_init_dwfl): Init elf_fd to -1.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    Signed-off-by: Mark Wielaard <mark@klomp.org>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					diff --git a/src/stacktrace.c b/src/stacktrace.c
 | 
				
			||||||
 | 
					index 438cb1dd0d38..b912ca5de502 100644
 | 
				
			||||||
 | 
					--- a/src/stacktrace.c
 | 
				
			||||||
 | 
					+++ b/src/stacktrace.c
 | 
				
			||||||
 | 
					@@ -1033,7 +1033,7 @@ sysprof_init_dwfl (struct sysprof_unwind_info *sui,
 | 
				
			||||||
 | 
					     }
 | 
				
			||||||
 | 
					 
 | 
				
			||||||
 | 
					   Elf *elf = NULL;
 | 
				
			||||||
 | 
					-  int elf_fd;
 | 
				
			||||||
 | 
					+  int elf_fd = -1;
 | 
				
			||||||
 | 
					   err = find_procfile (dwfl, &pid, &elf, &elf_fd);
 | 
				
			||||||
 | 
					   if (err < 0)
 | 
				
			||||||
 | 
					     {
 | 
				
			||||||
							
								
								
									
										1
									
								
								SOURCES/elfutils-debuginfod.sysusers
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								SOURCES/elfutils-debuginfod.sysusers
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1 @@
 | 
				
			|||||||
 | 
					u debuginfod - "elfutils debuginfo server" /var/cache/debuginfod -
 | 
				
			||||||
@ -1,24 +1,31 @@
 | 
				
			|||||||
 | 
					# Rebuild --with static to enable static subpackages
 | 
				
			||||||
 | 
					# This is *not* supported by elfutils maintainers
 | 
				
			||||||
 | 
					%bcond_with static
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Name: elfutils
 | 
					Name: elfutils
 | 
				
			||||||
Version: 0.190
 | 
					Version: 0.192
 | 
				
			||||||
%global baserelease 2
 | 
					%global baserelease 6
 | 
				
			||||||
Release: %{baserelease}%{?dist}
 | 
					Release: %{baserelease}%{?dist}.alma.1
 | 
				
			||||||
URL: http://elfutils.org/
 | 
					URL: http://elfutils.org/
 | 
				
			||||||
%global source_url ftp://sourceware.org/pub/elfutils/%{version}/
 | 
					%global source_url ftp://sourceware.org/pub/elfutils/%{version}/
 | 
				
			||||||
License: GPLv3+ and (GPLv2+ or LGPLv3+) and GFDL
 | 
					License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later) AND GFDL-1.3-no-invariants-or-later
 | 
				
			||||||
Source: %{?source_url}%{name}-%{version}.tar.bz2
 | 
					Source: %{?source_url}%{name}-%{version}.tar.bz2
 | 
				
			||||||
Source1: testcore-noncontig.bz2
 | 
					Source1: elfutils-debuginfod.sysusers
 | 
				
			||||||
Summary: A collection of utilities and DSOs to handle ELF files and DWARF data
 | 
					Summary: A collection of utilities and DSOs to handle ELF files and DWARF data
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Needed for isa specific Provides and Requires.
 | 
					# Needed for isa specific Provides and Requires.
 | 
				
			||||||
%global depsuffix %{?_isa}%{!?_isa:-%{_arch}}
 | 
					%global depsuffix %{?_isa}%{!?_isa:-%{_arch}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# eu-stacktrace currently only supports x86_64
 | 
				
			||||||
 | 
					%ifarch x86_64
 | 
				
			||||||
 | 
					%global enable_stacktrace 1
 | 
				
			||||||
 | 
					%else
 | 
				
			||||||
 | 
					%global enable_stacktrace 0
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
 | 
					 | 
				
			||||||
Recommends: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					 | 
				
			||||||
%else
 | 
					 | 
				
			||||||
Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
BuildRequires: gcc
 | 
					BuildRequires: gcc
 | 
				
			||||||
# For libstdc++ demangle support
 | 
					# For libstdc++ demangle support
 | 
				
			||||||
@ -39,6 +46,8 @@ BuildRequires: pkgconfig(libmicrohttpd) >= 0.9.33
 | 
				
			|||||||
BuildRequires: pkgconfig(libcurl) >= 7.29.0
 | 
					BuildRequires: pkgconfig(libcurl) >= 7.29.0
 | 
				
			||||||
BuildRequires: pkgconfig(sqlite3) >= 3.7.17
 | 
					BuildRequires: pkgconfig(sqlite3) >= 3.7.17
 | 
				
			||||||
BuildRequires: pkgconfig(libarchive) >= 3.1.2
 | 
					BuildRequires: pkgconfig(libarchive) >= 3.1.2
 | 
				
			||||||
 | 
					# For debugindod metadata query
 | 
				
			||||||
 | 
					BuildRequires: pkgconfig(json-c) >= 0.11
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# For tests need to bunzip2 test files.
 | 
					# For tests need to bunzip2 test files.
 | 
				
			||||||
BuildRequires: bzip2
 | 
					BuildRequires: bzip2
 | 
				
			||||||
@ -51,6 +60,17 @@ BuildRequires: curl
 | 
				
			|||||||
# For run-debuginfod-response-headers.sh test case
 | 
					# For run-debuginfod-response-headers.sh test case
 | 
				
			||||||
BuildRequires: socat
 | 
					BuildRequires: socat
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For debuginfod rpm IMA verification
 | 
				
			||||||
 | 
					BuildRequires: rpm-devel
 | 
				
			||||||
 | 
					BuildRequires: ima-evm-utils-devel
 | 
				
			||||||
 | 
					BuildRequires: openssl-devel
 | 
				
			||||||
 | 
					BuildRequires: rpm-sign
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# For eu-stacktrace
 | 
				
			||||||
 | 
					%if %{enable_stacktrace}
 | 
				
			||||||
 | 
					BuildRequires: sysprof-capture-devel
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
BuildRequires: automake
 | 
					BuildRequires: automake
 | 
				
			||||||
BuildRequires: autoconf
 | 
					BuildRequires: autoconf
 | 
				
			||||||
BuildRequires: gettext-devel
 | 
					BuildRequires: gettext-devel
 | 
				
			||||||
@ -58,15 +78,34 @@ BuildRequires: gettext-devel
 | 
				
			|||||||
%global _gnu %{nil}
 | 
					%global _gnu %{nil}
 | 
				
			||||||
%global _program_prefix eu-
 | 
					%global _program_prefix eu-
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%global provide_yama_scope	0
 | 
					%global provide_yama_scope      0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%if 0%{?fedora} >= 22 || 0%{?rhel} >= 7
 | 
					%if 0%{?fedora} >= 22 || 0%{?rhel} >= 7
 | 
				
			||||||
%global provide_yama_scope	1
 | 
					%global provide_yama_scope      1
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%global with_sysusers           0
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if 0%{?fedora} >= 32 || 0%{?rhel} >= 9
 | 
				
			||||||
 | 
					%global with_sysusers           1
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Patches
 | 
					# Patches
 | 
				
			||||||
# RHEL-18913: Fix handling of corefiles with non-contiguous segments.
 | 
					
 | 
				
			||||||
Patch1: elfutils-0.190-fix-core-noncontig.patch
 | 
					# Include libeu.a objects in libelf.a for static linking.
 | 
				
			||||||
 | 
					Patch1: elfutils-0.192-libelf-static.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fix eu-stacktrace LTO build error.
 | 
				
			||||||
 | 
					Patch2: elfutils-0.192-stacktrace-lto.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Fix configure.ac setting ENABLE_DEBUGINFOD_IMA_VERIFICATION.
 | 
				
			||||||
 | 
					Patch3: elfutils-0.192-fix-configure-conditional.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Skip IMA test not currently supported in RHEL 9.
 | 
				
			||||||
 | 
					Patch4: elfutils-0.192-skip-ima-test.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Avoid freeing uninitialized variable.
 | 
				
			||||||
 | 
					Patch5: elfutils-0.192-fix-free.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%description
 | 
					%description
 | 
				
			||||||
Elfutils is a collection of utilities, including stack (to show
 | 
					Elfutils is a collection of utilities, including stack (to show
 | 
				
			||||||
@ -78,7 +117,7 @@ elfcompress (to compress or decompress ELF sections).
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
%package libs
 | 
					%package libs
 | 
				
			||||||
Summary: Libraries to handle compiled objects
 | 
					Summary: Libraries to handle compiled objects
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -87,7 +126,8 @@ Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
				
			|||||||
Requires: default-yama-scope
 | 
					Requires: default-yama-scope
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
 | 
					%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
 | 
				
			||||||
Recommends: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					# see Supplements: instead
 | 
				
			||||||
 | 
					# Recommends: elfutils-debuginfod-client%%{depsuffix} = %%{version}-%%{release}
 | 
				
			||||||
%else
 | 
					%else
 | 
				
			||||||
Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -101,17 +141,12 @@ libraries.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
%package devel
 | 
					%package devel
 | 
				
			||||||
Summary: Development libraries to handle compiled objects
 | 
					Summary: Development libraries to handle compiled objects
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-devel%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-devel%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
 | 
					 | 
				
			||||||
Recommends: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release}
 | 
					 | 
				
			||||||
%else
 | 
					 | 
				
			||||||
Requires: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release}
 | 
					 | 
				
			||||||
%endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
%description devel
 | 
					%description devel
 | 
				
			||||||
The elfutils-devel package contains the libraries to create
 | 
					The elfutils-devel package contains the libraries to create
 | 
				
			||||||
@ -119,22 +154,25 @@ applications for handling compiled objects.  libdw provides access
 | 
				
			|||||||
to the DWARF debugging information.  libasm provides a programmable
 | 
					to the DWARF debugging information.  libasm provides a programmable
 | 
				
			||||||
assembler interface.
 | 
					assembler interface.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if %{with static}
 | 
				
			||||||
%package devel-static
 | 
					%package devel-static
 | 
				
			||||||
Summary: Static archives to handle compiled objects
 | 
					Summary: Static archives to handle compiled objects
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-devel-static%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-devel-static%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
Requires: elfutils-devel%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-devel%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
 | 
					Requires: libzstd-static%{depsuffix}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%description devel-static
 | 
					%description devel-static
 | 
				
			||||||
The elfutils-devel-static package contains the static archives
 | 
					The elfutils-devel-static package contains the static archives
 | 
				
			||||||
with the code to handle compiled objects.
 | 
					with the code to handle compiled objects.
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%package libelf
 | 
					%package libelf
 | 
				
			||||||
Summary: Library to read and write ELF files
 | 
					Summary: Library to read and write ELF files
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -148,7 +186,7 @@ elfutils package use it also to generate new ELF files.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
%package libelf-devel
 | 
					%package libelf-devel
 | 
				
			||||||
Summary: Development support for libelf
 | 
					Summary: Development support for libelf
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -161,9 +199,10 @@ applications for handling compiled objects.  libelf allows you to
 | 
				
			|||||||
access the internals of the ELF object file format, so you can see the
 | 
					access the internals of the ELF object file format, so you can see the
 | 
				
			||||||
different sections of an ELF file.
 | 
					different sections of an ELF file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if %{with static}
 | 
				
			||||||
%package libelf-devel-static
 | 
					%package libelf-devel-static
 | 
				
			||||||
Summary: Static archive of libelf
 | 
					Summary: Static archive of libelf
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-libelf-devel-static%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -172,11 +211,12 @@ Requires: elfutils-libelf-devel%{depsuffix} = %{version}-%{release}
 | 
				
			|||||||
%description libelf-devel-static
 | 
					%description libelf-devel-static
 | 
				
			||||||
The elfutils-libelf-static package contains the static archive
 | 
					The elfutils-libelf-static package contains the static archive
 | 
				
			||||||
for libelf.
 | 
					for libelf.
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%if %{provide_yama_scope}
 | 
					%if %{provide_yama_scope}
 | 
				
			||||||
%package default-yama-scope
 | 
					%package default-yama-scope
 | 
				
			||||||
Summary: Default yama attach scope sysctl setting
 | 
					Summary: Default yama attach scope sysctl setting
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
Provides: default-yama-scope
 | 
					Provides: default-yama-scope
 | 
				
			||||||
BuildArch: noarch
 | 
					BuildArch: noarch
 | 
				
			||||||
# For the sysctl_apply macro we need systemd as build requires.
 | 
					# For the sysctl_apply macro we need systemd as build requires.
 | 
				
			||||||
@ -210,17 +250,24 @@ profiling) of processes.
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
%package debuginfod-client
 | 
					%package debuginfod-client
 | 
				
			||||||
Summary: Library and command line client for build-id HTTP ELF/DWARF server
 | 
					Summary: Library and command line client for build-id HTTP ELF/DWARF server
 | 
				
			||||||
License: GPLv3+ and (GPLv2+ or LGPLv3+)
 | 
					License: GPL-3.0-or-later AND (GPL-2.0-or-later OR LGPL-3.0-or-later)
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
# For debuginfod-find binary
 | 
					# For debuginfod-find binary
 | 
				
			||||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
 | 
					%if 0%{?rhel} >= 8 || 0%{?fedora} >= 20
 | 
				
			||||||
 | 
					# Instead of the weak forward dependency from -libs to -debuginfod-client,
 | 
				
			||||||
 | 
					# we'll add weak reverse dependencies from some of the many programs that
 | 
				
			||||||
 | 
					# indirectly load this.  This lets the base @core compose omit this library.
 | 
				
			||||||
 | 
					Supplements: systemtap-client perf gdb binutils elfutils ltrace dyninst
 | 
				
			||||||
 | 
					Supplements: valgrind annocheck bpftrace dwarves libabigail
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%package debuginfod-client-devel
 | 
					%package debuginfod-client-devel
 | 
				
			||||||
Summary: Libraries and headers to build debuginfod client applications
 | 
					Summary: Libraries and headers to build debuginfod client applications
 | 
				
			||||||
License: GPLv2+ or LGPLv3+
 | 
					License: GPL-2.0-or-later OR LGPL-3.0-or-later
 | 
				
			||||||
%if 0%{!?_isa:1}
 | 
					%if 0%{!?_isa:1}
 | 
				
			||||||
Provides: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release}
 | 
					Provides: elfutils-debuginfod-client-devel%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
@ -228,16 +275,23 @@ Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
%package debuginfod
 | 
					%package debuginfod
 | 
				
			||||||
Summary: HTTP ELF/DWARF file server addressed by build-id
 | 
					Summary: HTTP ELF/DWARF file server addressed by build-id
 | 
				
			||||||
License: GPLv3+
 | 
					License: GPL-3.0-or-later
 | 
				
			||||||
Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libs%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-libelf%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
					Requires: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release}
 | 
				
			||||||
BuildRequires: systemd
 | 
					BuildRequires: systemd
 | 
				
			||||||
 | 
					%if %{with_sysusers}
 | 
				
			||||||
 | 
					BuildRequires: systemd-rpm-macros
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
BuildRequires: make
 | 
					BuildRequires: make
 | 
				
			||||||
Requires(post):   systemd
 | 
					Requires(post):   systemd
 | 
				
			||||||
Requires(preun):  systemd
 | 
					Requires(preun):  systemd
 | 
				
			||||||
Requires(postun): systemd
 | 
					Requires(postun): systemd
 | 
				
			||||||
 | 
					%if %{with_sysusers}
 | 
				
			||||||
 | 
					%{?sysusers_requires_compat}
 | 
				
			||||||
 | 
					%else
 | 
				
			||||||
Requires(pre): shadow-utils
 | 
					Requires(pre): shadow-utils
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
# To extract .deb files with a bsdtar (= libarchive) subshell
 | 
					# To extract .deb files with a bsdtar (= libarchive) subshell
 | 
				
			||||||
Requires: bsdtar
 | 
					Requires: bsdtar
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -267,8 +321,6 @@ autoreconf -f -v -i
 | 
				
			|||||||
# are executable.
 | 
					# are executable.
 | 
				
			||||||
find . -name \*.sh ! -perm -0100 -print | xargs chmod +x
 | 
					find . -name \*.sh ! -perm -0100 -print | xargs chmod +x
 | 
				
			||||||
 | 
					
 | 
				
			||||||
cp %{SOURCE1} tests
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
%build
 | 
					%build
 | 
				
			||||||
# Remove -Wall from default flags.  The makefiles enable enough warnings
 | 
					# Remove -Wall from default flags.  The makefiles enable enough warnings
 | 
				
			||||||
# themselves, and they use -Werror.  Appending -Wall defeats the cases where
 | 
					# themselves, and they use -Werror.  Appending -Wall defeats the cases where
 | 
				
			||||||
@ -281,11 +333,16 @@ RPM_OPT_FLAGS="${RPM_OPT_FLAGS} -Wformat"
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
trap 'cat config.log' EXIT
 | 
					trap 'cat config.log' EXIT
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%if 0%{?centos} >= 8
 | 
					%configure CFLAGS="$RPM_OPT_FLAGS" \
 | 
				
			||||||
%configure CFLAGS="$RPM_OPT_FLAGS" --enable-debuginfod-urls=https://debuginfod.centos.org/
 | 
					%if 0%{?centos} >= 8 && !0%{?almalinux}
 | 
				
			||||||
%else
 | 
						--enable-debuginfod-urls=%{dist_debuginfod_url} \
 | 
				
			||||||
%configure CFLAGS="$RPM_OPT_FLAGS"
 | 
					 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					%if %{enable_stacktrace}
 | 
				
			||||||
 | 
						--enable-stacktrace \
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
						--enable-debuginfod \
 | 
				
			||||||
 | 
						--enable-debuginfod-ima-verification \
 | 
				
			||||||
 | 
						--enable-debuginfod-ima-cert-path=%{_sysconfdir}/keys/ima
 | 
				
			||||||
trap '' EXIT
 | 
					trap '' EXIT
 | 
				
			||||||
%make_build
 | 
					%make_build
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -293,13 +350,16 @@ trap '' EXIT
 | 
				
			|||||||
%make_install
 | 
					%make_install
 | 
				
			||||||
 | 
					
 | 
				
			||||||
chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
 | 
					chmod +x ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib*.so*
 | 
				
			||||||
 | 
					%if %{without static}
 | 
				
			||||||
%if 0%{?centos} < 8
 | 
					# We don't want the static libraries
 | 
				
			||||||
# We don't have standard DEBUGINFOD_URLS yet.
 | 
					rm ${RPM_BUILD_ROOT}%{_prefix}/%{_lib}/lib{elf,dw,asm}.a
 | 
				
			||||||
rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.sh
 | 
					 | 
				
			||||||
rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.csh
 | 
					 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# We don't have standard DEBUGINFOD_URLS necessarily, but still ship
 | 
				
			||||||
 | 
					# the profile.d/debuginfod* files, in case of a site specific server.
 | 
				
			||||||
 | 
					# rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.sh
 | 
				
			||||||
 | 
					# rm ${RPM_BUILD_ROOT}%{_sysconfdir}/profile.d/debuginfod.csh
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%find_lang %{name}
 | 
					%find_lang %{name}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%if %{provide_yama_scope}
 | 
					%if %{provide_yama_scope}
 | 
				
			||||||
@ -311,6 +371,10 @@ install -Dm0644 config/debuginfod.sysconfig ${RPM_BUILD_ROOT}%{_sysconfdir}/sysc
 | 
				
			|||||||
mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod
 | 
					mkdir -p ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod
 | 
				
			||||||
touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
 | 
					touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if %{with_sysusers}
 | 
				
			||||||
 | 
					install -Dm0644 %{SOURCE1} %{buildroot}%{_sysusersdir}/elfutils-debuginfod.conf
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%check
 | 
					%check
 | 
				
			||||||
# Record some build root versions in build.log
 | 
					# Record some build root versions in build.log
 | 
				
			||||||
uname -r; rpm -q binutils gcc glibc || true
 | 
					uname -r; rpm -q binutils gcc glibc || true
 | 
				
			||||||
@ -344,7 +408,6 @@ fi
 | 
				
			|||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files
 | 
					%files
 | 
				
			||||||
%{!?_licensedir:%global license %%doc}
 | 
					 | 
				
			||||||
%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL
 | 
					%license COPYING COPYING-GPLV2 COPYING-LGPLV3 doc/COPYING-GFDL
 | 
				
			||||||
%doc README TODO CONTRIBUTING
 | 
					%doc README TODO CONTRIBUTING
 | 
				
			||||||
%{_bindir}/eu-addr2line
 | 
					%{_bindir}/eu-addr2line
 | 
				
			||||||
@ -362,13 +425,15 @@ fi
 | 
				
			|||||||
%{_bindir}/eu-size
 | 
					%{_bindir}/eu-size
 | 
				
			||||||
%{_bindir}/eu-srcfiles
 | 
					%{_bindir}/eu-srcfiles
 | 
				
			||||||
%{_bindir}/eu-stack
 | 
					%{_bindir}/eu-stack
 | 
				
			||||||
 | 
					%if %{enable_stacktrace}
 | 
				
			||||||
 | 
					%{_bindir}/eu-stacktrace
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
%{_bindir}/eu-strings
 | 
					%{_bindir}/eu-strings
 | 
				
			||||||
%{_bindir}/eu-strip
 | 
					%{_bindir}/eu-strip
 | 
				
			||||||
%{_bindir}/eu-unstrip
 | 
					%{_bindir}/eu-unstrip
 | 
				
			||||||
%{_mandir}/man1/eu-*.1*
 | 
					%{_mandir}/man1/eu-*.1*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files libs
 | 
					%files libs
 | 
				
			||||||
%{!?_licensedir:%global license %%doc}
 | 
					 | 
				
			||||||
%license COPYING-GPLV2 COPYING-LGPLV3
 | 
					%license COPYING-GPLV2 COPYING-LGPLV3
 | 
				
			||||||
%{_libdir}/libasm-%{version}.so
 | 
					%{_libdir}/libasm-%{version}.so
 | 
				
			||||||
%{_libdir}/libdw-%{version}.so
 | 
					%{_libdir}/libdw-%{version}.so
 | 
				
			||||||
@ -389,12 +454,13 @@ fi
 | 
				
			|||||||
%{_libdir}/libdw.so
 | 
					%{_libdir}/libdw.so
 | 
				
			||||||
%{_libdir}/pkgconfig/libdw.pc
 | 
					%{_libdir}/pkgconfig/libdw.pc
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if %{with static}
 | 
				
			||||||
%files devel-static
 | 
					%files devel-static
 | 
				
			||||||
%{_libdir}/libdw.a
 | 
					%{_libdir}/libdw.a
 | 
				
			||||||
%{_libdir}/libasm.a
 | 
					%{_libdir}/libasm.a
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files -f %{name}.lang libelf
 | 
					%files -f %{name}.lang libelf
 | 
				
			||||||
%{!?_licensedir:%global license %%doc}
 | 
					 | 
				
			||||||
%license COPYING-GPLV2 COPYING-LGPLV3
 | 
					%license COPYING-GPLV2 COPYING-LGPLV3
 | 
				
			||||||
%{_libdir}/libelf-%{version}.so
 | 
					%{_libdir}/libelf-%{version}.so
 | 
				
			||||||
%{_libdir}/libelf.so.*
 | 
					%{_libdir}/libelf.so.*
 | 
				
			||||||
@ -406,9 +472,14 @@ fi
 | 
				
			|||||||
%{_libdir}/libelf.so
 | 
					%{_libdir}/libelf.so
 | 
				
			||||||
%{_libdir}/pkgconfig/libelf.pc
 | 
					%{_libdir}/pkgconfig/libelf.pc
 | 
				
			||||||
%{_mandir}/man3/elf_*.3*
 | 
					%{_mandir}/man3/elf_*.3*
 | 
				
			||||||
 | 
					%{_mandir}/man3/elf32_*.3*
 | 
				
			||||||
 | 
					%{_mandir}/man3/elf64_*.3*
 | 
				
			||||||
 | 
					%{_mandir}/man3/libelf.3*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					%if %{with static}
 | 
				
			||||||
%files libelf-devel-static
 | 
					%files libelf-devel-static
 | 
				
			||||||
%{_libdir}/libelf.a
 | 
					%{_libdir}/libelf.a
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%if %{provide_yama_scope}
 | 
					%if %{provide_yama_scope}
 | 
				
			||||||
%files default-yama-scope
 | 
					%files default-yama-scope
 | 
				
			||||||
@ -416,29 +487,31 @@ fi
 | 
				
			|||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files debuginfod-client
 | 
					%files debuginfod-client
 | 
				
			||||||
%defattr(-,root,root)
 | 
					 | 
				
			||||||
%{_libdir}/libdebuginfod-%{version}.so
 | 
					%{_libdir}/libdebuginfod-%{version}.so
 | 
				
			||||||
%{_libdir}/libdebuginfod.so.*
 | 
					%{_libdir}/libdebuginfod.so.*
 | 
				
			||||||
%{_bindir}/debuginfod-find
 | 
					%{_bindir}/debuginfod-find
 | 
				
			||||||
%{_mandir}/man1/debuginfod-find.1*
 | 
					%{_mandir}/man1/debuginfod-find.1*
 | 
				
			||||||
%{_mandir}/man7/debuginfod*.7*
 | 
					%{_mandir}/man7/debuginfod*.7*
 | 
				
			||||||
%if 0%{?centos} >= 8
 | 
					 | 
				
			||||||
%{_sysconfdir}/profile.d/debuginfod.*
 | 
					%{_sysconfdir}/profile.d/debuginfod.*
 | 
				
			||||||
 | 
					%{_sysconfdir}/debuginfod/*.certpath
 | 
				
			||||||
 | 
					%config(noreplace) %{_datadir}/fish/vendor_conf.d/*
 | 
				
			||||||
 | 
					%if 0%{?centos} >= 8 && !0%{?almalinux}
 | 
				
			||||||
%{_sysconfdir}/debuginfod/*.urls
 | 
					%{_sysconfdir}/debuginfod/*.urls
 | 
				
			||||||
%endif
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files debuginfod-client-devel
 | 
					%files debuginfod-client-devel
 | 
				
			||||||
%defattr(-,root,root)
 | 
					 | 
				
			||||||
%{_libdir}/pkgconfig/libdebuginfod.pc
 | 
					%{_libdir}/pkgconfig/libdebuginfod.pc
 | 
				
			||||||
%{_mandir}/man3/debuginfod_*.3*
 | 
					%{_mandir}/man3/debuginfod_*.3*
 | 
				
			||||||
%{_includedir}/elfutils/debuginfod.h
 | 
					%{_includedir}/elfutils/debuginfod.h
 | 
				
			||||||
%{_libdir}/libdebuginfod.so
 | 
					%{_libdir}/libdebuginfod.so
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%files debuginfod
 | 
					%files debuginfod
 | 
				
			||||||
%defattr(-,root,root)
 | 
					 | 
				
			||||||
%{_bindir}/debuginfod
 | 
					%{_bindir}/debuginfod
 | 
				
			||||||
%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod
 | 
					%config(noreplace) %{_sysconfdir}/sysconfig/debuginfod
 | 
				
			||||||
%{_unitdir}/debuginfod.service
 | 
					%{_unitdir}/debuginfod.service
 | 
				
			||||||
 | 
					%if %{with_sysusers}
 | 
				
			||||||
 | 
					%{_sysusersdir}/elfutils-debuginfod.conf
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
%{_mandir}/man8/debuginfod*.8*
 | 
					%{_mandir}/man8/debuginfod*.8*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -446,11 +519,15 @@ fi
 | 
				
			|||||||
%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
 | 
					%ghost %attr(0600,debuginfod,debuginfod) %{_localstatedir}/cache/debuginfod/debuginfod.sqlite
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%pre debuginfod
 | 
					%pre debuginfod
 | 
				
			||||||
 | 
					%if %{with_sysusers}
 | 
				
			||||||
 | 
					%sysusers_create_compat %{SOURCE1}
 | 
				
			||||||
 | 
					%else
 | 
				
			||||||
getent group debuginfod >/dev/null || groupadd -r debuginfod
 | 
					getent group debuginfod >/dev/null || groupadd -r debuginfod
 | 
				
			||||||
getent passwd debuginfod >/dev/null || \
 | 
					getent passwd debuginfod >/dev/null || \
 | 
				
			||||||
    useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \
 | 
					    useradd -r -g debuginfod -d /var/cache/debuginfod -s /sbin/nologin \
 | 
				
			||||||
            -c "elfutils debuginfo server" debuginfod
 | 
					            -c "elfutils debuginfo server" debuginfod
 | 
				
			||||||
exit 0
 | 
					exit 0
 | 
				
			||||||
 | 
					%endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%post debuginfod
 | 
					%post debuginfod
 | 
				
			||||||
%systemd_post debuginfod.service
 | 
					%systemd_post debuginfod.service
 | 
				
			||||||
@ -459,6 +536,53 @@ exit 0
 | 
				
			|||||||
%systemd_postun_with_restart debuginfod.service
 | 
					%systemd_postun_with_restart debuginfod.service
 | 
				
			||||||
 | 
					
 | 
				
			||||||
%changelog
 | 
					%changelog
 | 
				
			||||||
 | 
					* Wed Aug 13 2025 Takuya Wakazono <pastalian@almalinux.org> - 0.192-6.alma.1
 | 
				
			||||||
 | 
					- Disable debuginfod-urls
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Mar 14 2025 Aaron Merey <amerey@redhat.com> - 0.192-6
 | 
				
			||||||
 | 
					- Add elfutils-0.192-fix-free.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Jan 15 2025 Aaron Merey <amerey@redhat.com> - 0.192-5
 | 
				
			||||||
 | 
					- Add debuginfod certpath to %files unconditionally
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Jan 15 2025 Aaron Merey <amerey@redhat.com> - 0.192-4
 | 
				
			||||||
 | 
					- NVR Bump.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Dec 13 2024 Aaron Merey <amerey@redhat.com> - 0.192-3
 | 
				
			||||||
 | 
					- Enable debuginfod IMA verification
 | 
				
			||||||
 | 
					- Add elfutils-0.192-fix-configure-conditional.patch
 | 
				
			||||||
 | 
					- Add elfutils-0.192-skip-ima-test.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Oct 24 2024 Aaron Merey <amerey@redhat.com> - 0.192-2
 | 
				
			||||||
 | 
					- Enable eu-stacktrace on x86_64
 | 
				
			||||||
 | 
					- Add elfutils-0.192-stacktrace-lto.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Oct 23 2024 Aaron Merey <amerey@redhat.com> - 0.192-1
 | 
				
			||||||
 | 
					- Upgrade to upstream elfutils 0.192
 | 
				
			||||||
 | 
					- Drop upstreamed patches
 | 
				
			||||||
 | 
					  elfutils-0.190-riscv-flatten.patch
 | 
				
			||||||
 | 
					  elfutils-0.191-riscv-flatten.patch
 | 
				
			||||||
 | 
					  elfutils-0.191-profile-empty-urls.patch
 | 
				
			||||||
 | 
					- Add elfutils-0.192-libelf-static.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Apr 19 2024 Aaron Merey <amerey@redhat.com> - 0.191-3
 | 
				
			||||||
 | 
					- eu-srcfiles directly links to libdebuginfod.so so explicitly
 | 
				
			||||||
 | 
					  Require elfutils-debuginfod-client not just Recommends.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Apr 18 2024 Aaron Merey <amerey@redhat.com> - 0.191-2
 | 
				
			||||||
 | 
					- Update SPDX licenses.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Apr 12 2024 Aaron Merey <amerey@redhat.com> - 0.191-1
 | 
				
			||||||
 | 
					- Upgrade to upstream elfutils 0.191
 | 
				
			||||||
 | 
					- Drop upstreamed patches
 | 
				
			||||||
 | 
					  elfutils-0.190-fix-core-noncontig.patch
 | 
				
			||||||
 | 
					  elfutils-0.190-gcc-14.patch
 | 
				
			||||||
 | 
					  elfutils-0.190-remove-ET_REL-unstrip-test.patch
 | 
				
			||||||
 | 
					- Drop testcore-noncontig.bz2
 | 
				
			||||||
 | 
					- Add elfutils-0.191-profile-empty-urls.patch
 | 
				
			||||||
 | 
					- Add elfutils-0.191-riscv-flatten.patch
 | 
				
			||||||
 | 
					- Add feature flag for reenabling elfutils-libelf-devel-static and elfutils-devel-static
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Dec  8 2023 Aaron Merey <amerey@redhat.com> - 0.190-2
 | 
					* Fri Dec  8 2023 Aaron Merey <amerey@redhat.com> - 0.190-2
 | 
				
			||||||
- Add elfutils-0.190-fix-core-noncontig.patch
 | 
					- Add elfutils-0.190-fix-core-noncontig.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@ -489,6 +613,13 @@ exit 0
 | 
				
			|||||||
- Upgrade to upsteam elfutils 0.188.
 | 
					- Upgrade to upsteam elfutils 0.188.
 | 
				
			||||||
- Add elfutils-0.188-static-extract_section.patch.
 | 
					- Add elfutils-0.188-static-extract_section.patch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Sep 30 2022 Mark Wielaard <mjw@redhat.com> - 0.187-6
 | 
				
			||||||
 | 
					- Add sysuser support for creating the debuginfod user
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Jun 16 2022 Frank Ch. Eigler <fche@redhat.com> - 0.187-5
 | 
				
			||||||
 | 
					- rhbz2088774: ship /etc/profile.d/debuginfod* files even without
 | 
				
			||||||
 | 
					               default DEBUGINFOD_URLS.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri May  6 2022 Mark Wielaard <mjw@redhat.com> - 0.187-4
 | 
					* Fri May  6 2022 Mark Wielaard <mjw@redhat.com> - 0.187-4
 | 
				
			||||||
- Upgrade to elfutils 0.187
 | 
					- Upgrade to elfutils 0.187
 | 
				
			||||||
  - debuginfod: Support -C option for connection thread pooling.
 | 
					  - debuginfod: Support -C option for connection thread pooling.
 | 
				
			||||||
@ -507,14 +638,22 @@ exit 0
 | 
				
			|||||||
- Add elfutils-0.187-debuginfod-client-fd-leak.patch
 | 
					- Add elfutils-0.187-debuginfod-client-fd-leak.patch
 | 
				
			||||||
- Add elfutils-0.187-mhd_no_dual_stack.patch
 | 
					- Add elfutils-0.187-mhd_no_dual_stack.patch
 | 
				
			||||||
- Add elfutils-0.187-mhd_epoll.patch
 | 
					- Add elfutils-0.187-mhd_epoll.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Apr 12 2022 Mark Wielaard <mjw@redhat.com> - 0.186-5
 | 
				
			||||||
- Add an explicit versioned requires from elfutils-debuginfod-client
 | 
					- Add an explicit versioned requires from elfutils-debuginfod-client
 | 
				
			||||||
  on elfutils-libs and elfutils-libelf.
 | 
					  on elfutils-libelf.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Apr  8 2022 Mark Wielaard <mjw@redhat.com> - 0.186-4
 | 
				
			||||||
 | 
					- Add an explicit versioned requires from elfutils-debuginfod-client
 | 
				
			||||||
 | 
					  on elfutils-libs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Mar 22 2022 Mark Wielaard <mjw@redhat.com> - 0.186-3
 | 
				
			||||||
- Remove brew testsuite workarounds
 | 
					- Remove brew testsuite workarounds
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Feb 10 2022 Frank Ch. Eigler <fche@redhat.com> - 0.186-2
 | 
					* Thu Feb 10 2022 Frank Ch. Eigler <fche@redhat.com> - 0.186-2
 | 
				
			||||||
- rhbz2052574: enable debuginfod.centos.org support by default
 | 
					- rhbz2053226: enable debuginfod.centos.org support by default
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Nov 11 2021 Mark Wielaard <mjw@redhat.com> - 0.186-1
 | 
					* Tue Nov 23 2021 Mark Wielaard <mjw@redhat.com> - 0.186-1
 | 
				
			||||||
- Upgrade to upstream 0.186
 | 
					- Upgrade to upstream 0.186
 | 
				
			||||||
  - debuginfod-client: Default $DEBUGINFOD_URLS is computed from
 | 
					  - debuginfod-client: Default $DEBUGINFOD_URLS is computed from
 | 
				
			||||||
    drop-in files /etc/debuginfod/*.urls rather than
 | 
					    drop-in files /etc/debuginfod/*.urls rather than
 | 
				
			||||||
@ -538,16 +677,50 @@ exit 0
 | 
				
			|||||||
    dwarf_linefunctionname.
 | 
					    dwarf_linefunctionname.
 | 
				
			||||||
  - translations: Update Japanese translation.
 | 
					  - translations: Update Japanese translation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu May 27 2021 Mark Wielaard <mjw@redhat.com> - 0.185-1
 | 
					* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.185-5
 | 
				
			||||||
- Upgrade to upstream 0.185
 | 
					- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
 | 
				
			||||||
 | 
					  Related: rhbz#1991688
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Dec 17 2020 Mark Wielaard <mjw@redhat.com> - 0.182-3
 | 
					* Wed Jun 16 2021 Frank Ch. Eigler <fche@redhat.com> - 0.185-4
 | 
				
			||||||
 | 
					- RHBZ1947876 - redux.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Jun 09 2021 Frank Ch. Eigler <fche@redhat.com> - 0.185-3
 | 
				
			||||||
 | 
					- RHBZ1947876 - turn -debuginfod-client into a weak reverse dependency.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon May 31 2021 Mark Wielaard <mjw@redhat.com> - 0.185-2
 | 
				
			||||||
 | 
					- Allow failing make check
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon May 31 2021 Mark Wielaard <mjw@redhat.com> - 0.185-1
 | 
				
			||||||
 | 
					- Upgrade to upstream 0.185
 | 
				
			||||||
 | 
					  - debuginfod-client: Simplify curl handle reuse so downloads which
 | 
				
			||||||
 | 
					                       return an error are retried.
 | 
				
			||||||
 | 
					  - elfcompress: Always exit with code 0 when the operation succeeds
 | 
				
			||||||
 | 
					                 (even when nothing was done). On error the exit code
 | 
				
			||||||
 | 
					                 is now always 1.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Apr 15 2021 Mohan Boddu <mboddu@redhat.com> - 0.183-2
 | 
				
			||||||
 | 
					- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon Feb  8 2021 Mark Wielaard <mjw@fedoraproject.org> - 0.183-1
 | 
				
			||||||
 | 
					- Upgrade to upstream 0.183
 | 
				
			||||||
 | 
					  - debuginfod: New thread-busy metric and more detailed error metrics.
 | 
				
			||||||
 | 
					    New --fdcache-mintmp and tracking of filesystem freespace.
 | 
				
			||||||
 | 
					  - debuginfod-client: DEBUGINFOD_SONAME macro added to debuginfod.h can
 | 
				
			||||||
 | 
					    be used to dlopen the libdebuginfod.so library.
 | 
				
			||||||
 | 
					    New function debuginfod_set_verbose_fd and DEBUGINFOD_VERBOSE
 | 
				
			||||||
 | 
					    environment variable.
 | 
				
			||||||
 | 
					  - config: profile.sh and profile.csh won't export DEBUGINFOD_URLS
 | 
				
			||||||
 | 
					    unless configured --enable-debuginfod-urls[=URLS]
 | 
				
			||||||
 | 
					  - elflint, readelf: Recognize SHF_GNU_RETAIN.
 | 
				
			||||||
 | 
					    Handle SHT_X86_64_UNWIND as valid relocation target type.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.182-3
 | 
				
			||||||
 | 
					- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Dec 17 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.182-2
 | 
				
			||||||
- Add elfutils-0.182-s390-pid_memory_read.patch
 | 
					- Add elfutils-0.182-s390-pid_memory_read.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Mon Nov  2 2020 Mark Wielaard <mjw@redhat.com> - 0.182-2
 | 
					* Sat Oct 31 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.182-1
 | 
				
			||||||
- Add elfutils-0.182-debuginfod-test-fix.patch.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* Mon Nov  2 2020 Mark Wielaard <mjw@redhat.com> - 0.182-1
 | 
					 | 
				
			||||||
- Upgrade to upstream 0.182
 | 
					- Upgrade to upstream 0.182
 | 
				
			||||||
  - backends: Support for tilegx has been removed.
 | 
					  - backends: Support for tilegx has been removed.
 | 
				
			||||||
  - config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS.
 | 
					  - config: New /etc/profile.d files to provide default $DEBUGINFOD_URLS.
 | 
				
			||||||
@ -557,26 +730,131 @@ exit 0
 | 
				
			|||||||
  - debuginfod-client: Now supports compressed (kernel) ELF images.
 | 
					  - debuginfod-client: Now supports compressed (kernel) ELF images.
 | 
				
			||||||
  - libdwfl: Add ZSTD compression support.
 | 
					  - libdwfl: Add ZSTD compression support.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Jun 11 2020 Mark Wielaard <mjw@redhat.com> - 0.180-1
 | 
					* Mon Oct 19 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-3
 | 
				
			||||||
- New upstream release.
 | 
					- Add elfutils-0.181-array-param.patch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Jan 10 2020 Mark Wielaard <mjw@redhat.com> - 0.178-7
 | 
					* Fri Sep 18 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-2
 | 
				
			||||||
 | 
					- Add ZSTD support elfutils-0.181-zstd.patch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Sep  8 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.181-1
 | 
				
			||||||
 | 
					- Upgrade to upstream 0.181
 | 
				
			||||||
 | 
					  - libelf: elf_update now compensates (fixes up) a bad sh_addralign
 | 
				
			||||||
 | 
					    for SHF_COMPRESSED sections.
 | 
				
			||||||
 | 
					  - libdebuginfod: configure now takes --enable-libdebuginfod=dummy or
 | 
				
			||||||
 | 
					    --disable-libdebuginfod for bootstrapping.
 | 
				
			||||||
 | 
					    DEBUGINFOD_URLS now accepts "scheme-free" urls
 | 
				
			||||||
 | 
					    (guessing at what the user meant, either http:// or file://)
 | 
				
			||||||
 | 
					  - readelf, elflint: Handle aarch64 bti, pac bits in dynamic table and
 | 
				
			||||||
 | 
					    gnu property notes.
 | 
				
			||||||
 | 
					  - libdw, readelf: Recognize DW_CFA_AARCH64_negate_ra_state. Allows
 | 
				
			||||||
 | 
					    unwinding on arm64 for code that is compiled for PAC
 | 
				
			||||||
 | 
					    (Pointer Authentication Code) as long as it isn't enabled.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Aug 25 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-7
 | 
				
			||||||
 | 
					- Add elfutils-0.180-shf-compressed.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon Jul 27 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.180-6
 | 
				
			||||||
 | 
					- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Jul 22 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-5
 | 
				
			||||||
 | 
					- Remove elfutils-libelf-devel-static and elfutils-devel-static subpackages.
 | 
				
			||||||
 | 
					- Remove duplicate listing of sysconfig/debuginfod (config) file.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon Jul 13 2020 Tom Stellard <tstellar@redhat.com> - 0.180-4
 | 
				
			||||||
 | 
					- Use make macros
 | 
				
			||||||
 | 
					- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Jul  3 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-3
 | 
				
			||||||
 | 
					- Add elfutils-0.180-mhd-result.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Jul  1 2020 Jeff Law <law@redhat.com> - 0.180-2
 | 
				
			||||||
 | 
					- Disable LTO
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Jun 11 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.180-1
 | 
				
			||||||
 | 
					- New upstream release.
 | 
				
			||||||
 | 
					  elflint: Allow SHF_EXCLUDE as generic section flag when --gnu is given.
 | 
				
			||||||
 | 
					  libdw, readelf: Handle GCC LTO .gnu.debuglto_ prefix.
 | 
				
			||||||
 | 
					  libdw: Use correct CU to resolve file names in dwarf_decl_file.
 | 
				
			||||||
 | 
					  libdwfl: Handle debugaltlink in dwfl_standard_find_debuginfo.
 | 
				
			||||||
 | 
					  size: Also obey radix printing for bsd format.
 | 
				
			||||||
 | 
					  nm: Explicitly print weak 'V' or 'T' and common 'C' symbols.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Apr 30 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.179-2
 | 
				
			||||||
 | 
					- Add elfutils-0.179-debug-client-alt-link.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Mon Mar 30 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.179-1
 | 
				
			||||||
 | 
					- New upstream release.
 | 
				
			||||||
 | 
					  debuginfod-client:
 | 
				
			||||||
 | 
					  - When DEBUGINFOD_PROGRESS is set and the program doesn't
 | 
				
			||||||
 | 
					    install its own debuginfod_progressfn_t show download
 | 
				
			||||||
 | 
					    progress on stderr.
 | 
				
			||||||
 | 
					  - DEBUGINFOD_TIMEOUT is now defined as seconds to get at
 | 
				
			||||||
 | 
					    least 100K, defaults to 90 seconds.
 | 
				
			||||||
 | 
					  - Default to $XDG_CACHE_HOME/debuginfod_client.
 | 
				
			||||||
 | 
					  - New functions debuginfod_set_user_data,
 | 
				
			||||||
 | 
					    debuginfod_get_user_data, debuginfod_get_url and
 | 
				
			||||||
 | 
					    debuginfod_add_http_header.
 | 
				
			||||||
 | 
					  - Support for file:// URLs.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  debuginfod:
 | 
				
			||||||
 | 
					  - Performance improvements through highly parallelized scanning
 | 
				
			||||||
 | 
					    and archive content caching.
 | 
				
			||||||
 | 
					  - Uses libarchive directly for reading rpm archives.
 | 
				
			||||||
 | 
					  - Support for indexing .deb/.ddeb archives through dpkg-deb
 | 
				
			||||||
 | 
					    or bsdtar.
 | 
				
			||||||
 | 
					  - Generic archive support through -Z EXT[=CMD]. Which can be
 | 
				
			||||||
 | 
					    used for example for arch-linux pacman files by using
 | 
				
			||||||
 | 
					    -Z '.tar.zst=zstdcat'.
 | 
				
			||||||
 | 
					  - Better logging using User-Agent and X-Forwarded-For headers.
 | 
				
			||||||
 | 
					  - More prometheus metrics.
 | 
				
			||||||
 | 
					  - Support for eliding dots or extraneous slashes in path names.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  debuginfod-find:
 | 
				
			||||||
 | 
					  - Accept /path/names in place of buildid hex.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  libelf:
 | 
				
			||||||
 | 
					  - Handle PN_XNUM in elf_getphdrnum before shdr 0 is cached
 | 
				
			||||||
 | 
					  - Ensure zlib resource cleanup on failure.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  libdwfl:
 | 
				
			||||||
 | 
					  - dwfl_linux_kernel_find_elf and dwfl_linux_kernel_report_offline
 | 
				
			||||||
 | 
					    now find and handle a compressed vmlinuz image.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  readelf, elflint:
 | 
				
			||||||
 | 
					  - Handle PT_GNU_PROPERTY.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  translations:
 | 
				
			||||||
 | 
					  - Updated Ukrainian translation.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Jan 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.178-9
 | 
				
			||||||
 | 
					- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Jan 24 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.178-8
 | 
				
			||||||
 | 
					- Add elfutils-0.178-gcc10-null-dereference.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Jan 10 2020 Mark Wielaard <mjw@fedoraproject.org> - 0.178-7
 | 
				
			||||||
- Add elfutils-0.178-debuginfod-timeoutprogress.patch
 | 
					- Add elfutils-0.178-debuginfod-timeoutprogress.patch
 | 
				
			||||||
- Add elfutils-0.178-libasm-ebl.patch
 | 
					- Add elfutils-0.178-libasm-ebl.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Dec 13 2019 Mark Wielaard <mjw@redhat.com> - 0.178-6
 | 
					* Wed Dec 11 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-6
 | 
				
			||||||
- Add elfutils-0.178-curl-code-gcc-10.patch
 | 
					- Add elfutils-0.178-curl-code-gcc-10.patch
 | 
				
			||||||
- Add elfutils-0.178-compressed-vmlinuz.patch
 | 
					- Add elfutils-0.178-compressed-vmlinuz.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Mon Dec  9 2019 Mark Wielaard <mjw@redhat.com> - 0.178-5
 | 
					* Mon Dec  9 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-5
 | 
				
			||||||
- Add elfutils-0.178-debuginfod-no-cache.patch. #1781097
 | 
					- Add elfutils-0.178-debuginfod-no-cache.patch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Nov 28 2019 Mark Wielaard <mjw@redhat.com> - 0.178-4
 | 
					* Thu Nov 28 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-4
 | 
				
			||||||
 | 
					- Define %%{depsuffix} before use.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Thu Nov 28 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-3
 | 
				
			||||||
- Add elfutils-debuginfod-client Provides and Requires with depsuffix
 | 
					- Add elfutils-debuginfod-client Provides and Requires with depsuffix
 | 
				
			||||||
  to get multilib dependencies correct. Add %%{version}-%%{release} to
 | 
					  to get multilib dependencies correct. Add %%{version}-%%{release} to
 | 
				
			||||||
  keep subpackages in sync.
 | 
					  keep subpackages in sync.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Tue Nov 26 2019 Mark Wielaard <mjw@redhat.com> - 0.178-2
 | 
					* Wed Nov 27 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-2
 | 
				
			||||||
 | 
					- Fix libdebuginfod file list for debuginfo-client[-devel].
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Tue Nov 26 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.178-1
 | 
				
			||||||
- New upstream release.
 | 
					- New upstream release.
 | 
				
			||||||
  - debuginfod: New server, client tool and library to index and fetch
 | 
					  - debuginfod: New server, client tool and library to index and fetch
 | 
				
			||||||
                ELF/DWARF files addressed by build-id through HTTP.
 | 
					                ELF/DWARF files addressed by build-id through HTTP.
 | 
				
			||||||
@ -591,52 +869,79 @@ exit 0
 | 
				
			|||||||
           threads through the same Dwarf handle.
 | 
					           threads through the same Dwarf handle.
 | 
				
			||||||
  - libdwfl: Will try to use debuginfod when installed as fallback to
 | 
					  - libdwfl: Will try to use debuginfod when installed as fallback to
 | 
				
			||||||
             retrieve ELF and DWARF debug data files by build-id.
 | 
					             retrieve ELF and DWARF debug data files by build-id.
 | 
				
			||||||
- Fix libdebuginfod file list for debuginfo-client[-devel].
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Jul  5 2019 Mark Wielaard <mjw@redhat.com> - 0.176-5
 | 
					* Wed Aug 14 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.177-1
 | 
				
			||||||
 | 
					- New upstream release.
 | 
				
			||||||
 | 
					  - elfclassify: New tool to analyze ELF objects.
 | 
				
			||||||
 | 
					  - readelf: Print DW_AT_data_member_location as decimal offset.
 | 
				
			||||||
 | 
					             Decode DW_AT_discr_list block attributes.
 | 
				
			||||||
 | 
					  - libdw: Add DW_AT_GNU_numerator, DW_AT_GNU_denominator and DW_AT_GNU_bias.
 | 
				
			||||||
 | 
					  - libdwelf: Add dwelf_elf_e_machine_string.
 | 
				
			||||||
 | 
					              dwelf_elf_begin now only returns NULL when there is an error
 | 
				
			||||||
 | 
					              reading or decompressing a file. If the file is not an ELF file
 | 
				
			||||||
 | 
					              an ELF handle of type ELF_K_NONE is returned.
 | 
				
			||||||
 | 
					  - backends: Add support for C-SKY.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Jul 24 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.176-5
 | 
				
			||||||
 | 
					- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Fri Jul  5 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-4
 | 
				
			||||||
- Add elfutils-0.176-strip-symbols-illformed.patch
 | 
					- Add elfutils-0.176-strip-symbols-illformed.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Wed Jun  5 2019 Mark Wielaard <mjw@redhat.com> - 0.176-4
 | 
					* Mon Jun  3 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-3
 | 
				
			||||||
- Add elfutils-0.176-elf-update.patch (#1717349)
 | 
					- Add elfutils-0.176-elf-update.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Mon May 13 2019 Mark Wielaard <mjw@redhat.com> - 0.176-3
 | 
					* Tue Apr 30 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-2
 | 
				
			||||||
- Rebuilt for annobin change.
 | 
					- Update elfutils-0.176-gcc-pr88835.patch.
 | 
				
			||||||
 | 
					- Add elfutils-0.176-pt-gnu-prop.patch
 | 
				
			||||||
 | 
					- Add elfutils-0.176-xlate-note.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri May 10 2019 Mark Wielaard <mjw@redhat.com> - 0.176-2
 | 
					* Fri Feb 15 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-1
 | 
				
			||||||
- Add elfutils-0.176-xlate-note.patch (#1705138)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
* Tue May  7 2019 Mark Wielaard <mjw@fedoraproject.org> - 0.176-1
 | 
					 | 
				
			||||||
- New upstream release.
 | 
					- New upstream release.
 | 
				
			||||||
  - backends: riscv improved core file and return value location support.
 | 
					  - backends: riscv improved core file and return value location support.
 | 
				
			||||||
  - Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150,
 | 
					  - Fixes CVE-2019-7146, CVE-2019-7148, CVE-2019-7149, CVE-2019-7150,
 | 
				
			||||||
          CVE-2019-7664, CVE-2019-7665.
 | 
					          CVE-2019-7664, CVE-2019-7665.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Mon Dec  3 2018 Mark Wielaard <mjw@redhat.com> - 0.174-6
 | 
					* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.175-3
 | 
				
			||||||
- Add elfutils-0.174-gnu-props-32.patch.
 | 
					- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Thu Nov 15 2018 Mark Wielaard <mjw@redhat.com> - 0.174-5
 | 
					* Mon Dec  3 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.175-2
 | 
				
			||||||
- Add elfutils-0.174-x86_64_unwind.patch (#1650114).
 | 
					- Add elfutils-0.175-gnu-props-32.patch.
 | 
				
			||||||
- Add elfutils-0.174-gnu-property-note.patch (#1650120).
 | 
					
 | 
				
			||||||
 | 
					* Fri Nov 16 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.175-1
 | 
				
			||||||
 | 
					- New upstream release.
 | 
				
			||||||
 | 
					  - readelf: Handle multiple .debug_macro sections.
 | 
				
			||||||
 | 
					  - strip: Add strip --reloc-debug-sections-only option.
 | 
				
			||||||
 | 
					    Handle relocations against GNU compressed sections.
 | 
				
			||||||
 | 
					  - libdwelf: New function dwelf_elf_begin.
 | 
				
			||||||
 | 
					  - libcpu: Recognize bpf jump variants BPF_JLT, BPF_JLE, BPF_JSLT
 | 
				
			||||||
 | 
					    and BPF_JSLE.
 | 
				
			||||||
 | 
					  - backends: RISCV handles ADD/SUB relocations.
 | 
				
			||||||
 | 
					- Remove all patches.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					* Wed Nov 14 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-5
 | 
				
			||||||
 | 
					- Add elfutils-0.174-x86_64_unwind.patch.
 | 
				
			||||||
 | 
					- Add elfutils-0.174-gnu-property-note.patch.
 | 
				
			||||||
- Add elfutils-0.174-version-note.patch.
 | 
					- Add elfutils-0.174-version-note.patch.
 | 
				
			||||||
- Add elfutils-0.174-gnu-attribute-note.patch (#1650125).
 | 
					- Add elfutils-0.174-gnu-attribute-note.patch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Tue Nov  6 2018 Mark Wielaard <mjw@redhat.com> - 0.174-4
 | 
					* Tue Nov  6 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-4
 | 
				
			||||||
- Add elfutils-0.174-size-rec-ar.patch
 | 
					- Add elfutils-0.174-size-rec-ar.patch
 | 
				
			||||||
  CVE-2018-18520 (#1646479)
 | 
					  CVE-2018-18520 (#1646478)
 | 
				
			||||||
- Add elfutils-0.174-ar-sh_entsize-zero.patch
 | 
					- Add elfutils-0.174-ar-sh_entsize-zero.patch
 | 
				
			||||||
  CVE-2018-18521 (#1646484)
 | 
					  CVE-2018-18521 (#1646483)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Nov  2 2018 Mark Wielaard <mjw@redhat.com> - 0.174-3
 | 
					* Fri Nov  2 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-3
 | 
				
			||||||
- Add elfutils-0.174-libdwfl-sanity-check-core-reads.patch
 | 
					- Add elfutils-0.174-libdwfl-sanity-check-core-reads.patch
 | 
				
			||||||
  CVE-2018-18310 (#1642606)
 | 
					  CVE-2018-18310 (#1642605)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Fri Oct 19 2018 Mark Wielaard <mjw@redhat.com> - 0.174-2
 | 
					* Wed Oct 17 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-2
 | 
				
			||||||
- Add elfutils-0.174-strip-unstrip-group.patch (#1638248).
 | 
					- Add elfutils-0.174-strip-unstrip-group.patch.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Tue Sep 18 2018 Mark Wielaard <mjw@redhat.com> - 0.174-1
 | 
					* Fri Sep 14 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.174-1
 | 
				
			||||||
- New upstream release (#1614972)
 | 
					- New upstream release
 | 
				
			||||||
  - libelf, libdw and all tools now handle extended shnum and shstrndx
 | 
					  - libelf, libdw and all tools now handle extended shnum and shstrndx
 | 
				
			||||||
    correctly
 | 
					    correctly (#1608390).
 | 
				
			||||||
  - elfcompress: Don't rewrite input file if no section data needs
 | 
					  - elfcompress: Don't rewrite input file if no section data needs
 | 
				
			||||||
    updating.  Try harder to keep same file mode bits (suid) on rewrite.
 | 
					    updating.  Try harder to keep same file mode bits (suid) on rewrite.
 | 
				
			||||||
  - strip: Handle mixed (out of order) allocated/non-allocated sections.
 | 
					  - strip: Handle mixed (out of order) allocated/non-allocated sections.
 | 
				
			||||||
@ -644,9 +949,9 @@ exit 0
 | 
				
			|||||||
  - backends: RISCV and M68K now have backend implementations to
 | 
					  - backends: RISCV and M68K now have backend implementations to
 | 
				
			||||||
    generate CFI based backtraces.
 | 
					    generate CFI based backtraces.
 | 
				
			||||||
  - Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403
 | 
					  - Fixes CVE-2018-16062, CVE-2018-16402 and CVE-2018-16403
 | 
				
			||||||
    (#1623754, #1625052, #1625057).
 | 
					    (#1623753, #1625051, #1625056).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Mon Jul 30 2018 Florian Weimer <fweimer@redhat.com> - 0.173-8
 | 
					* Tue Jul 31 2018 Florian Weimer <fweimer@redhat.com> - 0.173-8
 | 
				
			||||||
- Rebuild with fixed binutils
 | 
					- Rebuild with fixed binutils
 | 
				
			||||||
 | 
					
 | 
				
			||||||
* Sun Jul 29 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.173-7
 | 
					* Sun Jul 29 2018 Mark Wielaard <mjw@fedoraproject.org> - 0.173-7
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user