diff options
Diffstat (limited to 'cpukit/rtems/src/partcreate.c')
-rw-r--r-- | cpukit/rtems/src/partcreate.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cpukit/rtems/src/partcreate.c b/cpukit/rtems/src/partcreate.c index aea18f68ad..d6baa166e7 100644 --- a/cpukit/rtems/src/partcreate.c +++ b/cpukit/rtems/src/partcreate.c @@ -37,9 +37,9 @@ * id - pointer to partition id * * Output parameters: - * id - partition id + * id - partition id * RTEMS_SUCCESSFUL - if successful - * error code - if unsuccessful + * error code - if unsuccessful */ rtems_status_code rtems_partition_create( @@ -47,7 +47,7 @@ rtems_status_code rtems_partition_create( void *starting_address, uint32_t length, uint32_t buffer_size, - rtems_attribute attribute_set, + rtems_attribute attribute_set, Objects_Id *id ) { @@ -56,6 +56,12 @@ rtems_status_code rtems_partition_create( if ( !rtems_is_name_valid( name ) ) return RTEMS_INVALID_NAME; + if ( !starting_address ) + return RTEMS_INVALID_ADDRESS; + + if ( !id ) + return RTEMS_INVALID_ADDRESS; + if ( length == 0 || buffer_size == 0 || length < buffer_size || !_Partition_Is_buffer_size_aligned( buffer_size ) ) return RTEMS_INVALID_SIZE; |