From 4b68250e5edfe63e60b45d0c371faedef07f55ad Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Fri, 8 Jul 2011 16:51:35 +0000 Subject: [PATCH] 2011-07-08 Joel Sherrill * sp09/screen07.c, sp09/sp09.scn: Add a case where the multiply of number of buffers times buffer size exceeds that representable by size_t. --- testsuites/sptests/ChangeLog | 6 ++++++ testsuites/sptests/sp09/screen07.c | 15 +++++++++++++++ testsuites/sptests/sp09/sp09.scn | 1 + 3 files changed, 22 insertions(+) diff --git a/testsuites/sptests/ChangeLog b/testsuites/sptests/ChangeLog index b8b12d1879..63be346d9e 100644 --- a/testsuites/sptests/ChangeLog +++ b/testsuites/sptests/ChangeLog @@ -1,3 +1,9 @@ +2011-07-08 Joel Sherrill + + * sp09/screen07.c, sp09/sp09.scn: Add a case where the multiply of + number of buffers times buffer size exceeds that representable by + size_t. + 2011-06-20 Ralf Corsépius * sp66/init.c: Remove (unused). diff --git a/testsuites/sptests/sp09/screen07.c b/testsuites/sptests/sp09/screen07.c index 25b1057196..76a1f43175 100644 --- a/testsuites/sptests/sp09/screen07.c +++ b/testsuites/sptests/sp09/screen07.c @@ -135,6 +135,21 @@ void Screen7() ); puts( "TA1 - rtems_message_queue_create - Q 2 - RTEMS_UNSATISFIED" ); + /* too large a request for messages */ + status = rtems_message_queue_create( + Queue_name[ 1 ], + INT_MAX, + INT_MAX, + RTEMS_DEFAULT_ATTRIBUTES, + &Queue_id[ 1 ] + ); + fatal_directive_status( + status, + RTEMS_UNSATISFIED, + "rtems_message_queue_create unsatisfied" + ); + puts( "TA1 - rtems_message_queue_create - Q 2 - RTEMS_UNSATISFIED #2" ); + status = rtems_message_queue_create( Queue_name[ 1 ], 2, diff --git a/testsuites/sptests/sp09/sp09.scn b/testsuites/sptests/sp09/sp09.scn index c26d7e6a53..5ebb66519c 100644 --- a/testsuites/sptests/sp09/sp09.scn +++ b/testsuites/sptests/sp09/sp09.scn @@ -126,6 +126,7 @@ TA1 - rtems_message_queue_create - size = 0 - RTEMS_INVALID_SIZE TA1 - rtems_message_queue_create - Q 1 - RTEMS_INVALID_NAME TA1 - rtems_message_queue_create - Q 1 - RTEMS_MP_NOT_CONFIGURED TA1 - rtems_message_queue_create - Q 2 - RTEMS_UNSATISFIED +TA1 - rtems_message_queue_create - Q 2 - RTEMS_UNSATISFIED #2 TA1 - rtems_message_queue_create - Q 1 - 2 DEEP - RTEMS_SUCCESSFUL TA1 - rtems_message_queue_create - Q 2 - RTEMS_TOO_MANY TA1 - rtems_message_queue_delete - unknown RTEMS_INVALID_ID