#5 Import regression tests from RHEL
Merged 3 years ago by codonell. Opened 3 years ago by vkadlcik.
Unknown source rawhide  into  rawhide

@@ -0,0 +1,61 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option

+ 

+ export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE reproducer.c

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@touch $(METADATA)

+ 	@echo "Owner:        Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:         $(TEST)" >> $(METADATA)

+ 	@echo "Path:         $(TEST_DIR)"       >> $(METADATA)

+ 	@echo "TestVersion:  $(TESTVERSION)"    >> $(METADATA)

+ 	@echo "Description:  ltrace hangs while tracing child process with -f option" >> $(METADATA)

+ 	@echo "Bug:          211135" >> $(METADATA)

+ 	@echo "Type:         Regression" >> $(METADATA)

+ 	@echo "TestTime:     5m" >> $(METADATA)

+ 	@echo "RunFor:       $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     glibc-devel" >> $(METADATA)

+ 	@echo "License:      GPLv3+" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

+ 

@@ -0,0 +1,2 @@

+ ltrace could possibly crash/hang when tracing fork() on ppc/ppc64

+ in ltrace with option "-f".

@@ -0,0 +1,17 @@

+ summary: ltrace hangs while tracing child process with -f option

+ description: |

+     ltrace could possibly crash/hang when tracing fork() on ppc/ppc64

+     in ltrace with option "-f".

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - glibc-devel

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=211135

+ extra-summary: /tools/ltrace/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option

+ extra-task: /tools/ltrace/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option

@@ -0,0 +1,31 @@

+ /* Ltrace Test : trace-fork.c

+  *    Objectives  : Verify that ltrace can trace to child process after

+  *    fork called.

+  *

+  *    This file was written by Yao Qi <qiyao@cn.ibm.com>

+  *

+  */

+ 

+ #include <stdio.h>

+ #include <sys/types.h>

+ 

+ void child() {

+         printf("Fork Child\n");

+         sleep(1);

+ }

+ 

+ int main() {

+         pid_t pid;

+         pid = fork ();

+ 

+         if (pid == -1)

+                 printf("fork failed!\n");

+         else if (pid == 0)

+                 child();

+         else {

+                 printf("My child pid is %d\n",pid);

+                 wait();

+         }

+         return 0;

+ }

+ 

@@ -0,0 +1,49 @@

+ #!/bin/bash

+ #

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/bin/rhts_environment.sh

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+ 	rlPhaseStartSetup "Gathering information & compiling"

+ 		rlAssertRpm $PACKAGE

+ 		rlAssertRpm $(rpm -qf $(which gcc))

+ 		rlShowRunningKernel

+ 

+ 		rlRun "gcc reproducer.c -o reproducer" 0 "Compiling the reproducer"

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartTest

+ 		rlRun "ltrace -o ltrace-test.log -f ./reproducer" 0 "'ltrace -f' is crunching the reproducer"

+ 

+ 		rlAssertGrep "My child pid is" ltrace-test.log

+ 		rlAssertNotGrep "signal from wrong pid" ltrace-test.log

+ 		rlAssertGrep "SIGCHLD (Child exited)" ltrace-test.log

+ 		rlAssertNotGrep "Cannot attach to pid" ltrace-test.log

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartCleanup "Doing clean-up"

+ 		rlBundleLogs "ltrace-outputs" ltrace-test.log

+ 		rlRun "rm -f ltrace-test.log reproducer"

+ 	rlPhaseEnd

+ 	rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,61 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/211163-ltrace-with--c-omit-execl-call

+ 

+ export TEST=/tools/ltrace/Regression/211163-ltrace-with--c-omit-execl-call

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE reproducer.c

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@echo "Owner:           Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     ltrace with -c omit execl call" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace gcc glibc-devel" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv3+" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             211163 528466" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,1 @@

+ ltrace with -c omit execl call

@@ -0,0 +1,17 @@

+ summary: ltrace with -c omit execl call

+ description: |

+     ltrace with -c omit execl call

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ - glibc-devel

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=211163

+ extra-summary: /tools/ltrace/Regression/211163-ltrace-with--c-omit-execl-call

+ extra-task: /tools/ltrace/Regression/211163-ltrace-with--c-omit-execl-call

@@ -0,0 +1,9 @@

+ #include <stdio.h>

+ #include <unistd.h>

+ 

+ int main()

+ {

+         execl("/bin/ls","ls",0);

+         return 0;

+ }

+ 

@@ -0,0 +1,109 @@

+ #!/bin/bash

+ 

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/bin/rhts_environment.sh

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE=$(rpm -qf $(which ltrace))

+ 

+ rlJournalStart

+     rlPhaseStartSetup "Gathering information & compiling"

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlShowRunningKernel

+ 

+         rlRun "gcc reproducer.c -o reproducer" 0 "Compiling the reproducer"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "Counting the number of calls noted by ltrace"

+         rlRun "ltrace -o ltrace-test-c.log -c ./reproducer" 0 "Execute reproducer"

+         rlRun "cat -n ltrace-test-c.log"

+         # Check if exec is not omitted (rhbz#797761)

+         rlAssertGrep "exec" ltrace-test-c.log

+ 

+         # Check if ltrace is able to trace system binaries with execl /bin/ls (rhbz#1618748/rhbz#1655368/rhbz#1731119)

+         if rlIsRHEL 8; then

+             case "$PACKAGE" in

+                 ltrace*)

+                     # bz#1655368 was fixed on ltrace-0.7.91-28.el8.x86_64, but it is still reproducible on ppc64le

+                     if [ "$(arch)" = "ppc64le" ]; then

+                         rlLogWarning "RHEL8 ltrace fails to trace system binaries on ppc64le due to bz#1618748/bz#1655368, hence skipping failure checking"

+                         skip_test=1

+                     fi

+                     ;;

+                 gcc-toolset-*)

+                     if [ "$(arch)" = "ppc64le" ]; then

+                         rlLogWarning "RHEL8 gcc-toolset-*-ltrace fails to trace system binaries on ppc64le due to bz#1731119, hence skipping failure checking"

+                         skip_test=1

+                     fi

+                     ;;

+             esac

+         elif rlIsRHEL 9 && [[ $PACKAGE =~ ^ltrace ]] && [ "$(arch)" = "ppc64le" ]; then

+             rlLogWarning "RHEL-9 ltrace fails to trace system binaries on ppc64le due to bz#1906881, hence skipping failure checking"

+             skip_test=1

+         elif rlIsFedora 33 && [ "$(arch)" = "ppc64le" ]; then

+             rlLogWarning "FC33 ltrace fails to trace system binaries on ppc64le due to bz#1902770, hence skipping failure checking"

+             skip_test=1

+         fi

+ 

+         rlRun "n_lines_c=$(grep -c . ltrace-test-c.log)"

+         if [ $n_lines_c -gt 20 ]; then

+             if [ $skip_test ]; then

+                 rlLogWarning "Test was skipped but it seems ok. Review skip check."

+             fi

+         else

+             if [ $skip_test ]; then

+                 rlLogInfo"'ltrace -c ./reproducer' does not report more than 20 lines of trace summary output (expected failure)"

+             else

+                 rlFail "'ltrace -c ./reproducer' does not report more than 20 lines of trace summary output"

+             fi

+         fi

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "Looking for SEGFAULT of reproducer under ltrace"

+         rlRun "ltrace -o ltrace-test.log ./reproducer" 0 "Execute reproducer"

+         rlRun "cat -n ltrace-test.log"

+         # Check if neither segfault nor 'unexpected breakpoint' errors occur (rhbz#211163)

+         rlAssertNotGrep "SIGSEGV" ltrace-test.log

+         rlAssertNotGrep "unexpected breakpoint" ltrace-test.log

+         # Check if exec is not omitted (rhbz#797761)

+         rlAssertGrep "exec" ltrace-test.log

+ 

+         # Check if ltrace is able to trace system binaries with execl /bin/ls (rhbz#1618748/rhbz#1655368/rhbz#1731119)

+         rlRun "n_lines=$(grep -c . ltrace-test.log)"

+         if [ $n_lines -gt 20 ]; then

+             if [ $skip_test ]; then

+                 rlLogWarning "Test was skipped but it seems ok. Review skip check."

+             fi

+         else

+             if [ $skip_test ]; then

+                 rlLogInfo"'ltrace ./reproducer' does not report more than 20 lines of trace summary output (expected failure)"

+             else

+                 rlFail "'ltrace ./reproducer' does not report more than 20 lines of trace summary output"

+             fi

+         fi

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup "Doing clean-up"

+         rlBundleLogs "ltrace-outputs" ltrace-test.log ltrace-test-c.log

+         rlRun "rm -f ltrace-test.log ltrace-test-c.log reproducer"

+     rlPhaseEnd

+     rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,60 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/223732-man-page-of-ltrace

+ 

+ export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@touch $(METADATA)

+ 	@echo "Owner:        Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:         $(TEST)" >> $(METADATA)

+ 	@echo "Path:         $(TEST_DIR)"       >> $(METADATA)

+ 	@echo "TestVersion:  $(TESTVERSION)"    >> $(METADATA)

+ 	@echo "Description:  man page of ltrace had a note about ELF32-support-only" >> $(METADATA)

+ 	@echo "Bug:          223732" >> $(METADATA)

+ 	@echo "Type:         Regression" >> $(METADATA)

+ 	@echo "TestTime:     5m" >> $(METADATA)

+ 	@echo "RunFor:       $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "License:      GPLv3+" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

+ 

@@ -0,0 +1,7 @@

+ Man page of ltrace said,

+ 'Only ELF32 binaries are supported.'

+ 

+ I seemed ltrace does not support ia64 architecture.

+ 

+ That's not true.

+ 

@@ -0,0 +1,21 @@

+ summary: man page of ltrace had a note about ELF32-support-only

+ description: |+

+     Man page of ltrace said,

+     'Only ELF32 binaries are supported.'

+ 

+     I seemed ltrace does not support ia64 architecture.

+ 

+     That's not true.

+ 

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=223732

+ extra-summary: /tools/ltrace/Regression/223732-man-page-of-ltrace

+ extra-task: /tools/ltrace/Regression/223732-man-page-of-ltrace

@@ -0,0 +1,41 @@

+ #!/bin/bash

+ 

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/bin/rhts_environment.sh

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE=ltrace

+ 

+ rlJournalStart

+ 	rlPhaseStartSetup "Gathering information"

+ 		rlShowPackageVersion $PACKAGE

+ 		rlShowRunningKernel

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartTest "Running tar inside ltrace"

+ 		man ltrace > trace.man

+ 		rlAssertNotGrep "Only ELF32 binaries are supported" trace.man

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartCleanup "Doing clean-up"

+ 		rm -f trace.man

+ 	rlPhaseEnd

+ 	rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,60 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/235671-ltrace-receives-SIGILL-signal

+ 

+ export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@touch $(METADATA)

+ 	@echo "Owner:        Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:         $(TEST)" >> $(METADATA)

+ 	@echo "Path:         $(TEST_DIR)"       >> $(METADATA)

+ 	@echo "TestVersion:  $(TESTVERSION)"    >> $(METADATA)

+ 	@echo "Description:  ltrace receives SIGILL signal and terminates" >> $(METADATA)

+ 	@echo "Bug:          235671" >> $(METADATA)

+ 	@echo "Type:         Regression" >> $(METADATA)

+ 	@echo "TestTime:     5m" >> $(METADATA)

+ 	@echo "RunFor:       $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "License:      GPLv3+" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

+ 

@@ -0,0 +1,2 @@

+ ltrace receives SIGILL signal instead of the ltraced program,

+ which terminates ltrace.

@@ -0,0 +1,16 @@

+ summary: ltrace receives SIGILL signal and terminates

+ description: |

+     ltrace receives SIGILL signal instead of the ltraced program,

+     which terminates ltrace.

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=235671

+ extra-summary: /tools/ltrace/Regression/235671-ltrace-receives-SIGILL-signal

+ extra-task: /tools/ltrace/Regression/235671-ltrace-receives-SIGILL-signal

@@ -0,0 +1,43 @@

+ #!/bin/bash

+ 

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/bin/rhts_environment.sh

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup "Gathering information"

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlShowRunningKernel

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "Running tar inside ltrace"

+         rlRun "ltrace -o ltrace-test.log tar" 0 "ltrace is crunching tar"

+         rlAssertNotGrep "SIGILL" ltrace-test.log -A1

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup "Doing clean-up"

+         rlBundleLogs "ltrace-outputs" ltrace-test.log

+         rlRun "rm -f ltrace-test.log"

+     rlPhaseEnd

+     rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,62 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/427444-ltrace-crashes-process-to-be-analysed

+ 

+ export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE reproducer.c

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@touch $(METADATA)

+ 	@echo "Owner:        Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:         $(TEST)" >> $(METADATA)

+ 	@echo "Path:         $(TEST_DIR)"       >> $(METADATA)

+ 	@echo "TestVersion:  $(TESTVERSION)"    >> $(METADATA)

+ 	@echo "Description:  ltrace crashes process to be analysed" >> $(METADATA)

+ 	@echo "Bug:          427444" >> $(METADATA)

+ 	@echo "Type:         Regression" >> $(METADATA)

+ 	@echo "TestTime:     5m" >> $(METADATA)

+ 	@echo "RunFor:       $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     gcc" >> $(METADATA)

+ 	@echo "Requires:     glibc-devel" >> $(METADATA)

+ 	@echo "License:      GPLv3+" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

+ 

@@ -0,0 +1,1 @@

+ ltrace could possibly crash traced application on s390 and s390x.

@@ -0,0 +1,17 @@

+ summary: ltrace crashes process to be analysed

+ description: |

+     ltrace could possibly crash traced application on s390 and s390x.

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ - glibc-devel

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=427444

+ extra-summary: /tools/ltrace/Regression/427444-ltrace-crashes-process-to-be-analysed

+ extra-task: /tools/ltrace/Regression/427444-ltrace-crashes-process-to-be-analysed

@@ -0,0 +1,69 @@

+ #include <stdio.h>

+ #include <stdlib.h>

+ #include <netdb.h>

+ #include <netinet/in.h>

+ #include <sys/socket.h>

+ 

+ 

+ #ifndef   NI_MAXHOST

+ #define   NI_MAXHOST 1025

+ #endif // NI_MAX_HOST

+ 

+ // On a DARWIN system EAI_OVERFLOW is define as EAI_MAX

+ #ifndef   EAI_OVERFLOW

+ #define   EAI_OVERFLOW EAI_MAX

+ #endif // EAI_OVERFLOW

+ 

+ int main(int argc, char *argv[])

+ {

+ // sleep before we can catch you via ltrace

+         sleep(5);

+         struct addrinfo * result;

+ 

+         size_t hostname_len = NI_MAXHOST;

+         char * hostname     = NULL;

+ 

+         int error;

+ 

+         if ( 0 != ( error = getaddrinfo( "www.example.com", NULL, NULL, &result ) ) )

+         {

+                 fprintf( stderr, "error using getaddrinfo: %s\n", gai_strerror( error ) );

+         }

+ 

+         if ( result )

+         {

+                 for( ; ; hostname_len *= 2 )

+                 {

+                         hostname = ( char * ) realloc( hostname, hostname_len );

+ 

+                         if ( NULL == hostname )

+                         {

+                                 perror( "" );

+                                 break;  

+                         }

+ 

+                         error = getnameinfo( result->ai_addr, result->ai_addrlen, hostname, hostname_len, NULL, 0, 0 );

+ 

+                         if ( 0 == error )

+                         {

+                                 break;

+                         }

+ 

+                         if ( EAI_OVERFLOW != error )

+                         {

+                                 fprintf( stderr, "error using getaddrinfo: %s\n", gai_strerror( error ) );

+                                 break;

+                         }

+                 }

+ 

+                 if ( NULL != hostname )

+                 {

+                         free( hostname );

+                 }

+ 

+                 freeaddrinfo( result );

+         }

+ 

+         return 0;

+ }

+ 

@@ -0,0 +1,46 @@

+ #!/bin/bash

+ #

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/bin/rhts_environment.sh

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup "Gathering information & compiling"

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlShowRunningKernel

+ 

+         rlRun "gcc reproducer.c -o reproducer" 0 "Compiling the reproducer"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "Testing the executable under ltrace"

+         rlRun "./reproducer &" 0 "Fire the reproducer in the background"

+         rlWatchdog "ltrace -o ltrace-test.log -p $( pgrep reproducer )" 200

+         rlAssertNotGrep "gimme_arg called with wrong arguments" ltrace-test.log

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup "Doing clean-up"

+         rlBundleLogs "ltrace-outputs" ltrace-test.log

+         rlRun "rm -f ltrace-test.log reproducer"

+     rlPhaseEnd

+     rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,60 @@

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ # 

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ 

+ TOPLEVEL_NAMESPACE=/tools

+ PACKAGE_NAME=ltrace

+ RELATIVE_PATH=Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file

+ 

+ export TEST=$(TOPLEVEL_NAMESPACE)/$(PACKAGE_NAME)/$(RELATIVE_PATH)

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .PHONY: all install download clean

+ 

+ run: $(FILES) build

+ 	./runtest.sh

+ 

+ build: $(BUILT_FILES)

+ 	chmod a+x ./runtest.sh 

+ 

+ clean:

+ 	rm -f *~ $(BUILT_FILES)

+ 

+ 

+ include /usr/share/rhts/lib/rhts-make.include

+ 

+ 

+ $(METADATA): Makefile

+ 	@touch $(METADATA)

+ 	@echo "Owner:        Michal Nowak <mnowak@redhat.com>" > $(METADATA)

+ 	@echo "Name:         $(TEST)" >> $(METADATA)

+ 	@echo "Path:         $(TEST_DIR)"       >> $(METADATA)

+ 	@echo "TestVersion:  $(TESTVERSION)"    >> $(METADATA)

+ 	@echo "Description:  When executing ltrace command with both -o and -c option, the result of ltrace command is not output into file" >> $(METADATA)

+ 	@echo "Bug:          447404" >> $(METADATA)

+ 	@echo "Type:         Regression" >> $(METADATA)

+ 	@echo "TestTime:     5m" >> $(METADATA)

+ 	@echo "RunFor:       $(PACKAGE_NAME)" >> $(METADATA)

+ 	@echo "Requires:     $(PACKAGE_NAME) gcc" >> $(METADATA)

+ 	@echo "License:      GPLv3+" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

+ 

@@ -0,0 +1,4 @@

+ When executing ltrace command with both -o and -c option, 

+ the result of ltrace command is not output into the file 

+ which is specified by -o option.

+ 

@@ -0,0 +1,18 @@

+ summary: When executing ltrace command with both -o and -c option, the result of ltrace

+     command is not output into file

+ description: "When executing ltrace command with both -o and -c option, \nthe result\

+     \ of ltrace command is not output into the file \nwhich is specified by -o option.\n\

+     \n"

+ contact: Michal Nowak <mnowak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=447404

+ extra-summary: /tools/ltrace/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file

+ extra-task: /tools/ltrace/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file

@@ -0,0 +1,103 @@

+ #!/bin/bash

+ #

+ # Copyright (c) 2008 Red Hat, Inc. All rights reserved.

+ #

+ # 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 3 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/>.

+ #

+ # Author: Michal Nowak <mnowak@redhat.com>

+ 

+ # source the test script helpers

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf --queryformat '%{name}' $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlShowRunningKernel

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "pushd $TmpDir"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "ltrace with -o and -c options tracing testing binary"

+         rlRun "echo 'int main(){alarm(42);return 0;}'| gcc -x c -o test.bin -"

+         rlRun "ltrace -o ltrace-test.log -c ./test.bin" 0 "ltrace is crunching a testing binary"

+         rlRun -l "cat ltrace-test.log"

+         rlAssertGrep "alarm" ltrace-test.log

+         rlAssertGreater "There has to be something in output file" $(cat ltrace-test.log | wc -l) 5

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "ltrace with -o and -c options tracing system binary"

+         rlRun "ltrace -o ltrace-test-sys.log -c ls" 0 "ltrace is crunching ls"

+         rlRun -l "cat ltrace-test-sys.log"

+         if rlIsRHEL 8; then

+             case "$PACKAGE" in

+                 "ltrace")

+                     # bz#1655368 was fixed on ltrace-0.7.91-28.el8.x86_64, but it is still reproducible on ppc64le

+                     if [ "$(arch)" = "ppc64le" ]; then

+                         rlLogWarning "RHEL8 ltrace fails to trace system binaries on ppc64le due to bz#1618748/bz#1655368, hence skipping failure checking"

+                         skip_system_binary_test=1

+                     fi

+                     ;;

+                 "gcc-toolset-9-ltrace" | "gcc-toolset-10-ltrace")

+                     if [ "$(arch)" = "ppc64le" ]; then

+                         rlLogWarning "RHEL8 gcc-toolset-9-ltrace/gcc-toolset-10-ltrace fails to trace system binaries on ppc64le due to bz#1731119, hence skipping failure checking"

+                         skip_system_binary_test=1

+                     fi

+                     ;;

+             esac

+         elif rlIsRHEL 9 && [[ $PACKAGE =~ ^ltrace ]] && [ "$(arch)" = "ppc64le" ]; then

+             rlLogWarning "RHEL-9 ltrace fails to trace system binaries on ppc64le due to bz#1906881, hence skipping failure checking"

+             skip_system_binary_test=1

+         elif rlIsFedora 33 && [ "$(arch)" = "ppc64le" ]; then

+             rlLogWarning "FC33 ltrace fails to trace system binaries on ppc64le due to bz#1902770, hence skipping failure checking"

+             skip_system_binary_test=1

+         fi

+ 

+         # ltrace no longer reports __libc_start_main on rhel-8 x86_64 (rhbz#1654734)

+         if grep "ioctl" ltrace-test-sys.log; then

+             if [ $skip_system_binary_test ]; then

+                 rlLogWarning "Test was skipped but it seems ok. Review skip check."

+             fi

+         else

+             if [ $skip_system_binary_test ]; then

+                 rlLogInfo "ltrace output does not contain ioctl calls (expected failure)"

+             else

+                 rlFail "ltrace output does not contain ioctl calls"

+             fi

+         fi

+ 

+         rlRun "n_lines=$(grep -c . ltrace-test-sys.log)"

+         if [ $n_lines -gt 10 ]; then

+             if [ $skip_system_binary_test ]; then

+                 rlLogWarning "Test was skipped but it seems ok. Review skip check."

+             fi

+         else

+             if [ $skip_system_binary_test ]; then

+                 rlLogInfo "ltrace output does not contain more than 10 lines (expected failure)"

+             else

+                 rlFail "ltrace output does not contain more than 10 lines"

+             fi

+         fi

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup "Doing clean-up"

+         rlFileSubmit ltrace-test.log

+         rlFileSubmit ltrace-test-sys.log

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+     rlPhaseEnd

+     rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

+ #   Description: The test tries to workaround of a bz1051221 a little.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2014 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE hello.c

+ 

+ .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:           Michael Petlan <mpetlan@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     The test tries to workaround of a bz1051221 a little." >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace prelink binutils gcc" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             1051221" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,3 @@

+ PURPOSE of /tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

+ Description: The test tries to workaround of a bz1051221 a little.

+ Author: Michael Petlan <mpetlan@redhat.com>

@@ -0,0 +1,7 @@

+ #include <stdlib.h>

+ #include <stdio.h>

+ 

+ int main(void)

+ {

+ 	puts("Hello world...\n");

+ }

@@ -0,0 +1,17 @@

+ summary: The test tries to workaround of a bz1051221 a little.

+ description: ''

+ contact: Michael Petlan <mpetlan@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - prelink

+ - binutils

+ - gcc

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=1051221

+ extra-summary: /tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

+ extra-task: /tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

@@ -0,0 +1,74 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64

+ #   Description: The test tries to workaround of a bz1051221 a little.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2014 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="ltrace"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "cp hello.c $TmpDir/"

+         rlRun "pushd $TmpDir"

+         rlRun "gcc -o hello-raw hello.c"

+         rlRun "cp hello-raw hello-stripped"

+         rlRun "strip ./hello-stripped"

+         if rpm -q prelink; then

+             rlRun "cp hello-raw hello-prelinked"

+             rlRun "cp hello-raw hello-stripped-prelinked"

+             rlRun "cp hello-raw hello-prelinked-stripped"

+             rlRun "prelink ./hello-prelinked"

+             rlRun "strip ./hello-stripped-prelinked"

+             rlRun "prelink hello-stripped-prelinked"

+             rlRun "prelink hello-prelinked-stripped"

+             rlRun "strip hello-prelinked-stripped"

+         fi

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+         for binary in hello-*; do

+             rlLog "==== TESTING $binary ===="

+             rlRun "{ ltrace -e __libc_start_main ./$binary 2> err_$binary.log > out_$binary.log; } 2> superr_$binary.log"

+             rlAssertNotGrep "Aborted" superr_$binary.log

+             rlAssertNotGrep "SIGSEGV" superr_$binary.log

+             rlAssertNotGrep "Segmentation fault" superr_$binary.log

+             rlAssertNotGrep "killed" err_$binary.log

+             rlAssertNotGrep "SIGSEGV" err_$binary.log

+             rlAssertNotGrep "Segmentation fault" err_$binary.log

+             rlLog "+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+"

+         done

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

+ #   Description: The test tries to ltrace a non-existing app, ltrace should handle that.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2014 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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:           Michael Petlan <mpetlan@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     The test tries to ltrace a non-existing app, ltrace should handle that." >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             1053765" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,3 @@

+ PURPOSE of /tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

+ Description: The test tries to ltrace a non-existing app, ltrace should handle that.

+ Author: Michael Petlan <mpetlan@redhat.com>

@@ -0,0 +1,14 @@

+ summary: The test tries to ltrace a non-existing app, ltrace should handle that.

+ description: ''

+ contact: Michael Petlan <mpetlan@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=1053765

+ extra-summary: /tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

+ extra-task: /tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

@@ -0,0 +1,59 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz1053765-invalid-command-assertion-failure

+ #   Description: The test tries to ltrace a non-existing app, ltrace should handle that.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2014 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+     	rlRun "{ ltrace blahblahblah0123546213208412321 2> err.log > out.log; } 2> superr.log" 1 "Running ltrace with a non-existing binary."

+     	rlAssertNotGrep "Aborted" superr.log

+     	rlAssertNotGrep "destroy" err.log

+     	rlAssertNotGrep "Assertion" err.log

+     	rlAssertNotGrep "assertion" err.log

+     	rlAssertNotGrep "relocs" err.log

+     	rlAssertNotGrep "failed" err.log

+     	echo "==== stderr ===="

+     	cat err.log

+     	echo "==== stdout ===="

+     	cat out.log

+     	echo "==== external stderr ===="

+     	cat superr.log

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "rm err.log out.log superr.log"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,63 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ #   Description: bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ #   Author: Martin Cermak <mcermak@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2015 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/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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 <mcermak@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        10m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace gcc gawk" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2+" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             1158713" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,5 @@

+ PURPOSE of /tools/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ Description: bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ Author: Martin Cermak <mcermak@redhat.com>

+ Bug summary: ltrace assigns wrong names to glibc PLT slots

+ Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1158713

@@ -0,0 +1,18 @@

+ summary: bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ description: |

+     Bug summary: ltrace assigns wrong names to glibc PLT slots

+     Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1158713

+ contact: Martin Cermak <mcermak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ - gawk

+ duration: 10m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=1158713

+ extra-summary: /tools/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ extra-task: /tools/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

@@ -0,0 +1,107 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ #   Description: bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots

+ #   Author: Martin Cermak <mcermak@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2015 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="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlRun "TMPD=$(mktemp -d)"

+         rlRun "pushd $TMPD"

+ 

+         cat > test.c <<EOFA

+ #include <stdlib.h>

+ #include <stdio.h>

+ #include <sys/types.h>

+ #include <pwd.h>

+ 

+ int main()

+ {

+     char *s = malloc(1000);

+ 

+     // trigger a free() call from libc:

+     setpwent();

+     getpwent();

+     endpwent();

+ 

+     // print maps

+     sprintf(s, "grep -F '[heap]' /proc/%d/maps", getpid());

+     system (s);

+ 

+     free(s);

+ }

+ EOFA

+ 

+         cat > test.awk <<EOFB

+ BEGIN {

+     addrindex = 0

+ }

+ 

+ /libc.*free\(0x[0-9a-f]+\)/ {

+     match(\$0,/0x[0-9a-f]+/,m)

+     addrs[addrindex++] = strtonum(m[0])

+ }

+ 

+ /\[heap\]/ {

+     sub("-", " ", \$0)

+     split(\$0, a, " ")

+     limit_min = strtonum("0x"a[1])

+     limit_max = strtonum("0x"a[2])

+ }

+ 

+ END {

+     for (i=0; i<addrindex; i++) {

+         if (addrs[i] < limit_min) {

+             print "ERROR 1 ("addrs[i]"<"limit_min")"

+             exit 1

+         }

+         if (addrs[i] > limit_max) {

+             print "ERROR 2 ("addrs[i]">"limit_max")"

+             exit 2

+         }

+     }

+ }

+ EOFB

+ 

+         rlRun "gcc test.c -o test"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+         rlRun "ltrace -e free ./test |& tee log | awk -f test.awk" || \

+             rlRun "cat log"

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TMPD"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

+ #   Description: Test for BZ#1360259 (ltrace crashes when run on certain processes with the -S option)

+ #   Author: Edjunior Machado <emachado@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   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/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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:           Edjunior Machado <emachado@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     Test for BZ#1360259 (ltrace crashes when run on certain processes with the -S option)" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace dbus" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2+" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             1360259" >> $(METADATA)

+ 	@echo "Releases:        -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,5 @@

+ PURPOSE of /tools/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

+ Description: Test for BZ#1360259 (ltrace crashes when run on certain processes with the -S option)

+ Author: Edjunior Machado <emachado@redhat.com>

+ Bug summary: ltrace crashes when run on certain processes with the -S option

+ Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1360259

@@ -0,0 +1,18 @@

+ summary: Test for BZ#1360259 (ltrace crashes when run on certain processes with the

+     -S option)

+ description: |

+     Bug summary: ltrace crashes when run on certain processes with the -S option

+     Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1360259

+ contact: Edjunior Machado <emachado@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - dbus

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=1360259

+ extra-summary: /tools/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

+ extra-task: /tools/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

@@ -0,0 +1,71 @@

+ #!/bin/bash

+ # vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option

+ #   Description: Test for BZ#1360259 (ltrace crashes when run on certain processes with the -S option)

+ #   Author: Edjunior Machado <emachado@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   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

+ 

+ CMD='ltrace'

+ BIN=$(which --skip-alias $CMD)

+ PACKAGE="${PACKAGE:-$(rpm -qf --qf='%{name}\n' $BIN)}"

+ 

+ if rlIsRHEL 9 || rlIsFedora; then

+     PROC_NAME=dbus-broker

+     SERVICE_NAME=dbus-broker

+ elif rlIsRHEL 6; then

+     PROC_NAME=dbus-daemon

+     SERVICE_NAME=messagebus

+ else

+     PROC_NAME=dbus-daemon

+     SERVICE_NAME=dbus

+ fi

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlRun "pgrep $PROC_NAME || service $SERVICE_NAME start" 0 "Checking/starting $SERVICE_NAME"

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "pushd $TmpDir"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+         rlRun "PID=$(pidof $PROC_NAME)"

+         # try to ltrace dbus-daemon. If there is a bug (BZ#1360259), it will crash

+         rlWatchdog "ltrace -S -p $PID > output.log  2>&1" 30 INT

+         rlAssertEquals "ltrace is expected to be terminated by watchdog" 1 "$?"

+         rlLog "output.log: $(cat output.log)"

+         rlAssertNotGrep "\(Assertion.*failed\|Segmentation fault\)" output.log

+         rlAssertEquals "$PROC_NAME is expected to be still running" $PID "$(pidof $PROC_NAME)"

+         rlFileSubmit output.log

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+         rlRun "service $SERVICE_NAME status --no-pager || service $SERVICE_NAME start" 0 "Checking/starting $SERVICE_NAME"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

+ #   Description: Test for BZ#754096 (ltrace crashes on PowerPC if tracing is limited by)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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:           Miroslav Franc <mfranc@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     Test for BZ#754096 (ltrace crashes on PowerPC if tracing is limited by)" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        2m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             754096" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,5 @@

+ PURPOSE of /tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

+ Description: Test for BZ#754096 (ltrace crashes on PowerPC if tracing is limited by)

+ Author: Miroslav Franc <mfranc@redhat.com>

+ Bug summary: ltrace crashes on PowerPC if tracing is limited by `-e' to event not present in trace

+ Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=754096

@@ -0,0 +1,16 @@

+ summary: Test for BZ#754096 (ltrace crashes on PowerPC if tracing is limited by)

+ description: |

+     Bug summary: ltrace crashes on PowerPC if tracing is limited by `-e' to event not present in trace

+     Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=754096

+ contact: Miroslav Franc <mfranc@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ duration: 2m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=754096

+ extra-summary: /tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

+ extra-task: /tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

@@ -0,0 +1,52 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by

+ #   Description: Test for BZ#754096 (ltrace crashes on PowerPC if tracing is limited by)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "pushd $TmpDir"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+         rlRun "ltrace -e puts /bin/true"

+         rlRun "ltrace -e sprintf /bin/true"

+         rlRun "ltrace -e puts -e gets /bin/true"

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,65 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

+ #   Description: The test tries to ltrace an app which uses execl calls.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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:           Michael Petlan <mpetlan@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     The test tries to ltrace an app which uses execl calls." >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace" >> $(METADATA)

+ 	@echo "Requires:        glibc-devel" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             797761" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,3 @@

+ PURPOSE of /tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

+ Description: The test tries to ltrace an app which uses execl calls.

+ Author: Michael Petlan <mpetlan@redhat.com>

@@ -0,0 +1,15 @@

+ summary: The test tries to ltrace an app which uses execl calls.

+ description: ''

+ contact: Michael Petlan <mpetlan@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - glibc-devel

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=797761

+ extra-summary: /tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

+ extra-task: /tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

@@ -0,0 +1,69 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz797761-ltrace-c-ommits-execl-call

+ #   Description: The test tries to ltrace an app which uses execl calls.

+ #   Author: Michael Petlan <mpetlan@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="ltrace"

+ 

+ create_reproducer()

+ {

+ cat <<EOF > reproducer.c

+ #include <stdio.h>

+ #include <unistd.h>

+ int main ()

+ {

+   execl("/bin/ls","ls",0);

+   return 0;

+ }

+ EOF

+ }

+ 

+ rlJournalStart

+ 	rlPhaseStartSetup

+ 		rlAssertRpm $PACKAGE

+ 		rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+ 		rlRun "pushd $TmpDir"

+ 		create_reproducer

+ 		rlRun "gcc -o reproducer reproducer.c"

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartTest

+ 		# The main purpose of this section is to check if the file ltrace-c.log contains the 'exec' substring.

+ 		rlRun "ltrace ./reproducer 2>&1 >/dev/null | tee ltrace.log"

+ 		rlRun "ltrace -c ./reproducer 2>&1 >/dev/null | tee ltrace-c.log"

+ 		rlAssertGrep "exec" ltrace.log

+ 		rlAssertGrep "exec" ltrace-c.log

+ 	rlPhaseEnd

+ 

+ 	rlPhaseStartCleanup

+ 		rlRun "popd"

+ 		rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+ 	rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,67 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

+ #   Description: Test for BZ#868281 (ltrace doesn't work on PIE binaries)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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:           Miroslav Franc <mfranc@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     Test for BZ#868281 (ltrace doesn't work on PIE binaries)" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace gcc" >> $(METADATA)

+ 	@echo "Requires:        libgcc.i686 glibc-devel.i686" >> $(METADATA) # 32-bit

+ 	@echo "Requires:        libgcc.ppc64 glibc-devel.ppc64" >> $(METADATA) # 32-bit

+ 	@echo "Requires:        libgcc.s390 glibc-devel.s390" >> $(METADATA) # 32-bit

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             868281" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,5 @@

+ PURPOSE of /tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

+ Description: Test for BZ#868281 (ltrace doesn't work on PIE binaries)

+ Author: Miroslav Franc <mfranc@redhat.com>

+ Bug summary: ltrace doesn't work on PIE binaries

+ Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=868281

@@ -0,0 +1,23 @@

+ summary: Test for BZ#868281 (ltrace doesn't work on PIE binaries)

+ description: |

+     Bug summary: ltrace doesn't work on PIE binaries

+     Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=868281

+ contact: Miroslav Franc <mfranc@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ - libgcc.i686

+ - glibc-devel.i686

+ - libgcc.ppc64

+ - glibc-devel.ppc64

+ - libgcc.s390

+ - glibc-devel.s390

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=868281

+ extra-summary: /tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

+ extra-task: /tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

@@ -0,0 +1,113 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries

+ #   Description: Test for BZ#868281 (ltrace doesn't work on PIE binaries)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ LTRACE_RPM=$(rpm -qf `which ltrace`)

+ GCC="${GCC:-$(which gcc)}"

+ GCC_RPM=$(rpm -qf $GCC)

+ BINUTILS_RPM=$(rpm -qf `which ld`)

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $LTRACE_RPM

+         rlAssertRpm $GCC_RPM

+         rlAssertRpm $BINUTILS_RPM

+         for arch in $(rlGetPrimaryArch) $(rlGetSecondaryArch); do

+             rlCheckRpm glibc.$arch

+         done

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "pushd $TmpDir"

+ 

+         if [ -d /usr/lib64 ]; then

+             ARCH=`uname -i`

+             if [[ $ARCH =~ s390.* ]]; then

+                 if rlIsRHEL '>=8'; then

+                     rlLogInfo "RHEL-8 and newer do not support s390x 31-bit compilation"

+                     MBITS=

+                 else

+                     MBITS=31

+                     if [[ "$LTRACE_RPM" =~ devtoolset-(9|10) ]] ; then

+                         rlLogInfo "devtoolset-(9|10)-gcc do not support s390, hence using base gcc"

+                         rlRun "GCC=/usr/bin/gcc"

+                         rlAssertRpm $(rpm -qf $GCC)

+                     fi

+                 fi

+             elif [[ $ARCH =~ ia64|aarch64|ppc64le ]]; then

+                 rlLogInfo "$ARCH does not support 32-bit compilation"

+                 MBITS=

+             else

+                 MBITS=32

+             fi

+         fi

+ 

+         rlLogInfo "MBITS=$MBITS"

+ 

+         rlRun "echo 'int main(){alarm(42);return 0;}'| $GCC -fPIE -pie -x c -o a-native.out  -"

+         rlAssertExists a-native.out

+ 

+         if [ -n "$MBITS" ]; then

+             rlRun "echo 'int main(){alarm(42);return 0;}'| $GCC -fPIE -pie -m$MBITS -x c -o a-$MBITS.out  -"

+             rlAssertExists a-$MBITS.out

+         fi

+     rlPhaseEnd

+ 

+     rlPhaseStartTest "Native binary testing"

+         rlRun "ltrace ./a-native.out > log 2>&1"

+         LIBC_START_MAIN=true

+         if [[ "$ARCH" = "x86_64" ]]; then

+             if rlIsRHEL '>=8' || rlIsFedora; then

+                 rlLogInfo "x86_64: Since RHEL-8 __libc_start_main has been optimized into non-PLT call, no longer ltraced (bz#1654734)"

+                 LIBC_START_MAIN=false

+             fi

+         fi

+         if $LIBC_START_MAIN; then

+             rlAssertGrep "__libc_start_main" log

+         fi

+         rlAssertGrep "alarm(42)" log

+         rlAssertGrep "exited (status 0)" log

+         rlLog "log file:\n$(cat log)"

+     rlPhaseEnd

+ 

+     if [ -n "$MBITS" ]; then

+         rlPhaseStartTest "$MBITS bit binary testing"

+             rlRun "ltrace ./a-$MBITS.out > log-$MBITS 2>&1"

+             rlAssertGrep "__libc_start_main" log-$MBITS

+             rlAssertGrep "alarm(42)" log-$MBITS

+             rlAssertGrep "exited (status 0)" log-$MBITS

+             rlLog "log file:\n$(cat log-$MBITS)"

+         rlPhaseEnd

+     fi

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

+ #   Description: Test for BZ#890961 ([RHEL 5] ltrace crashes with memory corruption due)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ export TEST=/tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE ksh_bug.ksh

+ 

+ .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:           Miroslav Franc <mfranc@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     Test for BZ#890961 ([RHEL 5] ltrace crashes with memory corruption due)" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        5m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace ksh ltrace-debuginfo" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 	@echo "Bug:             890961" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,5 @@

+ PURPOSE of /tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

+ Description: Test for BZ#890961 ([RHEL 5] ltrace crashes with memory corruption due)

+ Author: Miroslav Franc <mfranc@redhat.com>

+ Bug summary: [RHEL 5] ltrace crashes with memory corruption due to double free()

+ Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=890961

@@ -0,0 +1,8 @@

+ #!/usr/bin/env ksh

+ # from bugzilla https://bugzilla.redhat.com/show_bug.cgi?id=890961

+ 

+ echo "Before processing a subshell"

+ 

+ NUMFILES=$(ls | wc -l)

+ 

+ echo "After processing a subshell"

@@ -0,0 +1,18 @@

+ summary: Test for BZ#890961 ([RHEL 5] ltrace crashes with memory corruption due)

+ description: |

+     Bug summary: [RHEL 5] ltrace crashes with memory corruption due to double free()

+     Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=890961

+ contact: Miroslav Franc <mfranc@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - ksh

+ - ltrace-debuginfo

+ duration: 5m

+ link:

+ -   relates: https://bugzilla.redhat.com/show_bug.cgi?id=890961

+ extra-summary: /tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

+ extra-task: /tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

@@ -0,0 +1,58 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due

+ #   Description: Test for BZ#890961 ([RHEL 5] ltrace crashes with memory corruption due)

+ #   Author: Miroslav Franc <mfranc@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2013 Red Hat, Inc. All rights reserved.

+ #

+ #   This copyrighted material is made available to anyone wishing

+ #   to use, modify, copy, or redistribute it subject to the terms

+ #   and conditions of the GNU General Public License version 2.

+ #

+ #   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, write to the Free

+ #   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,

+ #   Boston, MA 02110-1301, USA.

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 

+ # Include Beaker environment

+ . /usr/share/beakerlib/beakerlib.sh || exit 1

+ 

+ PACKAGE="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlAssertRpm ksh

+         rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"

+         rlRun "cp ksh_bug.ksh $TmpDir"

+         rlRun "pushd $TmpDir"

+     rlPhaseEnd

+ 

+     for ((i=0; i<10; ++i)); do

+     rlPhaseStartTest "test... $i"

+         rlRun "LIBC_FATAL_STDERR_=1 ltrace -f -o ./ltrace.out ksh ./ksh_bug.ksh 2> log.err > log.out"

+         rlAssertNotGrep 'glibc detected'  log.err

+         rlRun "[[ $(wc -l <log.err) -eq 0 ]]"

+         rlAssertGrep 'Before processing a subshell' log.out

+         rlAssertGrep 'After processing a subshell' log.out

+     rlPhaseEnd

+     done; unset i

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TmpDir" 0 "Removing tmp directory"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

@@ -0,0 +1,64 @@

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Makefile of /tools/ltrace/Regression/pthread-program-assertion-failure

+ #   Description: pthread-program-assertion-failure

+ #   Author: Martin Cermak <mcermak@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2015 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/ltrace/Regression/pthread-program-assertion-failure

+ export TESTVERSION=1.0

+ 

+ BUILT_FILES=

+ 

+ FILES=$(METADATA) runtest.sh Makefile PURPOSE

+ 

+ .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 <mcermak@redhat.com>" > $(METADATA)

+ 	@echo "Name:            $(TEST)" >> $(METADATA)

+ 	@echo "TestVersion:     $(TESTVERSION)" >> $(METADATA)

+ 	@echo "Path:            $(TEST_DIR)" >> $(METADATA)

+ 	@echo "Description:     pthread-program-assertion-failure" >> $(METADATA)

+ 	@echo "Type:            Regression" >> $(METADATA)

+ 	@echo "TestTime:        10m" >> $(METADATA)

+ 	@echo "RunFor:          ltrace" >> $(METADATA)

+ 	@echo "Requires:        ltrace" >> $(METADATA)

+ 	@echo "Requires:        gcc" >> $(METADATA)

+ 	@echo "Requires:        glibc-devel" >> $(METADATA)

+ 	@echo "Priority:        Normal" >> $(METADATA)

+ 	@echo "License:         GPLv2+" >> $(METADATA)

+ 	@echo "Confidential:    no" >> $(METADATA)

+ 	@echo "Destructive:     no" >> $(METADATA)

+ 

+ 	rhts-lint $(METADATA)

@@ -0,0 +1,6 @@

+ PURPOSE of /tools/ltrace/Regression/pthread-program-assertion-failure

+ Description: pthread-program-assertion-failure

+ Author: Martin Cermak <mcermak@redhat.com>

+ 

+ Issue reproduced using an f20 arm (32 bit) fedora system with ltrace-0.7.91-13.fc22.armv7hl.

+ 

@@ -0,0 +1,16 @@

+ summary: pthread-program-assertion-failure

+ description: |+

+     Issue reproduced using an f20 arm (32 bit) fedora system with ltrace-0.7.91-13.fc22.armv7hl.

+ 

+ contact: Martin Cermak <mcermak@redhat.com>

+ component:

+ - ltrace

+ test: ./runtest.sh

+ framework: beakerlib

+ recommend:

+ - ltrace

+ - gcc

+ - glibc-devel

+ duration: 10m

+ extra-summary: /tools/ltrace/Regression/pthread-program-assertion-failure

+ extra-task: /tools/ltrace/Regression/pthread-program-assertion-failure

@@ -0,0 +1,83 @@

+ #!/bin/bash

+ # vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   runtest.sh of /tools/ltrace/Regression/pthread-program-assertion-failure

+ #   Description: pthread-program-assertion-failure

+ #   Author: Martin Cermak <mcermak@redhat.com>

+ #

+ # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ #

+ #   Copyright (c) 2015 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="$(rpm -qf $(which ltrace))"

+ 

+ rlJournalStart

+     rlPhaseStartSetup

+         rlAssertRpm $PACKAGE

+         rlAssertRpm $(rpm -qf $(which gcc))

+         rlRun "TMP=\$(mktemp -d)"

+         rlRun "pushd $TMP"

+         cat > test.c <<EOF

+ #include <pthread.h>

+ #include <stdio.h>

+ 

+ extern void print (char *);

+ 

+ #define PRINT_LOOP 10

+ 

+ void *

+ th_main (void *arg)

+ {

+   int i;

+   for (i=0; i<PRINT_LOOP; i++)

+     printf (arg);

+   return NULL;

+ }

+ 

+ int

+ main ()

+ {

+   pthread_t thread1;

+   pthread_t thread2;

+   pthread_t thread3;

+   pthread_create (&thread1, NULL, th_main, "aaa");

+   pthread_create (&thread2, NULL, th_main, "bbb");

+   pthread_create (&thread3, NULL, th_main, "ccc");

+   pthread_join (thread1, NULL);

+   pthread_join (thread2, NULL);

+   pthread_join (thread3, NULL);

+   return 0;

+ }

+ EOF

+         rlRun "gcc -lpthread test.c"

+     rlPhaseEnd

+ 

+     rlPhaseStartTest

+         rlRun "ltrace -L ./a.out"

+     rlPhaseEnd

+ 

+     rlPhaseStartCleanup

+         rlRun "popd"

+         rlRun "rm -r $TMP"

+     rlPhaseEnd

+ rlJournalPrintText

+ rlJournalEnd

It's the whole "Regression" category of RHEL's ltrace tests, except tests unsuitable for upstreaming and/or CI.

Further tests may follow later, in much smaller batches.

1 new commit added

  • Log more information in a regression test
3 years ago

1 new commit added

  • Remove RHEL's test for #1427140
3 years ago

This looks good to me. I'm going to merge this ahead of the pending CI scratch build and we'll fix any fallout.

Pull-Request has been merged by codonell

3 years ago
Metadata
Changes Summary 65
+61
file added
tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/Makefile
+2
file added
tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/PURPOSE
+17
file added
tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/main.fmf
+31
file added
tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/reproducer.c
+49
file added
tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/runtest.sh
+61
file added
tests/Regression/211163-ltrace-with--c-omit-execl-call/Makefile
+1
file added
tests/Regression/211163-ltrace-with--c-omit-execl-call/PURPOSE
+17
file added
tests/Regression/211163-ltrace-with--c-omit-execl-call/main.fmf
+9
file added
tests/Regression/211163-ltrace-with--c-omit-execl-call/reproducer.c
+109
file added
tests/Regression/211163-ltrace-with--c-omit-execl-call/runtest.sh
+60
file added
tests/Regression/223732-man-page-of-ltrace/Makefile
+7
file added
tests/Regression/223732-man-page-of-ltrace/PURPOSE
+21
file added
tests/Regression/223732-man-page-of-ltrace/main.fmf
+41
file added
tests/Regression/223732-man-page-of-ltrace/runtest.sh
+60
file added
tests/Regression/235671-ltrace-receives-SIGILL-signal/Makefile
+2
file added
tests/Regression/235671-ltrace-receives-SIGILL-signal/PURPOSE
+16
file added
tests/Regression/235671-ltrace-receives-SIGILL-signal/main.fmf
+43
file added
tests/Regression/235671-ltrace-receives-SIGILL-signal/runtest.sh
+62
file added
tests/Regression/427444-ltrace-crashes-process-to-be-analysed/Makefile
+1
file added
tests/Regression/427444-ltrace-crashes-process-to-be-analysed/PURPOSE
+17
file added
tests/Regression/427444-ltrace-crashes-process-to-be-analysed/main.fmf
+69
file added
tests/Regression/427444-ltrace-crashes-process-to-be-analysed/reproducer.c
+46
file added
tests/Regression/427444-ltrace-crashes-process-to-be-analysed/runtest.sh
+60
file added
tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/Makefile
+4
file added
tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/PURPOSE
+18
file added
tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/main.fmf
+103
file added
tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/runtest.sh
+64
file added
tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/Makefile
+3
file added
tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/PURPOSE
+7
file added
tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/hello.c
+17
file added
tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/main.fmf
+74
file added
tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/runtest.sh
+64
file added
tests/Regression/bz1053765-invalid-command-assertion-failure/Makefile
+3
file added
tests/Regression/bz1053765-invalid-command-assertion-failure/PURPOSE
+14
file added
tests/Regression/bz1053765-invalid-command-assertion-failure/main.fmf
+59
file added
tests/Regression/bz1053765-invalid-command-assertion-failure/runtest.sh
+63
file added
tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/Makefile
+5
file added
tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/PURPOSE
+18
file added
tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/main.fmf
+107
file added
tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/runtest.sh
+64
file added
tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/Makefile
+5
file added
tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/PURPOSE
+18
file added
tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/main.fmf
+71
file added
tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/runtest.sh
+64
file added
tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/Makefile
+5
file added
tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/PURPOSE
+16
file added
tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/main.fmf
+52
file added
tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/runtest.sh
+65
file added
tests/Regression/bz797761-ltrace-c-ommits-execl-call/Makefile
+3
file added
tests/Regression/bz797761-ltrace-c-ommits-execl-call/PURPOSE
+15
file added
tests/Regression/bz797761-ltrace-c-ommits-execl-call/main.fmf
+69
file added
tests/Regression/bz797761-ltrace-c-ommits-execl-call/runtest.sh
+67
file added
tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/Makefile
+5
file added
tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/PURPOSE
+23
file added
tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/main.fmf
+113
file added
tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/runtest.sh
+64
file added
tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/Makefile
+5
file added
tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/PURPOSE
+8
file added
tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/ksh_bug.ksh
+18
file added
tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/main.fmf
+58
file added
tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/runtest.sh
+64
file added
tests/Regression/pthread-program-assertion-failure/Makefile
+6
file added
tests/Regression/pthread-program-assertion-failure/PURPOSE
+16
file added
tests/Regression/pthread-program-assertion-failure/main.fmf
+83
file added
tests/Regression/pthread-program-assertion-failure/runtest.sh