summaryrefslogtreecommitdiffstats
path: root/c/src/tests/psxtests/psx04
diff options
context:
space:
mode:
authorRalf Corsepius <ralf.corsepius@rtems.org>2003-11-11 00:59:49 +0000
committerRalf Corsepius <ralf.corsepius@rtems.org>2003-11-11 00:59:49 +0000
commitff6ab1b594d9f073ece9b7fedf1f6977f52aeee5 (patch)
treef0b2e3afb63f53a922a0c42137a6d6763548edc5 /c/src/tests/psxtests/psx04
parent2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff)
downloadrtems-ff6ab1b594d9f073ece9b7fedf1f6977f52aeee5.tar.bz2
2003-11-10 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Remove. * ChangeLog: Remove. * Makefile.am: Remove. * configure.ac: Remove. * psxtests.am: Remove. * include/.cvsignore: Remove. * include/Makefile.am: Remove. * include/pmacros.h: Remove. * psx01/.cvsignore: Remove. * psx01/Makefile.am: Remove. * psx01/init.c: Remove. * psx01/psx01.scn: Remove. * psx01/system.h: Remove. * psx01/task.c: Remove. * psx02/.cvsignore: Remove. * psx02/Makefile.am: Remove. * psx02/init.c: Remove. * psx02/psx02.scn: Remove. * psx02/system.h: Remove. * psx02/task.c: Remove. * psx03/.cvsignore: Remove. * psx03/Makefile.am: Remove. * psx03/init.c: Remove. * psx03/psx03.scn: Remove. * psx03/system.h: Remove. * psx03/task.c: Remove. * psx04/.cvsignore: Remove. * psx04/Makefile.am: Remove. * psx04/init.c: Remove. * psx04/psx04.scn: Remove. * psx04/system.h: Remove. * psx04/task1.c: Remove. * psx04/task2.c: Remove. * psx04/task3.c: Remove. * psx05/.cvsignore: Remove. * psx05/Makefile.am: Remove. * psx05/init.c: Remove. * psx05/psx05.scn: Remove. * psx05/system.h: Remove. * psx05/task.c: Remove. * psx05/task2.c: Remove. * psx05/task3.c: Remove. * psx06/.cvsignore: Remove. * psx06/Makefile.am: Remove. * psx06/init.c: Remove. * psx06/psx06.scn: Remove. * psx06/system.h: Remove. * psx06/task.c: Remove. * psx06/task2.c: Remove. * psx07/.cvsignore: Remove. * psx07/Makefile.am: Remove. * psx07/init.c: Remove. * psx07/psx07.scn: Remove. * psx07/system.h: Remove. * psx07/task.c: Remove. * psx08/.cvsignore: Remove. * psx08/Makefile.am: Remove. * psx08/init.c: Remove. * psx08/psx08.scn: Remove. * psx08/system.h: Remove. * psx08/task1.c: Remove. * psx08/task2.c: Remove. * psx08/task3.c: Remove. * psx09/.cvsignore: Remove. * psx09/Makefile.am: Remove. * psx09/init.c: Remove. * psx09/psx09.scn: Remove. * psx09/system.h: Remove. * psx10/.cvsignore: Remove. * psx10/Makefile.am: Remove. * psx10/init.c: Remove. * psx10/psx10.scn: Remove. * psx10/system.h: Remove. * psx10/task.c: Remove. * psx10/task2.c: Remove. * psx10/task3.c: Remove. * psx11/.cvsignore: Remove. * psx11/Makefile.am: Remove. * psx11/init.c: Remove. * psx11/psx11.scn: Remove. * psx11/system.h: Remove. * psx11/task.c: Remove. * psx12/.cvsignore: Remove. * psx12/Makefile.am: Remove. * psx12/init.c: Remove. * psx12/psx12.scn: Remove. * psx12/system.h: Remove. * psx12/task.c: Remove. * psx13/.cvsignore: Remove. * psx13/Makefile.am: Remove. * psx13/main.c: Remove. * psx13/psx13.scn: Remove. * psx13/test.c: Remove. * psxcancel/.cvsignore: Remove. * psxcancel/Makefile.am: Remove. * psxcancel/init.c: Remove. * psxcancel/psxcancel.scn: Remove. * psxchroot01/.cvsignore: Remove. * psxchroot01/Makefile.am: Remove. * psxchroot01/main.c: Remove. * psxchroot01/psxchroot01.scn: Remove. * psxchroot01/test.c: Remove. * psxfile01/.cvsignore: Remove. * psxfile01/Makefile.am: Remove. * psxfile01/main.c: Remove. * psxfile01/psxfile01.scn: Remove. * psxfile01/test.c: Remove. * psxfile01/test_cat.c: Remove. * psxfile01/test_extend.c: Remove. * psxfile01/test_write.c: Remove. * psxhdrs/.cvsignore: Remove. * psxhdrs/Makefile.am: Remove. * psxhdrs/clock01.c: Remove. * psxhdrs/clock02.c: Remove. * psxhdrs/clock03.c: Remove. * psxhdrs/clock04.c: Remove. * psxhdrs/clock05.c: Remove. * psxhdrs/clock06.c: Remove. * psxhdrs/cond01.c: Remove. * psxhdrs/cond02.c: Remove. * psxhdrs/cond03.c: Remove. * psxhdrs/cond04.c: Remove. * psxhdrs/cond05.c: Remove. * psxhdrs/cond06.c: Remove. * psxhdrs/cond07.c: Remove. * psxhdrs/cond08.c: Remove. * psxhdrs/cond09.c: Remove. * psxhdrs/cond10.c: Remove. * psxhdrs/key01.c: Remove. * psxhdrs/key02.c: Remove. * psxhdrs/key03.c: Remove. * psxhdrs/key04.c: Remove. * psxhdrs/mutex01.c: Remove. * psxhdrs/mutex02.c: Remove. * psxhdrs/mutex03.c: Remove. * psxhdrs/mutex04.c: Remove. * psxhdrs/mutex05.c: Remove. * psxhdrs/mutex06.c: Remove. * psxhdrs/mutex07.c: Remove. * psxhdrs/mutex08.c: Remove. * psxhdrs/mutex09.c: Remove. * psxhdrs/mutex10.c: Remove. * psxhdrs/mutex11.c: Remove. * psxhdrs/mutex12.c: Remove. * psxhdrs/mutex13.c: Remove. * psxhdrs/mutex14.c: Remove. * psxhdrs/mutex15.c: Remove. * psxhdrs/mutex16.c: Remove. * psxhdrs/proc01.c: Remove. * psxhdrs/proc02.c: Remove. * psxhdrs/proc03.c: Remove. * psxhdrs/proc04.c: Remove. * psxhdrs/proc05.c: Remove. * psxhdrs/proc06.c: Remove. * psxhdrs/proc07.c: Remove. * psxhdrs/proc08.c: Remove. * psxhdrs/proc09.c: Remove. * psxhdrs/proc10.c: Remove. * psxhdrs/proc11.c: Remove. * psxhdrs/proc12.c: Remove. * psxhdrs/proc13.c: Remove. * psxhdrs/proc14.c: Remove. * psxhdrs/pthread01.c: Remove. * psxhdrs/pthread02.c: Remove. * psxhdrs/pthread03.c: Remove. * psxhdrs/pthread04.c: Remove. * psxhdrs/pthread05.c: Remove. * psxhdrs/pthread06.c: Remove. * psxhdrs/pthread07.c: Remove. * psxhdrs/pthread08.c: Remove. * psxhdrs/pthread09.c: Remove. * psxhdrs/pthread10.c: Remove. * psxhdrs/pthread11.c: Remove. * psxhdrs/pthread12.c: Remove. * psxhdrs/pthread13.c: Remove. * psxhdrs/pthread14.c: Remove. * psxhdrs/pthread15.c: Remove. * psxhdrs/pthread16.c: Remove. * psxhdrs/pthread17.c: Remove. * psxhdrs/pthread18.c: Remove. * psxhdrs/pthread19.c: Remove. * psxhdrs/pthread20.c: Remove. * psxhdrs/pthread21.c: Remove. * psxhdrs/pthread22.c: Remove. * psxhdrs/pthread23.c: Remove. * psxhdrs/pthread24.c: Remove. * psxhdrs/pthread25.c: Remove. * psxhdrs/pthread26.c: Remove. * psxhdrs/pthread27.c: Remove. * psxhdrs/pthread28.c: Remove. * psxhdrs/pthread29.c: Remove. * psxhdrs/pthread30.c: Remove. * psxhdrs/pthread31.c: Remove. * psxhdrs/pthread32.c: Remove. * psxhdrs/pthread33.c: Remove. * psxhdrs/pthread34.c: Remove. * psxhdrs/pthread35.c: Remove. * psxhdrs/pthread36.c: Remove. * psxhdrs/sched01.c: Remove. * psxhdrs/sched02.c: Remove. * psxhdrs/sched03.c: Remove. * psxhdrs/sched04.c: Remove. * psxhdrs/sched05.c: Remove. * psxhdrs/sched06.c: Remove. * psxhdrs/sched07.c: Remove. * psxhdrs/sched08.c: Remove. * psxhdrs/signal01.c: Remove. * psxhdrs/signal02.c: Remove. * psxhdrs/signal03.c: Remove. * psxhdrs/signal04.c: Remove. * psxhdrs/signal05.c: Remove. * psxhdrs/signal06.c: Remove. * psxhdrs/signal07.c: Remove. * psxhdrs/signal08.c: Remove. * psxhdrs/signal09.c: Remove. * psxhdrs/signal10.c: Remove. * psxhdrs/signal11.c: Remove. * psxhdrs/signal12.c: Remove. * psxhdrs/signal13.c: Remove. * psxhdrs/signal14.c: Remove. * psxhdrs/signal15.c: Remove. * psxhdrs/signal16.c: Remove. * psxhdrs/signal17.c: Remove. * psxhdrs/signal18.c: Remove. * psxhdrs/signal19.c: Remove. * psxhdrs/signal20.c: Remove. * psxhdrs/signal21.c: Remove. * psxhdrs/signal22.c: Remove. * psxhdrs/signal23.c: Remove. * psxhdrs/sync01.c: Remove. * psxhdrs/sync02.c: Remove. * psxhdrs/sync03.c: Remove. * psxhdrs/time01.c: Remove. * psxhdrs/time02.c: Remove. * psxhdrs/time03.c: Remove. * psxhdrs/time04.c: Remove. * psxhdrs/time05.c: Remove. * psxhdrs/time06.c: Remove. * psxhdrs/time07.c: Remove. * psxhdrs/time08.c: Remove. * psxhdrs/time09.c: Remove. * psxhdrs/time10.c: Remove. * psxhdrs/time11.c: Remove. * psxhdrs/time12.c: Remove. * psxhdrs/time13.c: Remove. * psxhdrs/timer01.c: Remove. * psxhdrs/timer02.c: Remove. * psxhdrs/timer03.c: Remove. * psxhdrs/timer04.c: Remove. * psxhdrs/timer05.c: Remove. * psxhdrs/timer06.c: Remove. * psxhdrs/timer07.c: Remove. * psxmount/.cvsignore: Remove. * psxmount/Makefile.am: Remove. * psxmount/main.c: Remove. * psxmount/psxmount.scn: Remove. * psxmount/test.c: Remove. * psxmsgq01/.cvsignore: Remove. * psxmsgq01/Makefile.am: Remove. * psxmsgq01/init.c: Remove. * psxmsgq01/psxmsgq01.scn: Remove. * psxmsgq01/system.h: Remove. * psxreaddir/.cvsignore: Remove. * psxreaddir/Makefile.am: Remove. * psxreaddir/main.c: Remove. * psxreaddir/psxreaddir.scn: Remove. * psxreaddir/test.c: Remove. * psxsem01/.cvsignore: Remove. * psxsem01/Makefile.am: Remove. * psxsem01/init.c: Remove. * psxsem01/psxsem01.scn: Remove. * psxsem01/system.h: Remove. * psxstat/.cvsignore: Remove. * psxstat/Makefile.am: Remove. * psxstat/main.c: Remove. * psxstat/psxstat.scn: Remove. * psxstat/test.c: Remove. * psxtime/.cvsignore: Remove. * psxtime/Makefile.am: Remove. * psxtime/main.c: Remove. * psxtime/psxtime.scn: Remove. * psxtime/test.c: Remove. * psxtimer/.cvsignore: Remove. * psxtimer/Makefile.am: Remove. * psxtimer/psxtimer.c: Remove. * psxtimer/psxtimer.scn: Remove. * psxtimer/system.h: Remove.
Diffstat (limited to 'c/src/tests/psxtests/psx04')
-rw-r--r--c/src/tests/psxtests/psx04/.cvsignore2
-rw-r--r--c/src/tests/psxtests/psx04/Makefile.am44
-rw-r--r--c/src/tests/psxtests/psx04/init.c558
-rw-r--r--c/src/tests/psxtests/psx04/psx04.scn99
-rw-r--r--c/src/tests/psxtests/psx04/system.h63
-rw-r--r--c/src/tests/psxtests/psx04/task1.c43
-rw-r--r--c/src/tests/psxtests/psx04/task2.c41
-rw-r--r--c/src/tests/psxtests/psx04/task3.c118
8 files changed, 0 insertions, 968 deletions
diff --git a/c/src/tests/psxtests/psx04/.cvsignore b/c/src/tests/psxtests/psx04/.cvsignore
deleted file mode 100644
index 282522db03..0000000000
--- a/c/src/tests/psxtests/psx04/.cvsignore
+++ /dev/null
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/c/src/tests/psxtests/psx04/Makefile.am b/c/src/tests/psxtests/psx04/Makefile.am
deleted file mode 100644
index fa4d5a87c3..0000000000
--- a/c/src/tests/psxtests/psx04/Makefile.am
+++ /dev/null
@@ -1,44 +0,0 @@
-##
-## $Id$
-##
-
-
-TEST = psx04
-
-MANAGERS = all
-
-C_FILES = init.c task1.c task2.c task3.c
-C_O_FILES = $(C_FILES:%.c=${ARCH}/%.$(OBJEXT))
-
-H_FILES = system.h
-noinst_HEADERS = $(H_FILES)
-
-DOCTYPES = scn
-DOCS = $(DOCTYPES:%=$(TEST).%)
-
-SRCS = $(DOCS) $(C_FILES) $(H_FILES)
-OBJS = $(C_O_FILES)
-
-PRINT_SRCS = $(DOCS)
-
-PGM = ${ARCH}/$(TEST).exe
-
-include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
-include $(top_srcdir)/../automake/compile.am
-include $(top_srcdir)/../automake/leaf.am
-include $(top_srcdir)/psxtests.am
-
-#
-# (OPTIONAL) Add local stuff here using +=
-#
-
-AM_CPPFLAGS += -I$(top_srcdir)/include
-
-${PGM}: $(OBJS) $(LINK_FILES)
- $(make-exe)
-
-all-local: $(ARCH) $(TMPINSTALL_FILES)
-
-EXTRA_DIST = $(C_FILES) $(DOCS)
-
-include $(top_srcdir)/../automake/local.am
diff --git a/c/src/tests/psxtests/psx04/init.c b/c/src/tests/psxtests/psx04/init.c
deleted file mode 100644
index 78b5dae6a5..0000000000
--- a/c/src/tests/psxtests/psx04/init.c
+++ /dev/null
@@ -1,558 +0,0 @@
-/*
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#define CONFIGURE_INIT
-#include "system.h"
-#include <signal.h>
-#include <errno.h>
-
-volatile int Signal_occurred;
-volatile int Signal_count;
-
-void Signal_handler(
- int signo
-)
-{
- Signal_count++;
- printf(
- "Signal: %d caught by 0x%x (%d)\n",
- signo,
- pthread_self(),
- Signal_count
- );
- Signal_occurred = 1;
-}
-
-void Signal_info_handler(
- int signo,
- siginfo_t *info,
- void *context
-)
-{
- Signal_count++;
- printf(
- "Signal_info: %d caught by 0x%x (%d) si_signo= %d si_code= %d value= %d\n",
- signo,
- pthread_self(),
- Signal_count,
- info->si_signo,
- info->si_code,
- info->si_value.sival_int
- );
- Signal_occurred = 1;
-}
-
-void *POSIX_Init(
- void *argument
-)
-{
- int status;
- struct sigaction act;
- sigset_t mask;
- sigset_t pending_set;
- sigset_t oset;
- struct timespec timeout;
- siginfo_t info;
-
- puts( "\n\n*** POSIX TEST 4 ***" );
-
- /* set the time of day, and print our buffer in multiple ways */
-
- set_time( TM_FRIDAY, TM_MAY, 24, 96, 11, 5, 0 );
-
- /* get id of this thread */
-
- Init_id = pthread_self();
- printf( "Init's ID is 0x%08x\n", Init_id );
-
-/* install a signal handler for SIGUSR1 */
-
- status = sigemptyset( &act.sa_mask );
- assert( !status );
- printf( "Init: sigemptyset - set= 0x%08x\n", (unsigned int) act.sa_mask );
-
- /* test sigfillset following the above sigemptyset */
-
- status = sigfillset( &act.sa_mask );
- assert( !status );
- printf( "Init: sigfillset - set= 0x%08x\n", (unsigned int) act.sa_mask );
-
- /* test sigdelset */
-
- status = sigdelset( &act.sa_mask, SIGUSR1 );
- assert( !status );
- printf( "Init: sigdelset - delete SIGUSR1 set= 0x%08x\n",
- (unsigned int) act.sa_mask );
-
- /* test sigismember - FALSE */
-
- status = sigismember( &act.sa_mask, SIGUSR1 );
- assert( !status );
- puts( "Init: sigismember - FALSE since SIGUSR1 is not a member" );
-
- /* test sigismember - TRUE */
-
- status = sigismember( &act.sa_mask, SIGUSR2 );
- assert( status );
- puts( "Init: sigismember - TRUE since SIGUSR2 is a member" );
-
- /* return the set to empty */
-
- act.sa_handler = Signal_handler;
- act.sa_flags = 0;
-
- sigaction( SIGUSR1, &act, NULL );
-
- /* simple signal to process */
-
- Signal_count = 0;
- Signal_occurred = 0;
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
-/* end of install a signal handler for SIGUSR1 */
-
- Signal_occurred = 0;
-
- /* now block the signal, send it, see if it is pending, and unblock it */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- puts( "Init: Block SIGUSR1" );
- act.sa_handler = Signal_handler;
- act.sa_flags = 0;
-
- sigaction( SIGUSR1, &act, NULL );
-
- /* simple signal to process */
-
- Signal_count = 0;
- Signal_occurred = 0;
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
- Signal_occurred = 0;
-
- /* now block the signal, send it, see if it is pending, and unblock it */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- puts( "Init: Block SIGUSR1" );
- status = sigprocmask( SIG_BLOCK, &mask, NULL );
- assert( !status );
-
- status = sigpending( &pending_set );
- assert( !status );
- printf( "Init: Signals pending 0x%08x\n", (unsigned int) pending_set );
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
- status = sigpending( &pending_set );
- assert( !status );
- printf( "Init: Signals pending 0x%08x\n", (unsigned int) pending_set );
-
- puts( "Init: Unblock SIGUSR1" );
- status = sigprocmask( SIG_UNBLOCK, &mask, NULL );
- assert( !status );
-
- /* now let another task get interrupted by a signal */
-
- empty_line();
-
- puts( "Init: create a thread interested in SIGUSR1" );
- status = pthread_create( &Task1_id, NULL, Task_1, NULL );
- assert( !status );
-
- puts( "Init: Block SIGUSR1" );
- status = sigprocmask( SIG_BLOCK, &mask, NULL );
- assert( !status );
-
- status = sigpending( &pending_set );
- assert( !status );
- printf( "Init: Signals pending 0x%08x\n", (unsigned int) pending_set );
-
- puts( "Init: sleep so the other task can block" );
- status = sleep( 1 );
- assert( !status );
-
- /* switch to task 1 */
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
- status = sigpending( &pending_set );
- assert( !status );
- printf( "Init: Signals pending 0x%08x\n", (unsigned int) pending_set );
-
- puts( "Init: sleep so the other task can catch signal" );
- status = sleep( 1 );
- assert( !status );
-
- /* switch to task 1 */
-
- /* test alarm */
-
- empty_line();
-
- /* install a signal handler for SIGALRM and unblock it */
-
- status = sigemptyset( &act.sa_mask );
- assert( !status );
-
- act.sa_handler = Signal_handler;
- act.sa_flags = 0;
-
- sigaction( SIGALRM, &act, NULL );
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGALRM );
- assert( !status );
-
- puts( "Init: Unblock SIGALRM" );
- status = sigprocmask( SIG_UNBLOCK, &mask, NULL );
- assert( !status );
-
- /* schedule the alarm */
-
- puts( "Init: Firing alarm in 5 seconds" );
- status = alarm( 5 );
- printf( "Init: %d seconds left on previous alarm\n", status );
- assert( !status );
-
- puts( "Init: Firing alarm in 2 seconds" );
- status = alarm( 2 );
- printf( "Init: %d seconds left on previous alarm\n", status );
- assert( status );
-
- puts( "Init: Wait 4 seconds for alarm" );
- status = sleep( 4 );
- printf( "Init: %d seconds left in sleep\n", status );
- assert( status );
-
- /* test SIG_SETMASK case and returning oset of pthread_sigmask */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR2 );
- assert( !status );
-
- puts( "Init: Block SIGUSR1 and SIGUSR2 only" );
- status = pthread_sigmask( SIG_SETMASK, &mask, &oset );
- printf( "Init: Previous blocked set was 0x%08x\n", (unsigned int) oset );
- assert( !status );
-
- /* test inquiry about current blocked set with pthread_sigmask */
-
- status = pthread_sigmask( 0, NULL, &oset );
- printf( "Init: Current blocked set is 0x%08x\n", (unsigned int) oset );
- assert( !status );
-
- /* return blocked mask to no signals blocked */
-
- status = sigemptyset( &mask );
- assert( !status );
-
- puts( "Init: Unblock all signals" );
- status = pthread_sigmask( SIG_SETMASK, &mask, &oset );
- printf( "Init: Previous blocked set was 0x%08x\n", (unsigned int) oset );
- assert( !status );
-
- /* test sigsuspend */
-
- empty_line();
-
- puts( "Init: create a thread to send Init SIGUSR1" );
- status = pthread_create( &Task2_id, NULL, Task_2, NULL );
- assert( !status );
-
- status = sigemptyset( &mask );
- assert( !status );
-
- puts( "Init: sigsuspend for any signal" );
- status = sigsuspend( &mask );
- assert( status );
- printf( "Init: awakended from sigsuspend status=%08d \n", status );
-
- /* test a SIGINFO case, these are signals sent to a process only */
-
- empty_line();
-
- puts( "Init: create a thread to sent Process SIGUSR1 with SA_SIGINFO" );
- status = pthread_create( &Task3_id, NULL, Task_3, NULL );
- assert( !status );
-
- /* set action on SIGUSR1 to an info case */
- act.sa_handler = Signal_handler;
- act.sa_flags = SA_SIGINFO;
- act.sa_sigaction = Signal_info_handler;
-
- sigaction( SIGUSR1, &act, NULL );
-
- puts( "Init: sleep so the Task_3 can sigqueue SIGUSR1" );
- status = sleep( 1 );
- assert( !status );
-
- /* switch to task 1 */
-
- puts( "Init: sigqueue occurred" );
-
- /* Send SIGUSR1, Task_3 has issued a sigwaitinfo */
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- puts( "Init: Block SIGUSR1" );
- status = sigprocmask( SIG_BLOCK, &mask, NULL );
- assert( !status );
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
- puts( "Init: sleep so the Task_3 can receive SIGUSR1" );
- status = sleep( 1 );
- assert( !status );
-
- /* Send SIGUSR1, Task_3 has issued a sigwait */
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- puts( "Init: Block SIGUSR1" );
- status = sigprocmask( SIG_BLOCK, &mask, NULL );
- assert( !status );
-
- puts( "Init: send SIGUSR1 to process" );
- status = kill( getpid(), SIGUSR1 );
- assert( !status );
-
- puts( "Init: sleep so the Task_3 can receive SIGUSR1" );
- status = sleep( 1 );
- assert( !status );
-
- /* Send SIGUSR1, Task_3 has issued a sigwaitinfo */
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR2 );
- assert( !status );
-
- puts( "Init: Block SIGUSR2" );
- status = sigprocmask( SIG_BLOCK, &mask, NULL );
- assert( !status );
-
- puts( "Init: send SIGUSR2 to process" );
- status = kill( getpid(), SIGUSR2 );
- assert( !status );
-
- puts( "Init: sleep so the Task_3 can receive SIGUSR2" );
- status = sleep( 1 );
- assert( !status );
-
- /* Suspend for signal that has already be sent */
-
- puts( "Init: sigsuspend for any signal" );
- status = sigsuspend( &mask );
- assert( status );
- printf( "Init: awakended from sigsuspend status=%d \n", status );
-
- /* generate error cases for psignal */
-
- empty_line();
-
- status = sigemptyset( NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigemptyset - EINVAL (set invalid)" );
-
- status = sigfillset( NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigfillset - EINVAL (set invalid)" );
-
- status = sigaddset( NULL, SIGUSR1 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigaddset - EINVAL (set invalid)" );
-
- status = sigaddset( &mask, 0 );
- assert( !status );
- puts( "Init: sigaddset - SUCCESSFUL (signal = 0)" );
-
- status = sigaddset( &mask, 999 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigaddset - EINVAL (set invalid)" );
-
- status = sigdelset( NULL, SIGUSR1 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigdelset - EINVAL (set invalid)" );
-
- status = sigdelset( &mask, 0 );
- assert( !status );
- puts( "Init: sigdelset - SUCCESSFUL (signal = 0)" );
-
- status = sigdelset( &mask, 999 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigdelset - EINVAL (set invalid)" );
-
- status = sigismember( NULL, SIGUSR1 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigismember - EINVAL (set invalid)" );
-
- status = sigismember( &mask, 0 );
- assert( !status );
- puts( "Init: sigismember - SUCCESSFUL (signal = 0)" );
-
- status = sigismember( &mask, 999 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigismember - EINVAL (signal invalid)" );
-
- status = sigaction( 0, &act, 0 );
- assert( !status );
- puts( "Init: sigaction - SUCCESSFUL (signal = 0)" );
-
- status = sigaction( 999, &act, NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigaction - EINVAL (signal invalid)" );
-
- status = sigaction( SIGKILL, &act, NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigaction - EINVAL (SIGKILL)" );
-
- status = pthread_sigmask( SIG_BLOCK, NULL, NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: pthread_sigmask - EINVAL (set and oset invalid)" );
-
- status = pthread_sigmask( 999, &pending_set, NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: pthread_sigmask - EINVAL (how invalid)" );
-
- status = sigpending( NULL );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: sigpending - EINVAL (set invalid)" );
-
- timeout.tv_nsec = -1;
- status = sigtimedwait( &mask, &info, &timeout );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: pthread_sigmask - EINVAL (timout->nsec invalid < 0)" );
-
- timeout.tv_nsec = 0x7fffffff;
- status = sigtimedwait( &mask, &info, &timeout );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: pthread_sigmask - EINVAL (timout->nsec invalid to large)" );
-
- status = pthread_kill( Init_id, 999 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: pthread_kill - EINVAL (sig invalid)" );
-
- status = pthread_kill( 0, SIGUSR2 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == ESRCH );
- puts( "Init: pthread_kill - ESRCH (signal SA_SIGINFO)" );
-
- status = pthread_kill( Init_id, 0 );
- assert( !status );
- puts( "Init: pthread_kill - SUCCESSFUL (signal = 0)" );
-
- act.sa_handler = SIG_IGN;
- act.sa_flags = 0;
- sigaction( SIGUSR2, &act, NULL );
- status = pthread_kill( Init_id, SIGUSR2 );
- assert( !status );
- puts( "Init: pthread_kill - SUCCESSFUL (signal = SIG_IGN)" );
-
- status = kill( 0x7fffffff, SIGUSR1 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == ESRCH );
- puts( "Init: kill - ESRCH (pid invalid)" );
-
- status = kill( getpid(), 0 );
- assert( !status );
- puts( "Init: kill - SUCCESSFUL (signal = 0)" );
-
- status = kill( getpid(), 999 );
- if ( status != -1 )
- printf( "status = %d\n", status );
- assert( errno == EINVAL );
- puts( "Init: kill - EINVAL (sig invalid)" );
-
- /* exit this thread */
-
- puts( "*** END OF POSIX TEST 4 ***" );
- rtems_test_exit( 0 );
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/c/src/tests/psxtests/psx04/psx04.scn b/c/src/tests/psxtests/psx04/psx04.scn
deleted file mode 100644
index 9c78c445ef..0000000000
--- a/c/src/tests/psxtests/psx04/psx04.scn
+++ /dev/null
@@ -1,99 +0,0 @@
-*** POSIX TEST 4 ***
-Init's ID is 0x0b010001
-Init: sigemptyset - set= 0x00000000
-Init: sigfillset - set= 0xffffffff
-Init: sigdelset - delete SIGUSR1 set= 0xffff7fff
-Init: sigismember - FALSE since SIGUSR1 is not a member
-Init: sigismember - TRUE since SIGUSR2 is a member
-Init: send SIGUSR1 to process
-Signal: 16 caught by 0xc010001 (1)
-Init: Block SIGUSR1
-Init: send SIGUSR1 to process
-Signal: 16 caught by 0xc010001 (1)
-Init: Block SIGUSR1
-Init: Signals pending 0x00000000
-Init: send SIGUSR1 to process
-Init: Signals pending 0x00008000
-Init: Unblock SIGUSR1
-Signal: 16 caught by 0xc010001 (2)
-Init: create a thread interested in SIGUSR1
-Init: Block SIGUSR1
-Init: Signals pending 0x00000000
-Init: sleep so the other task can block
-Task_1: sleeping for 5 seconds
-Init: send SIGUSR1 to process
-Init: Signals pending 0x00008000
-Init: sleep so the other task can catch signal
-Signal: 16 caught by 0xc010002 (3)
-Task_1: 4 seconds left
-Task_1: exit
-Init: Unblock SIGALRM
-Init: Firing alarm in 5 seconds
-Init: 0 seconds left on previous alarm
-Init: Firing alarm in 2 seconds
-Init: 4 seconds left on previous alarm - MAY BE 5 SECONDS ALSO
-Init: Wait 4 seconds for alarm
-Signal: 14 caught by 0xc010001 (4)
-Init: 2 seconds left in sleep
-Init: Block SIGUSR1 and SIGUSR2 only
-Init: Previous blocked set was 0x00008000
-Init: Current blocked set is 0x00018000
-Init: Unblock all signals
-Init: Previous blocked set was 0x00018000
-Init: create a thread to send Init SIGUSR1
-Init: sigsuspend for any signal
-Task_2: sending SIGUSR1
-Task_2: exit
-Signal: 16 caught by 0xc010001 (5)
-Init: awakended from sigsuspend status=00000016
-Init: create a thread to sent Process SIGUSR1 with SA_SIGINFO
-Init: sleep so the Task_3 can sigqueue SIGUSR1
-Task_3: sigqueue SIGUSR1 with value= 16
-Signal_info: 16 caught by 0xc010004 (6) si_signo= 16 si_code= 1 value= 16
-Task_3: sigwaitinfo SIGUSR1 with value= 16
-Init: sigqueue occurred
-Init: Block SIGUSR1
-Init: send SIGUSR1 to process
-Init: sleep so the Task_3 can receive SIGUSR1
-Task_3: si_signo= 16 si_code= 1 value= 0
-Task_3: sigwait SIGUSR1
-Init: Block SIGUSR1
-Init: send SIGUSR1 to process
-Init: sleep so the Task_3 can receive SIGUSR1
-Task_3: signo= 16
-Task_3: pause
-Init: Block SIGUSR2
-Init: send SIGUSR2 to process
-Init: sleep so the Task_3 can receive SIGUSR2
-Task_3: pause= 17
-Task_3: sending SIGUSR2
-Task_3: sleep so the Init task can reguest a signal
-Init: sigsuspend for any signal
-Init: awakended from sigsuspend status=17
-Init: sigemptyset - EINVAL (set invalid)
-Init: sigfillset - EINVAL (set invalid)
-Init: sigaddset - EINVAL (set invalid)
-Init: sigaddset - SUCCESSFUL (signal = 0)
-Init: sigaddset - EINVAL (set invalid)
-Init: sigdelset - EINVAL (set invalid)
-Init: sigdelset - SUCCESSFUL (signal = 0)
-Init: sigdelset - EINVAL (set invalid)
-Init: sigismember - EINVAL (set invalid)
-Init: sigismember - SUCCESSFUL (signal = 0)
-Init: sigismember - EINVAL (signal invalid)
-Init: sigaction - SUCCESSFUL (signal = 0)
-Init: sigaction - EINVAL (signal invalid)
-Init: sigaction - EINVAL (SIGKILL)
-Init: pthread_sigmask - EINVAL (set and oset invalid)
-Init: pthread_sigmask - EINVAL (how invalid)
-Init: sigpending - EINVAL (set invalid)
-Init: pthread_sigmask - EINVAL (timout->nsec invalid < 0)
-Init: pthread_sigmask - EINVAL (timout->nsec invalid to large)
-Init: pthread_kill - EINVAL (sig invalid)
-Init: pthread_kill - ESRCH (signal SA_SIGINFO)
-Init: pthread_kill - SUCCESSFUL (signal = 0)
-Init: pthread_kill - SUCCESSFUL (signal = SIG_IGN)
-Init: kill - ESRCH (pid invalid)
-Init: kill - SUCCESSFUL (signal = 0)
-Init: kill - EINVAL (sig invalid)
-*** END OF POSIX TEST 4 ***
diff --git a/c/src/tests/psxtests/psx04/system.h b/c/src/tests/psxtests/psx04/system.h
deleted file mode 100644
index e5f72df295..0000000000
--- a/c/src/tests/psxtests/psx04/system.h
+++ /dev/null
@@ -1,63 +0,0 @@
-/* system.h
- *
- * This include file contains information that is included in every
- * function in the test set.
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-/* functions */
-
-#include <pmacros.h>
-
-void *POSIX_Init(
- void *argument
-);
-
-void *Task_1(
- void *argument
-);
-
-void *Task_2(
- void *argument
-);
-
-void *Task_3(
- void *argument
-);
-
-/* configuration information */
-
-#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
-#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
-
-#define CONFIGURE_MAXIMUM_POSIX_THREADS 4
-#define CONFIGURE_MAXIMUM_POSIX_QUEUED_SIGNALS 5
-
-#define CONFIGURE_POSIX_INIT_THREAD_TABLE
-#define CONFIGURE_POSIX_INIT_THREAD_STACK_SIZE \
- (RTEMS_MINIMUM_STACK_SIZE * 4)
-
-#include <confdefs.h>
-
-/* global variables */
-
-#ifdef CONFIGURE_INIT
-#define TEST_EXTERN
-#else
-#define TEST_EXTERN extern
-#endif
-
-TEST_EXTERN pthread_t Init_id;
-TEST_EXTERN pthread_t Task1_id;
-TEST_EXTERN pthread_t Task2_id;
-TEST_EXTERN pthread_t Task3_id;
-
-/* end of include file */
diff --git a/c/src/tests/psxtests/psx04/task1.c b/c/src/tests/psxtests/psx04/task1.c
deleted file mode 100644
index 930f3cb777..0000000000
--- a/c/src/tests/psxtests/psx04/task1.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Task_1
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#include "system.h"
-#include <signal.h>
-
-void *Task_1(
- void *argument
-)
-{
- int seconds;
-
- printf( "Task_1: sleeping for 5 seconds\n" );
-
- seconds = sleep( 5 );
- printf( "Task_1: %d seconds left\n", seconds );
- assert( seconds );
-
- /* switch to Init */
-
- printf( "Task_1: exit\n" );
- pthread_exit( NULL );
-
- /* switch to Init */
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/c/src/tests/psxtests/psx04/task2.c b/c/src/tests/psxtests/psx04/task2.c
deleted file mode 100644
index 82291b804a..0000000000
--- a/c/src/tests/psxtests/psx04/task2.c
+++ /dev/null
@@ -1,41 +0,0 @@
-/* Task_2
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#include "system.h"
-#include <signal.h>
-
-void *Task_2(
- void *argument
-)
-{
- int status;
-
- printf( "Task_2: sending SIGUSR1\n" );
- status = pthread_kill( Init_id, SIGUSR1 );
- assert( !status );
-
- /* switch to Init */
-
- printf( "Task_2: exit\n" );
- pthread_exit( NULL );
-
- /* switch to Init */
-
- return NULL; /* just so the compiler thinks we returned something */
-}
diff --git a/c/src/tests/psxtests/psx04/task3.c b/c/src/tests/psxtests/psx04/task3.c
deleted file mode 100644
index a465d2ace4..0000000000
--- a/c/src/tests/psxtests/psx04/task3.c
+++ /dev/null
@@ -1,118 +0,0 @@
-/* Task_3
- *
- * This routine serves as a test task.
- *
- * Input parameters:
- * argument - task argument
- *
- * Output parameters: NONE
- *
- * COPYRIGHT (c) 1989-1999.
- * On-Line Applications Research Corporation (OAR).
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.com/license/LICENSE.
- *
- * $Id$
- */
-
-#include "system.h"
-#include <signal.h>
-
-void *Task_3(
- void *argument
-)
-{
- int status;
- int sig;
- union sigval value;
- sigset_t mask;
- siginfo_t info;
-
- value.sival_int = SIGUSR1;
-
- printf( "Task_3: sigqueue SIGUSR1 with value= %d\n", value.sival_int );
- status = sigqueue( getpid(), SIGUSR1, value );
- assert( !status );
-
- /* catch signal with sigwaitinfo */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- printf( "Task_3: sigwaitinfo SIGUSR1 with value= %d\n", value.sival_int );
- status = sigwaitinfo( &mask, &info );
-
- /* switch to Init */
-
- assert( !(status==-1) );
- printf(
- "Task_3: si_signo= %d si_code= %d value= %d\n",
- info.si_signo,
- info.si_code,
- info.si_value.sival_int
- );
-
- /* catch signal with sigwait */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- printf( "Task_3: sigwait SIGUSR1\n" );
- status = sigwait( &mask, &sig );
-
- /* switch to Init */
-
- assert( !status );
- printf( "Task_3: signo= %d\n", sig );
-
- /* catch signal with pause */
-
- empty_line();
-
- status = sigemptyset( &mask );
- assert( !status );
-
- status = sigaddset( &mask, SIGUSR1 );
- assert( !status );
-
- printf( "Task_3: pause\n" );
- status = pause( );
-
- /* switch to Init */
-
- assert( !(status==-1) );
- printf( "Task_3: pause= %d\n", status );
-
-
- /* send signal to Init task before it has pended for a signal */
-
- empty_line();
-
- printf( "Task_3: sending SIGUSR2\n" );
- status = pthread_kill( Init_id, SIGUSR2 );
- assert( !status );
-
- printf( "Task_3: sleep so the Init task can reguest a signal\n" );
- status = sleep( 1 );
- assert( !status );
-
- /* end of task 3 */
- printf( "Task_3: exit\n" );
- pthread_exit( NULL );
-
- /* switch to Init */
-
- return NULL; /* just so the compiler thinks we returned something */
-}