diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2006-10-30 22:22:00 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2006-10-30 22:22:00 +0000 |
commit | 302f5fa5797c8bf7298f65d51d6113434912fbc4 (patch) | |
tree | 8539a47b289392625f2b7d466c43d9f91c85f969 /testsuites/psxtests/psxsem01/init.c | |
parent | 2006-10-30 Joel Sherrill <joel@OARcorp.com> (diff) | |
download | rtems-302f5fa5797c8bf7298f65d51d6113434912fbc4.tar.bz2 |
2006-10-30 Joel Sherrill <joel@OARcorp.com>
PR 841/rtems
* psxsem01/init.c: Make sem_timedwait more conformant to Open Group
specification.
Diffstat (limited to 'testsuites/psxtests/psxsem01/init.c')
-rw-r--r-- | testsuites/psxtests/psxsem01/init.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/testsuites/psxtests/psxsem01/init.c b/testsuites/psxtests/psxsem01/init.c index bfb2175017..71b48e372f 100644 --- a/testsuites/psxtests/psxsem01/init.c +++ b/testsuites/psxtests/psxsem01/init.c @@ -89,6 +89,9 @@ void *POSIX_Init( fatal_posix_service_status( status, -1, "sem_trywait error return status"); fatal_posix_service_status( errno, EINVAL, "sem_trywait errno EINVAL"); + status = sem_post(&sems[2]); + fatal_posix_service_status( status, 0, "sem_post semaphore 2"); + puts( "Init: sem_timedwait - SUCCESSFUL" ); waittime.tv_sec = 0; waittime.tv_nsec = 100; @@ -96,12 +99,14 @@ void *POSIX_Init( fatal_posix_service_status( status, 0, "sem_timedwait semaphore 2"); puts( "Init: sem_timedwait - UNSUCCESSFUL (ETIMEDOUT)" ); - status = sem_timedwait(&sems[1], &waittime); + status = sem_timedwait(&sems[2], &waittime); fatal_posix_service_status( status, -1, "sem_timedwait error return status"); fatal_posix_service_status( errno, ETIMEDOUT, "sem_timedwait errno ETIMEDOUT"); puts( "Init: sem_timedwait - UNSUCCESSFUL (EINVAL)" ); - status = sem_timedwait(&sem2, &waittime); + waittime.tv_sec = 0; + waittime.tv_nsec = 0x40000000; + status = sem_timedwait(&sems[2], &waittime); fatal_posix_service_status( status, -1, "sem_timedwait error return status"); fatal_posix_service_status( errno, EINVAL, "sem_init errno EINVAL"); |