diff --git a/.fmf/version b/.fmf/version deleted file mode 100644 index d00491f..0000000 --- a/.fmf/version +++ /dev/null @@ -1 +0,0 @@ -1 diff --git a/.gitignore b/.gitignore index 92e00dc..45c391d 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,3 @@ ltrace-*/ /ltrace-0.7.0.tar.bz2 /ltrace-0.7.2.tar.bz2 /ltrace-0.7.91.tar.bz2 -/ltrace-0.8.1.tar.bz2 diff --git a/gating.yaml b/gating.yaml deleted file mode 100644 index 4fab4ec..0000000 --- a/gating.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- !Policy -product_versions: - - fedora-* -decision_context: bodhi_update_push_stable -subject_type: koji_build -rules: - - !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional} ---- !Policy -product_versions: - - rhel-9 -decision_context: osci_compose_gate -rules: - - !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional} diff --git a/ltrace-0.7.91-W-use-after-free.patch b/ltrace-0.7.91-W-use-after-free.patch deleted file mode 100644 index 19e802f..0000000 --- a/ltrace-0.7.91-W-use-after-free.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -rup a/sysdeps/linux-gnu/ppc/plt.c b/sysdeps/linux-gnu/ppc/plt.c ---- a/sysdeps/linux-gnu/ppc/plt.c 2022-01-27 20:40:52.956980433 -0500 -+++ b/sysdeps/linux-gnu/ppc/plt.c 2022-01-27 20:41:37.031599771 -0500 -@@ -687,8 +687,8 @@ arch_elf_add_func_entry(struct process * - if (libsym == NULL - || library_symbol_init(libsym, addr, full_name, 1, - LS_TOPLT_NONE) < 0) { -- free(libsym); - delete_symbol_chain(libsym); -+ free(libsym); - libsym = NULL; - fprintf(stderr, "Couldn't add symbol %s" - "for tracing.\n", name); diff --git a/ltrace-0.7.91-XDG_CONFIG_DIRS.patch b/ltrace-0.7.91-XDG_CONFIG_DIRS.patch deleted file mode 100644 index 27638e6..0000000 --- a/ltrace-0.7.91-XDG_CONFIG_DIRS.patch +++ /dev/null @@ -1,151 +0,0 @@ -diff -rupN a/options.c b/options.c ---- a/options.c 2019-06-28 17:15:31.515626363 -0400 -+++ b/options.c 2019-06-28 17:18:59.490632337 -0400 -@@ -440,7 +440,8 @@ parse_int(const char *optarg, char opt, - } - - int --parse_colon_separated_list(const char *paths, struct vect *vec) -+parse_colon_separated_list(const char *paths, struct vect *vec, -+ enum opt_F_origin origin) - { - /* PATHS contains a colon-separated list of directories and - * files to load. It's modeled after shell PATH variable, -@@ -467,6 +468,7 @@ parse_colon_separated_list(const char *p - struct opt_F_t arg = { - .pathname = tok, - .own_pathname = tok == clone, -+ .origin = origin, - }; - if (VECT_PUSHBACK(vec, &arg) < 0) - /* Presumably this is not a deal-breaker. */ -@@ -494,16 +496,18 @@ opt_F_get_kind(struct opt_F_t *entry) - if (entry->kind == OPT_F_UNKNOWN) { - struct stat st; - if (lstat(entry->pathname, &st) < 0) { -- fprintf(stderr, "Couldn't stat %s: %s\n", -- entry->pathname, strerror(errno)); -+ if (entry->origin == OPT_F_CMDLINE) -+ fprintf(stderr, "Couldn't stat %s: %s\n", -+ entry->pathname, strerror(errno)); - entry->kind = OPT_F_BROKEN; - } else if (S_ISDIR(st.st_mode)) { - entry->kind = OPT_F_DIR; - } else if (S_ISREG(st.st_mode) || S_ISLNK(st.st_mode)) { - entry->kind = OPT_F_FILE; - } else { -- fprintf(stderr, "%s is neither a regular file, " -- "nor a directory.\n", entry->pathname); -+ if (entry->origin == OPT_F_CMDLINE) -+ fprintf(stderr, "%s is neither a regular file, " -+ "nor a directory.\n", entry->pathname); - entry->kind = OPT_F_BROKEN; - } - } -@@ -607,7 +611,8 @@ process_options(int argc, char **argv) - options.follow = 1; - break; - case 'F': -- parse_colon_separated_list(optarg, &opt_F); -+ parse_colon_separated_list(optarg, &opt_F, -+ OPT_F_CMDLINE); - break; - case 'h': - usage(); -diff -rupN a/options.h b/options.h ---- a/options.h 2019-06-28 17:15:31.515626363 -0400 -+++ b/options.h 2019-06-28 17:18:55.984632238 -0400 -@@ -1,6 +1,6 @@ - /* - * This file is part of ltrace. -- * Copyright (C) 2012,2013 Petr Machata, Red Hat Inc. -+ * Copyright (C) 2012, 2013, 2015 Petr Machata, Red Hat Inc. - * Copyright (C) 2009,2010 Joe Damato - * Copyright (C) 1998,2002,2008 Juan Cespedes - * Copyright (C) 2006 Ian Wienand -@@ -77,10 +77,16 @@ enum opt_F_kind { - OPT_F_DIR, - }; - -+enum opt_F_origin { -+ OPT_F_CMDLINE = 0, -+ OPT_F_ENVIRON, -+}; -+ - struct opt_F_t { - char *pathname; - int own_pathname : 1; - enum opt_F_kind kind : 2; -+ enum opt_F_origin origin : 1; - }; - - /* If entry->kind is OPT_F_UNKNOWN, figure out whether it should be -@@ -98,7 +104,8 @@ void opt_F_destroy(struct opt_F_t *entry - * The list is split and added to VEC, which shall be a vector - * initialized like VECT_INIT(VEC, struct opt_F_t); Returns 0 on - * success or a negative value on failure. */ --int parse_colon_separated_list(const char *paths, struct vect *vec); -+int parse_colon_separated_list(const char *paths, struct vect *vec, -+ enum opt_F_origin origin); - - /* Vector of struct opt_F_t. */ - extern struct vect opt_F; -diff -rupN a/sysdeps/linux-gnu/hooks.c b/sysdeps/linux-gnu/hooks.c ---- a/sysdeps/linux-gnu/hooks.c 2013-11-04 20:08:03.000000000 -0500 -+++ b/sysdeps/linux-gnu/hooks.c 2019-06-28 17:18:55.989632238 -0400 -@@ -1,6 +1,6 @@ - /* - * This file is part of ltrace. -- * Copyright (C) 2012, 2013 Petr Machata -+ * Copyright (C) 2012, 2013, 2015 Petr Machata - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as -@@ -153,7 +153,7 @@ again: - if (xdg_sys != NULL) { - struct vect v; - VECT_INIT(&v, struct opt_F_t); -- if (parse_colon_separated_list(xdg_sys, &v) < 0 -+ if (parse_colon_separated_list(xdg_sys, &v, OPT_F_ENVIRON) < 0 - || VECT_EACH(&v, struct opt_F_t, NULL, - add_dir_component_cb, &dirs) != NULL) - fprintf(stderr, -diff -rupN a/testsuite/ltrace.main/XDG_CONFIG_DIRS.exp b/testsuite/ltrace.main/XDG_CONFIG_DIRS.exp ---- a/testsuite/ltrace.main/XDG_CONFIG_DIRS.exp 1969-12-31 19:00:00.000000000 -0500 -+++ b/testsuite/ltrace.main/XDG_CONFIG_DIRS.exp 2019-06-28 17:18:55.989632238 -0400 -@@ -0,0 +1,35 @@ -+# This file is part of ltrace. -+# Copyright (C) 2015 Petr Machata, 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, write to the Free Software -+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA -+# 02110-1301 USA -+ -+set bin [ltraceCompile {} [ltraceSource c { -+ int main() { return 0; } -+}]] -+ -+setenv XDG_CONFIG_DIRS "blah" -+ltraceRun -L -- $bin -+unsetenv XDG_CONFIG_DIRS -+ -+if {[catch "exec $LTRACE -L -F blah -- $bin" output]} { -+ ltraceMatch [ltraceSource ltrace "$output"] { -+ {blah == 1} -+ } -+} else { -+ fail "expected error message regarding `blah`" -+} -+ -+ltraceDone diff --git a/ltrace-0.7.91-aarch64-headers.patch b/ltrace-0.7.91-aarch64-headers.patch deleted file mode 100644 index 597fa0a..0000000 --- a/ltrace-0.7.91-aarch64-headers.patch +++ /dev/null @@ -1,24 +0,0 @@ -Index: ltrace-0.7.91/sysdeps/linux-gnu/aarch64/regs.c -=================================================================== ---- ltrace-0.7.91.orig/sysdeps/linux-gnu/aarch64/regs.c -+++ ltrace-0.7.91/sysdeps/linux-gnu/aarch64/regs.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - #include "backend.h" - #include "proc.h" -Index: ltrace-0.7.91/sysdeps/linux-gnu/aarch64/trace.c -=================================================================== ---- ltrace-0.7.91.orig/sysdeps/linux-gnu/aarch64/trace.c -+++ ltrace-0.7.91/sysdeps/linux-gnu/aarch64/trace.c -@@ -24,6 +24,7 @@ - #include - #include - #include -+#include - - #include "backend.h" - #include "proc.h" diff --git a/ltrace-0.7.91-aarch64-params.patch b/ltrace-0.7.91-aarch64-params.patch deleted file mode 100644 index 29767c5..0000000 --- a/ltrace-0.7.91-aarch64-params.patch +++ /dev/null @@ -1,37 +0,0 @@ -diff -rup a/sysdeps/linux-gnu/aarch64/fetch.c b/sysdeps/linux-gnu/aarch64/fetch.c ---- a/sysdeps/linux-gnu/aarch64/fetch.c 2018-07-05 16:06:10.066626252 -0400 -+++ b/sysdeps/linux-gnu/aarch64/fetch.c 2018-07-05 16:17:17.659748481 -0400 -@@ -308,12 +308,9 @@ arch_fetch_arg_init(enum tof type, struc - struct fetch_script how = pass_arg(context, proc, ret_info); - if (how.c == CVT_ERR) - goto fail; -- if (how.c == CVT_NOP && how.f == FETCH_STACK) { -+ if (how.c == CVT_BYREF && how.f == FETCH_GPR) { - /* XXX double cast. */ - context->x8 = (arch_addr_t) (uintptr_t) context->gregs.regs[8]; -- /* See the comment above about the assert. */ -- assert(! "Unexpected: first argument passed on stack."); -- abort(); - } - - return context; -diff -rup a/testsuite/ltrace.main/system_call_params.exp b/testsuite/ltrace.main/system_call_params.exp ---- a/testsuite/ltrace.main/system_call_params.exp 2018-07-05 16:06:10.516624926 -0400 -+++ b/testsuite/ltrace.main/system_call_params.exp 2018-07-05 16:58:01.549830643 -0400 -@@ -61,13 +61,13 @@ set conf [ltraceNamedSource "$dir/syscal - # doesn't list readdir, that would be taken from somelib.conf with a - # wrong prototype. - --ltraceMatch1 [ltraceRun -L -S -F $conf -- $bin] {^open@SYS\("/some/path"} == 0 -+ltraceMatch1 [ltraceRun -L -S -F $conf -- $bin] {^open@SYS\("/some/path", 0\)} == 0 - - # On the other hand, if -F somedir/ is given, we want to accept - # syscalls.conf found there. - - ltraceMatch [ltraceRun -L -S -F $dir -- $bin] { -- {{^open@SYS\("/some/path"} == 1} -+ {{^open@SYS\("/some/path", 0\)} == 1} - {{^write@SYS\(1, "something", 10\)} == 1} - {{^mount@SYS\("source", "target", "filesystemtype"} == 1} - } -Only in b/testsuite/ltrace.main: system_call_params.exp~ diff --git a/ltrace-0.7.91-cet.patch b/ltrace-0.7.91-cet.patch deleted file mode 100644 index a320682..0000000 --- a/ltrace-0.7.91-cet.patch +++ /dev/null @@ -1,121 +0,0 @@ -diff -rup a/ltrace-elf.c b/ltrace-elf.c ---- a/ltrace-elf.c 2019-02-28 17:32:49.873659818 -0500 -+++ b/ltrace-elf.c 2019-02-28 17:36:32.426779439 -0500 -@@ -639,7 +639,21 @@ ltelf_read_elf(struct ltelf *lte, const - } - } else if (shdr.sh_type == SHT_PROGBITS - || shdr.sh_type == SHT_NOBITS) { -- if (strcmp(name, ".plt") == 0) { -+ if (strcmp(name, ".plt") == 0 -+ && lte->second_plt_seen == 0) { -+ lte->plt_addr = shdr.sh_addr; -+ lte->plt_size = shdr.sh_size; -+ lte->plt_data = elf_loaddata(scn, &shdr); -+ if (lte->plt_data == NULL) -+ fprintf(stderr, -+ "Can't load .plt data\n"); -+ lte->plt_flags = shdr.sh_flags; -+ } -+ /* An Intel CET binary has two PLTs; the -+ initial PLTGOT points to the second -+ one. */ -+ else if (strcmp(name, ".plt.sec") == 0) { -+ lte->second_plt_seen = 1; - lte->plt_addr = shdr.sh_addr; - lte->plt_size = shdr.sh_size; - lte->plt_data = elf_loaddata(scn, &shdr); -diff -rup a/ltrace-elf.h b/ltrace-elf.h ---- a/ltrace-elf.h 2019-02-28 17:32:49.874660328 -0500 -+++ b/ltrace-elf.h 2019-02-28 17:36:32.428779868 -0500 -@@ -45,6 +45,7 @@ struct ltelf { - Elf_Data *dynsym; - size_t dynsym_count; - const char *dynstr; -+ int second_plt_seen; - GElf_Addr plt_addr; - GElf_Word plt_flags; - size_t plt_size; -diff -rup a/sysdeps/linux-gnu/x86/plt.c b/sysdeps/linux-gnu/x86/plt.c ---- a/sysdeps/linux-gnu/x86/plt.c 2019-02-28 17:32:49.991720041 -0500 -+++ b/sysdeps/linux-gnu/x86/plt.c 2019-02-28 17:36:32.429780083 -0500 -@@ -28,18 +28,18 @@ - #include "trace.h" - - static GElf_Addr --x86_plt_offset(uint32_t i) -+x86_plt_offset(struct ltelf *lte, uint32_t i) - { - /* Skip the first PLT entry, which contains a stub to call the - * resolver. */ -- return (i + 1) * 16; -+ return (i + (lte->second_plt_seen ? 0 : 1)) * 16; - } - - GElf_Addr - arch_plt_sym_val(struct ltelf *lte, size_t ndx, GElf_Rela *rela) - { - uint32_t i = *VECT_ELEMENT(<e->arch.plt_map, uint32_t, ndx); -- return x86_plt_offset(i) + lte->plt_addr; -+ return x86_plt_offset(lte, i) + lte->plt_addr; - } - - void * -@@ -116,6 +116,13 @@ arch_elf_init(struct ltelf *lte, struct - * 400426: 68 00 00 00 00 pushq $0x0 - * 40042b: e9 e0 ff ff ff jmpq 400410 <_init+0x18> - * -+ * For CET binaries it is the following: -+ * -+ * 13d0: f3 0f 1e fa endbr64 -+ * 13d4: 68 27 00 00 00 pushq $0x27 <-- index -+ * 13d9: f2 e9 71 fd ff ff bnd jmpq 1150 <.plt> -+ * 13df: 90 nop -+ * - * On i386, the argument to push is an offset of relocation to - * use. The first PLT slot has an offset of 0x0, the second - * 0x8, etc. On x86_64, it's directly the index that we are -@@ -128,11 +135,33 @@ arch_elf_init(struct ltelf *lte, struct - unsigned int i, sz = vect_size(<e->plt_relocs); - for (i = 0; i < sz; ++i) { - -- GElf_Addr offset = x86_plt_offset(i); -+ GElf_Addr offset = x86_plt_offset(lte, i); -+ uint32_t reloc_arg; - - uint8_t byte; -- if (elf_read_next_u8(lte->plt_data, &offset, &byte) < 0 -- || byte != 0xff -+ if (elf_read_next_u8(lte->plt_data, &offset, &byte) < 0) -+ continue; -+ -+ -+ if (byte == 0xf3 -+ && elf_read_next_u8(lte->plt_data, &offset, &byte) >= 0 -+ && byte == 0x0f -+ && elf_read_next_u8(lte->plt_data, &offset, &byte) >= 0 -+ && byte == 0x1e -+ && elf_read_next_u8(lte->plt_data, &offset, &byte) >= 0 -+ && byte == 0xfa -+ && elf_read_next_u8(lte->plt_data, &offset, &byte) >= 0 -+ && byte == 0x68 -+ && elf_read_next_u32(lte->plt_data, -+ &offset, &reloc_arg) >= 0) -+ { -+ /* CET */ -+ fprintf(stderr, "%d: reloc_arg is %lx\n", i, (long)reloc_arg); -+ *VECT_ELEMENT(<e->arch.plt_map, unsigned int, reloc_arg) = i; -+ continue; -+ } -+ -+ if (byte != 0xff - || elf_read_next_u8(lte->plt_data, &offset, &byte) < 0 - || (byte != 0xa3 && byte != 0x25)) - continue; -@@ -140,7 +169,6 @@ arch_elf_init(struct ltelf *lte, struct - /* Skip immediate argument in the instruction. */ - offset += 4; - -- uint32_t reloc_arg; - if (elf_read_next_u8(lte->plt_data, &offset, &byte) < 0 - || byte != 0x68 - || elf_read_next_u32(lte->plt_data, diff --git a/ltrace-0.7.91-null.patch b/ltrace-0.7.91-null.patch deleted file mode 100644 index 4ff7e6a..0000000 --- a/ltrace-0.7.91-null.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff --git a/output.c b/output.c -index 7cab383..18f9cf0 100644 ---- a/output.c -+++ b/output.c -@@ -598,6 +598,9 @@ frame_callback (Dwfl_Frame *state, void *arg) - NULL, NULL, NULL); - symname = dwfl_module_addrinfo(mod, pc, &off, &sym, - NULL, NULL, NULL); -+ } else { -+ modname = "unknown"; -+ symname = "unknown"; - } - - /* This mimics the output produced by libunwind below. */ diff --git a/ltrace-0.7.91-ppc64le-scv.patch b/ltrace-0.7.91-ppc64le-scv.patch deleted file mode 100644 index 2feec6d..0000000 --- a/ltrace-0.7.91-ppc64le-scv.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -rup a/sysdeps/linux-gnu/ppc/trace.c b/sysdeps/linux-gnu/ppc/trace.c ---- a/sysdeps/linux-gnu/ppc/trace.c 2021-02-08 14:35:16.876494095 -0500 -+++ b/sysdeps/linux-gnu/ppc/trace.c 2021-02-08 15:05:59.468107311 -0500 -@@ -57,6 +57,7 @@ get_arch_dep(struct process *proc) - } - - #define SYSCALL_INSN 0x44000002 -+#define SYSCALL2_INSN 0x44000001 - - /* Returns 1 if syscall, 2 if sysret, 0 otherwise. */ - int -@@ -75,7 +76,7 @@ syscall_p(struct process *proc, int stat - 0); - #endif - -- if (insn == SYSCALL_INSN) { -+ if (insn == SYSCALL_INSN || insn == SYSCALL2_INSN) { - *sysnum = - (int)ptrace(PTRACE_PEEKUSER, proc->pid, - sizeof(long) * PT_R0, 0); diff --git a/ltrace-0.7.91-rh1799619.patch b/ltrace-0.7.91-rh1799619.patch deleted file mode 100644 index ceef540..0000000 --- a/ltrace-0.7.91-rh1799619.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -rup a/expr.c b/expr.c ---- a/expr.c 2013-10-10 08:43:55.000000000 -0400 -+++ b/expr.c 2020-02-06 17:05:40.658679755 -0500 -@@ -189,10 +189,10 @@ int - expr_clone(struct expr_node *retp, const struct expr_node *node) - { - *retp = *node; -+ struct expr_node *nlhs; -+ struct expr_node *nrhs = NULL; - - switch (node->kind) { -- struct expr_node *nlhs; -- struct expr_node *nrhs; - - case EXPR_OP_ARGNO: - case EXPR_OP_SELF: diff --git a/ltrace-0.7.91-testsuite-system_call_params.patch b/ltrace-0.7.91-testsuite-system_call_params.patch deleted file mode 100644 index 233b5c8..0000000 --- a/ltrace-0.7.91-testsuite-system_call_params.patch +++ /dev/null @@ -1,68 +0,0 @@ -diff -rup a/testsuite/Makefile.am b/testsuite/Makefile.am ---- a/testsuite/Makefile.am 2012-12-16 20:53:45.000000000 -0500 -+++ b/testsuite/Makefile.am 2019-06-28 16:59:19.935602953 -0400 -@@ -39,6 +39,7 @@ env.exp: Makefile - rm -f env.exp - echo set libelf_LD_LIBRARY_PATH '"$(libelf_LD_LIBRARY_PATH)"' >> $@ - echo set libunwind_LD_LIBRARY_PATH '"$(libunwind_LD_LIBRARY_PATH)"' >> $@ -+ echo set PREFIX '"$(prefix)"' >> $@ - - CLEANFILES = *.o *.so *.log *.sum *.ltrace site.bak setval.tmp site.exp env.exp - -diff -rup a/testsuite/Makefile.in b/testsuite/Makefile.in ---- a/testsuite/Makefile.in 2013-11-04 20:22:47.000000000 -0500 -+++ b/testsuite/Makefile.in 2019-06-28 16:59:12.075602806 -0400 -@@ -648,6 +648,7 @@ env.exp: Makefile - rm -f env.exp - echo set libelf_LD_LIBRARY_PATH '"$(libelf_LD_LIBRARY_PATH)"' >> $@ - echo set libunwind_LD_LIBRARY_PATH '"$(libunwind_LD_LIBRARY_PATH)"' >> $@ -+ echo set PREFIX '"$(prefix)"' >> $@ - - # Tell versions [3.59,3.63) of GNU make to not export all variables. - # Otherwise a system limit (for SysV at least) may be exceeded. -diff -rup a/testsuite/ltrace.main/system_call_params.exp b/testsuite/ltrace.main/system_call_params.exp ---- a/testsuite/ltrace.main/system_call_params.exp 2019-06-28 16:44:07.542584754 -0400 -+++ b/testsuite/ltrace.main/system_call_params.exp 2019-06-28 17:00:35.811604355 -0400 -@@ -1,5 +1,5 @@ - # This file is part of ltrace. --# Copyright (C) 2013, 2014 Petr Machata, Red Hat Inc. -+# Copyright (C) 2013, 2014, 2015 Petr Machata, 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 -@@ -60,8 +60,35 @@ set conf [ltraceNamedSource "$dir/syscal - # somelib.conf is passed, and syscalls.conf is not available, or - # doesn't list readdir, that would be taken from somelib.conf with a - # wrong prototype. -+# -+# This test relies on the fact that there is no global config file -+# that would provide legitimate system call prototypes. But that -+# doesn't have to be true, maybe ltrace is already installed on the -+# system with the right prefix. So first compile a wrapper that we -+# use to redirect fopen calls. -+ -+set libfopen_so [ltraceCompile libfopen.so -ldl \ -+ [ltraceSource c [string map [list "@PREFIX@" "$PREFIX"] { -+ #define _GNU_SOURCE -+ #include -+ #include -+ #include -+ -+ FILE * -+ fopen(const char *path, const char *mode) -+ { -+ #define PATH "@PREFIX@/share" -+ if (strncmp(path, PATH, sizeof(PATH) - 1) == 0) -+ path = "/dev/null"; - -+ return ((FILE *(*)(const char *, const char *)) -+ dlsym(RTLD_NEXT, "fopen")) (path, mode); -+ } -+}]]] -+ -+setenv LD_PRELOAD $libfopen_so - ltraceMatch1 [ltraceRun -L -S -F $conf -- $bin] {^open@SYS\("/some/path", 0\)} == 0 -+unsetenv LD_PRELOAD - - # On the other hand, if -F somedir/ is given, we want to accept - # syscalls.conf found there. diff --git a/ltrace-rh1225568.patch b/ltrace-rh1225568.patch deleted file mode 100644 index 612abc1..0000000 --- a/ltrace-rh1225568.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nrup a/testsuite/ltrace.minor/trace-irelative.exp b/testsuite/ltrace.minor/trace-irelative.exp ---- a/testsuite/ltrace.minor/trace-irelative.exp 2013-11-04 18:08:03.000000000 -0700 -+++ b/testsuite/ltrace.minor/trace-irelative.exp 2015-06-01 12:30:59.737371166 -0600 -@@ -54,6 +54,8 @@ set src [ltraceSource c { - }] - - foreach ext {{} .pie} { -+ # ltrace does not yet support AARCH64's ifuncs -+ setup_xfail aarch64*-*-* - set bin1 [ltraceCompile $ext $src] - do_tests $bin1 "" - } diff --git a/ltrace.spec b/ltrace.spec index 15301a6..4314676 100644 --- a/ltrace.spec +++ b/ltrace.spec @@ -1,21 +1,108 @@ Summary: Tracks runtime library calls from dynamically linked executables Name: ltrace -Version: 0.8.1 -Release: 1%{?dist} -# In coordination with Juan Céspedes, upstream is now officially on gitlab. -# We are going to being sending all of our Fedora patches upstream to gitlab. -URL: https://gitlab.com/cespedes/ltrace -License: GPL-2.0-or-later +Version: 0.7.91 +Release: 26%{?dist} +URL: http://ltrace.alioth.debian.org/ +License: GPLv2+ +Group: Development/Debuggers BuildRequires: elfutils-devel dejagnu BuildRequires: libselinux-devel BuildRequires: autoconf automake libtool -BuildRequires: gcc-c++ -BuildRequires: make -# https://gitlab.com/cespedes/ltrace/-/releases +# Note: this URL needs to be updated for each release, as the file +# number changes for each file. Full list of released files is at: +# https://alioth.debian.org/frs/?group_id=30892 Source: ltrace-%{version}.tar.bz2 +# Merge of several upstream commits that fixes compilation on ARM. +Patch0: ltrace-0.7.91-arm.patch + +# Upstream patch that fixes accounting of exec, __libc_start_main and +# others in -c output. +Patch1: ltrace-0.7.91-account_execl.patch + +# Upstream patch that fixes interpretation of PLT on x86_64 when +# IRELATIVE slots are present. +Patch2: ltrace-0.7.91-x86_64-irelative.patch + +# Upstream patch that fixes fetching of system call arguments on s390. +Patch3: ltrace-0.7.91-s390-fetch-syscall.patch + +# Upstream patch that enables tracing of IRELATIVE PLT slots on s390. +Patch4: ltrace-0.7.91-s390-irelative.patch + +# Fix for a regression in tracing across fork. Upstream patch. +Patch5: ltrace-0.7.91-ppc64-fork.patch + +# Fix crashing a prelinked PPC64 binary which makes PLT calls through +# slots that ltrace doesn't trace. +# https://bugzilla.redhat.com/show_bug.cgi?id=1051221 +Patch6: ltrace-0.7.91-breakpoint-on_install.patch +Patch7: ltrace-0.7.91-ppc64-unprelink.patch + +# Man page nits. Backport of an upstream patch. +Patch8: ltrace-0.7.91-man.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1044766 +Patch9: ltrace-0.7.91-cant_open.patch + +# Support Aarch64 architecture. +Patch10: ltrace-0.7.91-aarch64.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1064406 +Patch11: ltrace-0.7.2-e_machine.patch + +# Support for ppc64le, backported from upstream. +# http://anonscm.debian.org/gitweb/?p=collab-maint/ltrace.git;a=commit;h=eea4ad2cce289753aaa35b4e0258a76d8f8f367c +# https://bugzilla.redhat.com/show_bug.cgi?id=1131956 +Patch13: ltrace-0.7.91-ppc64le-support.patch +# 35a9677dc9dcb7909ebd28f30200474d7e8b660f, +# 437d2377119036346f4dbd93039c847b4cc9d0be, +# eb3993420734f091cde9a6053ca6b4edcf9ae334 +Patch14: ltrace-0.7.91-ppc64le-fixes.patch + +# http://anonscm.debian.org/gitweb/?p=collab-maint/ltrace.git;a=commit;h=2e9f9f1f5d0fb223b109429b9c904504b7f638e2 +# http://anonscm.debian.org/gitweb/?p=collab-maint/ltrace.git;a=commit;h=f96635a03b3868057db5c2d7972d5533e2068345 +Patch15: ltrace-0.7.91-parser-ws_after_id.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1171165 +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=d8f1287b85e2c2b2ae0235809e956f4365e53c45 +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=d80c5371454383e3f9978622e5578cf02af8c44c +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=bf82100966deda9c7d26ad085d97c08126a8ae88 +Patch16: ltrace-0.7.91-ppc-bias.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1158714 +Patch17: ltrace-0.7.91-x86-plt_map.patch +Patch18: ltrace-0.7.91-x86-unused_label.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1170315 +Patch19: ltrace-0.7.91-unwind-elfutils.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1208351 +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=4724bd5a4a19db117a1d280b9d1a3508fd4e03fa +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=72ee29639c55b5942bc07c8ed0013005f8fc5a97 +Patch20: ltrace-0.7.91-multithread-no-f-1.patch +Patch21: ltrace-0.7.91-multithread-no-f-2.patch + +# Fix problems with building a number of test cases. +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=694d19ff14017926454771cbb63a22355b72f1bf +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=a3a03622fb4ca9772dca13eae724a94ba1e728f4 +Patch22: ltrace-0.7.91-testsuite-includes.patch +Patch23: ltrace-0.7.91-testsuite-includes-2.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=1210653 +# http://anonscm.debian.org/cgit/collab-maint/ltrace.git/commit/?id=eea6091f8672b01f7f022b0fc367e0f568225ffc +Patch24: ltrace-0.7.91-ppc64le-configure.patch + +Patch25: ltrace-rh1307754.patch + +# GCC now warns (errors) on "tautological compares", and readdir_r is deprecated. +Patch26: ltrace-0.7.91-tautology.patch + +# ARM code has unreachable code after switch statement, move initialization +Patch27: ltrace-rh1423913.patch + %description Ltrace is a debugging program which runs a specified command until the command exits. While the command is executing, ltrace intercepts and @@ -28,26 +115,51 @@ execution of processes. %prep %setup -q -n %{name}-%{version} +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%patch7 -p1 +%patch8 -p1 +%patch9 -p1 +%patch10 -p1 +%patch11 -p1 +%patch13 -p1 +%patch14 -p1 +%patch15 -p1 +%patch16 -p1 +%patch17 -p1 +%patch18 -p1 +%patch19 -p1 +%patch20 -p1 +%patch21 -p1 +%patch22 -p1 +%patch23 -p1 +%patch24 -p1 +%patch25 -p1 +%patch26 -p1 +%patch27 -p1 %build autoreconf -i %configure --docdir=%{?_pkgdocdir}%{!?_pkgdocdir:%{_docdir}/%{name}-%{version}} -%make_build +make %{?_smp_mflags} %install -%make_install bindir=%{_bindir} +make DESTDIR=$RPM_BUILD_ROOT bindir=%{_bindir} install # The testsuite is useful for development in real world, but fails in # koji for some reason. Disable it, but have it handy. %check echo ====================TESTING========================= -# The ppc64 testsuite hangs rpmbuild hard in koji, disable until fixed. -%ifnarch ppc64le timeout 180 make check ||: -%endif echo ====================TESTING END===================== %files +%defattr(-,root,root) %doc NEWS COPYING CREDITS INSTALL README TODO %{_bindir}/ltrace %{_mandir}/man1/ltrace.1* @@ -55,95 +167,6 @@ echo ====================TESTING END===================== %{_datadir}/ltrace %changelog -* Tue Sep 16 2025 DJ Delorie - 0.8.1-1 -- Rebased to ltrace 0.8.1 - -* Thu Jul 24 2025 Fedora Release Engineering - 0.7.91-53 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild - -* Fri Jan 17 2025 Fedora Release Engineering - 0.7.91-52 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Thu Jul 18 2024 Fedora Release Engineering - 0.7.91-51 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Thu Jan 25 2024 Fedora Release Engineering - 0.7.91-50 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Sun Jan 21 2024 Fedora Release Engineering - 0.7.91-49 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Thu Jul 20 2023 Fedora Release Engineering - 0.7.91-48 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Thu Jan 19 2023 Fedora Release Engineering - 0.7.91-47 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Thu Jul 21 2022 Fedora Release Engineering - 0.7.91-46 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Fri May 03 2022 Carlos O'Donell - 0.7.91-45 -- Rebuild ltrace for rawhide (#2046722) - -* Thu Jan 27 2022 DJ Delorie - 0.7.91-44 -- Fix use-after-free cases. - -* Thu Jan 20 2022 Fedora Release Engineering - 0.7.91-43 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Thu Jul 22 2021 Fedora Release Engineering - 0.7.91-42 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Mon Feb 8 2021 DJ Delorie - 0.7.91-41 -- Add support for SCV syscall insn for ppc64le - -* Tue Jan 26 2021 Fedora Release Engineering - 0.7.91-40 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 0.7.91-39 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 14 2020 Tom Stellard - 0.7.91-38 -- Use make macros -- https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro - -* Thu Feb 6 2020 DJ Delorie - 0.7.91-37 -- Initialize some variables to avoid gcc warning (#1799619) - -* Wed Jan 29 2020 Fedora Release Engineering - 0.7.91-36 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Tue Jul 23 2019 DJ Delorie - 0.7.91-35 -- Skip ppc64 testsuite until the hangs in koji can be fixed. - -* Wed Jul 17 2019 DJ Delorie - 0.7.91-34 -- Add fixes in handling of bogus paths that come from XDG_CONFIG_DIRS. -- Testsuite fixes for pre-installed config files. -- Extra AARCH64 includes for gcc 9. -- Testsuite: AARCH64 ifuncs not supported yet yet. - -* Thu Apr 4 2019 DJ Delorie - 0.7.91-33 -- Add Intel CET support. - -* Tue Mar 12 2019 DJ Delorie - 0.7.91-32 -- Revert previous patch, redundant - -* Tue Mar 5 2019 Eugene Syromiatnikov - 0.7.91-31 -- Fix "Too many return value classes" assert - -* Fri Feb 01 2019 Fedora Release Engineering - 0.7.91-30 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Jan 16 2019 Jeff Law - 0.7.91-29 -- Avoid passing NULL as argument to %s in printf call - -* Fri Jul 13 2018 Fedora Release Engineering - 0.7.91-28 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Thu Jul 05 2018 DJ Delorie - 0.7.91-27 -- Fix aarch64 long parameters (via $r8) support. -- Make system_call_params test compare more exactly. - * Fri Feb 09 2018 Igor Gnatenko - 0.7.91-26 - Escape macros in %%changelog diff --git a/plans/ci.fmf b/plans/ci.fmf deleted file mode 100644 index 85710d6..0000000 --- a/plans/ci.fmf +++ /dev/null @@ -1,6 +0,0 @@ -summary: CI Gating Plan -discover: - how: fmf - directory: tests -execute: - how: tmt diff --git a/sources b/sources index 1dd70e2..a8420d6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (ltrace-0.8.1.tar.bz2) = 68fdf10abb3c9534987cb4fcf2531502f8376c56299d56908406ba903fa63af2e0a82c3b902ed0cd47e4985154155a4e9387a11ada066515de26486301dddbaf +9db3bdee7cf3e11c87d8cc7673d4d25b ltrace-0.7.91.tar.bz2 diff --git a/tests/README b/tests/README deleted file mode 100644 index bf13c2b..0000000 --- a/tests/README +++ /dev/null @@ -1,2 +0,0 @@ -The test's Makefiles are not used in Fedora CI infrastructure. But are kept here - for backward compatibility with traditional beakerlib test harness in RHEL. diff --git a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/Makefile b/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/Makefile deleted file mode 100644 index 67183de..0000000 --- a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/Makefile +++ /dev/null @@ -1,61 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 " > $(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) - diff --git a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/PURPOSE b/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/PURPOSE deleted file mode 100644 index 2c9e3fd..0000000 --- a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/PURPOSE +++ /dev/null @@ -1,2 +0,0 @@ -ltrace could possibly crash/hang when tracing fork() on ppc/ppc64 -in ltrace with option "-f". diff --git a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/main.fmf b/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/main.fmf deleted file mode 100644 index f0627ff..0000000 --- a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -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 -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 diff --git a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/reproducer.c b/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/reproducer.c deleted file mode 100644 index f06a96b..0000000 --- a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/reproducer.c +++ /dev/null @@ -1,33 +0,0 @@ -/* Ltrace Test : trace-fork.c - * Objectives : Verify that ltrace can trace to child process after - * fork called. - * - * This file was written by Yao Qi - * - */ - -#include -#include -#include -#include - -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(NULL); - } - return 0; -} - diff --git a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/runtest.sh b/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/runtest.sh deleted file mode 100755 index ce3bf9f..0000000 --- a/tests/Regression/211135-ltrace-hangs-while-tracing-child-process-with--f-option/runtest.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 diff --git a/tests/Regression/211163-ltrace-with--c-omit-execl-call/Makefile b/tests/Regression/211163-ltrace-with--c-omit-execl-call/Makefile deleted file mode 100644 index 30571dd..0000000 --- a/tests/Regression/211163-ltrace-with--c-omit-execl-call/Makefile +++ /dev/null @@ -1,61 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 " > $(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) diff --git a/tests/Regression/211163-ltrace-with--c-omit-execl-call/PURPOSE b/tests/Regression/211163-ltrace-with--c-omit-execl-call/PURPOSE deleted file mode 100644 index 4dd4371..0000000 --- a/tests/Regression/211163-ltrace-with--c-omit-execl-call/PURPOSE +++ /dev/null @@ -1 +0,0 @@ -ltrace with -c omit execl call diff --git a/tests/Regression/211163-ltrace-with--c-omit-execl-call/main.fmf b/tests/Regression/211163-ltrace-with--c-omit-execl-call/main.fmf deleted file mode 100644 index aa6cfa6..0000000 --- a/tests/Regression/211163-ltrace-with--c-omit-execl-call/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: ltrace with -c omit execl call -description: | - ltrace with -c omit execl call -contact: Michal Nowak -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 diff --git a/tests/Regression/211163-ltrace-with--c-omit-execl-call/reproducer.c b/tests/Regression/211163-ltrace-with--c-omit-execl-call/reproducer.c deleted file mode 100644 index 7a7847e..0000000 --- a/tests/Regression/211163-ltrace-with--c-omit-execl-call/reproducer.c +++ /dev/null @@ -1,9 +0,0 @@ -#include -#include - -int main() -{ - execl("/bin/ls","ls",0); - return 0; -} - diff --git a/tests/Regression/211163-ltrace-with--c-omit-execl-call/runtest.sh b/tests/Regression/211163-ltrace-with--c-omit-execl-call/runtest.sh deleted file mode 100755 index a4de38c..0000000 --- a/tests/Regression/211163-ltrace-with--c-omit-execl-call/runtest.sh +++ /dev/null @@ -1,109 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 diff --git a/tests/Regression/223732-man-page-of-ltrace/Makefile b/tests/Regression/223732-man-page-of-ltrace/Makefile deleted file mode 100644 index c303f27..0000000 --- a/tests/Regression/223732-man-page-of-ltrace/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 " > $(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) - diff --git a/tests/Regression/223732-man-page-of-ltrace/PURPOSE b/tests/Regression/223732-man-page-of-ltrace/PURPOSE deleted file mode 100644 index 8f8da66..0000000 --- a/tests/Regression/223732-man-page-of-ltrace/PURPOSE +++ /dev/null @@ -1,7 +0,0 @@ -Man page of ltrace said, -'Only ELF32 binaries are supported.' - -I seemed ltrace does not support ia64 architecture. - -That's not true. - diff --git a/tests/Regression/223732-man-page-of-ltrace/main.fmf b/tests/Regression/223732-man-page-of-ltrace/main.fmf deleted file mode 100644 index ef24105..0000000 --- a/tests/Regression/223732-man-page-of-ltrace/main.fmf +++ /dev/null @@ -1,21 +0,0 @@ -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 -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 diff --git a/tests/Regression/223732-man-page-of-ltrace/runtest.sh b/tests/Regression/223732-man-page-of-ltrace/runtest.sh deleted file mode 100755 index 3f794dc..0000000 --- a/tests/Regression/223732-man-page-of-ltrace/runtest.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 diff --git a/tests/Regression/235671-ltrace-receives-SIGILL-signal/Makefile b/tests/Regression/235671-ltrace-receives-SIGILL-signal/Makefile deleted file mode 100644 index baafe0e..0000000 --- a/tests/Regression/235671-ltrace-receives-SIGILL-signal/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 " > $(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) - diff --git a/tests/Regression/235671-ltrace-receives-SIGILL-signal/PURPOSE b/tests/Regression/235671-ltrace-receives-SIGILL-signal/PURPOSE deleted file mode 100644 index e727338..0000000 --- a/tests/Regression/235671-ltrace-receives-SIGILL-signal/PURPOSE +++ /dev/null @@ -1,2 +0,0 @@ -ltrace receives SIGILL signal instead of the ltraced program, -which terminates ltrace. diff --git a/tests/Regression/235671-ltrace-receives-SIGILL-signal/main.fmf b/tests/Regression/235671-ltrace-receives-SIGILL-signal/main.fmf deleted file mode 100644 index f1ba1aa..0000000 --- a/tests/Regression/235671-ltrace-receives-SIGILL-signal/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: ltrace receives SIGILL signal and terminates -description: | - ltrace receives SIGILL signal instead of the ltraced program, - which terminates ltrace. -contact: Michal Nowak -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 diff --git a/tests/Regression/235671-ltrace-receives-SIGILL-signal/runtest.sh b/tests/Regression/235671-ltrace-receives-SIGILL-signal/runtest.sh deleted file mode 100755 index 8682bb6..0000000 --- a/tests/Regression/235671-ltrace-receives-SIGILL-signal/runtest.sh +++ /dev/null @@ -1,43 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 diff --git a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/Makefile b/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/Makefile deleted file mode 100644 index b3b39d4..0000000 --- a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/Makefile +++ /dev/null @@ -1,62 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 " > $(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) - diff --git a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/PURPOSE b/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/PURPOSE deleted file mode 100644 index 3d0230b..0000000 --- a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/PURPOSE +++ /dev/null @@ -1 +0,0 @@ -ltrace could possibly crash traced application on s390 and s390x. diff --git a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/main.fmf b/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/main.fmf deleted file mode 100644 index 6430ffa..0000000 --- a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: ltrace crashes process to be analysed -description: | - ltrace could possibly crash traced application on s390 and s390x. -contact: Michal Nowak -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 diff --git a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/reproducer.c b/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/reproducer.c deleted file mode 100644 index 3118c8e..0000000 --- a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/reproducer.c +++ /dev/null @@ -1,70 +0,0 @@ -#include -#include -#include -#include -#include -#include - - -#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; -} - diff --git a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/runtest.sh b/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/runtest.sh deleted file mode 100755 index d945edc..0000000 --- a/tests/Regression/427444-ltrace-crashes-process-to-be-analysed/runtest.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 diff --git a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/Makefile b/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/Makefile deleted file mode 100644 index 49c119a..0000000 --- a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/Makefile +++ /dev/null @@ -1,60 +0,0 @@ -# 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 . -# -# Author: Michal Nowak - - -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 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 " > $(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) - diff --git a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/PURPOSE b/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/PURPOSE deleted file mode 100644 index 0cd29d1..0000000 --- a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/PURPOSE +++ /dev/null @@ -1,4 +0,0 @@ -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. - diff --git a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/main.fmf b/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/main.fmf deleted file mode 100644 index 6357723..0000000 --- a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/main.fmf +++ /dev/null @@ -1,18 +0,0 @@ -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 -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 diff --git a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/reproducer.c b/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/reproducer.c deleted file mode 100644 index 5107daa..0000000 --- a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/reproducer.c +++ /dev/null @@ -1,7 +0,0 @@ -#include - -int main() -{ - alarm(42); - return 0; -} diff --git a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/runtest.sh b/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/runtest.sh deleted file mode 100755 index 9e6c769..0000000 --- a/tests/Regression/447404-ltrace-with-both--o-and--c-options-does-not-produce-output-to-file/runtest.sh +++ /dev/null @@ -1,111 +0,0 @@ -#!/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 . -# -# Author: Michal Nowak - -# 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 "cp reproducer.c $TmpDir" - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest "ltrace with -o and -c options tracing testing binary" - rlRun "gcc -x c -o test.bin reproducer.c" - 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) - # search for either malloc or ioctl. - func_found=0 - for traced_func in "malloc" "ioctl"; do - if grep "$traced_func" ltrace-test-sys.log; then - func_found=1 - fi - done - if [ $func_found -ne 0 ]; 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 or malloc calls (expected failure)" - else - rlFail "ltrace output does not contain ioctl or malloc 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 diff --git a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/Makefile b/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/Makefile deleted file mode 100644 index eca6d5f..0000000 --- a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/PURPOSE b/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/PURPOSE deleted file mode 100644 index 94c033b..0000000 --- a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -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 diff --git a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/hello.c b/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/hello.c deleted file mode 100644 index b3c185b..0000000 --- a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/hello.c +++ /dev/null @@ -1,7 +0,0 @@ -#include -#include - -int main(void) -{ - puts("Hello world...\n"); -} diff --git a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/main.fmf b/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/main.fmf deleted file mode 100644 index f91b6d4..0000000 --- a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/main.fmf +++ /dev/null @@ -1,17 +0,0 @@ -summary: The test tries to workaround of a bz1051221 a little. -description: '' -contact: Michael Petlan -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 diff --git a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/runtest.sh b/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/runtest.sh deleted file mode 100755 index 6caa6f8..0000000 --- a/tests/Regression/bz1051221-untraced-symbols-cause-sigsegv-ppc64/runtest.sh +++ /dev/null @@ -1,74 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 diff --git a/tests/Regression/bz1053765-invalid-command-assertion-failure/Makefile b/tests/Regression/bz1053765-invalid-command-assertion-failure/Makefile deleted file mode 100644 index d6c30c0..0000000 --- a/tests/Regression/bz1053765-invalid-command-assertion-failure/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz1053765-invalid-command-assertion-failure/PURPOSE b/tests/Regression/bz1053765-invalid-command-assertion-failure/PURPOSE deleted file mode 100644 index 9afbcc2..0000000 --- a/tests/Regression/bz1053765-invalid-command-assertion-failure/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -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 diff --git a/tests/Regression/bz1053765-invalid-command-assertion-failure/main.fmf b/tests/Regression/bz1053765-invalid-command-assertion-failure/main.fmf deleted file mode 100644 index 75b068c..0000000 --- a/tests/Regression/bz1053765-invalid-command-assertion-failure/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: The test tries to ltrace a non-existing app, ltrace should handle that. -description: '' -contact: Michael Petlan -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 diff --git a/tests/Regression/bz1053765-invalid-command-assertion-failure/runtest.sh b/tests/Regression/bz1053765-invalid-command-assertion-failure/runtest.sh deleted file mode 100755 index 1a18424..0000000 --- a/tests/Regression/bz1053765-invalid-command-assertion-failure/runtest.sh +++ /dev/null @@ -1,59 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 diff --git a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/Makefile b/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/Makefile deleted file mode 100644 index 29d9876..0000000 --- a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/Makefile +++ /dev/null @@ -1,63 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/PURPOSE b/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/PURPOSE deleted file mode 100644 index 87ed099..0000000 --- a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -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 -Bug summary: ltrace assigns wrong names to glibc PLT slots -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1158713 diff --git a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/main.fmf b/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/main.fmf deleted file mode 100644 index 8beae33..0000000 --- a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/main.fmf +++ /dev/null @@ -1,18 +0,0 @@ -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 -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 diff --git a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/runtest.sh b/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/runtest.sh deleted file mode 100755 index 2dd3bb1..0000000 --- a/tests/Regression/bz1158713-ltrace-assigns-wrong-names-to-glibc-PLT-slots/runtest.sh +++ /dev/null @@ -1,108 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 < -#include -#include -#include -#include - -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 < 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 diff --git a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/Makefile b/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/Makefile deleted file mode 100644 index 66c0e2e..0000000 --- a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/PURPOSE b/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/PURPOSE deleted file mode 100644 index 1ff38ce..0000000 --- a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -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 -Bug summary: ltrace crashes when run on certain processes with the -S option -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1360259 diff --git a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/main.fmf b/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/main.fmf deleted file mode 100644 index 5be886c..0000000 --- a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/main.fmf +++ /dev/null @@ -1,18 +0,0 @@ -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 -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 diff --git a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/runtest.sh b/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/runtest.sh deleted file mode 100755 index 9c83e5e..0000000 --- a/tests/Regression/bz1360259-ltrace-crashes-when-run-on-certain-processes-with-the--S-option/runtest.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -x $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 -s $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 -s $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 diff --git a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/Makefile b/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/Makefile deleted file mode 100644 index 9960d98..0000000 --- a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/PURPOSE b/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/PURPOSE deleted file mode 100644 index 8953b3d..0000000 --- a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -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 -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 diff --git a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/main.fmf b/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/main.fmf deleted file mode 100644 index 3c01c00..0000000 --- a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -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 -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 diff --git a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/runtest.sh b/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/runtest.sh deleted file mode 100755 index d59239d..0000000 --- a/tests/Regression/bz754096-ltrace-crashes-on-PowerPC-if-tracing-is-limited-by/runtest.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 diff --git a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/Makefile b/tests/Regression/bz797761-ltrace-c-ommits-execl-call/Makefile deleted file mode 100644 index e202e57..0000000 --- a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/Makefile +++ /dev/null @@ -1,65 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/PURPOSE b/tests/Regression/bz797761-ltrace-c-ommits-execl-call/PURPOSE deleted file mode 100644 index c9adac9..0000000 --- a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -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 diff --git a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/main.fmf b/tests/Regression/bz797761-ltrace-c-ommits-execl-call/main.fmf deleted file mode 100644 index 2617dea..0000000 --- a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/main.fmf +++ /dev/null @@ -1,15 +0,0 @@ -summary: The test tries to ltrace an app which uses execl calls. -description: '' -contact: Michael Petlan -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 diff --git a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/runtest.sh b/tests/Regression/bz797761-ltrace-c-ommits-execl-call/runtest.sh deleted file mode 100755 index 6fffcb4..0000000 --- a/tests/Regression/bz797761-ltrace-c-ommits-execl-call/runtest.sh +++ /dev/null @@ -1,69 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 < reproducer.c -#include -#include -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 diff --git a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/Makefile b/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/Makefile deleted file mode 100644 index 65e57b3..0000000 --- a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/Makefile +++ /dev/null @@ -1,67 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 reproducer.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: Miroslav Franc " > $(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) diff --git a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/PURPOSE b/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/PURPOSE deleted file mode 100644 index 6f46d12..0000000 --- a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -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 -Bug summary: ltrace doesn't work on PIE binaries -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=868281 diff --git a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/main.fmf b/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/main.fmf deleted file mode 100644 index bcce809..0000000 --- a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/main.fmf +++ /dev/null @@ -1,21 +0,0 @@ -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 -component: -- ltrace -test: ./runtest.sh -framework: beakerlib -recommend: -- ltrace -- gcc -- libgcc -- glibc-devel -- libgcc.i686 -- glibc-devel.i686 -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 diff --git a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/reproducer.c b/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/reproducer.c deleted file mode 100644 index 5107daa..0000000 --- a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/reproducer.c +++ /dev/null @@ -1,7 +0,0 @@ -#include - -int main() -{ - alarm(42); - return 0; -} diff --git a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/runtest.sh b/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/runtest.sh deleted file mode 100755 index 586a0c6..0000000 --- a/tests/Regression/bz868281-ltrace-doesn-t-work-on-PIE-binaries/runtest.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 - ARCH="$(rlGetPrimaryArch)" - SARCH="$(rlGetSecondaryArch)" - for arch in $ARCH $SARCH; do - rlCheckRpm glibc.$arch - done - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - rlRun "cp reproducer.c $TmpDir" - rlRun "pushd $TmpDir" - - if [ -d /usr/lib64 ]; then - 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= - elif rlIsRHEL ">=10"; then - rlLogInfo "RHEL >=10 does not support 32-bit packages" - MBITS= - else - MBITS=32 - fi - fi - - rlLogInfo "MBITS=$MBITS" - - rlRun "$GCC -fPIE -pie -x c reproducer.c -o a-native.out" - rlAssertExists a-native.out - - if [ -n "$MBITS" ]; then - rlRun "$GCC -fPIE -pie -m$MBITS -x c reproducer.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 diff --git a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/Makefile b/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/Makefile deleted file mode 100644 index 5e95fda..0000000 --- a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/PURPOSE b/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/PURPOSE deleted file mode 100644 index d1ca455..0000000 --- a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -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 -Bug summary: [RHEL 5] ltrace crashes with memory corruption due to double free() -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=890961 diff --git a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/ksh_bug.ksh b/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/ksh_bug.ksh deleted file mode 100644 index 09f2bf7..0000000 --- a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/ksh_bug.ksh +++ /dev/null @@ -1,8 +0,0 @@ -#!/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" diff --git a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/main.fmf b/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/main.fmf deleted file mode 100644 index 4e0962f..0000000 --- a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/main.fmf +++ /dev/null @@ -1,18 +0,0 @@ -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 -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 diff --git a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/runtest.sh b/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/runtest.sh deleted file mode 100755 index 5cc8819..0000000 --- a/tests/Regression/bz890961-RHEL-5-ltrace-crashes-with-memory-corruption-due/runtest.sh +++ /dev/null @@ -1,58 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 " > $(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) diff --git a/tests/Regression/pthread-program-assertion-failure/PURPOSE b/tests/Regression/pthread-program-assertion-failure/PURPOSE deleted file mode 100644 index 00eb57b..0000000 --- a/tests/Regression/pthread-program-assertion-failure/PURPOSE +++ /dev/null @@ -1,6 +0,0 @@ -PURPOSE of /tools/ltrace/Regression/pthread-program-assertion-failure -Description: pthread-program-assertion-failure -Author: Martin Cermak - -Issue reproduced using an f20 arm (32 bit) fedora system with ltrace-0.7.91-13.fc22.armv7hl. - diff --git a/tests/Regression/pthread-program-assertion-failure/main.fmf b/tests/Regression/pthread-program-assertion-failure/main.fmf deleted file mode 100644 index 0e9d856..0000000 --- a/tests/Regression/pthread-program-assertion-failure/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -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 -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 diff --git a/tests/Regression/pthread-program-assertion-failure/runtest.sh b/tests/Regression/pthread-program-assertion-failure/runtest.sh deleted file mode 100755 index a2b1c31..0000000 --- a/tests/Regression/pthread-program-assertion-failure/runtest.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/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 -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 < -#include - -extern void print (char *); - -#define PRINT_LOOP 10 - -void * -th_main (void *arg) -{ - int i; - for (i=0; i -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2011 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/Sanity/broken-binary-handling -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE broken.bin.gz - -.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 " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Try to trace broken binary by ltrace" >> $(METADATA) - @echo "Type: Sanity" >> $(METADATA) - @echo "TestTime: 5m" >> $(METADATA) - @echo "RunFor: ltrace" >> $(METADATA) - @echo "Requires: ltrace gzip" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2" >> $(METADATA) - @echo "Confidential: yes" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Sanity/broken-binary-handling/PURPOSE b/tests/Sanity/broken-binary-handling/PURPOSE deleted file mode 100644 index e6b9426..0000000 --- a/tests/Sanity/broken-binary-handling/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/ltrace/Sanity/broken-binary-handling -Description: Try to trace broken binary by ltrace -Author: Michal Nowak diff --git a/tests/Sanity/broken-binary-handling/broken.bin.gz b/tests/Sanity/broken-binary-handling/broken.bin.gz deleted file mode 100644 index 4fd8117..0000000 Binary files a/tests/Sanity/broken-binary-handling/broken.bin.gz and /dev/null differ diff --git a/tests/Sanity/broken-binary-handling/main.fmf b/tests/Sanity/broken-binary-handling/main.fmf deleted file mode 100644 index 8552c81..0000000 --- a/tests/Sanity/broken-binary-handling/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: Try to trace broken binary by ltrace -description: '' -contact: -- Vaclav Kadlcik -component: -- ltrace -test: ./runtest.sh -framework: beakerlib -recommend: -- ltrace -- gzip -duration: 5m -extra-summary: /tools/ltrace/Sanity/broken-binary-handling -extra-task: /tools/ltrace/Sanity/broken-binary-handling diff --git a/tests/Sanity/broken-binary-handling/runtest.sh b/tests/Sanity/broken-binary-handling/runtest.sh deleted file mode 100755 index 6558c78..0000000 --- a/tests/Sanity/broken-binary-handling/runtest.sh +++ /dev/null @@ -1,56 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/ltrace/Sanity/broken-binary-handling -# Description: Try to trace broken binary by ltrace -# Author: Michal Nowak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2011 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" - cp broken.bin.gz $TmpDir - rlRun "pushd $TmpDir" - gunzip broken.bin.gz - chmod +x broken.bin - rlPhaseEnd - - rlPhaseStartTest - rlRun "ltrace -f ./broken.bin > out 2>&1 " 1 "ltrace can't trace broken.bin" - OUT=`cat out` - rlLog "LOG: $OUT" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/Makefile b/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/Makefile deleted file mode 100644 index dc867e7..0000000 --- a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/ltrace/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support -# Description: Test for BZ#1449588 (Can ltrace be built with backtrace support?) -# Author: Edjunior Machado -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support -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 " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Test for BZ#1449588 (Can ltrace be built with backtrace support?)" >> $(METADATA) - @echo "Type: Sanity" >> $(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: 1449588" >> $(METADATA) - @echo "Releases: -RHEL4 -RHELClient5 -RHELServer5" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/PURPOSE b/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/PURPOSE deleted file mode 100644 index 6da4e88..0000000 --- a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/PURPOSE +++ /dev/null @@ -1,5 +0,0 @@ -PURPOSE of /tools/ltrace/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support -Description: Test for BZ#1449588 (Can ltrace be built with backtrace support?) -Author: Edjunior Machado -Bug summary: Can ltrace be built with backtrace support? -Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1449588 diff --git a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/main.fmf b/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/main.fmf deleted file mode 100644 index 91de65d..0000000 --- a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/main.fmf +++ /dev/null @@ -1,16 +0,0 @@ -summary: Test for BZ#1449588 (Can ltrace be built with backtrace support?) -description: | - Bug summary: Can ltrace be built with backtrace support? - Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1449588 -contact: Edjunior Machado -component: -- ltrace -test: ./runtest.sh -framework: beakerlib -recommend: -- ltrace -duration: 5m -link: -- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1449588 -extra-summary: /tools/ltrace/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support -extra-task: /tools/ltrace/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support diff --git a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/runtest.sh b/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/runtest.sh deleted file mode 100755 index 829db70..0000000 --- a/tests/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support/runtest.sh +++ /dev/null @@ -1,53 +0,0 @@ -#!/bin/bash -# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/ltrace/Sanity/bz1449588-Can-ltrace-be-built-with-backtrace-support -# Description: Test for BZ#1449588 (Can ltrace be built with backtrace support?) -# Author: Edjunior Machado -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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" -PACKAGE=$(rpm -qf $(which $CMD)) - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory" - rlRun "pushd $TmpDir" - rlPhaseEnd - - rlPhaseStartTest - set -o pipefail - rlRun -l "ltrace --help |& tee help-output.log" 0 "Collecting help output" - rlRun -l "grep -- '-w, --where=NR.*print backtrace showing NR stack frames at most.' help-output.log" 0 "Checking if '-w, --where=NR' parameter is available on help output" - rlRun -l "ltrace -w 4 /bin/ls" 0 "Trivial smoke test" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Sanity/random-apps/Makefile b/tests/Sanity/random-apps/Makefile deleted file mode 100644 index cc7d4a8..0000000 --- a/tests/Sanity/random-apps/Makefile +++ /dev/null @@ -1,64 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/ltrace/Sanity/random-apps -# Description: Runs random app which caused strace problems in the past -# Author: Michal Nowak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2011 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/Sanity/random-apps -export TESTVERSION=1.0 - -BUILT_FILES= - -FILES=$(METADATA) runtest.sh Makefile PURPOSE *.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 " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: Runs random app which caused strace problems in the past" >> $(METADATA) - @echo "Type: Sanity" >> $(METADATA) - @echo "TestTime: 1h" >> $(METADATA) - @echo "RunFor: ltrace" >> $(METADATA) - @echo "Requires: ltrace" >> $(METADATA) - @echo "Requires: gcc glibc-devel" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2" >> $(METADATA) - @echo "Confidential: yes" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Sanity/random-apps/PURPOSE b/tests/Sanity/random-apps/PURPOSE deleted file mode 100644 index 49e48ae..0000000 --- a/tests/Sanity/random-apps/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/ltrace/Sanity/random-apps -Description: Runs random app which caused strace problems in the past -Author: Michal Nowak diff --git a/tests/Sanity/random-apps/abort.c b/tests/Sanity/random-apps/abort.c deleted file mode 100644 index b1db3c3..0000000 --- a/tests/Sanity/random-apps/abort.c +++ /dev/null @@ -1,6 +0,0 @@ -#include - -int main() { - abort(); -} - diff --git a/tests/Sanity/random-apps/main.fmf b/tests/Sanity/random-apps/main.fmf deleted file mode 100644 index 65d54ee..0000000 --- a/tests/Sanity/random-apps/main.fmf +++ /dev/null @@ -1,14 +0,0 @@ -summary: Runs random app which caused strace problems in the past -description: '' -contact: Michal Nowak -component: -- ltrace -test: ./runtest.sh -framework: beakerlib -recommend: -- ltrace -- gcc -- glibc-devel -duration: 1h -extra-summary: /tools/ltrace/Sanity/random-apps -extra-task: /tools/ltrace/Sanity/random-apps diff --git a/tests/Sanity/random-apps/many_looping_threads.c b/tests/Sanity/random-apps/many_looping_threads.c deleted file mode 100644 index 87d837b..0000000 --- a/tests/Sanity/random-apps/many_looping_threads.c +++ /dev/null @@ -1,35 +0,0 @@ -#include -#include -#include -#include -#include -#include - -static int thd_no; - -static void *sub_thd(void *c) -{ - fprintf(stderr, "sub-thread %d created\n", ++thd_no); - for (;;) - getuid(); - return NULL; -} - -int main(int argc, char *argv[]) -{ - int i; - pthread_t *thd; - int num_threads = 1; - - if (argv[1]) - num_threads = atoi(argv[1]); - - thd = malloc(num_threads * sizeof(thd[0])); - fprintf(stderr, "test start, num_threads:%d...\n", num_threads); - for (i = 0; i < num_threads; i++) { - pthread_create(&thd[i], NULL, sub_thd, NULL); - fprintf(stderr, "after pthread_create\n"); - } - /* Exit. This kills all threads */ - return 0; -} diff --git a/tests/Sanity/random-apps/mthd2.c b/tests/Sanity/random-apps/mthd2.c deleted file mode 100644 index 9ef8a41..0000000 --- a/tests/Sanity/random-apps/mthd2.c +++ /dev/null @@ -1,44 +0,0 @@ -#include -#include -#include -#include -#include - -#define NTHD 60 - -int thd_no; - - -long sub_func(void) -{ - uid_t uid; - - printf("sub-thread created: %d\n", ++thd_no); - - for (;;) { - uid = getuid(); - sleep(1); - } - - return (long)uid; -} - -void *sub_thd(void *c) -{ - sub_func(); -} - -int main(int argc, char *argv[]) -{ - int i; - pthread_t thd[NTHD]; - - printf("test start...\n"); - - for (i = 0; i < NTHD; i++) { - pthread_create(&thd[i], NULL, sub_thd, NULL); - } -// pause(); - return 0; -} - diff --git a/tests/Sanity/random-apps/reproducer.c b/tests/Sanity/random-apps/reproducer.c deleted file mode 100644 index c5df5d9..0000000 --- a/tests/Sanity/random-apps/reproducer.c +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include - -void *start (void *arg) { - return arg; -} - -pthread_t thread1; - -int main () { - pthread_create (&thread1, NULL, start, NULL); - sleep (1); - return 0; -} - diff --git a/tests/Sanity/random-apps/reproducer2.c b/tests/Sanity/random-apps/reproducer2.c deleted file mode 100644 index 404e8d6..0000000 --- a/tests/Sanity/random-apps/reproducer2.c +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include - -static void h(int sig) {} - -int main() -{ - struct sigaction sa; - sigemptyset(&sa.sa_mask); - sa.sa_handler = h; - sa.sa_flags = SA_RESETHAND | SA_NODEFER; - sigaction (SIGUSR1, &sa, NULL); - return 0; -} - diff --git a/tests/Sanity/random-apps/reproducer3.c b/tests/Sanity/random-apps/reproducer3.c deleted file mode 100644 index c5df5d9..0000000 --- a/tests/Sanity/random-apps/reproducer3.c +++ /dev/null @@ -1,15 +0,0 @@ -#include -#include - -void *start (void *arg) { - return arg; -} - -pthread_t thread1; - -int main () { - pthread_create (&thread1, NULL, start, NULL); - sleep (1); - return 0; -} - diff --git a/tests/Sanity/random-apps/runtest.sh b/tests/Sanity/random-apps/runtest.sh deleted file mode 100755 index 99e7612..0000000 --- a/tests/Sanity/random-apps/runtest.sh +++ /dev/null @@ -1,101 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/ltrace/Sanity/random-apps -# Description: Runs random app which caused strace problems in the past -# Author: Michal Nowak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Copyright (c) 2011 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 - -CMD='ltrace' -BIN=$(which --skip-alias $CMD) -PACKAGE="$(rpm -qf --qf='%{name}\n' $BIN)" -#export MALLOC_PERTURB_=$(($RANDOM % 255 + 1)) - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun "TmpDir=\`mktemp -d\`" 0 "Creating tmp directory" - cp *.c $TmpDir - rlRun "pushd $TmpDir" - rlPhaseEnd - - touch FAILED PASSED - PASSED_CNT=0 - FAILED_CNT=0 - ALL_CNT=0 - for test in *.c; do - RESULT="PASS" - rlPhaseStartTest "Test ${test}" - rlRun "gcc $test -o ${test}.bin -lpthread" 0 "Compile $test" - rlAssertExists "${test}.bin" - rlRun "ltrace -o ${test}.LOG -f ./${test}.bin" 0 "Run $test under ltrace" - [ $? -ne 0 ] && RESULT=FAIL - - echo - cat ${test}.LOG - echo - - rlAssertNotGrep "\-\-\- SIGKILL" ${test}.LOG - [ $? -ne 0 ] && RESULT=FAIL - rlAssertNotGrep "\-\-\- SIGSEGV" ${test}.LOG - [ $? -ne 0 ] && RESULT=FAIL - rlAssertNotGrep "\-\-\- SIGILL" ${test}.LOG - [ $? -ne 0 ] && RESULT=FAIL - rlAssertNotGrep "\-\-\- SIGTRAP" ${test}.LOG - [ $? -ne 0 ] && RESULT=FAIL - rlAssertNotGrep "\-\-\- SIGINT" ${test}.LOG - [ $? -ne 0 ] && RESULT=FAIL - if [[ "$RESULT" == "PASS" ]]; then - let "PASSED_CNT = $PASSED_CNT + 1" - echo "$test $opt" >> PASSED - else - let "FAILED_CNT = $FAILED_CNT + 1" - echo "$test $opt" >> FAILED - fi - let "ALL_CNT = $ALL_CNT + 1" - rlPhaseEnd - done - - rlPhaseStartTest - rlLog "PASSED : $PASSED_CNT of $ALL_CNT" - cat PASSED - rlLog "FAILED : $FAILED_CNT of $ALL_CNT" - cat FAILED - if [ $FAILED_CNT -eq 0 ]; then - rlPass "All testcases passed." - else - rlFail "There are some errors." - fi - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "tar c *.LOG *.bin PASSED FAILED | gzip > logs.tar.gz" - rlFileSubmit "logs.tar.gz" - rlRun "popd" - rlRun "rm -r $TmpDir" 0 "Removing tmp directory" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd diff --git a/tests/Sanity/random-apps/say_linux.c b/tests/Sanity/random-apps/say_linux.c deleted file mode 100644 index 79f2d61..0000000 --- a/tests/Sanity/random-apps/say_linux.c +++ /dev/null @@ -1,8 +0,0 @@ -#include -#include - -int main() { - printf("Linux\n"); - exit(0); -} - diff --git a/tests/Sanity/random-apps/sleeping-c.c b/tests/Sanity/random-apps/sleeping-c.c deleted file mode 100644 index 4739a56..0000000 --- a/tests/Sanity/random-apps/sleeping-c.c +++ /dev/null @@ -1,6 +0,0 @@ -#include - -int main() -{ - sleep (15); -} diff --git a/tests/Sanity/random-apps/t_thread.c b/tests/Sanity/random-apps/t_thread.c deleted file mode 100644 index d024f07..0000000 --- a/tests/Sanity/random-apps/t_thread.c +++ /dev/null @@ -1,220 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -//#include "trigger_error.h" -#define THREAD_NUM 100 -#define MALLOC_LEN 1024*1024*10 -#define DEFAULT_NUM 0 -#define MAXSEM 5 - -int fd[10000]; -int fullid; -int emptyid; -int mutxid; - -union semun -{ - int val; /* Value for SETVAL */ - struct semid_ds *buf; /* Buffer for IPC_STAT, IPC_SET */ - unsigned short *array; /* Array for GETALL, SETALL */ - struct seminfo *__buf; /* Buffer for IPC_INFO (Linux-specific) */ -}; - -void *thread_handle_a(void *temp); - -int main(int argc, char *argv[]) -{ - pthread_t tid_a; - int i; - int ai[THREAD_NUM]; - int ret_a = -1; - int file_num; - char filename[10]; - char str[20]; - struct sembuf P, V;; - union semun arg; - pid_t pid; - - int *array; - int *sum; - int *set; - int *get; - - if (DEFAULT_NUM == 0) { - file_num = 10; - } - -#ifdef STS_SLEEP - sleep(10); -#endif - - for (i = 0; i < file_num; i++) { - sprintf(filename, "%d", i); - printf("open fd%d\n", i); - fd[i] = open(filename, O_RDONLY); - if (fd[i] < 0) - continue; - - if (read(fd[i], str, sizeof(str)) < 0) { - close(fd[i]); - fd[i] = -1; - continue; - } - printf("%s", str); - } - - for (i = 0; i < file_num; i++) { - if (fd[i] >= 0) { - close(fd[i]); - } - } - - for (i = 0; i < file_num; i++) { - fd[0] = open("/dev/null", O_RDONLY); - if (fd[0] < 0) { - perror("open /dev/null"); - continue; - } - close(fd[0]); - } - - for (i = 0; i < file_num; i++) { - fd[0] = open("/proc/meminfo", O_RDONLY); - if (fd[0] < 0) { - perror("open /proc/meminfo"); - continue; - } - if (read(fd[0], str, sizeof(str)) < 0) { - close(fd[0]); - continue; - } - printf("%s\n", str); - close(fd[0]); - } - for (i = 0; i < file_num; i++) { - fd[0] = open("/proc/self/maps", O_RDONLY); - if (fd[0] < 0) { - perror("open /proc/meminfo"); - continue; - } - if (read(fd[0], str, sizeof(str)) < 0) { - close(fd[0]); - continue; - } - printf("%s\n", str); - close(fd[0]); - } - - array = - (int *)mmap(NULL, sizeof(int) * 5, PROT_READ | PROT_WRITE, - MAP_SHARED | MAP_ANONYMOUS, -1, 0); - sum = - (int *)mmap(NULL, sizeof(int), PROT_READ | PROT_WRITE, - MAP_SHARED | MAP_ANONYMOUS, -1, 0); - get = - (int *)mmap(NULL, sizeof(int), PROT_READ | PROT_WRITE, - MAP_SHARED | MAP_ANONYMOUS, -1, 0); - set = - (int *)mmap(NULL, sizeof(int), PROT_READ | PROT_WRITE, - MAP_SHARED | MAP_ANONYMOUS, -1, 0); - *sum = 0; - *get = 0; - *set = 0; - - fullid = semget(IPC_PRIVATE, 1, IPC_CREAT | 00666); - emptyid = semget(IPC_PRIVATE, 1, IPC_CREAT | 00666); - mutxid = semget(IPC_PRIVATE, 1, IPC_CREAT | 00666); - - arg.val = 0; - if (semctl(fullid, 0, SETVAL, arg) == -1) - perror("semctl setval error"); - - arg.val = MAXSEM; - if (semctl(emptyid, 0, SETVAL, arg) == -1) - perror("semctl setval error"); - - arg.val = 1; - if (semctl(mutxid, 0, SETVAL, arg) == -1) - perror("setctl setval error"); - - V.sem_num = 0; - V.sem_op = 1; - V.sem_flg = SEM_UNDO; - P.sem_num = 0; - P.sem_op = -1; - P.sem_flg = SEM_UNDO; - - i = 0; - while (i < 5) { - - semop(emptyid, &P, 1); - semop(mutxid, &P, 1); - - array[*(set) % MAXSEM] = i + 1; - printf("Producer %d\n", array[(*set) % MAXSEM]); - (*set)++; - fflush(NULL); - semop(mutxid, &V, 1); - semop(fullid, &V, 1); - i++; - } - semctl(fullid, 0, IPC_RMID); - semctl(emptyid, 0, IPC_RMID); - semctl(mutxid, 0, IPC_RMID); - - if ((pid = fork()) == 0) { - for (i = 0; i < THREAD_NUM; i++) { - ai[i] = i; - ret_a = pthread_create(&tid_a, NULL, thread_handle_a, &ai[i]); - printf("thread a : \n"); - - if (ret_a == 0) { - pthread_detach(tid_a); - } - } - } else if (pid > 0) { - for (i = 0; i < THREAD_NUM; i++) { - ai[i] = i; - ret_a = pthread_create(&tid_a, NULL, thread_handle_a, &ai[i]); - printf("thread a : \n"); - - if (ret_a == 0) { - pthread_detach(tid_a); - } - } - } else { - printf("fork error\n"); - } - - fflush(NULL); - write(1, "BEFORE_ERROR\n", 13); - //trigger_error(); - raise(SIGFPE); - write(1, "EXIT_FLAG\n", 10); - return 10; -} - -void *thread_handle_a(void *t) -{ - long page_size = MALLOC_LEN; - int j = *(int *)t; - char *addr; - addr = (char *)malloc(page_size); - if (addr != NULL) { - sprintf(addr, "hello"); - printf("(a) malloc %d success: %s\n", j, addr); - } else { - printf("(a)malloc %d failed\n", j); - } - - printf("thread (a) will exit\n"); - fflush(NULL); - return NULL; -} - diff --git a/tests/Sanity/random-apps/test1.c b/tests/Sanity/random-apps/test1.c deleted file mode 100644 index 45a43af..0000000 --- a/tests/Sanity/random-apps/test1.c +++ /dev/null @@ -1,52 +0,0 @@ -#include -#include -#include -#include -#include - -int main(int argc, char *argv[]) -{ - int pfd[2]; - pid_t pid = -1; - int rc = 0; - char buf[BUFSIZ]; - sigset_t sig_mask; - - /* - * Mask of SIGTRAP - * Initialize of the value of sig_mask - */ - sigemptyset(&sig_mask); - - /* Set of SIGTRAP in sig_mask */ - sigaddset(&sig_mask, SIGTRAP); - - /* Set of SIGTRAP */ - sigprocmask(SIG_SETMASK, &sig_mask, NULL); - - rc = pipe(pfd); - if(rc == -1){ - perror("pipe Error\n"); - exit (1); - } - pid = fork(); - if (pid == -1){ - perror("Fork Error\n"); - exit (1); - } else if (pid == 0) { - close(pfd[0]); - close(1); - dup(pfd[1]); - close(pfd[1]); - execl("./test2.sh", (char *)0); - exit(0); - } else { - close(pfd[1]); - while((read(pfd[0], buf, sizeof(buf))) > 0) { - printf("%s", buf); - } - close(pfd[0]); - wait(NULL); - exit(0); - } -} diff --git a/tests/Sanity/random-apps/test_fork.c b/tests/Sanity/random-apps/test_fork.c deleted file mode 100644 index 7afd110..0000000 --- a/tests/Sanity/random-apps/test_fork.c +++ /dev/null @@ -1,78 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include - -#define DEFAULT_NUM 0 -#define THREAD_NUM 3 -#define MALLOC_LEN 1024*1024*10 - -void *thread_handle_a(void *t) -{ - long page_size = MALLOC_LEN; - int j = *(int *)t; - char *ptr; - char *addr; - - struct stat buf; - addr = (char *)malloc(page_size); - if (addr != NULL) { - sprintf(addr, "hello"); - printf("(a) malloc %d success: %s\n", j, addr); - } else { - printf("(a)malloc %d failed\n", j); - } - - - printf("thread (a) will exit\n"); - fflush(NULL); - if(addr != NULL) - free(addr); - return NULL; -} - -int main() -{ - int i = 0; - pid_t pid; - pthread_t tid_a; - int ai[THREAD_NUM]; - int ret_a = -1; - -#ifdef STS_SLEEP - sleep(10); -#endif - - if ((pid = fork()) == 0) { - for (i = 0; i < THREAD_NUM; i++) { - ai[i] = i; - ret_a = pthread_create(&tid_a, NULL, thread_handle_a, &ai[i]); - printf("thread a : \n"); - - if (ret_a == 0) { - pthread_detach(tid_a); - } - } - } else if (pid > 0) { - for (i = 0; i < THREAD_NUM; i++) { - ai[i] = i; - ret_a = pthread_create(&tid_a, NULL, thread_handle_a, &ai[i]); - printf("thread a : \n"); - - if (ret_a == 0) { - pthread_detach(tid_a); - } - } - - waitpid(pid, NULL, 0); - fflush(NULL); - write(1, "EXIT_FLAG\n", 10); - } else { - printf("fork error\n"); - } - return 0; -} diff --git a/tests/Sanity/random-apps/test_select.c b/tests/Sanity/random-apps/test_select.c deleted file mode 100644 index 0ad3c34..0000000 --- a/tests/Sanity/random-apps/test_select.c +++ /dev/null @@ -1,71 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include - -#define MAXBUF 1024 -#define THREAD_NUM 100 -#define MALLOC_LEN 1024*1024*10 - -void *thread_handle_a(void *t) -{ - long page_size = MALLOC_LEN; - int j = *(int *)t; - char *addr; - addr = (char *)malloc(page_size); - if (addr != NULL) { - sprintf(addr, "hello"); - printf("(a) malloc %d success: %s\n", j, addr); - } else { - printf("(a)malloc %d failed\n", j); - } - - printf("thread (a) will exit\n"); - fflush(NULL); - return NULL; -} - -int main(int argc, char **argv) -{ - fd_set wfds; - struct timeval tv; - int retval, maxfd = -1; - pthread_t tid_a; - int i; - int ai[THREAD_NUM]; - int ret_a = -1; - - sleep(5); - - for (i = 0; i < THREAD_NUM; i++) { - ai[i] = i; - ret_a = pthread_create(&tid_a, NULL, thread_handle_a, &ai[i]); - printf("thread a : \n"); - - if (ret_a == 0) { - pthread_detach(tid_a); - } - } - - FD_ZERO(&wfds); - FD_SET(STDOUT_FILENO, &wfds); - maxfd = STDOUT_FILENO; - tv.tv_sec = 1; - tv.tv_usec = 0; - - retval = select(maxfd+1, NULL, &wfds, NULL, &tv); - if (retval == -1) { - fprintf(stderr, "select failed\n"); - } else if (retval == 0){ - printf("Time out\n"); - } else { - printf("stdout can be write\n"); - } - - printf("EXIT_FLAG\n"); - return 0; -} diff --git a/tests/Sanity/random-apps/thread-test2.c b/tests/Sanity/random-apps/thread-test2.c deleted file mode 100644 index cce490c..0000000 --- a/tests/Sanity/random-apps/thread-test2.c +++ /dev/null @@ -1,34 +0,0 @@ -#include -#include -#include -#include -#include -#include - -#define THREAD_NUM 32 - -void *thread_function (void *); - -int main (int argc, char *argv[]) -{ - int i =0, x = 0; - int res = 0; - pthread_t a_thread[THREAD_NUM]; - void *thread_result; - - for (i = 0; i < THREAD_NUM; i++) { - res = pthread_create (&a_thread[i], NULL, thread_function, (void *)0); - if (res != 0) { - printf("Thread create failed\n"); - return (10); - } - } - raise(SIGABRT); - return (0); -} - -void *thread_function (void *arg) -{ - sleep(1); - printf("Thread TEST\n"); -} diff --git a/tests/Sanity/random-apps/vfork.c b/tests/Sanity/random-apps/vfork.c deleted file mode 100644 index a34e09f..0000000 --- a/tests/Sanity/random-apps/vfork.c +++ /dev/null @@ -1,15 +0,0 @@ -#define _GNU_SOURCE -#include -#include - -int main (void) -{ - pid_t child = vfork (); - - /* PRINTF/SLEEP violate the VFORK operations restriction. */ - printf ("%d pid=%d\n", (int) child, (int) getpid ()); - sleep (1); - if (!child) - execlp ("/bin/true", "/bin/true", NULL); - return 0; -} diff --git a/tests/Sanity/testsuite/Makefile b/tests/Sanity/testsuite/Makefile deleted file mode 100644 index fec9913..0000000 --- a/tests/Sanity/testsuite/Makefile +++ /dev/null @@ -1,71 +0,0 @@ -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# Makefile of /tools/ltrace/Sanity/testsuite -# Description: upstream tests for ltrace -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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/Sanity/testsuite -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 " > $(METADATA) - @echo "Name: $(TEST)" >> $(METADATA) - @echo "TestVersion: $(TESTVERSION)" >> $(METADATA) - @echo "Path: $(TEST_DIR)" >> $(METADATA) - @echo "Description: upstream tests for ltrace" >> $(METADATA) - @echo "Type: Regression" >> $(METADATA) - @echo "TestTime: 5h" >> $(METADATA) - @echo "RunFor: ltrace" >> $(METADATA) - @echo "Requires: ltrace" >> $(METADATA) - @echo "Requires: gcc" >> $(METADATA) - @echo "Requires: gcc-c++" >> $(METADATA) - @echo "Requires: libstdc++" >> $(METADATA) - @echo "Requires: libstdc++-devel" >> $(METADATA) - @echo "Requires: rpm-build yum-utils" >> $(METADATA) - @echo "Requires: elfutils-devel" >> $(METADATA) - @echo "Requires: dejagnu" >> $(METADATA) - @echo "Requires: libselinux-devel" >> $(METADATA) - @echo "Requires: libtool" >> $(METADATA) - @echo "Priority: Normal" >> $(METADATA) - @echo "License: GPLv2+" >> $(METADATA) - @echo "Confidential: no" >> $(METADATA) - @echo "Destructive: no" >> $(METADATA) - - rhts-lint $(METADATA) diff --git a/tests/Sanity/testsuite/PURPOSE b/tests/Sanity/testsuite/PURPOSE deleted file mode 100644 index 75f0067..0000000 --- a/tests/Sanity/testsuite/PURPOSE +++ /dev/null @@ -1,3 +0,0 @@ -PURPOSE of /tools/ltrace/Sanity/testsuite -Description: upstream tests for ltrace -Author: Martin Cermak diff --git a/tests/Sanity/testsuite/main.fmf b/tests/Sanity/testsuite/main.fmf deleted file mode 100644 index c0c9e11..0000000 --- a/tests/Sanity/testsuite/main.fmf +++ /dev/null @@ -1,23 +0,0 @@ -summary: upstream tests for ltrace -description: '' -contact: Martin Cermak -component: -- ltrace -test: ./runtest.sh -framework: beakerlib -recommend: -- ltrace -- gcc -- gcc-c++ -- libstdc++ -- libstdc++-devel -- rpm-build -- yum-utils -- elfutils-devel -- dejagnu -- libselinux-devel -- libtool -- koji -duration: 5h -extra-summary: /tools/ltrace/Sanity/testsuite -extra-task: /tools/ltrace/Sanity/testsuite diff --git a/tests/Sanity/testsuite/runtest.sh b/tests/Sanity/testsuite/runtest.sh deleted file mode 100755 index 3f56a91..0000000 --- a/tests/Sanity/testsuite/runtest.sh +++ /dev/null @@ -1,91 +0,0 @@ -#!/bin/bash -# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# runtest.sh of /tools/ltrace/Sanity/testsuite -# Description: upstream tests for ltrace -# Author: Martin Cermak -# -# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -# -# 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 - -CMD='ltrace' -BIN=$(which --skip-alias $CMD) -PACKAGE="${PACKAGE:-$(rpm -qf $BIN)}" -export PACKAGE - -GCC=${GCC:-gcc} -export GCC - -rlJournalStart - rlPhaseStartSetup - rlAssertRpm $PACKAGE - rlRun -l "rpm -qf $(which $GCC)" 0 "Checking gcc rpm version" - rlRun "NVR=$(rpm -q --qf='%{NAME}-%{VERSION}-%{RELEASE}' $PACKAGE)" - rlRun "TMP=`mktemp -d`" - rlRun "pushd $TMP" - - set -x - dnf download --disablerepo='*' --enablerepo=test-artifacts --source $NVR || \ - cp /var/share/test-artifacts/$NVR.src.rpm . || \ - rlFetchSrcForInstalled ltrace - set +x - - rlRun "dnf builddep -y $NVR.src.rpm" - rlRun "rpm --define='_topdir $TMP' -Uvh $NVR.src.rpm" - rlRun "${RPMBUILD_GCC:+CC=$RPMBUILD_GCC} rpmbuild --define='_topdir $TMP' -bc SPECS/${CMD}.spec" - - MAKEFILE_PATH=$(ls BUILD/${CMD}-*/Makefile 2>/dev/null) - if [[ -z "$MAKEFILE_PATH" ]]; then - MAKEFILE_PATH=$(ls BUILD/${CMD}-*/${CMD}-*/Makefile 2>/dev/null) - fi - rlLogInfo "MAKEFILE_PATH=$MAKEFILE_PATH" - rlPhaseEnd - - rlPhaseStartTest - rlRun "pushd ${MAKEFILE_PATH%/Makefile}" - - # known issues to be ignored - ignore_list='' - rlRun "ignore_list+=' system_calls.exp'" 0 "Failure reported bz#1963110" - - # define --ignore parameter for 'make check' if there is any testcase to be ignored - [ -n "$ignore_list" ] && rlRun "ignore_param=\"--ignore '$ignore_list'\"" 0 "Ignored testcases that will not be run: $ignore_list" - - # test - set -o pipefail - rlRun "make check RUNTESTFLAGS=\"--tool_exec=$BIN CC_FOR_TARGET=$GCC $ignore_param\" |& tee $TMP/check.log" - rlRun "popd" - - # no unexpected results should appear - rlRun -l "grep '^FAIL:' check.log" 1 - rlRun -l "grep '^# of unexpected' check.log" 1 - - rlFileSubmit "$TMP/check.log" "$PACKAGE-check.log" - rlPhaseEnd - - rlPhaseStartCleanup - rlRun "popd" - rlRun "rm -r $TMP" - rlPhaseEnd -rlJournalPrintText -rlJournalEnd