From bd36b901ed4186fdf632b088fe0d5155ef425d7a Mon Sep 17 00:00:00 2001 From: Martin Cermak Date: Tue, 16 Nov 2021 11:59:24 +0100 Subject: [PATCH 1/9] CI Gating: Use Regression and Sanity tests in automated runs --- .../Makefile | 64 ----------------- .../PURPOSE | 5 -- .../addr2line-buffer-over-flow1 | Bin 1860 -> 0 bytes .../main.fmf | 16 ----- .../runtest.sh | 39 ----------- .../Double-free-libelf | Bin 1896 -> 0 bytes .../Makefile | 65 ------------------ .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 42 ----------- .../Buffer-over-readelf | Bin 2488 -> 0 bytes .../Makefile | 65 ------------------ .../PURPOSE | 5 -- .../bz1532205.supp | 25 ------- .../main.fmf | 16 ----- .../runtest.sh | 43 ------------ .../Makefile | 64 ----------------- .../POC-stack | Bin 4542 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 15 ---- .../runtest.sh | 39 ----------- .../Makefile | 64 ----------------- .../POC-stack | Bin 4542 -> 0 bytes .../PURPOSE | 5 -- .../bz1532205.supp | 25 ------- .../main.fmf | 16 ----- .../runtest.sh | 42 ----------- .../Makefile | 64 ----------------- .../POC1 | Bin 4000 -> 0 bytes .../PURPOSE | 3 - .../main.fmf | 13 ---- .../runtest.sh | 38 ---------- .../Makefile | 64 ----------------- .../POC2 | Bin 4000 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 42 ----------- .../CVE-2018-18521-divide-by-zero/Makefile | 64 ----------------- .../CVE-2018-18521-divide-by-zero/POC2 | Bin 4000 -> 0 bytes .../CVE-2018-18521-divide-by-zero/PURPOSE | 5 -- .../CVE-2018-18521-divide-by-zero/main.fmf | 16 ----- .../CVE-2018-18521-divide-by-zero/runtest.sh | 43 ------------ .../Makefile | 64 ----------------- .../POC2 | Bin 4000 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 15 ---- .../runtest.sh | 38 ---------- tests/Security/CVE-2019-7146/Makefile | 64 ----------------- tests/Security/CVE-2019-7146/PURPOSE | 3 - tests/Security/CVE-2019-7146/main.fmf | 14 ---- tests/Security/CVE-2019-7146/poc | Bin 428 -> 0 bytes tests/Security/CVE-2019-7146/runtest.sh | 41 ----------- .../Makefile | 64 ----------------- .../POC1 | Bin 3208 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 43 ------------ .../Makefile | 64 ----------------- .../POC1 | Bin 10442 -> 0 bytes .../POC2 | Bin 10467 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 40 ----------- .../Makefile | 64 ----------------- .../POC | Bin 10393 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 40 ----------- .../Makefile | 64 ----------------- .../POC2 | Bin 2659 -> 0 bytes .../PURPOSE | 5 -- .../main.fmf | 16 ----- .../runtest.sh | 41 ----------- .../Makefile | 63 ----------------- .../PURPOSE | 5 -- .../dwz-overflow.elf | Bin 24928 -> 0 bytes .../main.fmf | 16 ----- .../runtest.sh | 56 --------------- 78 files changed, 1942 deletions(-) delete mode 100644 tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/Makefile delete mode 100644 tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/PURPOSE delete mode 100644 tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/addr2line-buffer-over-flow1 delete mode 100644 tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/main.fmf delete mode 100755 tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/runtest.sh delete mode 100644 tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/Double-free-libelf delete mode 100644 tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/Makefile delete mode 100644 tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/PURPOSE delete mode 100644 tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/main.fmf delete mode 100755 tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/runtest.sh delete mode 100644 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/Buffer-over-readelf delete mode 100644 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/Makefile delete mode 100644 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/PURPOSE delete mode 100644 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/bz1532205.supp delete mode 100644 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/main.fmf delete mode 100755 tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/runtest.sh delete mode 100644 tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/Makefile delete mode 100644 tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/POC-stack delete mode 100644 tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/PURPOSE delete mode 100644 tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/main.fmf delete mode 100755 tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/runtest.sh delete mode 100644 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/Makefile delete mode 100644 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/POC-stack delete mode 100644 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/PURPOSE delete mode 100644 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/bz1532205.supp delete mode 100644 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/main.fmf delete mode 100755 tests/Security/CVE-2018-18310-invalid-memory-address-dereference/runtest.sh delete mode 100644 tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/Makefile delete mode 100644 tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/POC1 delete mode 100644 tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/PURPOSE delete mode 100644 tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/main.fmf delete mode 100755 tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/runtest.sh delete mode 100644 tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/Makefile delete mode 100644 tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/POC2 delete mode 100644 tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/PURPOSE delete mode 100644 tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/main.fmf delete mode 100755 tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/runtest.sh delete mode 100644 tests/Security/CVE-2018-18521-divide-by-zero/Makefile delete mode 100644 tests/Security/CVE-2018-18521-divide-by-zero/POC2 delete mode 100644 tests/Security/CVE-2018-18521-divide-by-zero/PURPOSE delete mode 100644 tests/Security/CVE-2018-18521-divide-by-zero/main.fmf delete mode 100755 tests/Security/CVE-2018-18521-divide-by-zero/runtest.sh delete mode 100644 tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/Makefile delete mode 100644 tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/POC2 delete mode 100644 tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/PURPOSE delete mode 100644 tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/main.fmf delete mode 100755 tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/runtest.sh delete mode 100644 tests/Security/CVE-2019-7146/Makefile delete mode 100644 tests/Security/CVE-2019-7146/PURPOSE delete mode 100644 tests/Security/CVE-2019-7146/main.fmf delete mode 100644 tests/Security/CVE-2019-7146/poc delete mode 100755 tests/Security/CVE-2019-7146/runtest.sh delete mode 100644 tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/Makefile delete mode 100644 tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/POC1 delete mode 100644 tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/PURPOSE delete mode 100644 tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/main.fmf delete mode 100755 tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/runtest.sh delete mode 100644 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/Makefile delete mode 100644 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC1 delete mode 100644 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC2 delete mode 100644 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/PURPOSE delete mode 100644 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/main.fmf delete mode 100755 tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/runtest.sh delete mode 100644 tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/Makefile delete mode 100644 tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/POC delete mode 100644 tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/PURPOSE delete mode 100644 tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/main.fmf delete mode 100755 tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/runtest.sh delete mode 100644 tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/Makefile delete mode 100644 tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/POC2 delete mode 100644 tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/PURPOSE delete mode 100644 tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/main.fmf delete mode 100755 tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/runtest.sh delete mode 100644 tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/Makefile delete mode 100644 tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/PURPOSE delete mode 100644 tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/dwz-overflow.elf delete mode 100644 tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/main.fmf delete mode 100755 tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/runtest.sh diff --git a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/Makefile b/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/Makefile deleted file mode 100644 index 09a9e16..0000000 --- a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read -# Description: CVE-2018-16062-elfutils-Heap-based-buffer-over-read -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE addr2line-buffer-over-flow1 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-16062-elfutils-Heap-based-buffer-over-read" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1625260" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/PURPOSE b/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/PURPOSE deleted file mode 100644 index 3281134..0000000 --- a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read -Description: CVE-2018-16062-elfutils-Heap-based-buffer-over-read -Author: Martin Cermak -Bug summary: 2 elfutils: Heap-based buffer over-read in libdw/dwarf_getaranges.c:dwarf_getaranges() via crafted file [rhel-7] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1625260 diff --git a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/addr2line-buffer-over-flow1 b/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/addr2line-buffer-over-flow1 deleted file mode 100644 index 8db05cc5e161d3235c6e1a95595c23404b9de5dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1860 zcmdT_Jxmi}7=FI%l@_Q3G@?FWt&Kr z%46l;FR8`(zVCghhu@ai)M)>BbY>|&x%{9qw+(v6 z##T~U4;|nrfX4vN00=_>g*7Ncfbt_wIT0ml**?^90P6K)#49lhRn&DQAz~JQ_3`L6 zvf?oVK(vMQ3oLRIK*OCTK*=7YYEc?Ka*sux6ERE1T~cF@zz`XunAidGj*~YYhoY(j z02ERiL+{$sR)@|1 zM&jS}pYitz(E4}o|3G-pnYgP7fZlY4fsJ%0G+`6yW1^c=v^^_pFBn>8Sa-n_U=YQ)m z6?VzVF5tZ40ZH#_-q+JedcGUVVX67%6(31MtQy_b?X2lZvrtUidcI~`_C-f>dOGcz zm!%c%sIbUISI?W0@O-fxS1`1q{Q+C6`?EoCOuUQw^l-xgUDY^=HvlwYe5#NT`@4kJ zJyNe?5fD8j -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read -extra-task: /tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read diff --git a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/runtest.sh b/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/runtest.sh deleted file mode 100755 index fa3fc0c..0000000 --- a/tests/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read/runtest.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-16062-elfutils-Heap-based-buffer-over-read -# Description: CVE-2018-16062-elfutils-Heap-based-buffer-over-read -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # Reproduced with elfutils-0.172-2.el7.x86_64 valgrind-3.13.0-13.el7.x86_64 - rlRun "valgrind -q --error-exitcode=99 eu-addr2line -e addr2line-buffer-over-flow1 -- 500 50 10 -1000" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/Double-free-libelf b/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/Double-free-libelf deleted file mode 100644 index da7ce216809f9ed95d5d2f5c662c3e02c7963d8e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1896 zcmeHIT}TvB6#nka?z)>(t*wYz*5aBP*`{cPAhn2vi4Q^+q>{7i?)IaWxT~xZxX}+1 z20>9N14Z?ay+vDO^dPCE(M$EzOGMB{5EK<;AWWP)Gdn|2LB00D&b@Q*Ip25Ax#!Lf z?`Yb|7z2h?RRzExg26Z@2kFF&^nOuQ)z+q6 zb-Hb7Lg~z{Z+YuUN7Luio^WocTJDtP=bfo{k@TH6_tFkmO>bpI1+cMLkS&gl2_@Dk z%W@PfZ>M{{j1|x1djkcHRh6HUH||e$yStWou6swKmC0KnWjcwP5s+ByTlSvb)+U#s z?@cJ@gJD??q1fje5$oo^Puc?$v$GTHADkYVm*lA@wxY4g{8M8aw!hq0byw&IR(^3l zvIJ6`PRAlx?P{`5xRc@pjdfWYyYiQN*fu4j=rn!Jc?91b-~v$H$~< z%=#kT{&*x2hd&&Q2jPDhi@`q>j)eLTbOb}8zQ_Q$&5+EO4jqXeU8XIBBOxz3x&dkz zimQe9n~4_y8qHTQ*j3dIGy`xUfB>(zK@Jg1EW6|{1;-v3KmY>Yb(?%i zk~Ru7l;IHA40bBJsfw+zX z7|-ZxxWRy0eNNE73AmWaLqnMjR35IoJfq75po|!^fpQwPqzS8ZM*;2f>Z7j|J@8pFr1tKl;Z4FB>4gK*UW9MntX zu;lR6z)k&ZsXvUfr%~%u?KvU -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-16402-double-free-due-to-double-decompression -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE Double-free-libelf - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-16402-double-free-due-to-double-decompression" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: nothing" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1625052" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/PURPOSE b/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/PURPOSE deleted file mode 100644 index 2b1d552..0000000 --- a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-16402-double-free-due-to-double-decompression -Description: CVE-2018-16402-double-free-due-to-double-decompression -Author: Martin Cermak -Bug summary: 2 elfutils: Double-free due to double decompression of sections in crafted ELF causes crash [rhel-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1625052 diff --git a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/main.fmf b/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/main.fmf deleted file mode 100644 index f7be31f..0000000 --- a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2018-16402-double-free-due-to-double-decompression -description: | - Bug summary: 2 elfutils: Double-free due to double decompression of sections in crafted ELF causes crash [rhel-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1625052 -contact: -- Martin Cermak -component: -- nothing -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-16402-double-free-due-to-double-decompression -extra-task: /tools/elfutils/Security/CVE-2018-16402-double-free-due-to-double-decompression diff --git a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/runtest.sh b/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/runtest.sh deleted file mode 100755 index 96e322b..0000000 --- a/tests/Security/CVE-2018-16402-double-free-due-to-double-decompression/runtest.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-16402-double-free-due-to-double-decompression -# Description: CVE-2018-16402-double-free-due-to-double-decompression -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - TMP=$(mktemp) - rlRun "valgrind -q eu-readelf -S ./Double-free-libelf |& tee $TMP" - rlRun "fgrep 'Invalid free()' $TMP" 1 - rlRun "fgrep 'Section Headers:' $TMP" - rm -f $TMP - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/Buffer-over-readelf b/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/Buffer-over-readelf deleted file mode 100644 index 4b214cd6a4ccea57a812360be992777dc12ccff2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2488 zcma);&ubGw6vw}_o7zoNZIT8nR&<5>yWRezN(GG+e}JWk+LNMenr$s@HYK~3dXT1y zAfCJlqTtPIkKQ~AUi=pXFa8f6B5!_dUbe0HA<53Xoj32jnfGS0b$#xJWeFq*TmZlX z9BT)Fg)-0t$|#}m@z>Y#i@ZCylZV*;@$*=t-m0OqTB=6L$IA(?n+J>*@i_8r^C7w0k}E8;Lf^}-jp}tPK=FBjqi+KbkE)m zs_rd6R`QW)Z)tJz9I)vvVl=L;k2dOSepnr?z!FRKI)tF9pYxCi5!x$Zj7%4GJoEq< z$cR6OdPspZgq%^5mHv>h&+3AFt0}cwt(Jh;?CU+$>N8T{L%W$!nmc%WB-?j_1c#Fl z$^IkqQ!@+;4sgr#%~BAD=_g~}5X-Z(Gw#`&^9$$rDvj|~x=gE=tdbW!tHpi=UbN9r z&nHn#Eys(4%@|(Qk9~NRD1uiFDo>Xm`;|%~*nrmv)_g5m376_z@L+8v47lL&Qp2xx zO4grNLcg{gbqwO1lyA-NAUc{~hZO6?NabJ}lM6A#n&lgX^?7p*d;?Pqo0=#%|uSNt-S2+`EzkLsr( zF##Y<+i#QoP3p}!_p{%WC#S^3e^5`t<9}!N zMY$^d)rjxOQgp)Ye@^+s5Z`rYoCyi8Uodsci&`Q6=*AA(n?i7XY9}YL2~3jjru&hG zQ;y#Q_Kcr$B31V$O;kgzflLK%m$BP(!rnEn!cJWj2D@FKEJCMg>$*u}YyZ;NPH&NcKg@t?Jb|H(&-z^710F zu$7#b=G><`A;t7Ly1I{?YTB~oc)2$voghPMypvArW9nE+`J<9 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE Buffer-over-readelf bz1532205.supp - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: nothing" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: yes" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1625057" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/PURPOSE b/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/PURPOSE deleted file mode 100644 index 10589cc..0000000 --- a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -Description: CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -Author: Martin Cermak -Bug summary: 3 elfutils: Heap-based buffer over-read in libdw/dwarf_getabbrev.c and libwd/dwarf_hasattr.c causes crash [rhel-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1625057 diff --git a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/bz1532205.supp b/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/bz1532205.supp deleted file mode 100644 index 70f0f80..0000000 --- a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/bz1532205.supp +++ /dev/null @@ -1,25 +0,0 @@ -{ - - Memcheck:Cond - fun:_nl_explode_name -} -{ - - Memcheck:Cond - fun:_nl_make_l10nflist -} -{ - - Memcheck:Addr4 - fun:_nl_make_l10nflist -} -{ - - Memcheck:Addr4 - fun:new_composite_name -} -{ - - Memcheck:Cond - fun:_nl_explode_name -} diff --git a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/main.fmf b/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/main.fmf deleted file mode 100644 index e934d57..0000000 --- a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -description: | - Bug summary: 3 elfutils: Heap-based buffer over-read in libdw/dwarf_getabbrev.c and libwd/dwarf_hasattr.c causes crash [rhel-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1625057 -contact: -- Martin Cermak -component: -- nothing -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -extra-task: /tools/elfutils/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c diff --git a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/runtest.sh b/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/runtest.sh deleted file mode 100755 index ffd6160..0000000 --- a/tests/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c/runtest.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -# Description: CVE-2018-16403-heap-based-buffer-over-read-in-libdw-dwarf_getabbrev-c -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - arch | grep -q ppc64le && VGSUPP='--suppressions=bz1532205.supp' || VGSUPP='' - TMP=$(mktemp) - rlRun "valgrind $VGSUPP -q eu-readelf --debug-dump=abbrev ./Buffer-over-readelf |& tee $TMP" - rlRun "fgrep 'Invalid read of size' $TMP" 1 - rlRun "fgrep 'Abbreviation section at offset' $TMP" - rm -f $TMP - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/Makefile b/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/Makefile deleted file mode 100644 index de96661..0000000 --- a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference -# Description: CVE-2018-18310-elfutils-invalid-memory-address-dereference -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC-stack - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18310-elfutils-invalid-memory-address-dereference" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1651567" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/POC-stack b/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/POC-stack deleted file mode 100644 index 2b486e8d4c7d1fedc5fe06ed22de1f335c3d1180..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4542 zcmai1-ESOM7609tyY3_#JN`%-t1ihparz-8C_ z-C1{LHrSyk>y7*IkOveRmxl;hs??_nA;dobNJvOUq%Q~w5Fiy)AQT8yLsihAbMGD7 zaU=1QW_RvA=bm%!x##1~m5J$Nj4=Qf2nI~h=vIqc!vL;rlhYVR4i+B60Q%7e8Uw>k zZqWmVe0rKmyc%(2T zU9X>z9&|}I`wM`_qy)9{(Q@_W{{ty`WLs?|(GI3!ivbV75B%6JNmah|(?POgjm?#T!N}qFs4IoBpK8k(af@4Kd2rCkfH7nY zT;-PeBQS&0IBOJ^xn;fw)<0ro(aXNNt|&wHEJ=HE3`$W`?<>J!kfOkL)wVLmbyD;w z8|gQg(o`bJ2hxdZJt*hoj~~PsEZ#3XUXtOF`gRj?`P{JmdHWEQBmm7u5LL>7=Sq={ z;2XXilqyb$s8SE(TqB6o9O)F3Cq)#yejpl==V}fjXg^2(WiMWw_foxyjuP@9ZH_$0 zuX2k#Mte*7Zr@EPIY2ybwzyS#m0Oh!blA~iEq02qqd1J6i?E}Ld@I8CgV>v&$Fo5_ z_Uy5vQwL+G3|o%MLBp0_I_SHQqlyz%V7rS!v{=LU+{J1s4i)8+7e;l7M8yr)N3hTB^JC#ep|hw~2q%>9Un_;u z45#LoV3+H${IN;P0VVNR6u~alYc(&3VY}!uda;ixiNcj6NiZ^3hwXaBMp-z;V(4AM z0X3>RKs(fX6cJmSj@p%W8S=EOF}{ z28^m&OXX1VbOQLYuD2xb_7b;lGhjk$RAAa4F91li-k}z^h74F1gX}Q`T2If5N;Kgz zfGv9ZLW^4$4B6DkYn!_nWgGSaa9iARfBRWbHeA!KqYe0!k|s8kdudw)>B?=uYwLVi z{V}&z4d4mQL!fOF@AVCQWY8@GXvvnR4u$yW?7p*skCLhuG{Lr0^`yo_BvT&@6-+f&7E@t-h!dT!$7N-SPfFQT4i&e& zy+YQrjmw{DaqEvXK{iq4Qbej{RF>V=yLx6T%_urEB^_98Eo-W}so!et(BpOzGfEYN z++w1G##AXZeY+e}MW7c`)gPJpYTSh|R@tt`-ID**4awg$(PII-QBY%;@+z%TmAq_X zC-IL`O8zY&`h#-)_zK_XKP`KgER&R7k}2(2CgN}rj-7)LZKua(Cd9;vaq*Dk0hB}& zR1YDYLoo5M{7+BV#OKslBahwsjlzh-#GaHSkwq?DDnU^T>`9V@s*j3dWu*eqd+_jw zsUsM6Nc%gls?8W^mw`EYRh0l5Q(!bV(5c%|tzf_vEmnd$J@xrFIIv3VX|YsJFRN6H zrT)$K{DkWAD@s2@7v2Nb4vOsC2o5wUoAtp0=*EY+^dRZ(yAyYH*;o11jjfDo=^m+; zVHe(Fz^P?!kw?3CZ^08AvWw1gn#OeBq^nTKuy)cp^r92Ja2aH;quSYx4qV>AL-f}+ z30z^o1syG2Mz2K%RF}C$TkC3W#}86|i?##&f&st3$}LB3uN}Xmyprqt(D~Ci0bIP!={pX8rO(Y}ZqPAyVLR?99o<{oVH#<~ZeF%;^JP(rRRwIs0O(?& zlx6|nmS0GvFplEJ+?;(LLOhp0EvBEJEeHYE3%#-*#a<}lnkZH4ffr$Ys+vxfgj*No zYQ5-Gg&WtyNH~oJlmrp3u)$7UxA zqA+%JdV<8!SGFh>8baRf#Z+NNtZ%aOg(%nRff~q-xlvtIoWLbjQ|gl|QlDJfN_jgF2OU2c z9X&q%v!i)$$Yv?A6g7k&oR6VAk!#RRLd?yJ%GV)8F^aU>n&Sr$&s`Fyy^=iQeANjf YFM<$-nY{9>azp5qAEy{7%;c;81Ci9;>i_@% diff --git a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/PURPOSE b/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/PURPOSE deleted file mode 100644 index 6688efc..0000000 --- a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference -Description: CVE-2018-18310-elfutils-invalid-memory-address-dereference -Author: Martin Cermak -Bug summary: 0 elfutils: invalid memory address dereference was discovered in dwfl_segment_report_module.c in libdwfl [rhdts-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1651567 diff --git a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/main.fmf b/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/main.fmf deleted file mode 100644 index 6ab4075..0000000 --- a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: CVE-2018-18310-elfutils-invalid-memory-address-dereference -description: | - Bug summary: 0 elfutils: invalid memory address dereference was discovered in dwfl_segment_report_module.c in libdwfl [rhdts-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1651567 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference -extra-task: /tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference diff --git a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/runtest.sh b/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/runtest.sh deleted file mode 100755 index 09c885c..0000000 --- a/tests/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference/runtest.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18310-elfutils-invalid-memory-address-dereference -# Description: CVE-2018-18310-elfutils-invalid-memory-address-dereference -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # Expect exitcode 2, unfixed package segfaults (139) - rlRun "eu-stack --core=POC-stack" 2 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/Makefile b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/Makefile deleted file mode 100644 index 6a50f8a..0000000 --- a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference -# Description: CVE-2018-18310-invalid-memory-address-dereference -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC-stack bz1532205.supp - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18310-invalid-memory-address-dereference" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: nothing" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1642606" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5 -RHEL6" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/POC-stack b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/POC-stack deleted file mode 100644 index 2b486e8d4c7d1fedc5fe06ed22de1f335c3d1180..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4542 zcmai1-ESOM7609tyY3_#JN`%-t1ihparz-8C_ z-C1{LHrSyk>y7*IkOveRmxl;hs??_nA;dobNJvOUq%Q~w5Fiy)AQT8yLsihAbMGD7 zaU=1QW_RvA=bm%!x##1~m5J$Nj4=Qf2nI~h=vIqc!vL;rlhYVR4i+B60Q%7e8Uw>k zZqWmVe0rKmyc%(2T zU9X>z9&|}I`wM`_qy)9{(Q@_W{{ty`WLs?|(GI3!ivbV75B%6JNmah|(?POgjm?#T!N}qFs4IoBpK8k(af@4Kd2rCkfH7nY zT;-PeBQS&0IBOJ^xn;fw)<0ro(aXNNt|&wHEJ=HE3`$W`?<>J!kfOkL)wVLmbyD;w z8|gQg(o`bJ2hxdZJt*hoj~~PsEZ#3XUXtOF`gRj?`P{JmdHWEQBmm7u5LL>7=Sq={ z;2XXilqyb$s8SE(TqB6o9O)F3Cq)#yejpl==V}fjXg^2(WiMWw_foxyjuP@9ZH_$0 zuX2k#Mte*7Zr@EPIY2ybwzyS#m0Oh!blA~iEq02qqd1J6i?E}Ld@I8CgV>v&$Fo5_ z_Uy5vQwL+G3|o%MLBp0_I_SHQqlyz%V7rS!v{=LU+{J1s4i)8+7e;l7M8yr)N3hTB^JC#ep|hw~2q%>9Un_;u z45#LoV3+H${IN;P0VVNR6u~alYc(&3VY}!uda;ixiNcj6NiZ^3hwXaBMp-z;V(4AM z0X3>RKs(fX6cJmSj@p%W8S=EOF}{ z28^m&OXX1VbOQLYuD2xb_7b;lGhjk$RAAa4F91li-k}z^h74F1gX}Q`T2If5N;Kgz zfGv9ZLW^4$4B6DkYn!_nWgGSaa9iARfBRWbHeA!KqYe0!k|s8kdudw)>B?=uYwLVi z{V}&z4d4mQL!fOF@AVCQWY8@GXvvnR4u$yW?7p*skCLhuG{Lr0^`yo_BvT&@6-+f&7E@t-h!dT!$7N-SPfFQT4i&e& zy+YQrjmw{DaqEvXK{iq4Qbej{RF>V=yLx6T%_urEB^_98Eo-W}so!et(BpOzGfEYN z++w1G##AXZeY+e}MW7c`)gPJpYTSh|R@tt`-ID**4awg$(PII-QBY%;@+z%TmAq_X zC-IL`O8zY&`h#-)_zK_XKP`KgER&R7k}2(2CgN}rj-7)LZKua(Cd9;vaq*Dk0hB}& zR1YDYLoo5M{7+BV#OKslBahwsjlzh-#GaHSkwq?DDnU^T>`9V@s*j3dWu*eqd+_jw zsUsM6Nc%gls?8W^mw`EYRh0l5Q(!bV(5c%|tzf_vEmnd$J@xrFIIv3VX|YsJFRN6H zrT)$K{DkWAD@s2@7v2Nb4vOsC2o5wUoAtp0=*EY+^dRZ(yAyYH*;o11jjfDo=^m+; zVHe(Fz^P?!kw?3CZ^08AvWw1gn#OeBq^nTKuy)cp^r92Ja2aH;quSYx4qV>AL-f}+ z30z^o1syG2Mz2K%RF}C$TkC3W#}86|i?##&f&st3$}LB3uN}Xmyprqt(D~Ci0bIP!={pX8rO(Y}ZqPAyVLR?99o<{oVH#<~ZeF%;^JP(rRRwIs0O(?& zlx6|nmS0GvFplEJ+?;(LLOhp0EvBEJEeHYE3%#-*#a<}lnkZH4ffr$Ys+vxfgj*No zYQ5-Gg&WtyNH~oJlmrp3u)$7UxA zqA+%JdV<8!SGFh>8baRf#Z+NNtZ%aOg(%nRff~q-xlvtIoWLbjQ|gl|QlDJfN_jgF2OU2c z9X&q%v!i)$$Yv?A6g7k&oR6VAk!#RRLd?yJ%GV)8F^aU>n&Sr$&s`Fyy^=iQeANjf YFM<$-nY{9>azp5qAEy{7%;c;81Ci9;>i_@% diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/PURPOSE b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/PURPOSE deleted file mode 100644 index eb0721d..0000000 --- a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference -Description: CVE-2018-18310-invalid-memory-address-dereference -Author: Martin Cermak -Bug summary: 0 elfutils: invalid memory address dereference was discovered in dwfl_segment_report_module.c in libdwfl [rhel-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1642606 diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/bz1532205.supp b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/bz1532205.supp deleted file mode 100644 index 70f0f80..0000000 --- a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/bz1532205.supp +++ /dev/null @@ -1,25 +0,0 @@ -{ - - Memcheck:Cond - fun:_nl_explode_name -} -{ - - Memcheck:Cond - fun:_nl_make_l10nflist -} -{ - - Memcheck:Addr4 - fun:_nl_make_l10nflist -} -{ - - Memcheck:Addr4 - fun:new_composite_name -} -{ - - Memcheck:Cond - fun:_nl_explode_name -} diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/main.fmf b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/main.fmf deleted file mode 100644 index 86d6871..0000000 --- a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2018-18310-invalid-memory-address-dereference -description: | - Bug summary: 0 elfutils: invalid memory address dereference was discovered in dwfl_segment_report_module.c in libdwfl [rhel-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1642606 -contact: -- Martin Cermak -component: -- nothing -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference -extra-task: /tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference diff --git a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/runtest.sh b/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/runtest.sh deleted file mode 100755 index ba44f8d..0000000 --- a/tests/Security/CVE-2018-18310-invalid-memory-address-dereference/runtest.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18310-invalid-memory-address-dereference -# Description: CVE-2018-18310-invalid-memory-address-dereference -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - arch | grep -q ppc64le && VGSUPP='--suppressions=bz1532205.supp' || VGSUPP='' - TMP=$(mktemp) - rlRun "valgrind $VGSUPP -q eu-stack --core=./POC-stack |& tee $TMP" - rlRun "fgrep 'Invalid read of size' $TMP" 1 - rm -f $TMP - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/Makefile b/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/Makefile deleted file mode 100644 index 1728cdc..0000000 --- a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -# Description: CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC1 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1651200" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/POC1 b/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/POC1 deleted file mode 100644 index 1f6c719c0078b36858065d83b4ae69d7c5d91b7b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4000 zcmbW3TW=dh6vxkc*W_YK4Wd@0f;5pLk)md^wl|JJ5ptELi6W>_FH(?@$nM5f3M4`C zR=vF77bGOU0!aM`<^hR5(RaQ8@A(4djVC~7=A5~#*G}Ls*>l-BGiPVc{PrwvB&XTo zNAs(9Kl`K;uL@SP9mlOsySx5@5RvS(|ApvwdF1~5BFzCxKdPcSa?9G1YMU}i5=he& ze=W$e41coHRwI)n2~Uhm?9+ND5~42sQ9d=Js1wIRG+VLi5c~7rZhd^KQt{M8C=VL) zzf|6W?C#Nj4Q9_qul8W+MF79O2w?GSG}?n;=I@yq*!DL+6wBMU?_U#fxE?k|J8HI~ z^;RU7@AMDEPLiwsm9=ZM)Z18k&+dTtzALCSMLDGAF2Vjewe%YZf*DXOP8_T zgK+TlC{I!d2l=Tg54o22yE%k6lRSYi9Sk7MPL7Tq9p?}ppXB{;`}X~nL7rq^L3rB# zItlxSUpzQXj{0&Ttyx`jB%GGgo4Rj^wX4=XzNQ~R9jj^w0n~nyW&r}O1BgY--Z%Xy zvBz!eQ>9yYWS`cSvmcIvm-M2z{}_LKK4dTB9FMcG?^-XZcCWC7w*Oc! z`c3lxpbD1A1NK{$J?Yon)fB-kvtS`5@R9*o8{8{$Ix9u(YrSDO}eqTqj zCEtUp)ztFMK0EU5xHX!2Yuuj(4Dy4A$A~;L5HAGnb(Jqxnx?B|Ok9gyP9qaHkcsVf zN0EAe{xLI=Z-Zi@BeT)oj(l(dCOWK4&Z5x{v-0ld`wlBx7h>fNhn3P-Mq1*fY--)n4vgc_0LXXD4PX;(RB3b z(z4f|q;nXmLX#$vjd6ymc=bJf-j00ue++eQ50o%e$o#I>Fmb{;2(tCT!(&L(FIB2Z z(rg8&$k?VeHki3IZXwIE@FbKJUB>@rJCeC^6cKZm3VCQ8Q+BNLP;(X@G=}UW-*hcc zZJz4ynLPC8u{^ZET%Dgf{Z8JxS;$*8iw|YqdgH=*EAA`it|*tc@@@pg;^H%bHhd?F zb})t2*YopP{djV|E031gH8i(QV^zt$9DJ9gnAK>(EMV~os&A!HU=DmLt2y5*%4RLG zT1Ka2sC5_6ew?K!MVDWki4Ae=*WCqAwsB1}Lg`m3ndvOrAUVxeZ!FK@X{!5VfcrDf zQgI$jy=AiJxMA7;W1SZ)DCnt?9{S5HMezY+EYCqu&MJT^pX-&v#B%)!i?XJ$v~K&a JHO^9ie*uc$G3o#S diff --git a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/PURPOSE b/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/PURPOSE deleted file mode 100644 index 3c71880..0000000 --- a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -Description: CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -Author: Martin Cermak diff --git a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/main.fmf b/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/main.fmf deleted file mode 100644 index 417d678..0000000 --- a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/main.fmf +++ /dev/null @@ -1,13 +0,0 @@ -summary: CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -description: '' -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -extra-task: /tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files diff --git a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/runtest.sh b/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/runtest.sh deleted file mode 100755 index b29cf5b..0000000 --- a/tests/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files/runtest.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -# Description: CVE-2018-18520-elfutils-eu-size-cannot-handle-recursive-ar-files -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - rlRun "eu-size POC1" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/Makefile b/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/Makefile deleted file mode 100644 index 8375a2c..0000000 --- a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -# Description: CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1646479" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/POC2 b/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/POC2 deleted file mode 100644 index 2221cf4e3e0af720db0da033c2a2e49e1b358477..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4000 zcmbW3-EJF26vxkc*CeqiHHcb~3erT1M2ect+TJ(@MaWf}CW@d!{g8r$gm)cRDUbxk zTlM1x-yk9J3Ly0n%mos?qW8Q2_j!SG#}%M6bIyFM*G}Lsd1rQZ&&=5~XMR3Qo5^Ya z@T1Dw-OoO0$7_PsXvJ}}-Rf+7AVeew?W+)-4!_x}j6mu&)xeLcEsx!{x~%R^n2L0w)8 zQ%#56dqC`0YgiOK0QpJ_K`r&&|P(zxAP5*|~lHnux=VupwGeqZw^9 zBe8O4a3FS*OpULuU!$eo#@2gw2fQb5cvoM){M=Iy-T{z5R2^>puyFI;>fY~{F5`U{ z!r{}SEJ-08W~Zt>u2XrNYQ&2z_gf$X@0-Zf7p;S}&=0FBd}Ff9&V| zCi#C*2U|RQ?6+#W(yxW->j%UPsPc>e0S4BrPp~PF7r;M%7L4P^8hcBA;dhj9+}D|G z$@ida-D>$J&W`-zeVTh~(w{mEvxA4nh&*QsOe2hSnGaT)rfWq^T#sE&BNI1~iLF*! zk-ArTy#4X5Qpq!3DJD8Hf%10cg9|XxVP$d_jdz)qcembmSlPS~D{nZglo^fr{5j>e zV&x@br3Z`9#q)ydy3b}Z^hpNcfy>are`KiCjFaxjd2b3srFg4}O*-LihRt9oeB&%@ zME}2%)CCOHnr3gWZ!xr%XDHiih7t#uIhbOT3^hdgNqb`cPf#W`Eru4b=sDScs#-ty{UeRkQd|)~z=#T(@Fev35ndyp?AoAQtDJ z3AEuek+*{xtiGO|&+5n1>s`6E#IBJ!bsDQm?&09GB*m;o3uXa}cToLT8U<# zy}WGJ602o)N`_iz0qrMQic)m>#hKU;$Nt$NY2Hx!m0D&xivlF4+3uQ(g2dC5 zdo+OYnPjOrkEPxU*>m2oZ2z&(3+5Db)tesr%Pd9l24gNSKv2vofHLpvmE6Q~{V9vG PX0Wto`>!?0Qh -Bug summary: 0 elfutils: eu-size cannot handle recursive ar files [rhel-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1646479 diff --git a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/main.fmf b/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/main.fmf deleted file mode 100644 index 65de371..0000000 --- a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -description: | - Bug summary: 0 elfutils: eu-size cannot handle recursive ar files [rhel-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1646479 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -extra-task: /tools/elfutils/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files diff --git a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/runtest.sh b/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/runtest.sh deleted file mode 100755 index ff22f65..0000000 --- a/tests/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files/runtest.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -# Description: CVE-2018-18520-eu-size-cannot-handle-recursive-ar-files -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - TMP=$(mktemp) - rlRun "valgrind -q eu-size ./POC2 |& tee $TMP" - rlRun "fgrep 'Process terminating with default action of signal 11' $TMP" 1 - rm -f $TMP - rlRun "eu-size ./POC2" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18521-divide-by-zero/Makefile b/tests/Security/CVE-2018-18521-divide-by-zero/Makefile deleted file mode 100644 index 0f5c03e..0000000 --- a/tests/Security/CVE-2018-18521-divide-by-zero/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18521-divide-by-zero -# Description: CVE-2018-18521-divide-by-zero -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18521-divide-by-zero -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18521-divide-by-zero" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1646484" >> $(METADATA) - @echo "Releases: -RHEL4 -RHEL6 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18521-divide-by-zero/POC2 b/tests/Security/CVE-2018-18521-divide-by-zero/POC2 deleted file mode 100644 index f4edc4036c5aa8ea0ddd75ca50366b7c3378ed3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4000 zcmbW3-EJF26vxkc*CeqibrD#R3erT1M2ect+TJ(@MaWf~CW@d!{g8r$)a-6tr9cuC zFKXci-yk9J3Ly0n%mos?qW8Q2_j!SG#}%M6bIyFM*G}LsdFR7(X3m~D^V?b4Oir`I z4{B@oKKZB{uL)MG6UXgtr?>H*5RvS(pF;F{JaWG_0;yM20Y9p;I(EzYvTB<$NfJoY z6n|~VvJ8K+(orLmBneN9OYGA|Hxi;D{ZT%(qNp3kLbTek>Ja<2Z?`_YU8#6#B9sSB z`7D*UD7*Xgti$}-_~jlfKM&xy=K(C8jmLWs%>6w#2iyM5_r=Qgod?%M9Bzay(TQ5^ zXrmp8mAiujv6JMge|7yDE%gSL-Zyu_d-|Gp_0`MI$g8&i;r5*etHV6WK8Nsh z@I?|14j(=`O^ya~A+32`b0nOW(iPn&clxRoN8WP)Xy8Ld5J1I~G!GDP9Y8DrK!w`A z=|_n@Zd*HtGWLCV2S9sI_S$Q*H^Y^L-ErOWKcWFFWj}&d?vQVV*`tKzy4AKMWAhz% zXpfZG9<|H%4HE~}_f+W>{<3##%ZZ1h;03)X#vk*K_lN9dp5t~F;;!|AYWE8vwEf3A z?_WXwAJll18By!R8VVEC0K1Sr3fp{P&)>S@OX_~H;F>yV1IgL!*L?(7R zT}A5s+7o6Xp9aN5Mek(Ux<}A99BwaF`qvrw-qZd z5i31dgg%}ZRNwt?CPSa*5FWS;9sEazO3gUwj+}8*7%IhEO>EK$&%1^~hVoVw&+?aQ znhDYOSCYDfp<2`I?e#5&Hi`^od(BYd0Q-r4PcqaH?q*%aUNzUj#vHj(-_KT z!Cy2TeY&*l^{43^hN{%0iDYAvp(ETzS8tj;;X4Sj_0i*F zNYl^MRg1m2b7|aSmSy2dC@H#v&sHarcjG7`<}MfRp>a&NV|@=bd*MNI z#6I##*YZ^GRDa*xLw}yQhca{9kvNq1&KnoLcVb-d?ul}FDRVm@mKOgLXu~;Ow1XL} zy`G=X+9%WRt8#0IJtK2!G!~WIyBpI>C1Wr)P~s9o@68+|e(lzyd>na`pP zkkf4SC+ -Bug summary: 1 elfutils: Divide-by-zero in arlib_add_symbols function in arlib.c [rhel-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1646484 diff --git a/tests/Security/CVE-2018-18521-divide-by-zero/main.fmf b/tests/Security/CVE-2018-18521-divide-by-zero/main.fmf deleted file mode 100644 index f288788..0000000 --- a/tests/Security/CVE-2018-18521-divide-by-zero/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2018-18521-divide-by-zero -description: | - Bug summary: 1 elfutils: Divide-by-zero in arlib_add_symbols function in arlib.c [rhel-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1646484 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18521-divide-by-zero -extra-task: /tools/elfutils/Security/CVE-2018-18521-divide-by-zero diff --git a/tests/Security/CVE-2018-18521-divide-by-zero/runtest.sh b/tests/Security/CVE-2018-18521-divide-by-zero/runtest.sh deleted file mode 100755 index 4f83999..0000000 --- a/tests/Security/CVE-2018-18521-divide-by-zero/runtest.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18521-divide-by-zero -# Description: CVE-2018-18521-divide-by-zero -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2018 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # This doesn't reproduce on ppach64 and ppc64le. - TMP=$(mktemp) - rlRun "valgrind -q eu-ranlib ./POC2 |& tee $TMP" - rlRun "fgrep 'Process terminating with default action of signal 8' $TMP" 1 - rm -f $TMP - rlRun "eu-ranlib ./POC2" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/Makefile b/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/Makefile deleted file mode 100644 index 075bcd7..0000000 --- a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -# Description: CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1651203" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/POC2 b/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/POC2 deleted file mode 100644 index f4edc4036c5aa8ea0ddd75ca50366b7c3378ed3f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4000 zcmbW3-EJF26vxkc*CeqibrD#R3erT1M2ect+TJ(@MaWf~CW@d!{g8r$)a-6tr9cuC zFKXci-yk9J3Ly0n%mos?qW8Q2_j!SG#}%M6bIyFM*G}LsdFR7(X3m~D^V?b4Oir`I z4{B@oKKZB{uL)MG6UXgtr?>H*5RvS(pF;F{JaWG_0;yM20Y9p;I(EzYvTB<$NfJoY z6n|~VvJ8K+(orLmBneN9OYGA|Hxi;D{ZT%(qNp3kLbTek>Ja<2Z?`_YU8#6#B9sSB z`7D*UD7*Xgti$}-_~jlfKM&xy=K(C8jmLWs%>6w#2iyM5_r=Qgod?%M9Bzay(TQ5^ zXrmp8mAiujv6JMge|7yDE%gSL-Zyu_d-|Gp_0`MI$g8&i;r5*etHV6WK8Nsh z@I?|14j(=`O^ya~A+32`b0nOW(iPn&clxRoN8WP)Xy8Ld5J1I~G!GDP9Y8DrK!w`A z=|_n@Zd*HtGWLCV2S9sI_S$Q*H^Y^L-ErOWKcWFFWj}&d?vQVV*`tKzy4AKMWAhz% zXpfZG9<|H%4HE~}_f+W>{<3##%ZZ1h;03)X#vk*K_lN9dp5t~F;;!|AYWE8vwEf3A z?_WXwAJll18By!R8VVEC0K1Sr3fp{P&)>S@OX_~H;F>yV1IgL!*L?(7R zT}A5s+7o6Xp9aN5Mek(Ux<}A99BwaF`qvrw-qZd z5i31dgg%}ZRNwt?CPSa*5FWS;9sEazO3gUwj+}8*7%IhEO>EK$&%1^~hVoVw&+?aQ znhDYOSCYDfp<2`I?e#5&Hi`^od(BYd0Q-r4PcqaH?q*%aUNzUj#vHj(-_KT z!Cy2TeY&*l^{43^hN{%0iDYAvp(ETzS8tj;;X4Sj_0i*F zNYl^MRg1m2b7|aSmSy2dC@H#v&sHarcjG7`<}MfRp>a&NV|@=bd*MNI z#6I##*YZ^GRDa*xLw}yQhca{9kvNq1&KnoLcVb-d?ul}FDRVm@mKOgLXu~;Ow1XL} zy`G=X+9%WRt8#0IJtK2!G!~WIyBpI>C1Wr)P~s9o@68+|e(lzyd>na`pP zkkf4SC+ -Bug summary: 1 elfutils: Divide-by-zero in arlib_add_symbols function in arlib.c [rhdts-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1651203 diff --git a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/main.fmf b/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/main.fmf deleted file mode 100644 index 645e9a6..0000000 --- a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -description: | - Bug summary: 1 elfutils: Divide-by-zero in arlib_add_symbols function in arlib.c [rhdts-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1651203 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -extra-task: /tools/elfutils/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c diff --git a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/runtest.sh b/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/runtest.sh deleted file mode 100755 index aa345b7..0000000 --- a/tests/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c/runtest.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -# Description: CVE-2018-18521-elfutils-Divide-by-zero-in-arlib_add_symbols-function-in-arlib-c -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - rlRun "eu-ranlib POC2" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2019-7146/Makefile b/tests/Security/CVE-2019-7146/Makefile deleted file mode 100644 index 1dd17ca..0000000 --- a/tests/Security/CVE-2019-7146/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2019-7146 -# Description: CVE-2019-7146 -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2019-7146 -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE poc - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2019-7146" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Requires: valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2019-7146/PURPOSE b/tests/Security/CVE-2019-7146/PURPOSE deleted file mode 100644 index 0770c49..0000000 --- a/tests/Security/CVE-2019-7146/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2019-7146 -Description: CVE-2019-7146 -Author: Martin Cermak diff --git a/tests/Security/CVE-2019-7146/main.fmf b/tests/Security/CVE-2019-7146/main.fmf deleted file mode 100644 index d690650..0000000 --- a/tests/Security/CVE-2019-7146/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: CVE-2019-7146 -description: '' -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2019-7146 -extra-task: /tools/elfutils/Security/CVE-2019-7146 diff --git a/tests/Security/CVE-2019-7146/poc b/tests/Security/CVE-2019-7146/poc deleted file mode 100644 index a27f86b3f45ace72b0347dd898540e4946d33e4d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 428 zcmYk2JxT*n6otQ+yu=p`8b~DwPHAHjWENoIPhs$nxPdTW0)q;UVrQlhL2wHZ+=3gh zw#pI&onEX1BPTN>x$qT_^X|Fl-uvC|o-u}^N|e!S`@uRN_+HHvACDRvtg}WHkmir9 z6P^K40W44kjtul->w0nOniXi~n!Nv~jjR(_H4y5jk?GTAn2xOz9Rr^Rs-$W93niew z0`(W`#19~p%i_&43=9ln>%*$9&1Z0h}gLFrUvF zn33<+4u}1A7;J{ai<`UF^<`@-^Ijy|asTjaW~)8q>E*L^H)*$>kN)}V+p|8YX9;*Z H_ -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # https://svn.devel.redhat.com/repos/srtvulns/trunk/components/elfutils/CVE-2019-7146/ - # Expected Output - # An error instead of segfault. - rlRun "valgrind -q --error-exitcode=99 eu-readelf -a ./poc" 1 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/Makefile b/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/Makefile deleted file mode 100644 index b022ffa..0000000 --- a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read -# Description: CVE-2019-7149-elfutils-heap-based-buffer-over-read -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC1 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2019-7149-elfutils-heap-based-buffer-over-read" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1680056" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/POC1 b/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/POC1 deleted file mode 100644 index 63698a3e8f18c2e78462cf60faac676bf5000912..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3208 zcmb_ePiP!f82`;qlHGKZZIU(E)FLa@YQde&CYxlN+BP+9nl$1;5;2DuXLo1+nBCbp zJ6jXMrchc^3W9>tgP?+VD+IjcAX=ygPaegC6|@M&g6KgMT3q?wd~bGklEsTZn0fDg z@B7~O-uLgl&9g7e1Qg{k95nvKQlCQoP5MnS8Ax}!U8YW95Cd48z4ptF+5s%zrtUSt zcI8(6=ymG-bNTPT>W_;qE`JxON57<1zM|h9`dztY_lwaz8tudY+~4mZ5Ow)B?I!@B zW?Ln*Ae+2iDjPXeSMfc74r0Y6v32p2$jJ^Zk~g9Bob^z`+*dwS?{=0<+gV2$@bWCV zJmPRlh$g#Lxk}gj0Nw!*q~8oep&(6#lrCTZ*9F^yi&8|0brVtPYF)=623v_x`tLs( ziH6lkzcLW)dlVf34X1|G&}8^{`01g!D3Q$q62)r8NYs_^$*>v%It0@_6>yoR4t((Z z5YU-|8X@78Xy5?Qr6_YzB?<(ez+5yD20{lBrd1+9x8$9Ro*E)e-$*kL@axJl{+u33~KQS_# z9?OkoM^mGj(daN=s{JV)4q$b<;ReFigWLWtDhEx3a|( z>*?|Mcq$ez#Nzpyt!G!`YgW}ZvUb&y5&M4}Ig>iVN1pi4BMVEcS=EA;MXmIfVQ;J% zs4SIC6w1|%UPiX4Tfn*L>B-nLi^3D)h-2{)$1ll?$&@yn(vnAs-kwhZ4#D{dBB@SC z`mP41d%I?Of)pz>{~X&>B$S*FEI15`D1PDx6|uLY_kB_k9_2}-}x5(O?=F9bQgHx*T39GUSop{ zdxiJleWlI*i^6em~U&a~fr+VPm|F$@j z6JWnK8m|8iazKd(fd^8*Y`54Zemey?P$@pWkaDtpcMqEqG=HEoq#WfP;WN4q+}lt< zr0y`wlYhJj$-riO(#C$P6G5??_Q_3#CKE?CIFCV)UzRgz|CjxEE`ANtSam4Q6 lb)MMQ1Fm diff --git a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/PURPOSE b/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/PURPOSE deleted file mode 100644 index f09b1b4..0000000 --- a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read -Description: CVE-2019-7149-elfutils-heap-based-buffer-over-read -Author: Martin Cermak -Bug summary: elfutils: heap-based buffer over-read in read_srclines in dwarf_getsrclines.c in libdw [rhdts-8] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680056 diff --git a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/main.fmf b/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/main.fmf deleted file mode 100644 index b598856..0000000 --- a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2019-7149-elfutils-heap-based-buffer-over-read -description: | - Bug summary: elfutils: heap-based buffer over-read in read_srclines in dwarf_getsrclines.c in libdw [rhdts-8] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680056 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read -extra-task: /tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read diff --git a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/runtest.sh b/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/runtest.sh deleted file mode 100755 index bac258f..0000000 --- a/tests/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read/runtest.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2019-7149-elfutils-heap-based-buffer-over-read -# Description: CVE-2019-7149-elfutils-heap-based-buffer-over-read -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - rlRun "which valgrind eu-nm" - # With RHEL I saw the invalid read of size 1 on aarch64 and ppc64le - # using devtoolset-7-elfutils-0.170-5.el7. I also saw it on x86_64 - # with base rhel elfutils-0.172-2.el7.x86_64. - # IOW - It doesn't reproduce "everywhere". - rlRun "valgrind -q --error-exitcode=99 eu-nm -C POC1" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/Makefile b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/Makefile deleted file mode 100644 index 99a9c61..0000000 --- a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -# Description: CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2019-7150-segmentation-fault-in-elf64_xlatetom" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1680046" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC1 b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC1 deleted file mode 100644 index abd8c65934356f96aee5b45bb9a61fc469499471..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10442 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 diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC2 b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/POC2 deleted file mode 100644 index 0c1a4d0ddc99da693633ee0fb3c0eb453251fed4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10467 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 NEi*dr;2{+2{~yGY^M3#U diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/PURPOSE b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/PURPOSE deleted file mode 100644 index c26e276..0000000 --- a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -Description: CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -Author: Martin Cermak -Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhel-7] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680046 diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/main.fmf b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/main.fmf deleted file mode 100644 index e2f01bc..0000000 --- a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -description: | - Bug summary: elfutils: segmentation fault in elf64_xlatetom in libelf/elf32_xlatetom.c [rhel-7] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1680046 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -extra-task: /tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom diff --git a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/runtest.sh b/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/runtest.sh deleted file mode 100755 index 3151176..0000000 --- a/tests/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom/runtest.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -# Description: CVE-2019-7150-segmentation-fault-in-elf64_xlatetom -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # An error is expected (2), but a SEGV is not (139). - # Reproduced with elfutils-0.172-2.el7, verified with elfutils-0.176-1.el7 - rlRun "valgrind -q --error-exitcode=99 eu-stack --core=POC2" 2 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/Makefile b/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/Makefile deleted file mode 100644 index 352a559..0000000 --- a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -# Description: CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1679071" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/POC b/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/POC deleted file mode 100644 index e449ac211e908c4b89b33586751f62d5c5340eb8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10393 zcmeG?e{ht?b?+nrhk&~S1eW=^*r$Xf)`4(LWo(x_al)TmVXGjpQ>+{(-KWzv$DO$Q z1cG5|(nAhk&N58eN!_NC@#K%xlXhC{*bX5nI(`^%(@upu?ikxGvTNKsKt=`!3kkHH zx4TdG>5y!kw)rbhqkG?b``+8PZ+GABxBER+Tff#;WCIxDoP!IX1Z-eLqr*MC_)rKC z%JAp(67dZ1YXC1)!&LCX0+`I-Ts_>((j31I*x7^siF!XjA?i?+yzMQa2;T_nkBbPNFYC_U*VSwSJR zQm(9&D=UQil$(7vn1WWQwb)YpZ&bB3s@4*gJ{Hyq&~V-ep{3mRKAyLD!Xry`N*Ox^@mC;D7qqDNJ zdS&IxuX~bl&kEs_3uMnd{OCpzA&R4HH^6KFz>cF{+V|QL+nz~JPD9>20GN;eoS$2$ z+JoU=te%C9J)B#b>b=WC0Kmui^Oc3qEcki%$Byv2pzGcfpUzrS`{t#K|907NcH0vR ze(_)5+kO9)^n#!M=+jwaRmZ}902oi89mTM-#pvl{B3frA5O$0Xr?K$Q6Ua}sjbG{f z3HURu{K0%&j#=yvTdHpnm@=v$P#4o1 zgUwML0)g<>cr1`Kf(auKfWRZ$1MBs0Bx&f0#&v6=agsybKv*~ALo|{!AkZ3#MIaD~ zMHDwFi*td5zBRsG$DD*PCg&lDTo;Wrx1cjCLGO$hkkpN6yd@abA>M98Vj*bP6Nz{N zLM>r#7<#7x?HxuEe_Gmt2}l~DNDRWd5pOq;*wd@4e2tCk167_C^spQ~EP`USq?E`%{@>~e%OnpM9Qlk-Ho=__Ht~lN z0C3p`KTyLS2U5qp$W)a5hFZjIP$UvE1uC)hxv7}pbkXMk?Sd|Xn35k{EXM#YJl4Ul z(xF(k)#@yO#v?B0nBWNp)tE#+E&l@4m_fcZ!P6K+KJ8Kv%9R~liIs~2*eJh;)-eG~ zNBJs`D_Ac0^MxI(gP__XZ(VG?7QWa8D9|i?nhyvK7XDNc27o6l{8GsmVcKHhPqWCk zS@_e5KQ0qH&mug7gmI@~;X5t-Jr+I<2!wqW{!EMf0Sn)nKcBPk#l}*>^A`RbVgkSm z7XDld|Dc6`hlQ`DF4?v8q=j=BXk8g&Qg*WqKuevlAD2S>zFBh^@QSiI44jL-z$=h$ z!@^u2=bTrRB8}rE*DL5Eq;bQN%Lsa?j6qxRB7odMLBD}C&Zpe-NPp)7(l}0X2SoY% zNaOg(?Gg0bNaMK3wdeJ5Jmj_r`k$~I$3d<^(8rL*{?B;@eHdx%_uO(pzl1dQca91A zCrD$L=3IjQ5z;sxbGTUXioZe{yEZp4g7o*0#xBkEjc|UZ;=4#=SLS*}`JW<iDv>u=?@ICI^R9nS;8-0znRo6CdFmGz+Ro_2iJZq~y&{CJGwe;_2 zS8~pe?3?R_Dz2H6UMORb-5^=3hk7t}SwE8AxnAg5Ki3P{S4KFOPd^yp{FL7<#*TK% z?-n~_d=OLWz+rQ)7c}!f&CA&(ob%KmH;+2^;ufXb_i}3R%g*oMj+MJ#tG>ev&c#q$ z)qn9$`OH(fRmk%=7w;7jl;$*P z?y)iE>^bMCIqB9CDYjII;m%XImCKG`t%^VN)R>d8YGo31yU{$swWCw-|KMSjz8mpS*oZUb;Wi(4#T>PE41Z>vo_ zl{mZZvjOzL06=!dP0qEhOr3ecx%cfN0IhqsoBbU7qAGLsZ>c@$dUsiUx8KbUqf)*3 zp=O@T{@xAFyE4wMpA`Z4(q(Sn5$uAlH=cUvVnB7HFTJda%V6})@j^CqgY&xX9VME1 zN;A(^Wy}lN;0@0G=0IKQq|JAKiTh97f6!9@a!GAh|GMr6r*|Bw>wc;v+dn);=Bamm zX}`M!>u%wkU;KtIb;;Hd(o(zK<>1`=4yK;;Zg+WAMoYcUul&7cp4L9?)lylT>31`K z+V3t)*Snc!p3~Be?s6?{xb4}9YR&v2jCsGa>mv+$>O^%_W^>b~Cw)!6Z~6kqWm{aL zW3%5M=3GlZw0frM(CjP2oM%}vJcWHD%wnAQ5XQ;)Y0rl^rQRFnDk4{;l?G|$x{Cq2 zW7o_VMQpO+Va|Inq}l(#CtOXlDHQI?Xy$9qyU)L)btAeL8Di(9Ba+ zne2{@gaQ)c#_ABb@uwA!QTb-GgW|XtC)x-T*E!EcF&|;mY|{PgYu7o)PR-e|zscgGt;4eWm{mQR*7#0T58at zndi69KZMB%*VCCzJy^i|T4_c$9mi!fpTUk``9|&A9|;3TM~XG`yk-t)N3*Ln+ez)r zh%sl>+BCFg0Pk}yhNk1P{yh%`9Sopj=0?ptpN(KquG2QAHS=|akgKw)1C!);RqX(!LYuH zRV3Nw%KG&iwl%TJB*WL9Sa7S(Hdk&E#P(pcLvLd3L8DFZ+1)Iu8%(fEnFOneaNa~- zrvUC|;ml3_+d3i%AqGCfNJN@D44vIok-SSp--xpys|c~?orX?s#uKa}xeD!$ zm2V4%K0_E+&_a1^+IYrQ`+NqA>cONjaT~`rU|B~pu`JmZOz6wh8!rwrsNBTj7%6$~ z5@I_dMjNY4mcqtZLT`zOW075Yh~dj|JhqBew3I?})uvV9Rf$#6ZT0InfO`8C@9Fp= zz9!xg4Y63<5D^lgk})aGzsu)kZ~)#aBgd3QObxPICB=b2-kcamW26A~<=?->d>i;2 zn%>*nCXn+^!2dkE|JUX0HvO>QrW`1_(+WSYux)XNE z^%}==pJQo_gVi|7YaFf`hutS$&asZa1As%Yd zbYiG(7Df*R=_X+GR^y^BwfkUdO;_$G>ixAvOeN(Q8f8YCtGwfOZAU% z*&dgY=ZdC!2PADhEB#y$>w~-v{f&XHq6=a2G}+F%3V%uAl?ty_c$31d3U62VX@$S9 z@Q)RKRpFBg|GUB;Dtt}h$jS7`*p;0eb%JZ-^b8+bxHW67OcB{mYWWV@b7M&hwCL?8j4gdPo| zf_iF?8fZUa06u!caRWT!e#axOlRSxdC};%1qqhZG6Tz)|pe>ZhQ&Ke$OeBIkr3O9! zaZ5t@6WkhU0W>RXlE#{oN#R#Ov^N@weXB4UUmS40;MAeID+bL^0?H2rc*2Ww zg7oQA1^R?x^y*Q8xKXkI-o#wvJWl#F?>iOanF2kUZv(WJ>5IL&1*koQ@k0P>{a%$PylSB$e+lg0r6&oy3iR=u3!y>j zCn(`7pn3^#jkeZL>);8T7yzT|0YPE=pH}+Rf4%BPy;teKP@quQo@Wd6^Pm368Xp8$ zPjw>{n1jDA&_AR;9Xdq%1p~gY{vWGXtJfqRSQ@LZSZu08--q+W-In diff --git a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/PURPOSE b/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/PURPOSE deleted file mode 100644 index dbdbfc3..0000000 --- a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -Description: CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -Author: Martin Cermak -Bug summary: elfutils: Out of bound write in elf_cvt_note in libelf/note_xlate.h [rhel-7] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1679071 diff --git a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/main.fmf b/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/main.fmf deleted file mode 100644 index a8720df..0000000 --- a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -description: | - Bug summary: elfutils: Out of bound write in elf_cvt_note in libelf/note_xlate.h [rhel-7] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1679071 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -extra-task: /tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note diff --git a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/runtest.sh b/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/runtest.sh deleted file mode 100755 index 5b1c28e..0000000 --- a/tests/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note/runtest.sh +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -# Description: CVE-2019-7664-Out-of-bound-write-in-elf_cvt_note -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # Reproduced with elfutils-0.174-5.fc28.x86_64 - # This is expected to fail (1), but not to segfault (139). - rlRun "valgrind -q --error-exitcode=99 eu-elflint -d POC" 1 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/Makefile b/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/Makefile deleted file mode 100644 index 6d2f4dc..0000000 --- a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -# Description: CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE POC2 - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Martin Cermak " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 48h" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils valgrind" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1679078" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/POC2 b/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/POC2 deleted file mode 100644 index 0776e6191a98595bf229c769df307e28e2fb7de2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2659 zcmdT`U1(fI6#jNIyPcSL-NsZ+Q#7_IsMvHHN(r=L7HthBl&XzBiKZ-)g_uCIE0z}W zvx!Xzu}EZJtPgqgRf+_ukTkVz9)xYkLxlQ+bg?$Yg4i0={p|-r;m`&c)B(yY)O6C!wZNBKMMNTK0Jd7GR-ly+6z7$YePy8CI#ROd z&=NL!18&9^voFhb2D};05C zV1yjc7t%IJfN@%UZS`Yt2E)JuQQ!x@HHHD~>`oos*`3_co$ATF)zsJ9)NBpX5jybP zp$=?vp-{&st1L+#)BuO+sm$_ z)2{B}rO@~Ze}YryO)aiV{}Fs^@S(fZ3cv9}A)RFTL<2OWdeT=s&<0>1fQLlH6jmb8 zBij=}^{I+P5PMra6VzrShk|%-u>0AdB@ygP1g!^yczaNrmCL=|oYLd~`pec{$|+q> z`!w7Y>Kz?YIpK%*vtJRdlj~?UIS3+e4QCmdgfaZ)*#QS0(}2f zrs&_V{4@jk;}+Y>{99f7iv926Flo;!&4d{Ka3FKC?|Mt*;#sBR6~Op94;I-tQzFOy zJ*SG_&jFEjCO+Zh=y!ft>AbS>dGJh*yXBdMV423s(CCD-XE37lnTX{RgTHNveYb9C zRb*IImKpK~0(jrmouhtE49vv9}1y-7qT)Upl`75|68{ diff --git a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/PURPOSE b/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/PURPOSE deleted file mode 100644 index 7fc62cd..0000000 --- a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -Description: CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -Author: Martin Cermak -Bug summary: elfutils: heap-based buffer over-read in function elf32_xlatetom in elf32_xlatetom.c [rhel-7] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1679078 diff --git a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/main.fmf b/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/main.fmf deleted file mode 100644 index 7883a64..0000000 --- a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -description: | - Bug summary: elfutils: heap-based buffer over-read in function elf32_xlatetom in elf32_xlatetom.c [rhel-7] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1679078 -contact: -- Martin Cermak -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -- valgrind -duration: 48h -extra-summary: /tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -extra-task: /tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom diff --git a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/runtest.sh b/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/runtest.sh deleted file mode 100755 index 06e697c..0000000 --- a/tests/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom/runtest.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -# Description: CVE-2019-7665-heap-based-buffer-over-read-in-function-elf32_xlatetom -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2019 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -rlJournalStart - rlPhaseStartTest - # We expect 1, but not 99 ... - # Reproduced with valgrind-3.13.0-13.el7 and elfutils-0.172-2.el7 - # Verified with valgrind-3.14.0-16.el7 and elfutils-0.176-1.el7 - rlRun "valgrind -q --error-exitcode=99 eu-readelf -a POC2" 1 - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/Makefile b/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/Makefile deleted file mode 100644 index 47c2e7b..0000000 --- a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow -# Description: CVE-2014-0172 elfutils: integer overflow, leading to a heap-based buffer overflow in libdw -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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/. -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -export TEST=/tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE dwz-overflow.elf - -.PHONY: all install download clean - -run: $(FILES) build - ./runtest.sh - -build: $(BUILT_FILES) - test -x runtest.sh || chmod a+x runtest.sh - -clean: - rm -f *~ $(BUILT_FILES) - - -include /usr/share/rhts/lib/rhts-make.include - -$(METADATA): Makefile - @echo "Owner: Vaclav Kadlcik " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: CVE-2014-0172 elfutils: integer overflow, leading to a heap-based buffer overflow in libdw" >> $(METADATA) - @echo "Type: Security" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: elfutils" >> $(METADATA) - @echo "Requires: elfutils" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - @echo "Bug: 1139128" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/PURPOSE b/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/PURPOSE deleted file mode 100644 index 419b4a6..0000000 --- a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow -Description: CVE-2014-0172 elfutils: integer overflow, leading to a heap-based buffer overflow in libdw -Author: Vaclav Kadlcik -Bug summary: elfutils: integer overflow, leading to a heap-based buffer overflow in libdw [rhel-6.6] -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1139128 diff --git a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/dwz-overflow.elf b/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/dwz-overflow.elf deleted file mode 100644 index 98cdfb0594ce32244fc46df70e826bc5b13a6674..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24928 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 diff --git a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/main.fmf b/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/main.fmf deleted file mode 100644 index a2e4032..0000000 --- a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: 'CVE-2014-0172 elfutils: integer overflow, leading to a heap-based buffer - overflow in libdw' -description: | - Bug summary: elfutils: integer overflow, leading to a heap-based buffer overflow in libdw [rhel-6.6] - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1139128 -contact: -- Vaclav Kadlcik -component: -- elfutils -test: ./runtest.sh -framework: beakerlib -recommend: -- elfutils -duration: 5m -extra-summary: /tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow -extra-task: /tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow diff --git a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/runtest.sh b/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/runtest.sh deleted file mode 100755 index 0f8e722..0000000 --- a/tests/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow/runtest.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/elfutils/Security/bz1139128-CVE-2014-0172-elfutils-integer-overflow -# Description: CVE-2014-0172 elfutils: integer overflow, leading to a heap-based buffer overflow in libdw -# Author: Vaclav Kadlcik -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2014 Red Hat, Inc. -# -# This program 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 2 of -# the License, or (at your option) any later version. -# -# This program 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 Beaker environment -. /usr/share/beakerlib/beakerlib.sh || exit 1 - -PACKAGE="elfutils" - -# Reproducer by Florian Weimer -REPRODUCING_FILE=dwz-overflow.elf - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - rlRun "cp $REPRODUCING_FILE $TmpDir" 0 - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - # eu-readelf since 0.153 was vulnerable. - # The following crashed with "Segmentation fault" - # and exit value 139. - rlRun "eu-readelf -w $REPRODUCING_FILE" 0,1 'eu-readelf should not crash' - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd From 98fbdf29b00fe3d9754c1e4d2629412b0cb57a1d Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Thu, 11 Nov 2021 00:40:26 +0100 Subject: [PATCH 2/9] 0.186-1 - Upgrade to upstream 0.186 --- .gitignore | 1 + ...s-0.185-raise-pthread_kill-backtrace.patch | 125 ------------------ elfutils.spec | 48 ++++--- sources | 2 +- 4 files changed, 33 insertions(+), 143 deletions(-) delete mode 100644 elfutils-0.185-raise-pthread_kill-backtrace.patch diff --git a/.gitignore b/.gitignore index e99bda5..862ef94 100644 --- a/.gitignore +++ b/.gitignore @@ -26,3 +26,4 @@ /elfutils-0.183.tar.bz2 /elfutils-0.184.tar.bz2 /elfutils-0.185.tar.bz2 +/elfutils-0.186.tar.bz2 diff --git a/elfutils-0.185-raise-pthread_kill-backtrace.patch b/elfutils-0.185-raise-pthread_kill-backtrace.patch deleted file mode 100644 index 9c0108f..0000000 --- a/elfutils-0.185-raise-pthread_kill-backtrace.patch +++ /dev/null @@ -1,125 +0,0 @@ -commit 9aee0992d6e6ec4cce2c015d8da4b61022c6f6dd -Author: Mark Wielaard -Date: Wed Aug 4 21:01:27 2021 +0200 - - tests: Allow an extra pthread_kill frame in backtrace tests - - glibc 2.34 calls pthread_kill from the raise function. Before raise - directly called the (tg)kill syscall. So allow pthread_kill to be the - first frame in a backtrace where raise is expected. Also change some - asserts to fprintf plus abort to make it more clear why the testcase - fails. - - https://sourceware.org/bugzilla/show_bug.cgi?id=28190 - - Signed-off-by: Mark Wielaard - -diff --git a/tests/backtrace.c b/tests/backtrace.c -index 36c8b8c4..afc12fb9 100644 ---- a/tests/backtrace.c -+++ b/tests/backtrace.c -@@ -97,6 +97,9 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc, - static bool reduce_frameno = false; - if (reduce_frameno) - frameno--; -+ static bool pthread_kill_seen = false; -+ if (pthread_kill_seen) -+ frameno--; - if (! use_raise_jmp_patching && frameno >= 2) - frameno += 2; - const char *symname2 = NULL; -@@ -107,11 +110,26 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc, - && (strcmp (symname, "__kernel_vsyscall") == 0 - || strcmp (symname, "__libc_do_syscall") == 0)) - reduce_frameno = true; -+ else if (! pthread_kill_seen && symname -+ && strstr (symname, "pthread_kill") != NULL) -+ pthread_kill_seen = true; - else -- assert (symname && strcmp (symname, "raise") == 0); -+ { -+ if (!symname || strcmp (symname, "raise") != 0) -+ { -+ fprintf (stderr, -+ "case 0: expected symname 'raise' got '%s'\n", symname); -+ abort (); -+ } -+ } - break; - case 1: -- assert (symname != NULL && strcmp (symname, "sigusr2") == 0); -+ if (symname == NULL || strcmp (symname, "sigusr2") != 0) -+ { -+ fprintf (stderr, -+ "case 1: expected symname 'sigusr2' got '%s'\n", symname); -+ abort (); -+ } - break; - case 2: // x86_64 only - /* __restore_rt - glibc maybe does not have to have this symbol. */ -@@ -120,11 +138,21 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc, - if (use_raise_jmp_patching) - { - /* Verify we trapped on the very first instruction of jmp. */ -- assert (symname != NULL && strcmp (symname, "jmp") == 0); -+ if (symname == NULL || strcmp (symname, "jmp") != 0) -+ { -+ fprintf (stderr, -+ "case 3: expected symname 'raise' got '%s'\n", symname); -+ abort (); -+ } - mod = dwfl_addrmodule (dwfl, pc - 1); - if (mod) - symname2 = dwfl_module_addrname (mod, pc - 1); -- assert (symname2 == NULL || strcmp (symname2, "jmp") != 0); -+ if (symname2 == NULL || strcmp (symname2, "jmp") != 0) -+ { -+ fprintf (stderr, -+ "case 3: expected symname2 'jmp' got '%s'\n", symname2); -+ abort (); -+ } - break; - } - FALLTHROUGH; -@@ -137,11 +165,22 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc, - duplicate_sigusr2 = true; - break; - } -- assert (symname != NULL && strcmp (symname, "stdarg") == 0); -+ if (symname == NULL || strcmp (symname, "stdarg") != 0) -+ { -+ fprintf (stderr, -+ "case 4: expected symname 'stdarg' got '%s'\n", symname); -+ abort (); -+ } - break; - case 5: - /* Verify we trapped on the very last instruction of child. */ -- assert (symname != NULL && strcmp (symname, "backtracegen") == 0); -+ if (symname == NULL || strcmp (symname, "backtracegen") != 0) -+ { -+ fprintf (stderr, -+ "case 5: expected symname 'backtracegen' got '%s'\n", -+ symname); -+ abort (); -+ } - mod = dwfl_addrmodule (dwfl, pc); - if (mod) - symname2 = dwfl_module_addrname (mod, pc); -@@ -151,7 +190,15 @@ callback_verify (pid_t tid, unsigned frameno, Dwarf_Addr pc, - // instructions or even inserts some padding instructions at the end - // (which apparently happens on ppc64). - if (use_raise_jmp_patching) -- assert (symname2 == NULL || strcmp (symname2, "backtracegen") != 0); -+ { -+ if (symname2 != NULL && strcmp (symname2, "backtracegen") == 0) -+ { -+ fprintf (stderr, -+ "use_raise_jmp_patching didn't expect symname2 " -+ "'backtracegen'\n"); -+ abort (); -+ } -+ } - break; - } - } diff --git a/elfutils.spec b/elfutils.spec index 1d23d8e..dff98ca 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils -Version: 0.185 -%global baserelease 5 +Version: 0.186 +%global baserelease 1 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -42,11 +42,11 @@ BuildRequires: pkgconfig(libarchive) >= 3.1.2 # For tests need to bunzip2 test files. BuildRequires: bzip2 BuildRequires: zstd -# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss +# For the run-debuginfod-find.sh test case in %%check for /usr/sbin/ss etc. BuildRequires: iproute +BuildRequires: procps BuildRequires: bsdtar BuildRequires: curl -BuildRequires: procps BuildRequires: automake BuildRequires: autoconf @@ -62,7 +62,6 @@ BuildRequires: gettext-devel %endif # Patches -Patch1: elfutils-0.185-raise-pthread_kill-backtrace.patch %description Elfutils is a collection of utilities, including stack (to show @@ -238,14 +237,6 @@ autoreconf -f -v -i find . -name \*.sh ! -perm -0100 -print | xargs chmod +x %build -# This package uses top level ASM constructs which are incompatible with LTO. -# Top level ASMs are often used to implement symbol versioning. gcc-10 -# introduces a new mechanism for symbol versioning which works with LTO. -# Converting packages to use that mechanism instead of toplevel ASMs is -# recommended. -# Disable LTO -%define _lto_cflags %{nil} - # Remove -Wall from default flags. The makefiles enable enough warnings # themselves, and they use -Werror. Appending -Wall defeats the cases where # the makefiles disable some specific warnings for specific code. @@ -282,10 +273,7 @@ touch ${RPM_BUILD_ROOT}%{_localstatedir}/cache/debuginfod/debuginfod.sqlite # Record some build root versions in build.log uname -r; rpm -q binutils gcc glibc || true -# FIXME for 0.186 -# run-debuginfod-find.sh is a bad test -# %%make_build check || (cat tests/test-suite.log; false) -%make_build check || (cat tests/test-suite.log; true) +%make_build check || (cat tests/test-suite.log; false) # Only the latest Fedora and EPEL have these scriptlets, # older Fedora and plain RHEL don't. @@ -377,7 +365,9 @@ fi %{_libdir}/libdebuginfod.so.* %{_bindir}/debuginfod-find %{_mandir}/man1/debuginfod-find.1* +%{_mandir}/man7/debuginfod*.7* %config(noreplace) %{_sysconfdir}/profile.d/* +%config(noreplace) %{_sysconfdir}/debuginfod/* %files debuginfod-client-devel %{_libdir}/pkgconfig/libdebuginfod.pc @@ -409,6 +399,30 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Wed Nov 10 2021 Mark Wielaard - 0.186-1 +- Upgrade to upstream 0.186 + - debuginfod-client: Default $DEBUGINFOD_URLS is computed from + drop-in files /etc/debuginfod/*.urls rather than + hardcoded into the /etc/profile.d/debuginfod* + scripts. + Add $DEBUGINFOD_MAXSIZE and $DEBUGINFOD_MAXTIME settings + for skipping large/slow transfers. + Add $DEBUGINFOD_RETRY for retrying aborted lookups. + - debuginfod: Supply extra HTTP response headers, describing + archive/file names that satisfy the requested buildid content. + Support -d :memory: option for in-memory databases. + Protect against loops in federated server configurations. + Add -r option to use -I/-X regexes for grooming stale files. + Protect against wasted CPU from duplicate concurrent requests. + Limit the duration of groom ops roughly to rescan (-t) times. + Add --passive mode for serving from read-only database. + Several other performance improvements & prometheus metrics. + - libdw: Support for the NVIDIA Cuda line map extensions. + DW_LNE_NVIDIA_inlined_call and DW_LNE_NVIDIA_set_function_name + are defined in dwarf.h. New functions dwarf_linecontext and + dwarf_linefunctionname. + - translations: Update Japanese translation. + * Thu Aug 5 2021 Mark Wielaard - 0.185-5 - Use autosetup - Add elfutils-0.185-raise-pthread_kill-backtrace.patch diff --git a/sources b/sources index b564fdb..9267009 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (elfutils-0.185.tar.bz2) = 34de0de1355b11740e036e0fc64f2fc063587c8eb121b19216ee5548d3f0f268d8fc3995176c47190466b9d881007cfa11a9d01e9a50e38af6119492bf8bb47f +SHA512 (elfutils-0.186.tar.bz2) = c9180b27ec62935f18b9431268d176f6023d1bb938731d2af6e7626ae460af6608a70ba68483aa1ec7e6cb0fa0528b661ca8b68bc4f58ea8e18af527c5950c78 From a3096b072254b6f4066bc34fcd3b585824753219 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Fri, 25 Mar 2022 12:21:37 +0100 Subject: [PATCH 3/9] 0.186-3 - Add support for FDO packaging metadata Also add s390x big endian workaround for broken FDO ELF note. And a workaround for ppc64le -Werror=null-dereference --- elfutils-0.186-elf-glibc.patch | 208 ++++++++++++++++++ elfutils-0.186-fdo-ebl.patch | 46 ++++ elfutils-0.186-fdo-efllint.patch | 26 +++ elfutils-0.186-fdo-swap.patch | 35 +++ ....186-ppc64le-error-return-workaround.patch | 97 ++++++++ elfutils.spec | 19 +- 6 files changed, 430 insertions(+), 1 deletion(-) create mode 100644 elfutils-0.186-elf-glibc.patch create mode 100644 elfutils-0.186-fdo-ebl.patch create mode 100644 elfutils-0.186-fdo-efllint.patch create mode 100644 elfutils-0.186-fdo-swap.patch create mode 100644 elfutils-0.186-ppc64le-error-return-workaround.patch diff --git a/elfutils-0.186-elf-glibc.patch b/elfutils-0.186-elf-glibc.patch new file mode 100644 index 0000000..40aab81 --- /dev/null +++ b/elfutils-0.186-elf-glibc.patch @@ -0,0 +1,208 @@ +commit 31d551ae4dd8cf307c68f86b6c1ecac2f92b522a +Author: Mark Wielaard +Date: Thu Mar 24 23:06:09 2022 +0100 + + libelf: Sync elf.h from glibc. + + Adds EM_INTELGT, NT_ARM_TAGGED_ADDR_CTRL, NT_ARM_PAC_ENABLED_KEYS, + ELF_NOTE_FDO, NT_FDO_PACKAGING_METADATA and OpenRISC 1000 specific + relocs. + + It also adds and renames some GNU_PROPERTY constants. But none of the + constants the elfutils code uses was renamed or given a different + constant value. + + dwelf_elf_e_machine_string was updated to handle EM_INTELGT. + + Signed-off-by: Mark Wielaard + +diff --git a/libdwelf/dwelf_elf_e_machine_string.c b/libdwelf/dwelf_elf_e_machine_string.c +index 387648e2..051c70b5 100644 +--- a/libdwelf/dwelf_elf_e_machine_string.c ++++ b/libdwelf/dwelf_elf_e_machine_string.c +@@ -360,6 +360,8 @@ dwelf_elf_e_machine_string (int machine) + return "XMOS xCORE"; + case EM_MCHP_PIC: + return "Microchip 8-bit PIC"; ++ case EM_INTELGT: ++ return "Intel Graphics Technology"; + case EM_KM32: + return "KM211 KM32"; + case EM_KMX32: + + * elf_getdata.c (__libelf_type_aligns): ELF_T_GNUHASH has different +diff --git a/libelf/elf.h b/libelf/elf.h +index 8e3e618f..0735f6b5 100644 +--- a/libelf/elf.h ++++ b/libelf/elf.h +@@ -1,5 +1,5 @@ + /* This file defines standard ELF types, structures, and macros. +- Copyright (C) 1995-2020 Free Software Foundation, Inc. ++ Copyright (C) 1995-2022 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or +@@ -336,7 +336,8 @@ typedef struct + #define EM_BA2 202 /* Beyond BA2 */ + #define EM_XCORE 203 /* XMOS xCORE */ + #define EM_MCHP_PIC 204 /* Microchip 8-bit PIC(r) */ +- /* reserved 205-209 */ ++#define EM_INTELGT 205 /* Intel Graphics Technology */ ++ /* reserved 206-209 */ + #define EM_KM32 210 /* KM211 KM32 */ + #define EM_KMX32 211 /* KM211 KMX32 */ + #define EM_EMX16 212 /* KM211 KMX16 */ +@@ -813,6 +814,10 @@ typedef struct + address keys. */ + #define NT_ARM_PACG_KEYS 0x408 /* ARM pointer authentication + generic key. */ ++#define NT_ARM_TAGGED_ADDR_CTRL 0x409 /* AArch64 tagged address ++ control. */ ++#define NT_ARM_PAC_ENABLED_KEYS 0x40a /* AArch64 pointer authentication ++ enabled keys. */ + #define NT_VMCOREDD 0x700 /* Vmcore Device Dump Note. */ + #define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */ + #define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */ +@@ -1226,8 +1231,7 @@ typedef struct + #define AT_L3_CACHESIZE 46 + #define AT_L3_CACHEGEOMETRY 47 + +-#define AT_MINSIGSTKSZ 51 /* Stack needed for signal delivery +- (AArch64). */ ++#define AT_MINSIGSTKSZ 51 /* Stack needed for signal delivery */ + + /* Note section contents. Each entry in the note section begins with + a header of a fixed form. */ +@@ -1254,6 +1258,8 @@ typedef struct + /* Note entries for GNU systems have this name. */ + #define ELF_NOTE_GNU "GNU" + ++/* Note entries for freedesktop.org have this name. */ ++#define ELF_NOTE_FDO "FDO" + + /* Defined types of notes for Solaris. */ + +@@ -1297,6 +1303,10 @@ typedef struct + /* Program property. */ + #define NT_GNU_PROPERTY_TYPE_0 5 + ++/* Packaging metadata as defined on ++ https://systemd.io/COREDUMP_PACKAGE_METADATA/ */ ++#define NT_FDO_PACKAGING_METADATA 0xcafe1a7e ++ + /* Note section name of program property. */ + #define NOTE_GNU_PROPERTY_SECTION_NAME ".note.gnu.property" + +@@ -1307,6 +1317,23 @@ typedef struct + /* No copy relocation on protected data symbol. */ + #define GNU_PROPERTY_NO_COPY_ON_PROTECTED 2 + ++/* A 4-byte unsigned integer property: A bit is set if it is set in all ++ relocatable inputs. */ ++#define GNU_PROPERTY_UINT32_AND_LO 0xb0000000 ++#define GNU_PROPERTY_UINT32_AND_HI 0xb0007fff ++ ++/* A 4-byte unsigned integer property: A bit is set if it is set in any ++ relocatable inputs. */ ++#define GNU_PROPERTY_UINT32_OR_LO 0xb0008000 ++#define GNU_PROPERTY_UINT32_OR_HI 0xb000ffff ++ ++/* The needed properties by the object file. */ ++#define GNU_PROPERTY_1_NEEDED GNU_PROPERTY_UINT32_OR_LO ++ ++/* Set if the object file requires canonical function pointers and ++ cannot be used with copy relocation. */ ++#define GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS (1U << 0) ++ + /* Processor-specific semantics, lo */ + #define GNU_PROPERTY_LOPROC 0xc0000000 + /* Processor-specific semantics, hi */ +@@ -1324,31 +1351,26 @@ typedef struct + + /* The x86 instruction sets indicated by the corresponding bits are + used in program. Their support in the hardware is optional. */ +-#define GNU_PROPERTY_X86_ISA_1_USED 0xc0000000 ++#define GNU_PROPERTY_X86_ISA_1_USED 0xc0010002 + /* The x86 instruction sets indicated by the corresponding bits are + used in program and they must be supported by the hardware. */ +-#define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0000001 ++#define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0008002 + /* X86 processor-specific features used in program. */ + #define GNU_PROPERTY_X86_FEATURE_1_AND 0xc0000002 + +-#define GNU_PROPERTY_X86_ISA_1_486 (1U << 0) +-#define GNU_PROPERTY_X86_ISA_1_586 (1U << 1) +-#define GNU_PROPERTY_X86_ISA_1_686 (1U << 2) +-#define GNU_PROPERTY_X86_ISA_1_SSE (1U << 3) +-#define GNU_PROPERTY_X86_ISA_1_SSE2 (1U << 4) +-#define GNU_PROPERTY_X86_ISA_1_SSE3 (1U << 5) +-#define GNU_PROPERTY_X86_ISA_1_SSSE3 (1U << 6) +-#define GNU_PROPERTY_X86_ISA_1_SSE4_1 (1U << 7) +-#define GNU_PROPERTY_X86_ISA_1_SSE4_2 (1U << 8) +-#define GNU_PROPERTY_X86_ISA_1_AVX (1U << 9) +-#define GNU_PROPERTY_X86_ISA_1_AVX2 (1U << 10) +-#define GNU_PROPERTY_X86_ISA_1_AVX512F (1U << 11) +-#define GNU_PROPERTY_X86_ISA_1_AVX512CD (1U << 12) +-#define GNU_PROPERTY_X86_ISA_1_AVX512ER (1U << 13) +-#define GNU_PROPERTY_X86_ISA_1_AVX512PF (1U << 14) +-#define GNU_PROPERTY_X86_ISA_1_AVX512VL (1U << 15) +-#define GNU_PROPERTY_X86_ISA_1_AVX512DQ (1U << 16) +-#define GNU_PROPERTY_X86_ISA_1_AVX512BW (1U << 17) ++/* GNU_PROPERTY_X86_ISA_1_BASELINE: CMOV, CX8 (cmpxchg8b), FPU (fld), ++ MMX, OSFXSR (fxsave), SCE (syscall), SSE and SSE2. */ ++#define GNU_PROPERTY_X86_ISA_1_BASELINE (1U << 0) ++/* GNU_PROPERTY_X86_ISA_1_V2: GNU_PROPERTY_X86_ISA_1_BASELINE, ++ CMPXCHG16B (cmpxchg16b), LAHF-SAHF (lahf), POPCNT (popcnt), SSE3, ++ SSSE3, SSE4.1 and SSE4.2. */ ++#define GNU_PROPERTY_X86_ISA_1_V2 (1U << 1) ++/* GNU_PROPERTY_X86_ISA_1_V3: GNU_PROPERTY_X86_ISA_1_V2, AVX, AVX2, BMI1, ++ BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE. */ ++#define GNU_PROPERTY_X86_ISA_1_V3 (1U << 2) ++/* GNU_PROPERTY_X86_ISA_1_V4: GNU_PROPERTY_X86_ISA_1_V3, AVX512F, ++ AVX512BW, AVX512CD, AVX512DQ and AVX512VL. */ ++#define GNU_PROPERTY_X86_ISA_1_V4 (1U << 3) + + /* This indicates that all executable sections are compatible with + IBT. */ +@@ -4102,4 +4124,41 @@ enum + #define R_ARC_TLS_LE_S9 0x4a + #define R_ARC_TLS_LE_32 0x4b + ++/* OpenRISC 1000 specific relocs. */ ++#define R_OR1K_NONE 0 ++#define R_OR1K_32 1 ++#define R_OR1K_16 2 ++#define R_OR1K_8 3 ++#define R_OR1K_LO_16_IN_INSN 4 ++#define R_OR1K_HI_16_IN_INSN 5 ++#define R_OR1K_INSN_REL_26 6 ++#define R_OR1K_GNU_VTENTRY 7 ++#define R_OR1K_GNU_VTINHERIT 8 ++#define R_OR1K_32_PCREL 9 ++#define R_OR1K_16_PCREL 10 ++#define R_OR1K_8_PCREL 11 ++#define R_OR1K_GOTPC_HI16 12 ++#define R_OR1K_GOTPC_LO16 13 ++#define R_OR1K_GOT16 14 ++#define R_OR1K_PLT26 15 ++#define R_OR1K_GOTOFF_HI16 16 ++#define R_OR1K_GOTOFF_LO16 17 ++#define R_OR1K_COPY 18 ++#define R_OR1K_GLOB_DAT 19 ++#define R_OR1K_JMP_SLOT 20 ++#define R_OR1K_RELATIVE 21 ++#define R_OR1K_TLS_GD_HI16 22 ++#define R_OR1K_TLS_GD_LO16 23 ++#define R_OR1K_TLS_LDM_HI16 24 ++#define R_OR1K_TLS_LDM_LO16 25 ++#define R_OR1K_TLS_LDO_HI16 26 ++#define R_OR1K_TLS_LDO_LO16 27 ++#define R_OR1K_TLS_IE_HI16 28 ++#define R_OR1K_TLS_IE_LO16 29 ++#define R_OR1K_TLS_LE_HI16 30 ++#define R_OR1K_TLS_LE_LO16 31 ++#define R_OR1K_TLS_TPOFF 32 ++#define R_OR1K_TLS_DTPOFF 33 ++#define R_OR1K_TLS_DTPMOD 34 ++ + #endif /* elf.h */ diff --git a/elfutils-0.186-fdo-ebl.patch b/elfutils-0.186-fdo-ebl.patch new file mode 100644 index 0000000..9173f96 --- /dev/null +++ b/elfutils-0.186-fdo-ebl.patch @@ -0,0 +1,46 @@ +commit 1e5302ad3cf02788339a340f6322d1af1f05d9f9 +Author: Luca Boccassi +Date: Sun Nov 21 19:43:18 2021 +0000 + + libebl: recognize FDO Packaging Metadata ELF note + + As defined on: https://systemd.io/COREDUMP_PACKAGE_METADATA/ + this note will be used starting from Fedora 36. Allow + readelf --notes to pretty print it: + + Note section [ 3] '.note.package' of 76 bytes at offset 0x2e8: + Owner Data size Type + FDO 57 FDO_PACKAGING_METADATA + Packaging Metadata: {"type":"deb","name":"fsverity-utils","version":"1.3-1"} + + Signed-off-by: Luca Boccassi + +diff --git a/libebl/eblobjnote.c b/libebl/eblobjnote.c +index 36efe275..5a7c5c62 100644 +--- a/libebl/eblobjnote.c ++++ b/libebl/eblobjnote.c +@@ -288,6 +288,10 @@ ebl_object_note (Ebl *ebl, uint32_t namesz, const char *name, uint32_t type, + if (descsz == 0 && type == NT_VERSION) + return; + ++ if (strcmp ("FDO", name) == 0 && type == NT_FDO_PACKAGING_METADATA ++ && descsz > 0 && desc[descsz - 1] == '\0') ++ printf(" Packaging Metadata: %.*s\n", (int) descsz, desc); ++ + /* Everything else should have the "GNU" owner name. */ + if (strcmp ("GNU", name) != 0) + return; +diff --git a/libebl/eblobjnotetypename.c b/libebl/eblobjnotetypename.c +index 4662906d..473a1f2f 100644 +--- a/libebl/eblobjnotetypename.c ++++ b/libebl/eblobjnotetypename.c +@@ -101,6 +101,9 @@ ebl_object_note_type_name (Ebl *ebl, const char *name, uint32_t type, + return buf; + } + ++ if (strcmp (name, "FDO") == 0 && type == NT_FDO_PACKAGING_METADATA) ++ return "FDO_PACKAGING_METADATA"; ++ + if (strcmp (name, "GNU") != 0) + { + /* NT_VERSION is special, all data is in the name. */ diff --git a/elfutils-0.186-fdo-efllint.patch b/elfutils-0.186-fdo-efllint.patch new file mode 100644 index 0000000..682c569 --- /dev/null +++ b/elfutils-0.186-fdo-efllint.patch @@ -0,0 +1,26 @@ +commit 4a22e01277e37540d753e3513c4df3bd2b6e1246 +Author: Mark Wielaard +Date: Fri Mar 25 00:00:47 2022 +0100 + + elflint: Recognize NT_FDO_PACKAGING_METADATA + + Signed-off-by: Mark Wielaard + +diff --git a/src/elflint.c b/src/elflint.c +index ef7725ce..d919936f 100644 +--- a/src/elflint.c ++++ b/src/elflint.c +@@ -4384,6 +4384,13 @@ section [%2d] '%s': unknown core file note type %" PRIu32 + else + goto unknown_note; + ++ case NT_FDO_PACKAGING_METADATA: ++ if (nhdr.n_namesz == sizeof ELF_NOTE_FDO ++ && strcmp (data->d_buf + name_offset, ELF_NOTE_FDO) == 0) ++ break; ++ else ++ goto unknown_note; ++ + case 0: + /* Linux vDSOs use a type 0 note for the kernel version word. */ + if (nhdr.n_namesz == sizeof "Linux" diff --git a/elfutils-0.186-fdo-swap.patch b/elfutils-0.186-fdo-swap.patch new file mode 100644 index 0000000..34b114f --- /dev/null +++ b/elfutils-0.186-fdo-swap.patch @@ -0,0 +1,35 @@ +diff --git a/libelf/gelf_getnote.c b/libelf/gelf_getnote.c +index 0f7b9d68..6ef970c5 100644 +--- a/libelf/gelf_getnote.c ++++ b/libelf/gelf_getnote.c +@@ -31,6 +31,7 @@ + #endif + + #include ++#include + #include + #include + +@@ -73,6 +74,22 @@ gelf_getnote (Elf_Data *data, size_t offset, GElf_Nhdr *result, + offset = 0; + else + { ++ /* Workaround FDO package notes on big-endian systems, ++ getting namesz and descsz wrong. Detect it by getting ++ a bad namesz, descsz and byte swapped n_type for ++ NT_FDO_PACKAGING_METADATA. */ ++ if (unlikely (n->n_type == bswap_32 (NT_FDO_PACKAGING_METADATA) ++ && n->n_namesz > data->d_size ++ && n->n_descsz > data->d_size)) ++ { ++ /* n might not be writable, use result and redirect n. */ ++ *result = *n; ++ result->n_type = bswap_32 (n->n_type); ++ result->n_namesz = bswap_32 (n->n_namesz); ++ result->n_descsz = bswap_32 (n->n_descsz); ++ n = result; ++ } ++ + /* This is slightly tricky, offset is guaranteed to be 4 + byte aligned, which is what we need for the name_offset. + And normally desc_offset is also 4 byte aligned, but not diff --git a/elfutils-0.186-ppc64le-error-return-workaround.patch b/elfutils-0.186-ppc64le-error-return-workaround.patch new file mode 100644 index 0000000..adcd5a9 --- /dev/null +++ b/elfutils-0.186-ppc64le-error-return-workaround.patch @@ -0,0 +1,97 @@ +diff --git a/src/readelf.c b/src/readelf.c +index 93fb5989..43ae00b6 100644 +--- a/src/readelf.c ++++ b/src/readelf.c +@@ -1661,10 +1661,13 @@ print_scngrp (Ebl *ebl) + elf_ndxscn (scn)); + shdr = gelf_getshdr (scn, &shdr_mem); + if (unlikely (shdr == NULL)) ++ { + error (EXIT_FAILURE, 0, + _("cannot get section [%zd] header: %s"), + elf_ndxscn (scn), + elf_errmsg (-1)); ++ return; ++ } + } + handle_scngrp (ebl, scn, shdr); + } +@@ -2388,9 +2391,12 @@ print_symtab (Ebl *ebl, int type) + elf_ndxscn (scn)); + shdr = gelf_getshdr (scn, &shdr_mem); + if (unlikely (shdr == NULL)) ++ { + error (EXIT_FAILURE, 0, + _("cannot get section [%zd] header: %s"), + elf_ndxscn (scn), elf_errmsg (-1)); ++ return; ++ } + } + handle_symtab (ebl, scn, shdr); + } +@@ -2722,8 +2728,11 @@ handle_verneed (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) + GElf_Shdr *glink = gelf_getshdr (elf_getscn (ebl->elf, shdr->sh_link), + &glink_mem); + if (glink == NULL) ++ { + error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), + elf_ndxscn (scn)); ++ return; ++ } + + printf (ngettext ("\ + \nVersion needs section [%2u] '%s' contains %d entry:\n Addr: %#0*" PRIx64 " Offset: %#08" PRIx64 " Link to section: [%2u] '%s'\n", +@@ -2798,8 +2807,11 @@ handle_verdef (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) + GElf_Shdr *glink = gelf_getshdr (elf_getscn (ebl->elf, shdr->sh_link), + &glink_mem); + if (glink == NULL) ++ { + error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), + elf_ndxscn (scn)); ++ return; ++ } + + int class = gelf_getclass (ebl->elf); + printf (ngettext ("\ +@@ -3102,8 +3114,11 @@ handle_versym (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) + &glink_mem); + size_t sh_entsize = gelf_fsize (ebl->elf, ELF_T_HALF, 1, EV_CURRENT); + if (glink == NULL) ++ { + error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), + elf_ndxscn (scn)); ++ return; ++ } + + /* Print the header. */ + printf (ngettext ("\ +@@ -3495,9 +3510,12 @@ handle_hash (Ebl *ebl) + elf_ndxscn (scn)); + shdr = gelf_getshdr (scn, &shdr_mem); + if (unlikely (shdr == NULL)) ++ { + error (EXIT_FAILURE, 0, + _("cannot get section [%zd] header: %s"), + elf_ndxscn (scn), elf_errmsg (-1)); ++ return; ++ } + } + + if (shdr->sh_type == SHT_HASH) +diff --git a/src/unstrip.c b/src/unstrip.c +index aacc9aad..0dc713aa 100644 +--- a/src/unstrip.c ++++ b/src/unstrip.c +@@ -1552,9 +1552,12 @@ more sections in stripped file than debug file -- arguments reversed?")); + } + + if (sec == NULL) ++ { + error (EXIT_FAILURE, 0, + _("cannot find matching section for [%zu] '%s'"), + elf_ndxscn (scn), name); ++ return; ++ } + + sec->outscn = scn; + } diff --git a/elfutils.spec b/elfutils.spec index dff98ca..a79d6a4 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.186 -%global baserelease 1 +%global baserelease 3 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -63,6 +63,16 @@ BuildRequires: gettext-devel # Patches +# Support for FDO packaging metadata +Patch1: elfutils-0.186-elf-glibc.patch +Patch2: elfutils-0.186-fdo-ebl.patch +Patch3: elfutils-0.186-fdo-efllint.patch +# For s390x... +Patch4: elfutils-0.186-fdo-swap.patch +# Workaround for gcc on ppc64le +# error: potential null pointer dereference [-Werror=null-dereference] +Patch5: elfutils-0.186-ppc64le-error-return-workaround.patch + %description Elfutils is a collection of utilities, including stack (to show backtraces), nm (for listing symbols from object files), size @@ -399,6 +409,13 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Fri Mar 25 2022 Mark Wielaard - 0.186-3 +- Add elfutils-0.186-elf-glibc.patch +- Add elfutils-0.186-fdo-ebl.patch +- Add elfutils-0.186-fdo-efllint.patch +- Add elfutils-0.186-fdo-swap.patch +- Add elfutils-0.186-ppc64le-error-return-workaround.patch + * Wed Nov 10 2021 Mark Wielaard - 0.186-1 - Upgrade to upstream 0.186 - debuginfod-client: Default $DEBUGINFOD_URLS is computed from From 00bc2130ca836d8dad00ec8ccbfbeb1e53d4a61a Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Thu, 7 Apr 2022 15:02:13 +0200 Subject: [PATCH 4/9] 0.186-4 - Add an explicit versioned requires --- elfutils.spec | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/elfutils.spec b/elfutils.spec index a79d6a4..a8de7d6 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.186 -%global baserelease 3 +%global baserelease 4 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -196,6 +196,8 @@ License: GPLv3+ and (GPLv2+ or LGPLv3+) %if 0%{!?_isa:1} Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} %endif +# For debuginfod-find binary +Requires: elfutils-libs%{depsuffix} = %{version}-%{release} %package debuginfod-client-devel Summary: Libraries and headers to build debuginfod client applications @@ -409,6 +411,10 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Thu Apr 7 2022 Mark Wielaard - 0.186-4 +- Add an explicit versioned requires from elfutils-debuginfod-client + on elfutils-libs. + * Fri Mar 25 2022 Mark Wielaard - 0.186-3 - Add elfutils-0.186-elf-glibc.patch - Add elfutils-0.186-fdo-ebl.patch From 12adbb8900e47a15512aa94a36b779a53d351052 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 12 Apr 2022 15:58:14 +0200 Subject: [PATCH 5/9] 0.186-5 - Add another explicit versioned requires --- elfutils.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/elfutils.spec b/elfutils.spec index a8de7d6..e10455e 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.186 -%global baserelease 4 +%global baserelease 5 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -198,6 +198,7 @@ Provides: elfutils-debuginfod-client%{depsuffix} = %{version}-%{release} %endif # For debuginfod-find binary Requires: elfutils-libs%{depsuffix} = %{version}-%{release} +Requires: elfutils-libelf%{depsuffix} = %{version}-%{release} %package debuginfod-client-devel Summary: Libraries and headers to build debuginfod client applications @@ -411,6 +412,10 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Tue Apr 12 2022 Mark Wielaard - 0.186-5 +- Add an explicit versioned requires from elfutils-debuginfod-client + on elfutils-libelf. + * Thu Apr 7 2022 Mark Wielaard - 0.186-4 - Add an explicit versioned requires from elfutils-debuginfod-client on elfutils-libs. From 7ffb94911bd9df18edadf0d2cdf3bef0638bea83 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 26 Apr 2022 14:25:14 +0200 Subject: [PATCH 6/9] 0.187-1 - Upgrade to elfutils 0.187 --- .gitignore | 1 + elfutils-0.186-elf-glibc.patch | 208 ------------------ elfutils-0.186-fdo-ebl.patch | 46 ---- elfutils-0.186-fdo-efllint.patch | 26 --- ....186-ppc64le-error-return-workaround.patch | 97 -------- elfutils.spec | 30 ++- sources | 2 +- 7 files changed, 21 insertions(+), 389 deletions(-) delete mode 100644 elfutils-0.186-elf-glibc.patch delete mode 100644 elfutils-0.186-fdo-ebl.patch delete mode 100644 elfutils-0.186-fdo-efllint.patch delete mode 100644 elfutils-0.186-ppc64le-error-return-workaround.patch diff --git a/.gitignore b/.gitignore index 862ef94..f28cb05 100644 --- a/.gitignore +++ b/.gitignore @@ -27,3 +27,4 @@ /elfutils-0.184.tar.bz2 /elfutils-0.185.tar.bz2 /elfutils-0.186.tar.bz2 +/elfutils-0.187.tar.bz2 diff --git a/elfutils-0.186-elf-glibc.patch b/elfutils-0.186-elf-glibc.patch deleted file mode 100644 index 40aab81..0000000 --- a/elfutils-0.186-elf-glibc.patch +++ /dev/null @@ -1,208 +0,0 @@ -commit 31d551ae4dd8cf307c68f86b6c1ecac2f92b522a -Author: Mark Wielaard -Date: Thu Mar 24 23:06:09 2022 +0100 - - libelf: Sync elf.h from glibc. - - Adds EM_INTELGT, NT_ARM_TAGGED_ADDR_CTRL, NT_ARM_PAC_ENABLED_KEYS, - ELF_NOTE_FDO, NT_FDO_PACKAGING_METADATA and OpenRISC 1000 specific - relocs. - - It also adds and renames some GNU_PROPERTY constants. But none of the - constants the elfutils code uses was renamed or given a different - constant value. - - dwelf_elf_e_machine_string was updated to handle EM_INTELGT. - - Signed-off-by: Mark Wielaard - -diff --git a/libdwelf/dwelf_elf_e_machine_string.c b/libdwelf/dwelf_elf_e_machine_string.c -index 387648e2..051c70b5 100644 ---- a/libdwelf/dwelf_elf_e_machine_string.c -+++ b/libdwelf/dwelf_elf_e_machine_string.c -@@ -360,6 +360,8 @@ dwelf_elf_e_machine_string (int machine) - return "XMOS xCORE"; - case EM_MCHP_PIC: - return "Microchip 8-bit PIC"; -+ case EM_INTELGT: -+ return "Intel Graphics Technology"; - case EM_KM32: - return "KM211 KM32"; - case EM_KMX32: - - * elf_getdata.c (__libelf_type_aligns): ELF_T_GNUHASH has different -diff --git a/libelf/elf.h b/libelf/elf.h -index 8e3e618f..0735f6b5 100644 ---- a/libelf/elf.h -+++ b/libelf/elf.h -@@ -1,5 +1,5 @@ - /* This file defines standard ELF types, structures, and macros. -- Copyright (C) 1995-2020 Free Software Foundation, Inc. -+ Copyright (C) 1995-2022 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or -@@ -336,7 +336,8 @@ typedef struct - #define EM_BA2 202 /* Beyond BA2 */ - #define EM_XCORE 203 /* XMOS xCORE */ - #define EM_MCHP_PIC 204 /* Microchip 8-bit PIC(r) */ -- /* reserved 205-209 */ -+#define EM_INTELGT 205 /* Intel Graphics Technology */ -+ /* reserved 206-209 */ - #define EM_KM32 210 /* KM211 KM32 */ - #define EM_KMX32 211 /* KM211 KMX32 */ - #define EM_EMX16 212 /* KM211 KMX16 */ -@@ -813,6 +814,10 @@ typedef struct - address keys. */ - #define NT_ARM_PACG_KEYS 0x408 /* ARM pointer authentication - generic key. */ -+#define NT_ARM_TAGGED_ADDR_CTRL 0x409 /* AArch64 tagged address -+ control. */ -+#define NT_ARM_PAC_ENABLED_KEYS 0x40a /* AArch64 pointer authentication -+ enabled keys. */ - #define NT_VMCOREDD 0x700 /* Vmcore Device Dump Note. */ - #define NT_MIPS_DSP 0x800 /* MIPS DSP ASE registers. */ - #define NT_MIPS_FP_MODE 0x801 /* MIPS floating-point mode. */ -@@ -1226,8 +1231,7 @@ typedef struct - #define AT_L3_CACHESIZE 46 - #define AT_L3_CACHEGEOMETRY 47 - --#define AT_MINSIGSTKSZ 51 /* Stack needed for signal delivery -- (AArch64). */ -+#define AT_MINSIGSTKSZ 51 /* Stack needed for signal delivery */ - - /* Note section contents. Each entry in the note section begins with - a header of a fixed form. */ -@@ -1254,6 +1258,8 @@ typedef struct - /* Note entries for GNU systems have this name. */ - #define ELF_NOTE_GNU "GNU" - -+/* Note entries for freedesktop.org have this name. */ -+#define ELF_NOTE_FDO "FDO" - - /* Defined types of notes for Solaris. */ - -@@ -1297,6 +1303,10 @@ typedef struct - /* Program property. */ - #define NT_GNU_PROPERTY_TYPE_0 5 - -+/* Packaging metadata as defined on -+ https://systemd.io/COREDUMP_PACKAGE_METADATA/ */ -+#define NT_FDO_PACKAGING_METADATA 0xcafe1a7e -+ - /* Note section name of program property. */ - #define NOTE_GNU_PROPERTY_SECTION_NAME ".note.gnu.property" - -@@ -1307,6 +1317,23 @@ typedef struct - /* No copy relocation on protected data symbol. */ - #define GNU_PROPERTY_NO_COPY_ON_PROTECTED 2 - -+/* A 4-byte unsigned integer property: A bit is set if it is set in all -+ relocatable inputs. */ -+#define GNU_PROPERTY_UINT32_AND_LO 0xb0000000 -+#define GNU_PROPERTY_UINT32_AND_HI 0xb0007fff -+ -+/* A 4-byte unsigned integer property: A bit is set if it is set in any -+ relocatable inputs. */ -+#define GNU_PROPERTY_UINT32_OR_LO 0xb0008000 -+#define GNU_PROPERTY_UINT32_OR_HI 0xb000ffff -+ -+/* The needed properties by the object file. */ -+#define GNU_PROPERTY_1_NEEDED GNU_PROPERTY_UINT32_OR_LO -+ -+/* Set if the object file requires canonical function pointers and -+ cannot be used with copy relocation. */ -+#define GNU_PROPERTY_1_NEEDED_INDIRECT_EXTERN_ACCESS (1U << 0) -+ - /* Processor-specific semantics, lo */ - #define GNU_PROPERTY_LOPROC 0xc0000000 - /* Processor-specific semantics, hi */ -@@ -1324,31 +1351,26 @@ typedef struct - - /* The x86 instruction sets indicated by the corresponding bits are - used in program. Their support in the hardware is optional. */ --#define GNU_PROPERTY_X86_ISA_1_USED 0xc0000000 -+#define GNU_PROPERTY_X86_ISA_1_USED 0xc0010002 - /* The x86 instruction sets indicated by the corresponding bits are - used in program and they must be supported by the hardware. */ --#define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0000001 -+#define GNU_PROPERTY_X86_ISA_1_NEEDED 0xc0008002 - /* X86 processor-specific features used in program. */ - #define GNU_PROPERTY_X86_FEATURE_1_AND 0xc0000002 - --#define GNU_PROPERTY_X86_ISA_1_486 (1U << 0) --#define GNU_PROPERTY_X86_ISA_1_586 (1U << 1) --#define GNU_PROPERTY_X86_ISA_1_686 (1U << 2) --#define GNU_PROPERTY_X86_ISA_1_SSE (1U << 3) --#define GNU_PROPERTY_X86_ISA_1_SSE2 (1U << 4) --#define GNU_PROPERTY_X86_ISA_1_SSE3 (1U << 5) --#define GNU_PROPERTY_X86_ISA_1_SSSE3 (1U << 6) --#define GNU_PROPERTY_X86_ISA_1_SSE4_1 (1U << 7) --#define GNU_PROPERTY_X86_ISA_1_SSE4_2 (1U << 8) --#define GNU_PROPERTY_X86_ISA_1_AVX (1U << 9) --#define GNU_PROPERTY_X86_ISA_1_AVX2 (1U << 10) --#define GNU_PROPERTY_X86_ISA_1_AVX512F (1U << 11) --#define GNU_PROPERTY_X86_ISA_1_AVX512CD (1U << 12) --#define GNU_PROPERTY_X86_ISA_1_AVX512ER (1U << 13) --#define GNU_PROPERTY_X86_ISA_1_AVX512PF (1U << 14) --#define GNU_PROPERTY_X86_ISA_1_AVX512VL (1U << 15) --#define GNU_PROPERTY_X86_ISA_1_AVX512DQ (1U << 16) --#define GNU_PROPERTY_X86_ISA_1_AVX512BW (1U << 17) -+/* GNU_PROPERTY_X86_ISA_1_BASELINE: CMOV, CX8 (cmpxchg8b), FPU (fld), -+ MMX, OSFXSR (fxsave), SCE (syscall), SSE and SSE2. */ -+#define GNU_PROPERTY_X86_ISA_1_BASELINE (1U << 0) -+/* GNU_PROPERTY_X86_ISA_1_V2: GNU_PROPERTY_X86_ISA_1_BASELINE, -+ CMPXCHG16B (cmpxchg16b), LAHF-SAHF (lahf), POPCNT (popcnt), SSE3, -+ SSSE3, SSE4.1 and SSE4.2. */ -+#define GNU_PROPERTY_X86_ISA_1_V2 (1U << 1) -+/* GNU_PROPERTY_X86_ISA_1_V3: GNU_PROPERTY_X86_ISA_1_V2, AVX, AVX2, BMI1, -+ BMI2, F16C, FMA, LZCNT, MOVBE, XSAVE. */ -+#define GNU_PROPERTY_X86_ISA_1_V3 (1U << 2) -+/* GNU_PROPERTY_X86_ISA_1_V4: GNU_PROPERTY_X86_ISA_1_V3, AVX512F, -+ AVX512BW, AVX512CD, AVX512DQ and AVX512VL. */ -+#define GNU_PROPERTY_X86_ISA_1_V4 (1U << 3) - - /* This indicates that all executable sections are compatible with - IBT. */ -@@ -4102,4 +4124,41 @@ enum - #define R_ARC_TLS_LE_S9 0x4a - #define R_ARC_TLS_LE_32 0x4b - -+/* OpenRISC 1000 specific relocs. */ -+#define R_OR1K_NONE 0 -+#define R_OR1K_32 1 -+#define R_OR1K_16 2 -+#define R_OR1K_8 3 -+#define R_OR1K_LO_16_IN_INSN 4 -+#define R_OR1K_HI_16_IN_INSN 5 -+#define R_OR1K_INSN_REL_26 6 -+#define R_OR1K_GNU_VTENTRY 7 -+#define R_OR1K_GNU_VTINHERIT 8 -+#define R_OR1K_32_PCREL 9 -+#define R_OR1K_16_PCREL 10 -+#define R_OR1K_8_PCREL 11 -+#define R_OR1K_GOTPC_HI16 12 -+#define R_OR1K_GOTPC_LO16 13 -+#define R_OR1K_GOT16 14 -+#define R_OR1K_PLT26 15 -+#define R_OR1K_GOTOFF_HI16 16 -+#define R_OR1K_GOTOFF_LO16 17 -+#define R_OR1K_COPY 18 -+#define R_OR1K_GLOB_DAT 19 -+#define R_OR1K_JMP_SLOT 20 -+#define R_OR1K_RELATIVE 21 -+#define R_OR1K_TLS_GD_HI16 22 -+#define R_OR1K_TLS_GD_LO16 23 -+#define R_OR1K_TLS_LDM_HI16 24 -+#define R_OR1K_TLS_LDM_LO16 25 -+#define R_OR1K_TLS_LDO_HI16 26 -+#define R_OR1K_TLS_LDO_LO16 27 -+#define R_OR1K_TLS_IE_HI16 28 -+#define R_OR1K_TLS_IE_LO16 29 -+#define R_OR1K_TLS_LE_HI16 30 -+#define R_OR1K_TLS_LE_LO16 31 -+#define R_OR1K_TLS_TPOFF 32 -+#define R_OR1K_TLS_DTPOFF 33 -+#define R_OR1K_TLS_DTPMOD 34 -+ - #endif /* elf.h */ diff --git a/elfutils-0.186-fdo-ebl.patch b/elfutils-0.186-fdo-ebl.patch deleted file mode 100644 index 9173f96..0000000 --- a/elfutils-0.186-fdo-ebl.patch +++ /dev/null @@ -1,46 +0,0 @@ -commit 1e5302ad3cf02788339a340f6322d1af1f05d9f9 -Author: Luca Boccassi -Date: Sun Nov 21 19:43:18 2021 +0000 - - libebl: recognize FDO Packaging Metadata ELF note - - As defined on: https://systemd.io/COREDUMP_PACKAGE_METADATA/ - this note will be used starting from Fedora 36. Allow - readelf --notes to pretty print it: - - Note section [ 3] '.note.package' of 76 bytes at offset 0x2e8: - Owner Data size Type - FDO 57 FDO_PACKAGING_METADATA - Packaging Metadata: {"type":"deb","name":"fsverity-utils","version":"1.3-1"} - - Signed-off-by: Luca Boccassi - -diff --git a/libebl/eblobjnote.c b/libebl/eblobjnote.c -index 36efe275..5a7c5c62 100644 ---- a/libebl/eblobjnote.c -+++ b/libebl/eblobjnote.c -@@ -288,6 +288,10 @@ ebl_object_note (Ebl *ebl, uint32_t namesz, const char *name, uint32_t type, - if (descsz == 0 && type == NT_VERSION) - return; - -+ if (strcmp ("FDO", name) == 0 && type == NT_FDO_PACKAGING_METADATA -+ && descsz > 0 && desc[descsz - 1] == '\0') -+ printf(" Packaging Metadata: %.*s\n", (int) descsz, desc); -+ - /* Everything else should have the "GNU" owner name. */ - if (strcmp ("GNU", name) != 0) - return; -diff --git a/libebl/eblobjnotetypename.c b/libebl/eblobjnotetypename.c -index 4662906d..473a1f2f 100644 ---- a/libebl/eblobjnotetypename.c -+++ b/libebl/eblobjnotetypename.c -@@ -101,6 +101,9 @@ ebl_object_note_type_name (Ebl *ebl, const char *name, uint32_t type, - return buf; - } - -+ if (strcmp (name, "FDO") == 0 && type == NT_FDO_PACKAGING_METADATA) -+ return "FDO_PACKAGING_METADATA"; -+ - if (strcmp (name, "GNU") != 0) - { - /* NT_VERSION is special, all data is in the name. */ diff --git a/elfutils-0.186-fdo-efllint.patch b/elfutils-0.186-fdo-efllint.patch deleted file mode 100644 index 682c569..0000000 --- a/elfutils-0.186-fdo-efllint.patch +++ /dev/null @@ -1,26 +0,0 @@ -commit 4a22e01277e37540d753e3513c4df3bd2b6e1246 -Author: Mark Wielaard -Date: Fri Mar 25 00:00:47 2022 +0100 - - elflint: Recognize NT_FDO_PACKAGING_METADATA - - Signed-off-by: Mark Wielaard - -diff --git a/src/elflint.c b/src/elflint.c -index ef7725ce..d919936f 100644 ---- a/src/elflint.c -+++ b/src/elflint.c -@@ -4384,6 +4384,13 @@ section [%2d] '%s': unknown core file note type %" PRIu32 - else - goto unknown_note; - -+ case NT_FDO_PACKAGING_METADATA: -+ if (nhdr.n_namesz == sizeof ELF_NOTE_FDO -+ && strcmp (data->d_buf + name_offset, ELF_NOTE_FDO) == 0) -+ break; -+ else -+ goto unknown_note; -+ - case 0: - /* Linux vDSOs use a type 0 note for the kernel version word. */ - if (nhdr.n_namesz == sizeof "Linux" diff --git a/elfutils-0.186-ppc64le-error-return-workaround.patch b/elfutils-0.186-ppc64le-error-return-workaround.patch deleted file mode 100644 index adcd5a9..0000000 --- a/elfutils-0.186-ppc64le-error-return-workaround.patch +++ /dev/null @@ -1,97 +0,0 @@ -diff --git a/src/readelf.c b/src/readelf.c -index 93fb5989..43ae00b6 100644 ---- a/src/readelf.c -+++ b/src/readelf.c -@@ -1661,10 +1661,13 @@ print_scngrp (Ebl *ebl) - elf_ndxscn (scn)); - shdr = gelf_getshdr (scn, &shdr_mem); - if (unlikely (shdr == NULL)) -+ { - error (EXIT_FAILURE, 0, - _("cannot get section [%zd] header: %s"), - elf_ndxscn (scn), - elf_errmsg (-1)); -+ return; -+ } - } - handle_scngrp (ebl, scn, shdr); - } -@@ -2388,9 +2391,12 @@ print_symtab (Ebl *ebl, int type) - elf_ndxscn (scn)); - shdr = gelf_getshdr (scn, &shdr_mem); - if (unlikely (shdr == NULL)) -+ { - error (EXIT_FAILURE, 0, - _("cannot get section [%zd] header: %s"), - elf_ndxscn (scn), elf_errmsg (-1)); -+ return; -+ } - } - handle_symtab (ebl, scn, shdr); - } -@@ -2722,8 +2728,11 @@ handle_verneed (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) - GElf_Shdr *glink = gelf_getshdr (elf_getscn (ebl->elf, shdr->sh_link), - &glink_mem); - if (glink == NULL) -+ { - error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), - elf_ndxscn (scn)); -+ return; -+ } - - printf (ngettext ("\ - \nVersion needs section [%2u] '%s' contains %d entry:\n Addr: %#0*" PRIx64 " Offset: %#08" PRIx64 " Link to section: [%2u] '%s'\n", -@@ -2798,8 +2807,11 @@ handle_verdef (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) - GElf_Shdr *glink = gelf_getshdr (elf_getscn (ebl->elf, shdr->sh_link), - &glink_mem); - if (glink == NULL) -+ { - error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), - elf_ndxscn (scn)); -+ return; -+ } - - int class = gelf_getclass (ebl->elf); - printf (ngettext ("\ -@@ -3102,8 +3114,11 @@ handle_versym (Ebl *ebl, Elf_Scn *scn, GElf_Shdr *shdr) - &glink_mem); - size_t sh_entsize = gelf_fsize (ebl->elf, ELF_T_HALF, 1, EV_CURRENT); - if (glink == NULL) -+ { - error (EXIT_FAILURE, 0, _("invalid sh_link value in section %zu"), - elf_ndxscn (scn)); -+ return; -+ } - - /* Print the header. */ - printf (ngettext ("\ -@@ -3495,9 +3510,12 @@ handle_hash (Ebl *ebl) - elf_ndxscn (scn)); - shdr = gelf_getshdr (scn, &shdr_mem); - if (unlikely (shdr == NULL)) -+ { - error (EXIT_FAILURE, 0, - _("cannot get section [%zd] header: %s"), - elf_ndxscn (scn), elf_errmsg (-1)); -+ return; -+ } - } - - if (shdr->sh_type == SHT_HASH) -diff --git a/src/unstrip.c b/src/unstrip.c -index aacc9aad..0dc713aa 100644 ---- a/src/unstrip.c -+++ b/src/unstrip.c -@@ -1552,9 +1552,12 @@ more sections in stripped file than debug file -- arguments reversed?")); - } - - if (sec == NULL) -+ { - error (EXIT_FAILURE, 0, - _("cannot find matching section for [%zu] '%s'"), - elf_ndxscn (scn), name); -+ return; -+ } - - sec->outscn = scn; - } diff --git a/elfutils.spec b/elfutils.spec index e10455e..3a02fdf 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils -Version: 0.186 -%global baserelease 5 +Version: 0.187 +%global baserelease 1 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -63,15 +63,8 @@ BuildRequires: gettext-devel # Patches -# Support for FDO packaging metadata -Patch1: elfutils-0.186-elf-glibc.patch -Patch2: elfutils-0.186-fdo-ebl.patch -Patch3: elfutils-0.186-fdo-efllint.patch -# For s390x... -Patch4: elfutils-0.186-fdo-swap.patch -# Workaround for gcc on ppc64le -# error: potential null pointer dereference [-Werror=null-dereference] -Patch5: elfutils-0.186-ppc64le-error-return-workaround.patch +# For s390x... FDO package notes are bogus. +Patch1: elfutils-0.186-fdo-swap.patch %description Elfutils is a collection of utilities, including stack (to show @@ -412,6 +405,21 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Tue Apr 26 2022 Mark Wielaard - 0.187-1 +- Upgrade to elfutils 0.187 + - debuginfod: Support -C option for connection thread pooling. + - debuginfod-client: Negative cache file are now zero sized instead + of no-permission files. + - addr2line: The -A, --absolute option, which shows file names + includingthe full compilation directory is now the + default. To get theold behavior use the new option --relative. + - readelf, elflint: Recognize FDO Packaging Metadata ELF notes + - libdw, debuginfo-client: Load libcurl lazily only when files need + to be fetched remotely. libcurl is now never loaded when + DEBUGINFOD_URLS is unset. And whenDEBUGINFOD_URLS is set, + libcurl is only loaded when the debuginfod_begin function is + called. + * Tue Apr 12 2022 Mark Wielaard - 0.186-5 - Add an explicit versioned requires from elfutils-debuginfod-client on elfutils-libelf. diff --git a/sources b/sources index 9267009..808d95e 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (elfutils-0.186.tar.bz2) = c9180b27ec62935f18b9431268d176f6023d1bb938731d2af6e7626ae460af6608a70ba68483aa1ec7e6cb0fa0528b661ca8b68bc4f58ea8e18af527c5950c78 +SHA512 (elfutils-0.187.tar.bz2) = a9b9e32b503b8b50a62d4e4001097ed2721d3475232a6380e6b9853bd1647aec016440c0ca7ceb950daf1144f8db9814ab43cf33cc0ebef7fc91e9e775c9e874 From 197c1a46d5fddfda7cc915835b3562653a3a88dd Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Tue, 3 May 2022 18:49:19 +0200 Subject: [PATCH 7/9] 0.187-2 - Add elfutils-0.187-csh-profile.patch Resolves: #2080957 "Ambiguous output redirect" warning with csh or tcsh --- elfutils-0.187-csh-profile.patch | 28 ++++++++++++++++++++++++++++ elfutils.spec | 6 +++++- 2 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 elfutils-0.187-csh-profile.patch diff --git a/elfutils-0.187-csh-profile.patch b/elfutils-0.187-csh-profile.patch new file mode 100644 index 0000000..6f26815 --- /dev/null +++ b/elfutils-0.187-csh-profile.patch @@ -0,0 +1,28 @@ +commit f1252e4dbe781f75d806ce0b990779548eeeb7a9 +Author: Mark Wielaard +Date: Tue May 3 17:48:55 2022 +0200 + + config: Move the 2>/dev/null inside the sh -c '' quotes for profile.csh. + + csh/tcsh would warn about "Ambiguous output redirect" if not done inside + the sh -c command. + + Fix-by: наб + + https://bugzilla.redhat.com/show_bug.cgi?id=2080957 + + Signed-off-by: Mark Wielaard + +diff --git a/config/profile.csh.in b/config/profile.csh.in +index 012e243a..74c20c99 100644 +--- a/config/profile.csh.in ++++ b/config/profile.csh.in +@@ -6,7 +6,7 @@ + + if (! $?DEBUGINFOD_URLS) then + set prefix="@prefix@" +- set DEBUGINFOD_URLS=`sh -c 'cat "$0"/*.urls; :' "@sysconfdir@/debuginfod" 2>/dev/null | tr '\n' ' '` ++ set DEBUGINFOD_URLS=`sh -c 'cat "$0"/*.urls 2>/dev/null; :' "@sysconfdir@/debuginfod" | tr '\n' ' '` + if ( "$DEBUGINFOD_URLS" != "" ) then + setenv DEBUGINFOD_URLS "$DEBUGINFOD_URLS" + else diff --git a/elfutils.spec b/elfutils.spec index 3a02fdf..b16e032 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.187 -%global baserelease 1 +%global baserelease 2 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -65,6 +65,7 @@ BuildRequires: gettext-devel # For s390x... FDO package notes are bogus. Patch1: elfutils-0.186-fdo-swap.patch +Patch2: elfutils-0.187-csh-profile.patch %description Elfutils is a collection of utilities, including stack (to show @@ -405,6 +406,9 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Tue May 3 2022 Mark Wielaard - 0.187-2 +- Add elfutils-0.187-csh-profile.patch + * Tue Apr 26 2022 Mark Wielaard - 0.187-1 - Upgrade to elfutils 0.187 - debuginfod: Support -C option for connection thread pooling. From 4f4eee4ca32d5405d31efd16435cad1e324cc7a7 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Thu, 5 May 2022 17:39:38 +0200 Subject: [PATCH 8/9] 0.187-3 - Add elfutils-0.187-debuginfod-client-fd-leak.patch --- ...tils-0.187-debuginfod-client-fd-leak.patch | 98 +++++++++++++++++++ elfutils.spec | 8 +- 2 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 elfutils-0.187-debuginfod-client-fd-leak.patch diff --git a/elfutils-0.187-debuginfod-client-fd-leak.patch b/elfutils-0.187-debuginfod-client-fd-leak.patch new file mode 100644 index 0000000..2f6b78b --- /dev/null +++ b/elfutils-0.187-debuginfod-client-fd-leak.patch @@ -0,0 +1,98 @@ +commit 59158656f3b0b99d8784ddc82c15778813000edc +Author: Frank Ch. Eigler +Date: Wed May 4 10:26:42 2022 -0400 + + PR29117: fix fd leak in debuginfod client for cache-miss files + + Correct a nasty fd leak and a few less nasty leaks in the debuginfod + client code. The nasty one impacts long-lived apps such as debuginfod + servers. + + Signed-off-by: Mark Wielaard + Signed-off-by: Frank Ch. Eigler + +diff --git a/debuginfod/debuginfod-client.c b/debuginfod/debuginfod-client.c +index ea6e461a..521972e4 100644 +--- a/debuginfod/debuginfod-client.c ++++ b/debuginfod/debuginfod-client.c +@@ -243,7 +243,13 @@ debuginfod_config_cache(char *config_path, + return -errno; + + if (dprintf(fd, "%ld", cache_config_default_s) < 0) +- return -errno; ++ { ++ int ret = -errno; ++ close (fd); ++ return ret; ++ } ++ ++ close (fd); + } + + long cache_config; +@@ -284,7 +290,13 @@ debuginfod_init_cache (char *cache_path, char *interval_path, char *maxage_path) + return -errno; + + if (dprintf(fd, "%ld", cache_clean_default_interval_s) < 0) +- return -errno; ++ { ++ int ret = -errno; ++ close (fd); ++ return ret; ++ } ++ ++ close (fd); + + /* init max age config file. */ + if (stat(maxage_path, &st) != 0 +@@ -292,8 +304,13 @@ debuginfod_init_cache (char *cache_path, char *interval_path, char *maxage_path) + return -errno; + + if (dprintf(fd, "%ld", cache_default_max_unused_age_s) < 0) +- return -errno; ++ { ++ int ret = -errno; ++ close (fd); ++ return ret; ++ } + ++ close (fd); + return 0; + } + +@@ -812,18 +829,17 @@ debuginfod_query_server (debuginfod_client *c, + has passed since the last attempt. */ + time_t cache_miss; + time_t target_mtime = st.st_mtime; ++ ++ close(fd); /* no need to hold onto the negative-hit file descriptor */ ++ + rc = debuginfod_config_cache(cache_miss_path, + cache_miss_default_s, &st); + if (rc < 0) +- { +- close(fd); +- goto out; +- } ++ goto out; + + cache_miss = (time_t)rc; + if (time(NULL) - target_mtime <= cache_miss) + { +- close(fd); + rc = -ENOENT; + goto out; + } +diff --git a/debuginfod/debuginfod-find.c b/debuginfod/debuginfod-find.c +index 3e8ab203..f60b5463 100644 +--- a/debuginfod/debuginfod-find.c ++++ b/debuginfod/debuginfod-find.c +@@ -231,6 +231,8 @@ main(int argc, char** argv) + fprintf(stderr, "Server query failed: %s\n", strerror(-rc)); + return 1; + } ++ else ++ close (rc); + + printf("%s\n", cache_name); + free (cache_name); diff --git a/elfutils.spec b/elfutils.spec index b16e032..5016e37 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.187 -%global baserelease 2 +%global baserelease 3 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -65,7 +65,10 @@ BuildRequires: gettext-devel # For s390x... FDO package notes are bogus. Patch1: elfutils-0.186-fdo-swap.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=2080957 Patch2: elfutils-0.187-csh-profile.patch +# https://sourceware.org/bugzilla/show_bug.cgi?id=29117 +Patch3: elfutils-0.187-debuginfod-client-fd-leak.patch %description Elfutils is a collection of utilities, including stack (to show @@ -406,6 +409,9 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Thu May 5 2022 Mark Wielaard - 0.187-3 +- Add elfutils-0.187-debuginfod-client-fd-leak.patch + * Tue May 3 2022 Mark Wielaard - 0.187-2 - Add elfutils-0.187-csh-profile.patch From 29d9906e6bdfdb899c29b3b7f5b33926673c2308 Mon Sep 17 00:00:00 2001 From: Mark Wielaard Date: Fri, 6 May 2022 16:29:39 +0200 Subject: [PATCH 9/9] 0.187-4 - Add elfutils-0.187-mhd_no_dual_stack.patch - Add elfutils-0.187-mhd_epoll.patch --- elfutils-0.187-mhd_epoll.patch | 51 +++++++++++ elfutils-0.187-mhd_no_dual_stack.patch | 118 +++++++++++++++++++++++++ elfutils.spec | 10 ++- 3 files changed, 178 insertions(+), 1 deletion(-) create mode 100644 elfutils-0.187-mhd_epoll.patch create mode 100644 elfutils-0.187-mhd_no_dual_stack.patch diff --git a/elfutils-0.187-mhd_epoll.patch b/elfutils-0.187-mhd_epoll.patch new file mode 100644 index 0000000..fbbbdac --- /dev/null +++ b/elfutils-0.187-mhd_epoll.patch @@ -0,0 +1,51 @@ +commit 28f9d86ea89f88b24f1d12c8e9d5ddc3f77da194 +Author: Mark Wielaard +Date: Fri May 6 00:29:28 2022 +0200 + + debuginfod: Use MHD_USE_EPOLL for libmicrohttpd version 0.9.51 or higher + + Also disable MHD_USE_THREAD_PER_CONNECTION when using MHD_USE_EPOLL. + + https://sourceware.org/bugzilla/show_bug.cgi?id=29123 + + Signed-off-by: Mark Wielaard + +diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx +index c02540f1..d4f47bf7 100644 +--- a/debuginfod/debuginfod.cxx ++++ b/debuginfod/debuginfod.cxx +@@ -1,6 +1,6 @@ + /* Debuginfo-over-http server. + Copyright (C) 2019-2021 Red Hat, Inc. +- Copyright (C) 2021 Mark J. Wielaard ++ Copyright (C) 2021, 2022 Mark J. Wielaard + This file is part of elfutils. + + This file is free software; you can redistribute it and/or modify +@@ -3899,7 +3899,14 @@ main (int argc, char *argv[]) + } + } + +- unsigned int mhd_flags = ((connection_pool ++ /* Note that MHD_USE_EPOLL and MHD_USE_THREAD_PER_CONNECTION don't ++ work together. */ ++ unsigned int use_epoll = 0; ++#if MHD_VERSION >= 0x00095100 ++ use_epoll = MHD_USE_EPOLL; ++#endif ++ ++ unsigned int mhd_flags = ((connection_pool || use_epoll + ? 0 : MHD_USE_THREAD_PER_CONNECTION) + #if MHD_VERSION >= 0x00095300 + | MHD_USE_INTERNAL_POLLING_THREAD +@@ -3907,9 +3914,7 @@ main (int argc, char *argv[]) + | MHD_USE_SELECT_INTERNALLY + #endif + | MHD_USE_DUAL_STACK +-#ifdef MHD_USE_EPOLL +- | MHD_USE_EPOLL +-#endif ++ | use_epoll + #if MHD_VERSION >= 0x00095200 + | MHD_USE_ITC + #endif diff --git a/elfutils-0.187-mhd_no_dual_stack.patch b/elfutils-0.187-mhd_no_dual_stack.patch new file mode 100644 index 0000000..3f38e36 --- /dev/null +++ b/elfutils-0.187-mhd_no_dual_stack.patch @@ -0,0 +1,118 @@ +commit ba675ed25a26fd425ffd19b02cf18babf4291b4f +Author: Mark Wielaard +Date: Thu May 5 23:59:57 2022 +0200 + + debuginfod: Try without MHD_USE_DUAL_STACK if MHD_start_daemon fails + + On a systems that have ipv6 disabled debuginfod doesn't start up + anymore because libhttpd MHD_USE_DUAL_STACK only works if it can + open an ipv6 socket. If MHD_start_daemon with MHD_USE_DUAL_STACK + fails try again without that flag set. + + https://sourceware.org/bugzilla/show_bug.cgi?id=29122 + + Signed-off-by: Mark Wielaard + +diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx +index 4aaf41c0..c02540f1 100644 +--- a/debuginfod/debuginfod.cxx ++++ b/debuginfod/debuginfod.cxx +@@ -3899,40 +3899,67 @@ main (int argc, char *argv[]) + } + } + +- // Start httpd server threads. Use a single dual-homed pool. +- MHD_Daemon *d46 = MHD_start_daemon ((connection_pool ? 0 : MHD_USE_THREAD_PER_CONNECTION) ++ unsigned int mhd_flags = ((connection_pool ++ ? 0 : MHD_USE_THREAD_PER_CONNECTION) + #if MHD_VERSION >= 0x00095300 +- | MHD_USE_INTERNAL_POLLING_THREAD ++ | MHD_USE_INTERNAL_POLLING_THREAD + #else +- | MHD_USE_SELECT_INTERNALLY ++ | MHD_USE_SELECT_INTERNALLY + #endif ++ | MHD_USE_DUAL_STACK + #ifdef MHD_USE_EPOLL +- | MHD_USE_EPOLL ++ | MHD_USE_EPOLL + #endif +- | MHD_USE_DUAL_STACK + #if MHD_VERSION >= 0x00095200 +- | MHD_USE_ITC ++ | MHD_USE_ITC + #endif +- | MHD_USE_DEBUG, /* report errors to stderr */ +- http_port, +- NULL, NULL, /* default accept policy */ +- handler_cb, NULL, /* handler callback */ +- MHD_OPTION_EXTERNAL_LOGGER, error_cb, NULL, +- (connection_pool ? MHD_OPTION_THREAD_POOL_SIZE : MHD_OPTION_END), +- (connection_pool ? (int)connection_pool : MHD_OPTION_END), +- MHD_OPTION_END); ++ | MHD_USE_DEBUG); /* report errors to stderr */ + ++ // Start httpd server threads. Use a single dual-homed pool. ++ MHD_Daemon *d46 = MHD_start_daemon (mhd_flags, http_port, ++ NULL, NULL, /* default accept policy */ ++ handler_cb, NULL, /* handler callback */ ++ MHD_OPTION_EXTERNAL_LOGGER, ++ error_cb, NULL, ++ (connection_pool ++ ? MHD_OPTION_THREAD_POOL_SIZE ++ : MHD_OPTION_END), ++ (connection_pool ++ ? (int)connection_pool ++ : MHD_OPTION_END), ++ MHD_OPTION_END); ++ ++ MHD_Daemon *d4 = NULL; + if (d46 == NULL) + { +- sqlite3 *database = db; +- sqlite3 *databaseq = dbq; +- db = dbq = 0; // for signal_handler not to freak +- sqlite3_close (databaseq); +- sqlite3_close (database); +- error (EXIT_FAILURE, 0, "cannot start http server at port %d", http_port); +- } ++ // Cannot use dual_stack, use ipv4 only ++ mhd_flags &= ~(MHD_USE_DUAL_STACK); ++ d4 = MHD_start_daemon (mhd_flags, http_port, ++ NULL, NULL, /* default accept policy */ ++ handler_cb, NULL, /* handler callback */ ++ MHD_OPTION_EXTERNAL_LOGGER, ++ error_cb, NULL, ++ (connection_pool ++ ? MHD_OPTION_THREAD_POOL_SIZE ++ : MHD_OPTION_END), ++ (connection_pool ++ ? (int)connection_pool ++ : MHD_OPTION_END), ++ MHD_OPTION_END); ++ if (d4 == NULL) ++ { ++ sqlite3 *database = db; ++ sqlite3 *databaseq = dbq; ++ db = dbq = 0; // for signal_handler not to freak ++ sqlite3_close (databaseq); ++ sqlite3_close (database); ++ error (EXIT_FAILURE, 0, "cannot start http server at port %d", ++ http_port); ++ } + +- obatched(clog) << "started http server on IPv4 IPv6 " ++ } ++ obatched(clog) << "started http server on" ++ << (d4 != NULL ? " IPv4 " : " IPv4 IPv6 ") + << "port=" << http_port << endl; + + // add maxigroom sql if -G given +@@ -4053,6 +4080,7 @@ main (int argc, char *argv[]) + + /* Stop all the web service threads. */ + if (d46) MHD_stop_daemon (d46); ++ if (d4) MHD_stop_daemon (d4); + + if (! passive_p) + { diff --git a/elfutils.spec b/elfutils.spec index 5016e37..34908c8 100644 --- a/elfutils.spec +++ b/elfutils.spec @@ -1,6 +1,6 @@ Name: elfutils Version: 0.187 -%global baserelease 3 +%global baserelease 4 Release: %{baserelease}%{?dist} URL: http://elfutils.org/ %global source_url ftp://sourceware.org/pub/elfutils/%{version}/ @@ -69,6 +69,10 @@ Patch1: elfutils-0.186-fdo-swap.patch Patch2: elfutils-0.187-csh-profile.patch # https://sourceware.org/bugzilla/show_bug.cgi?id=29117 Patch3: elfutils-0.187-debuginfod-client-fd-leak.patch +# https://sourceware.org/bugzilla/show_bug.cgi?id=29122 +Patch4: elfutils-0.187-mhd_no_dual_stack.patch +# https://sourceware.org/bugzilla/show_bug.cgi?id=29123 +Patch5: elfutils-0.187-mhd_epoll.patch %description Elfutils is a collection of utilities, including stack (to show @@ -409,6 +413,10 @@ exit 0 %systemd_postun_with_restart debuginfod.service %changelog +* Fri May 6 2022 Mark Wielaard - 0.187-4 +- Add elfutils-0.187-mhd_no_dual_stack.patch +- Add elfutils-0.187-mhd_epoll.patch + * Thu May 5 2022 Mark Wielaard - 0.187-3 - Add elfutils-0.187-debuginfod-client-fd-leak.patch