summaryrefslogtreecommitdiff
path: root/test-skeleton.c
AgeCommit message (Collapse)Author
2016-01-04Update copyright dates with scripts/update-copyrights.Joseph Myers
2015-08-05test-skeleton: add usage informationMike Frysinger
I keep trying to run tests with --help and then remembering that does nothing when it throws an error. That means I have to dig into the source when I want to refer to flags or env vars and re-read a good amount of code to find the nested locations. Make this all much more user friendly with a usage screen that gets printed out whenever an unknown option is specified.
2015-06-05Avoid outputting to TTY after an expected memory corruption in testcaseTulio Magno Quites Machado Filho
Protect TTY against an expected memory corruption from testcase tst-malloc-backtrace, which is expected to SIGABRT after a forced memory corruption.
2015-05-18Ensure `wint_t' is defined before use in include/stdio.hArjun Shankar
While trying to get nptl/tst-initializers1.c to include the test skeleton, I came across a couple of speed bumps. Firstly: after making the appropriate changes to the test, running `make check' led to this error: > In file included from ../malloc/malloc.h:24:0, .. > from tst-initializers1.c:60: > ../include/stdio.h:111:1: error: unknown type name `wint_t' > extern wint_t __getwc_unlocked (FILE *__fp); So, `wint_t' is used before being defined. Question: Why did test-skeleton.c not cause this error in any of the other tests that include it? Anyway, I noticed include/stdio.h includes stddef.h, which in turn defines `wint_t', but only if `__need_wint_t' is defined. So I put in a `#define __need_wint_t' before the include to get rid of the error. Is that the correct fix? A subsequent `make && make check' led to this second error: > from tst-initializers1-c89.c:1: > ../test-skeleton.c: In function `main': > ../test-skeleton.c:356:11: error: `for' loop initial declarations are only > allowed in C99 mode > for (struct temp_name_list *n = temp_name_list; Although there seem to be several other C89 no-noes in test-skeleton.c, I needed only to fix this specific one for gcc-4.8.3 to stop complaining.
2015-04-27test-skeleton: Support temporary files without memory leaks [BZ#18333]Florian Weimer
add_temp_file now makes a copy which is freed by delete_temp_files. Callers to create_temp_file can now free the returned file name to avoid the memory leak. These changes do not affect the leak behavior of existing code. Also address a NULL pointer derefence in tzset after a memoru allocation failure, found during testing.
2015-04-09Make test-skeleton.c grok TEST_DIRECT magic environment variable.Roland McGrath
2015-01-02Update copyright dates with scripts/update-copyrights.Joseph Myers
2014-11-12Fix tst-strcoll-overflow returning before timeout (BZ #17506)Leonhard Holz
Modifies the test examination in test-skeleton.c so that a test can be successful if it is interrupted or it returns uninterrupted with the expected status. For this both EXPECTED_SIGNAL and EXPECTED_STATUS have to be set, as is done in tst-strcoll-overflow.c.
2014-06-30test-skeleton: Kill any child process's offspringMaciej W. Rozycki
This makes sure any subprocesses created by the program being tested get killed as well if their parent times out. Otherwise if they are really stuck, they may remain there running forever after the test case and then the whole test suite has completed, until killed by hand. * test-skeleton.c (signal_handler): Kill the whole process group before killing the child individually. (main): Report any failure on `setpgid'.
2014-06-23test-skeleton.c: Use stdout for error messagesWill Newton
At the moment the test skeleton uses a mixture of stdout and stderr for error message output. Using stdout for all test output keeps all output correctly ordered and properly redirected to the output file. The suggestion to use stdout is also made on the wiki: https://sourceware.org/glibc/wiki/Testing/Testsuite#Writing_a_test_case ChangeLog: 2014-06-23 Will Newton <will.newton@linaro.org> * test-skeleton.c (signal_handler): Use printf and %m rather than perror. Use printf rather than fprintf to stderr. Use puts rather than fputs to stderr. (main): Likewise.
2014-02-08tests: unify fortification handler logicMike Frysinger
We have multiple tests that copy & paste the same logic for disabling the fortification output. Let's unify this in the test-skeleton instead. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2014-01-01Update copyright notices with scripts/update-copyrightsAllan McRae
2013-01-02Update copyright notices with scripts/update-copyrights.Joseph Myers
2012-02-09Replace FSF snail mail address with URLs.Paul Eggert
2009-08-14Improve test-skeleton.c to clean up after dead parent.Ulrich Drepper
2005-12-23(timeout_handler): Rewrite ts initialization for C++.Ulrich Drepper
2005-03-08* malloc/arena.c (ptmalloc_init): Recognize MALLOC_PERTURB_ and callUlrich Drepper
mallopt appropriately. * malloc/malloc.h: Define M_PERTURB. * malloc/malloc.c (perturb_byte): New variable. (alloc_perturb, free_perturb): New macros. (_int_malloc): Before returning, overwrite the memory if this is requested. (_int_free): Overwrite freed memory if requested. (mALLOPt): Handle M_PERTURB. * test-skeleton.c: Add call to mallopt with M_PERTURB command.
2004-12-22(CFLAGS-tst-align.c): Add -mpreferred-stack-boundary=4.Ulrich Drepper
2007-07-122.5-18.1Jakub Jelinek
2004-02-19Update.Ulrich Drepper
2004-02-18 Carlos O'Donell <carlos@baldric.uwo.ca> * test-skeleton.c (main): If set, use environment variable TIMEOUTFACTOR to scale test TIMEOUT.
2003-12-31Update.Ulrich Drepper
* inet/rcmd.c: Provide better error message in case of unknown host. Remove USE_IN_LIBIO. * nscd/nscd.init: Updated version, more conforming with current init file standards. * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into /var/run/nscd directory. (_PATH_NSCDSOCKET): Likewise. * test-skeleton.c (timeout_handler): Fix error message.
2003-06-25* posix/transbug.c: Include <string.h> for memset and strlen Andreas Jaeger
declarations. * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration. * stdlib/tst-strtod.c (main): Pass long double value. * test-skeleton.c: Include <time.h> for nanosleep declaration. 2003-06-25 Andreas Jaeger <aj@suse.de> * posix/transbug.c: Include <string.h> for memset and strlen declarations. * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration. * stdlib/tst-strtod.c (main): Pass long double value. * test-skeleton.c: Include <time.h> for nanosleep declaration.
2003-06-25Update.Ulrich Drepper
2003-06-19 Jakub Jelinek <jakub@redhat.com> * test-skeleton.c (timeout_handler): If waitpid returned 0, retry once after a second. If killed == 0, assume WTERMSIG (status) == SIGKILL.
2003-06-07Update.Ulrich Drepper
* test-skeleton.c (main): If EXPECTED_STATUS is defined check that returned status from child matches.
2003-06-07Update.Ulrich Drepper
2003-06-07 Ulrich Drepper <drepper@redhat.com> * Makeconfig (gnulib): Add -lgcc_eh once again.
2003-06-07Update.Ulrich Drepper
* test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
2003-06-01Update.Ulrich Drepper
* test-skeleton.c (main): Request getopt to not reorder the command line.
2002-12-19Update.Ulrich Drepper
* test-skeleton.c (main): Make sure correct value is seen as argv[0] after adjustment of argv, and argc.
2002-12-13* posix/bug-regex15.c: New file.Roland McGrath
* posix/Makefile (tests): Add it. * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB. (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
2002-12-07Update.Ulrich Drepper
* test-skeleton.c (timeout_handler): Allow expected signal to be SIGALRM.
2002-09-302002-09-29 Roland McGrath <roland@redhat.com>Roland McGrath
* test-skeleton.c (timeout_handler): Use WUNTRACED flag in waitpid. Examine the child's status and print something different if it wasn't just killed by our SIGKILL. (main): In the child process call setpgid to put it in its own pgrp.
2002-09-15Update.Ulrich Drepper
* test-skeleton.c (main): Provide more information in case waitpid fails.
2002-09-06(main): Improve error message for unexpected signal case.Ulrich Drepper
2002-07-22(create_temp_file): New function.Ulrich Drepper
2001-08-23Update.Ulrich Drepper
2001-08-22 Ulrich Drepper <drepper@redhat.com> * test-skeleton.c (add_temp_file): Add __attribute__ ((unused)) to avoid warnings. * dlfcn/tst-dladdr.c (do_test): Get address of ref1 using DL_LOOKUP_ADDRESS.
2001-07-06Update to LGPL v2.1.Andreas Jaeger
2001-07-06 Paul Eggert <eggert@twinsun.com> * manual/argp.texi: Remove ignored LGPL copyright notice; it's not appropriate for documentation anyway. * manual/libc-texinfo.sh: "Library General Public License" -> "Lesser General Public License". 2001-07-06 Andreas Jaeger <aj@suse.de> * All files under GPL/LGPL version 2: Place under LGPL version 2.1.
2000-12-18Update.Andreas Jaeger
2000-12-18 Andreas Jaeger <aj@suse.de> * test-skeleton.c: Use temp_name_list instead of temp_name_list to avoid collision with name_list from inet/netgroup.h. * nss/nss_files/files-network.c (NEED_H_ERRNO): Define. * include/grp.h (DECLARE_NSS_PROTOTYPES): New. * include/pwd.h (DECLARE_NSS_PROTOTYPES): New. * include/netdb.h (DECLARE_NSS_PROTOTYPES): New. * include/shadow.h (DECLARE_NSS_PROTOTYPES): New. * hesiod/nss_hesiod/hesiod-proto.c (_nss_hesiod_setprotoent): Fix declaration to match prototype. * hesiod/nss_hesiod/hesiod-pwd.c (_nss_hesiod_setpwent): Likewise. * hesiod/nss_hesiod/hesiod-grp.c (_nss_hesiod_setgrent): Likewise. * hesiod/nss_hesiod/hesiod-service.c (_nss_hesiod_setservent): Likewise. * nis/nss_nis/nis-grp.c (_nss_nis_setgrent): Likewise. * nis/nss_nis/nis-pwd.c (_nss_nis_setpwent): Likewise. * nis/nss_nis/nis-proto.c (_nss_nis_setprotoent): Likewise. * nis/nss_nis/nis-service.c (_nss_nis_setservent): Likewise. (_nss_nis_getservbyport_r): Likewise. * nis/nss_nis/nis-hosts.c (_nss_nis_sethostent): Likewise. * nis/nss_nis/nis-spwd.c (_nss_nis_setspent): Likewise. * nis/nss_nis/nis-network.c (_nss_nis_getnetent_r): Likewise. (_nss_nis_setnetent): Likewise * nis/nss_nis/nis-netgrp.c (_nss_nis_setnetgrent): Likewise. (_nss_nis_endnetgrent): Likewise. * nis/nss_nisplus/nisplus-netgrp.c (_nss_nisplus_endnetgrent): Likewise. (_nss_nisplus_setnetgrent): Likewise. * nis/nss_nisplus/nisplus-spwd.c (_nss_nisplus_setspent): Likewise. * nis/nss_nisplus/nisplus-pwd.c (_nss_nisplus_setpwent): Likewise. * nis/nss_nisplus/nisplus-grp.c (_nss_nisplus_setgrent): Likewise. * nis/nss_nisplus/nisplus-network.c (_nss_nisplus_setnetent): Likewise. * nis/nss_nisplus/nisplus-hosts.c (_nss_nisplus_sethostent): Likewise. * nis/nss_nisplus/nisplus-service.c (_nss_nisplus_setservent): Likewise. * nis/nss_nisplus/nisplus-proto.c (_nss_nisplus_setprotoent): Likewise. * nis/nss_compat/compat-spwd.c (_nss_compat_setspent): Likewise. * nis/nss_compat/compat-pwd.c (_nss_compat_setpwent): Likewise. * nis/nss_compat/compat-grp.c (_nss_compat_setgrent): Likewise. * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Likewise. * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r): Likewise. (_nss_dns_getnetbyaddr_r): Likewise.
2000-11-28Update.Ulrich Drepper
* test-skeleton.c: Mark timeout_handler with noreturn. * iconv/skeleton.c (get16u): Add const to cast. (get32u): Likewise. * iconvdata/gb18030.c: Likewise. * iconvdata/iso-2022-cn-ext.c: Likewise. * iconvdata/ansi_x3.110.c: Add cast to avoid warning. * iconvdata/big5.c: Likewise. * iconvdata/big5hkscs.c: Likewise. * iconvdata/iso_6937.c: Likewise. * iconvdata/iso_6937-2.c: Likewise. * iconvdata/t.61.c: Likewise. * iconvdata/iso646.c: Add prototypes for gconv_init and gconv_env. * iconvdata/unicode.c: Likewise. * iconvdata/utf-16.c: Likewise. * iconvdata/cns11643.h (ucs4_to_cns11643): Define needed as size_t. * iconv/gconv_trans.c (__gconv_translit_find): Avoid one warning with little code shuffling.
2000-11-24Update.Ulrich Drepper
* test-skeleton.c: Mark local functions as static to avoid warnings. 2000-11-23 H.J. Lu <hjl@gnu.org> * rt/tst-aio6.c (do_test): Use pipe instead of STDIN_FILENO to support the background job. Fix a typo. 2000-11-24 Ulrich Drepper <drepper@redhat.com> has same names but lower cost.
2000-10-26Update.Ulrich Drepper
2000-10-26 Ulrich Drepper <drepper@redhat.com> * posix/Makefile (tests): Add tst-chmod. (tst-chmod-ARGS): Define. * posix/tst-chmod.c: New file. * test-skeleton.c: Before calling user-defined function remove parameters from argument list. * posix/tst-exec.c: Adjust to this change. * posix/tst-spawn.c: Likewise. * sysdeps/unix/opendir.c (__opendir): Optimize a bit. Add __builtin_expect.
2000-04-11Update.Ulrich Drepper
2000-04-11 Ulrich Drepper <drepper@redhat.com> * posix/globtest.sh: Fix last change. 2000-04-10 Philip Blundell <philb@gnu.org> * sysdeps/unix/sysv/linux/bits/in.h (IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP): New names for IPV6_ADD_MEMBERSHIP, IPV6_DROP_MEMBERSHIP. * sysdeps/generic/bits/in.h (IPV6_JOIN_GROUP, IPV6_LEAVE_GROUP): Likewise. 2000-04-11 Ulrich Drepper <drepper@redhat.com> * elf/readlib (process_file): Close streams in case of an error. 2000-04-09 Andreas Jaeger <aj@suse.de> * elf/readlib.c (process_file): Check if file is big enough to contain aout and ELF headers. Reported by Reinhard Moosauer <RMoosauer@steinecker.com>. 2000-04-10 Jes Sorensen <Jes.Sorensen@cern.ch> * elf/dl-fini.c: Include alloca.h to get proper prototype for alloca(). 2000-04-11 Ulrich Drepper <drepper@redhat.com> * test-skeleton.c (main): If STDOUT_UNBUFFERED is defined, make stdout stream unbuffered. * rt/Makefile (tests): Add tst-clock. Add rules to build tst-clock. * rt/tst-clock.c: New file. * sysdeps/unix/i386/i586/clock_getres.c: Correct expression to decide about initialization of nsec. * sysdeps/unix/i386/i586/clock_gettime.c: Correct expression to decide about initialization of freq. Set retval to zero if successful. * sysdeps/unix/sysv/linux/i386/get_clockfreq.c: Cache result.
2000-04-01Update.Ulrich Drepper
* dlfcn/Makefile (distribute): Add glreflib1.c and glreflib2.c. (tests): Add glrefmain. Add rules to build modules and run tests. Ignore result of glrefmain for now since it fails. * dlfcn/glrefmain.c: New file. * dlfcn/glreflib1.c: New file. * dlfcn/glreflib2.c: New file. * test-skeleton.c: Include <string.h> for strsignal prototype.
1998-04-14Update.Ulrich Drepper
1998-04-14 16:34 Ulrich Drepper <drepper@cygnus.com> * test-skeleton.c: Provide hook for initializing code before the fork. * rt/tst-aio.c: Use PREPARE hook to make suer temp files are always removed. * libio/fcloseall.c (__fcloseall): Return return value of _IO_cleanup. * libio/genops.c (_IO_cleanup): Return return value of _IO_flush_all. * libio/libioP.h: Adopt _IO_cleanup prototype. * stdlib/Makefile (tests): Add test-canon2. * stdlib/test-canon2.c: New file. * stdlib/canonicalize.c (canonicalize): Allow RESOLVED parameter to be NULL. Use __lxstat, not __lstat. Correctly recognize long symlink sequences. (__realpath): Make real function which checks RESOLVED parameter for not being NULL. 1998-04-14 Ulrich Drepper <drepper@cygnus.com> * catgets/open_catalog.c (__open_catalog): Fix problems with reading non-files. Always close file. Reported by Cristian Gafton <gafton@redhat.com>. * elf/dl-minimal.c (__strtol_internal): Prevent overflow warnings. 1998-04-14 13:28 Ulrich Drepper <drepper@cygnus.com> * libc.map: Add various low-level I/O functions. 1998-04-14 10:35 Ulrich Drepper <drepper@cygnus.com> * string/Makefile (routines): Remove strerror_r. * string/strerror_r.c: Removed. * string/strerror.c: Call __strerror_r for doing the real work. * sysdeps/generic/_strerror.c: Rename function to __strerror_r and add weak alias strerror_r. * sysdeps/mach/_strerror.c: Likewise. * assert/assert-perr.c: Use __strerror_r instead of _strerror_internal. * elf/dl-error.c (_dl_signal_error): Likewise. * elf/dl-profile.c (_dl_start_profile): Likewise. * gmon/gmon.c (write_gmon): Likewise. * stdio-common/perror.c: Likewise. * stdio-common/vfprintf.c: Likewise. 1998-04-10 Mark Kettenis <kettenis@phys.uva.nl> * sysdeps/unix/sysv/linux/Makefile [$(subdir)=inet] (sysdep_headers): Add netatalk/at.h. 1998-04-12 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * manual/socket.texi, manual/creature.texi, manual/time.texi: Formatting fixes. 1998-04-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * posix/regex.c: Rename __re_syntax_options back to re_syntax_options, aliases do not work with global variables due to copy relocations. (regex_compile): Use syntax parameter instead of re_syntax_options. 1998-04-14 Andreas Jaeger <aj@arthur.rhein-neckar.de> * configure.in: Document that enable-force-install is default.
1998-04-11Update.Ulrich Drepper
* rt/tst-aio.c: Add test for aio_read and lio_listio. * rt/lio_listio.c: Correct total counter handling. * rt/aio_misc.c (handle_fildes_io): Correctly dequeue elements from request queue. * test-skeleton.c (main): Make stdout unbuffered. Improve message of signal on exit even more.
1998-04-11Update.Ulrich Drepper
1998-04-11 09:33 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (rtobjdir): New variable. (rpath-link): Add rtobjdir and thread directory, if available. * test-skeleton.c: Add support to remove temporary files. Always define test_dir. Improve message about expected signal. * rt/Makefile (tests): Add tst-aio. Add rules for tst-aio to be linked with librt and thread library. * rt/aio_misc.c: Correct fundamental bugs. * rt/aio_suspend.c: Correct bug in test for available request. Initialize conditional variable. * rt/lio_listio.c: Initialize conditional variable. * rt/lio_listio64.c: Likewise. * rt/tst-aio.c: New file. * sysdeps/libm-ieee754/s_signgam.c: Undo last change. * sysdeps/libm-ieee754/w_gamma.c: Likewise. Adopt for ISO C 9x. * sysdeps/libm-ieee754/w_gammaf.c: Likewise. * sysdeps/libm-ieee754/w_gammal.c: Likewise. * sysdeps/libm-ieee754/w_lgamma.c: Likewise. * sysdeps/libm-ieee754/w_lgammaf.c: Likewise. * sysdeps/libm-ieee754/w_lgammal.c: Likewise. 1998-04-11 14:49 Mark Kettenis <kettenis@landau.phys.uva.nl> * posix/regex.c [_LIBC] (__re_syntax_options): Initialize to 0. * elf/dl-load.c (open_path): Use correct name for test whether directory in load path exists. * sysdeps/libm-ieee754/s_expm1.c: Remove variable one. * sysdeps/libm-ieee754/e_pow.c: Fix typo. Patches by Tom Rini <trini@kernel.crashing.org>. * wcsmbs/wcstof_l.c: Declare ____wcstoull_l_internal. * wcsmbs/wcstod_l.c: Likewise. * wcsmbs/wcstold_l.c: Likewise.
1998-03-23Update.Ulrich Drepper
1998-03-23 07:52 H.J. Lu <hjl@gnu.org> * elf/dl-close.c (_dl_close): Fix byte count while removing the shared object from the global scope list and optimize a little bit. 1998-03-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/filesys.texi (Scanning Directory Content): Add missing closing brace. (Scanning Directory Content): Fix text. 1998-03-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/memory.texi (Heap Consistency Checking): Add paragraph explaining difference of -lmcheck and MALLOC_CHECK_. 1998-03-23 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/fstatvfs.c (fstatvfs): Correct some typos in comments. 1998-03-20 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * test-skeleton.c (main): Fix test for exit signal. 1998-03-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/strtok_r.c: Undefine __strtok_r. 1998-03-22 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/generic/memcmp.c [_LIBC]: Define WORDS_BIGENDIAN as appropriate. 1998-03-23 11:14 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libc.map: Export __strtok_r. 1998-03-23 Ulrich Drepper <drepper@cygnus.com> * posix/regex.c (re_compile_fastmap): Remove unused variable num_regs and adjust comment. Patch by Jim Meyering <meyering@ascend.com>. * math/math.h (M_*l): Extend long double constants to be usable for 128 bit floats. Patch by Richard Henderson. 1998-03-23 11:16 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> Patch by Tim Waugh and Andreas Schwab.
1998-03-18Update.Ulrich Drepper
* dirent/list.c (test): Return error value. (main): Exit with error value. * sysdeps/unix/opendir.c (__opendir): Add missing initialization. * Makefile (distribute): Add test-skeleton.c. * test-skeleton.c: New file. * dirent/Makefile (tests): Add opendir-tst1. * dirent/opendir-tst1.c: New file. 1998-03-18 Ulrich Drepper <drepper@cygnus.com> Optimize memory handling.