diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-02-01 00:44:15 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2008-02-01 00:44:15 +0000 |
commit | e889a857cd6a5d8366bcecf78d6075dfd414d252 (patch) | |
tree | 44996fa8e75d0443a40dfb94b8952ae2314a1ea3 /cpukit/posix | |
parent | 2008-01-31 Joel Sherrill <joel.sherrill@OARcorp.com> (diff) | |
download | rtems-e889a857cd6a5d8366bcecf78d6075dfd414d252.tar.bz2 |
2008-01-31 Joel Sherrill <joel.sherrill@OARcorp.com>
* posix/src/clockgettime.c, posix/src/clocksettime.c,
Minor modifications to improve testability.
* posix/src/pthreadcreate.c: Add NULL check for thread entry.
Diffstat (limited to 'cpukit/posix')
-rw-r--r-- | cpukit/posix/src/clockgettime.c | 30 | ||||
-rw-r--r-- | cpukit/posix/src/clocksettime.c | 33 | ||||
-rw-r--r-- | cpukit/posix/src/pthreadcreate.c | 3 |
3 files changed, 26 insertions, 40 deletions
diff --git a/cpukit/posix/src/clockgettime.c b/cpukit/posix/src/clockgettime.c index d87503e2cf..d94bd16f98 100644 --- a/cpukit/posix/src/clockgettime.c +++ b/cpukit/posix/src/clockgettime.c @@ -36,32 +36,22 @@ int clock_gettime( if ( !tp ) rtems_set_errno_and_return_minus_one( EINVAL ); - switch ( clock_id ) { - - case CLOCK_REALTIME: - _TOD_Get(tp); - break; - + if ( clock_id == CLOCK_REALTIME ) + _TOD_Get(tp); #ifdef CLOCK_MONOTONIC - case CLOCK_MONOTONIC: - _TOD_Get_uptime(tp); - break; + else if ( clock_id == CLOCK_MONOTONIC ) + _TOD_Get_uptime(tp); #endif - #ifdef _POSIX_CPUTIME - case CLOCK_PROCESS_CPUTIME: - _TOD_Get_uptime(tp); - break; + else if ( clock_id == CLOCK_PROCESS_CPUTIME ) + _TOD_Get_uptime(tp); #endif - #ifdef _POSIX_THREAD_CPUTIME - case CLOCK_THREAD_CPUTIME: - rtems_set_errno_and_return_minus_one( ENOSYS ); - break; + else if ( clock_id == CLOCK_THREAD_CPUTIME ) + rtems_set_errno_and_return_minus_one( ENOSYS ); #endif - default: - rtems_set_errno_and_return_minus_one( EINVAL ); + else + rtems_set_errno_and_return_minus_one( EINVAL ); - } return 0; } diff --git a/cpukit/posix/src/clocksettime.c b/cpukit/posix/src/clocksettime.c index 64cd5c4110..aa3743d9f9 100644 --- a/cpukit/posix/src/clocksettime.c +++ b/cpukit/posix/src/clocksettime.c @@ -36,31 +36,24 @@ int clock_settime( if ( !tp ) rtems_set_errno_and_return_minus_one( EINVAL ); - switch ( clock_id ) { - - case CLOCK_REALTIME: - if ( tp->tv_sec < TOD_SECONDS_1970_THROUGH_1988 ) - rtems_set_errno_and_return_minus_one( EINVAL ); - - _Thread_Disable_dispatch(); - _TOD_Set( tp ); - _Thread_Enable_dispatch(); - break; + if ( clock_id == CLOCK_REALTIME ) { + if ( tp->tv_sec < TOD_SECONDS_1970_THROUGH_1988 ) + rtems_set_errno_and_return_minus_one( EINVAL ); + _Thread_Disable_dispatch(); + _TOD_Set( tp ); + _Thread_Enable_dispatch(); + } #ifdef _POSIX_CPUTIME - case CLOCK_PROCESS_CPUTIME: - rtems_set_errno_and_return_minus_one( ENOSYS ); - break; + else if ( clock_id == CLOCK_PROCESS_CPUTIME ) + rtems_set_errno_and_return_minus_one( ENOSYS ); #endif - #ifdef _POSIX_THREAD_CPUTIME - case CLOCK_THREAD_CPUTIME: - rtems_set_errno_and_return_minus_one( ENOSYS ); - break; + else if ( clock_id == CLOCK_THREAD_CPUTIME ) + rtems_set_errno_and_return_minus_one( ENOSYS ); #endif - default: - rtems_set_errno_and_return_minus_one( EINVAL ); + else + rtems_set_errno_and_return_minus_one( EINVAL ); - } return 0; } diff --git a/cpukit/posix/src/pthreadcreate.c b/cpukit/posix/src/pthreadcreate.c index c239036e1b..e6bd5bc549 100644 --- a/cpukit/posix/src/pthreadcreate.c +++ b/cpukit/posix/src/pthreadcreate.c @@ -44,6 +44,9 @@ int pthread_create( struct sched_param schedparam; Objects_Name name; + if ( !start_routine ) + return EFAULT; + the_attr = (attr) ? attr : &_POSIX_Threads_Default_attributes; if ( !the_attr->is_initialized ) |