Index: cpukit/posix/include/rtems/posix/mqueueimpl.h
===================================================================
--- cpukit/posix/include/rtems/posix/mqueueimpl.h	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/include/rtems/posix/mqueueimpl.h	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -247,15 +247,18 @@
   );
 }
- 
-/**
- * @see _POSIX_Name_to_id().
- */
-RTEMS_INLINE_ROUTINE int _POSIX_Message_queue_Name_to_id(
-  const char          *name,
-  Objects_Id          *id,
-  size_t              *len
-)
-{
-  return _POSIX_Name_to_id( &_POSIX_Message_queue_Information, name, id, len );
+
+RTEMS_INLINE_ROUTINE POSIX_Message_queue_Control *
+_POSIX_Message_queue_Get_by_name(
+  const char                *name,
+  size_t                    *name_length_p,
+  Objects_Get_by_name_error *error
+)
+{
+  return (POSIX_Message_queue_Control *) _Objects_Get_by_name(
+    &_POSIX_Message_queue_Information,
+    name,
+    name_length_p,
+    error
+  );
 }
 
Index: cpukit/posix/include/rtems/posix/posixapi.h
===================================================================
--- cpukit/posix/include/rtems/posix/posixapi.h	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/include/rtems/posix/posixapi.h	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -21,4 +21,5 @@
 
 #include <rtems/config.h>
+#include <rtems/score/assert.h>
 #include <rtems/score/objectimpl.h>
 
@@ -49,25 +50,13 @@
 void _POSIX_Fatal_error( POSIX_Fatal_domain domain, int eno );
 
-/**
- * @brief Queries the object identifier @a id for a @a name.
- *
- * @param[in] information Object information.
- * @param[in] name Zero terminated name string to look up.
- * @param[out] id Pointer for identifier.  The pointer must be valid.
- * @param[out] len Pointer for string length.  The pointer must be valid.
- *
- * @retval 0 Successful operation.
- * @retval EINVAL The @a name pointer is @c NULL or the @a name string has
- * zero length.
- * @retval ENAMETOOLONG The @a name string length is greater than or equal to
- * @c NAME_MAX.
- * @retval ENOENT Found no corresponding identifier.
- */
-int _POSIX_Name_to_id(
-  Objects_Information *information,
-  const char          *name,
-  Objects_Id          *id,
-  size_t              *len
-);
+extern const int _POSIX_Get_by_name_error_table[ 3 ];
+
+RTEMS_INLINE_ROUTINE int _POSIX_Get_by_name_error(
+  Objects_Get_by_name_error error
+)
+{
+  _Assert( (size_t) error < RTEMS_ARRAY_SIZE( _POSIX_Get_by_name_error_table ) );
+  return _POSIX_Get_by_name_error_table[ error ];
+}
 
 /** @} */
Index: cpukit/posix/include/rtems/posix/semaphoreimpl.h
===================================================================
--- cpukit/posix/include/rtems/posix/semaphoreimpl.h	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/include/rtems/posix/semaphoreimpl.h	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -164,15 +164,17 @@
     &_POSIX_Semaphore_Information, &the_semaphore->Object );
 }
- 
-/**
- * @see _POSIX_Name_to_id().
- */
-RTEMS_INLINE_ROUTINE int _POSIX_Semaphore_Name_to_id(
-  const char *name,
-  Objects_Id *id,
-  size_t     *len
+
+RTEMS_INLINE_ROUTINE POSIX_Semaphore_Control *_POSIX_Semaphore_Get_by_name(
+  const char                *name,
+  size_t                    *name_length_p,
+  Objects_Get_by_name_error *error
 )
 {
-  return _POSIX_Name_to_id( &_POSIX_Semaphore_Information, name, id, len );
+  return (POSIX_Semaphore_Control *) _Objects_Get_by_name(
+    &_POSIX_Semaphore_Information,
+    name,
+    name_length_p,
+    error
+  );
 }
 
Index: cpukit/posix/src/mqueueopen.c
===================================================================
--- cpukit/posix/src/mqueueopen.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/src/mqueueopen.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -68,9 +68,8 @@
   struct mq_attr                 *attr = NULL;
   int                             status;
-  Objects_Id                      the_mq_id;
   POSIX_Message_queue_Control    *the_mq;
   POSIX_Message_queue_Control_fd *the_mq_fd;
-  Objects_Locations               location;
   size_t                          name_len;
+  Objects_Get_by_name_error       error;
 
   if ( oflag & O_CREAT ) {
@@ -88,5 +87,5 @@
   the_mq_fd->oflag = oflag;
 
-  status = _POSIX_Message_queue_Name_to_id( name, &the_mq_id, &name_len );
+  the_mq = _POSIX_Message_queue_Get_by_name( name, &name_len, &error );
 
   /*
@@ -96,13 +95,16 @@
    *  or some other miscellaneous error on the name.
    */
-  if ( status ) {
+  if ( the_mq == NULL ) {
     /*
      * Unless provided a valid name that did not already exist
      * and we are willing to create then it is an error.
      */
-    if ( !( status == ENOENT && (oflag & O_CREAT) ) ) {
+    if ( !( error == OBJECTS_GET_BY_NAME_NO_OBJECT && (oflag & O_CREAT) ) ) {
       _POSIX_Message_queue_Free_fd( the_mq_fd );
       _Objects_Allocator_unlock();
-      rtems_set_errno_and_return_value( status, MQ_OPEN_FAILED );
+      rtems_set_errno_and_return_value(
+        _POSIX_Get_by_name_error( error ),
+        MQ_OPEN_FAILED
+      );
     }
 
@@ -121,5 +123,4 @@
      * check the mode.
      */
-    the_mq = _POSIX_Message_queue_Get( the_mq_id, &location );
     the_mq->open_count += 1;
     the_mq_fd->Queue = the_mq;
@@ -129,5 +130,4 @@
       NULL
     );
-    _Thread_Enable_dispatch();
     _Objects_Allocator_unlock();
     return the_mq_fd->Object.id;
@@ -150,5 +150,5 @@
    * errno was set by Create_support, so don't set it again.
    */
-  if ( status == -1 ) {
+  if ( status != 0 ) {
     _POSIX_Message_queue_Free_fd( the_mq_fd );
     _Objects_Allocator_unlock();
Index: cpukit/posix/src/mqueueunlink.c
===================================================================
--- cpukit/posix/src/mqueueunlink.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/src/mqueueunlink.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -19,17 +19,8 @@
 #endif
 
-#include <stdarg.h>
-
-#include <pthread.h>
-#include <limits.h>
-#include <errno.h>
-#include <fcntl.h>
 #include <mqueue.h>
 
-#include <rtems/system.h>
-#include <rtems/score/watchdog.h>
-#include <rtems/score/wkspace.h>
+#include <rtems/posix/mqueueimpl.h>
 #include <rtems/seterr.h>
-#include <rtems/posix/mqueueimpl.h>
 
 /*
@@ -41,23 +32,14 @@
 )
 {
-  int                                   status;
-  POSIX_Message_queue_Control          *the_mq;
-  Objects_Id                            the_mq_id;
-  size_t                                name_len;
+  POSIX_Message_queue_Control *the_mq;
+  Objects_Get_by_name_error    error;
 
   _Objects_Allocator_lock();
-  _Thread_Disable_dispatch();
 
-  status = _POSIX_Message_queue_Name_to_id( name, &the_mq_id, &name_len );
-   if ( status != 0 ) {
-    _Thread_Enable_dispatch();
+  the_mq = _POSIX_Message_queue_Get_by_name( name, NULL, &error );
+  if ( the_mq == NULL ) {
     _Objects_Allocator_unlock();
-    rtems_set_errno_and_return_minus_one( status );
-   }
-
-  the_mq = (POSIX_Message_queue_Control *) _Objects_Get_local_object(
-    &_POSIX_Message_queue_Information,
-    _Objects_Get_index( the_mq_id )
-  );
+    rtems_set_errno_and_return_minus_one( _POSIX_Get_by_name_error( error ) );
+  }
 
   the_mq->linked = false;
@@ -65,6 +47,5 @@
   _POSIX_Message_queue_Delete( the_mq );
 
-  _Thread_Enable_dispatch();
-   _Objects_Allocator_unlock();
+  _Objects_Allocator_unlock();
   return 0;
 }
Index: cpukit/posix/src/psxnametoid.c
===================================================================
--- cpukit/posix/src/psxnametoid.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/src/psxnametoid.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -21,43 +21,9 @@
 #include <rtems/posix/posixapi.h>
 
-#include <string.h>
-#include <limits.h>
 #include <errno.h>
 
-/* pure ANSI mode does not have this prototype */
-size_t strnlen(const char *, size_t);
-
-int _POSIX_Name_to_id(
-  Objects_Information *information,
-  const char          *name,
-  Objects_Id          *id,
-  size_t              *len
-)
-{
-  int eno = EINVAL;
-  size_t n = 0;
-
-  if ( name != NULL && name [0] != '\0' ) {
-    n = strnlen( name, NAME_MAX );
-
-    if ( n < NAME_MAX ) {
-      Objects_Name_or_id_lookup_errors status = _Objects_Name_to_id_string(
-        information,
-        name,
-        id
-      );
-
-      if ( status == OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL ) {
-        eno = 0;
-      } else {
-        eno = ENOENT;
-      }
-    } else {
-      eno = ENAMETOOLONG;
-    }
-  }
-
-  *len = n;
-
-  return eno;
-}
+const int _POSIX_Get_by_name_error_table[ 3 ] = {
+  EINVAL,
+  ENAMETOOLONG,
+  ENOENT
+};
Index: cpukit/posix/src/semopen.c
===================================================================
--- cpukit/posix/src/semopen.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/src/semopen.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -61,8 +61,7 @@
   unsigned int               value = 0;
   int                        status;
-  Objects_Id                 the_semaphore_id;
   POSIX_Semaphore_Control   *the_semaphore;
-  Objects_Locations          location;
   size_t                     name_len;
+  Objects_Get_by_name_error  error;
 
   if ( oflag & O_CREAT ) {
@@ -74,5 +73,5 @@
 
   _Objects_Allocator_lock();
-  status = _POSIX_Semaphore_Name_to_id( name, &the_semaphore_id, &name_len );
+  the_semaphore = _POSIX_Semaphore_Get_by_name( name, &name_len, &error );
 
   /*
@@ -83,5 +82,5 @@
    */
 
-  if ( status ) {
+  if ( the_semaphore == NULL ) {
 
     /*
@@ -90,7 +89,10 @@
      */
 
-    if ( !( status == ENOENT && (oflag & O_CREAT) ) ) {
+    if ( !( error == OBJECTS_GET_BY_NAME_NO_OBJECT && (oflag & O_CREAT) ) ) {
       _Objects_Allocator_unlock();
-      rtems_set_errno_and_return_value( status, SEM_FAILED );
+      rtems_set_errno_and_return_value(
+        _POSIX_Get_by_name_error( error ),
+        SEM_FAILED
+      );
     }
   } else {
@@ -105,7 +107,5 @@
     }
 
-    the_semaphore = _POSIX_Semaphore_Get( (sem_t *) &the_semaphore_id, &location );
     the_semaphore->open_count += 1;
-    _Thread_Enable_dispatch();
     _Objects_Allocator_unlock();
     goto return_id;
@@ -131,5 +131,5 @@
   _Objects_Allocator_unlock();
 
-  if ( status == -1 )
+  if ( status != 0 )
     return SEM_FAILED;
 
Index: cpukit/posix/src/semunlink.c
===================================================================
--- cpukit/posix/src/semunlink.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/posix/src/semunlink.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -19,13 +19,6 @@
 #endif
 
-#include <stdarg.h>
+#include <semaphore.h>
 
-#include <errno.h>
-#include <fcntl.h>
-#include <pthread.h>
-#include <semaphore.h>
-#include <limits.h>
-
-#include <rtems/system.h>
 #include <rtems/posix/semaphoreimpl.h>
 #include <rtems/seterr.h>
@@ -35,23 +28,14 @@
 )
 {
-  int                      status;
-  POSIX_Semaphore_Control *the_semaphore;
-  Objects_Id               the_semaphore_id;
-  size_t                   name_len;
+  POSIX_Semaphore_Control   *the_semaphore;
+  Objects_Get_by_name_error  error;
 
   _Objects_Allocator_lock();
-  _Thread_Disable_dispatch();
 
-  status = _POSIX_Semaphore_Name_to_id( name, &the_semaphore_id, &name_len );
-  if ( status != 0 ) {
-    _Thread_Enable_dispatch();
+  the_semaphore = _POSIX_Semaphore_Get_by_name( name, NULL, &error );
+  if ( the_semaphore == NULL ) {
     _Objects_Allocator_unlock();
-    rtems_set_errno_and_return_minus_one( status );
+    rtems_set_errno_and_return_minus_one( _POSIX_Get_by_name_error( error ) );
   }
-
-  the_semaphore = (POSIX_Semaphore_Control *) _Objects_Get_local_object(
-    &_POSIX_Semaphore_Information,
-    _Objects_Get_index( the_semaphore_id )
-  );
 
   the_semaphore->linked = false;
@@ -59,7 +43,5 @@
   _POSIX_Semaphore_Delete( the_semaphore );
 
-  _Thread_Enable_dispatch();
   _Objects_Allocator_unlock();
-
   return 0;
 }
Index: cpukit/score/include/rtems/score/objectimpl.h
===================================================================
--- cpukit/score/include/rtems/score/objectimpl.h	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/score/include/rtems/score/objectimpl.h	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -449,23 +449,29 @@
 
 #if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)
-/**
- *  @brief Converts an object name to an Id.
- *
- *  This method converts an object name to an Id.  It performs a look up
- *  using the object information block for this object class.
- *
- *  @param[in] information points to an object class information block.
- *  @param[in] name is the name of the object to find.
- *  @param[in] id will contain the Id if the search is successful.
- *
- *  @retval This method returns one of the values from the
- *          @ref Objects_Name_or_id_lookup_errors enumeration to indicate
- *          successful or failure.  On success @a id will contain the Id of
- *          the requested object.
- */
-Objects_Name_or_id_lookup_errors _Objects_Name_to_id_string(
-  Objects_Information *information,
-  const char          *name,
-  Objects_Id          *id
+typedef enum {
+  OBJECTS_GET_BY_NAME_INVALID_NAME,
+  OBJECTS_GET_BY_NAME_NAME_TOO_LONG,
+  OBJECTS_GET_BY_NAME_NO_OBJECT
+} Objects_Get_by_name_error;
+
+/**
+ * @brief Gets an object control block identified by its name.
+ *
+ * The object information must use string names.
+ *
+ * @param information The object information.  Must not be NULL.
+ * @param name The object name.
+ * @param name_length_p Optional parameter to return the name length.
+ * @param error The error indication in case of failure.  Must not be NULL.
+ *
+ * @retval NULL No object exists for this name or invalid parameters.
+ * @retval other The first object according to object index associated with
+ * this name.
+ */
+Objects_Control *_Objects_Get_by_name(
+  const Objects_Information *information,
+  const char                *name,
+  size_t                    *name_length_p,
+  Objects_Get_by_name_error *error
 );
 #endif
@@ -1055,4 +1061,9 @@
 }
 
+RTEMS_INLINE_ROUTINE bool _Objects_Allocator_is_owner( void )
+{
+  return _RTEMS_Allocator_is_owner();
+}
+
 /** @} */
 
Index: cpukit/score/src/objectnametoidstring.c
===================================================================
--- cpukit/score/src/objectnametoidstring.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ cpukit/score/src/objectnametoidstring.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -24,39 +24,52 @@
 
 #if defined(RTEMS_SCORE_OBJECT_ENABLE_STRING_NAMES)
-Objects_Name_or_id_lookup_errors _Objects_Name_to_id_string(
-  Objects_Information *information,
-  const char          *name,
-  Objects_Id          *id
+Objects_Control *_Objects_Get_by_name(
+  const Objects_Information *information,
+  const char                *name,
+  size_t                    *name_length_p,
+  Objects_Get_by_name_error *error
 )
 {
-  Objects_Control           *the_object;
-  uint32_t                   index;
+  size_t   name_length;
+  size_t   max_name_length;
+  uint32_t index;
 
-  /* ASSERT: information->is_string == true */
+  _Assert( information->is_string );
+  _Assert( _Objects_Allocator_is_owner() );
 
-  if ( !id )
-    return OBJECTS_INVALID_ADDRESS;
+  if ( name == NULL ) {
+    *error = OBJECTS_GET_BY_NAME_INVALID_NAME;
+    return NULL;
+  }
 
-  if ( !name )
-    return OBJECTS_INVALID_NAME;
+  name_length = strnlen( name, information->name_length + 1 );
+  max_name_length = information->name_length;
+  if ( name_length > max_name_length ) {
+    *error = OBJECTS_GET_BY_NAME_NAME_TOO_LONG;
+    return NULL;
+  }
 
-  if ( information->maximum != 0 ) {
+  if ( name_length_p != NULL ) {
+    *name_length_p = name_length;
+  }
 
-    for ( index = 1; index <= information->maximum; index++ ) {
-      the_object = information->local_table[ index ];
-      if ( !the_object )
-        continue;
+  for ( index = 1; index <= information->maximum; index++ ) {
+    Objects_Control *the_object;
 
-      if ( !the_object->name.name_p )
-        continue;
+    the_object = information->local_table[ index ];
 
-      if (!strncmp( name, the_object->name.name_p, information->name_length)) {
-        *id = the_object->id;
-        return OBJECTS_NAME_OR_ID_LOOKUP_SUCCESSFUL;
-      }
+    if ( the_object == NULL )
+      continue;
+
+    if ( the_object->name.name_p == NULL )
+      continue;
+
+    if ( strncmp( name, the_object->name.name_p, max_name_length ) == 0 ) {
+      return the_object;
     }
   }
 
-  return OBJECTS_INVALID_NAME;
+  *error = OBJECTS_GET_BY_NAME_NO_OBJECT;
+  return NULL;
 }
 #endif
Index: testsuites/psxtests/psxmsgq01/init.c
===================================================================
--- testsuites/psxtests/psxmsgq01/init.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxmsgq01/init.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -379,11 +379,11 @@
 
   /*
-   *  EINVAL - Unlink a queue with a null name
-   */
-
-  puts( "Init: mq_unlink (\"\") - EINVAL" );
+   *  ENOENT - Unlink a queue with a zero length name
+   */
+
+  puts( "Init: mq_unlink (\"\") - ENOENT" );
   status = mq_unlink( "" );
   fatal_posix_service_status( status, -1, "mq_unlink error return status");
-  fatal_posix_service_status( errno, EINVAL, "mq_unlink errno value");
+  fatal_posix_service_status( errno, ENOENT, "mq_unlink errno value");
 }
 
Index: testsuites/psxtests/psxmsgq01/psxmsgq01.scn
===================================================================
--- testsuites/psxtests/psxmsgq01/psxmsgq01.scn	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxmsgq01/psxmsgq01.scn	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -1,3 +1,3 @@
-*** POSIX MESSAGE QUEUE TEST ***
+*** BEGIN OF TEST PSXMSGQ 1 ***
 _______________mq_open errors
 Init: mq_open - Create with maxmsg (-1) (EINVAL)
@@ -14,5 +14,5 @@
 Init: mq_unlink - A Queue not opened  (ENOENT)
 Init: mq_unlink (NULL) - EINVAL
-Init: mq_unlink ("") - EINVAL
+Init: mq_unlink ("") - ENOENT
 _______________mq_close errors
 Init: mq_close - unopened queue (EBADF)
@@ -22,7 +22,7 @@
 Task1:mq_setattr - NULL attributes (EINVAL)
 Init: set_attr all queues to blocking
-Init: Init: mq_timedreceive - on queue Qnoblock Init: 1 sec -12131 us
-Init: Init: mq_timedreceive - on queue Qblock Init: 1 sec -11843 us
-Init: Init: mq_timedreceive - on queue Qdefault Init: 0 sec 988133 us
+Init: Init: mq_timedreceive - on queue Qnoblock Init: 1 sec -8622 us
+Init: Init: mq_timedreceive - on queue Qblock Init: 1 sec -1872 us
+Init: Init: mq_timedreceive - on queue Qdefault Init: 1 sec -1881 us
 _______________mq_send errors
 Init: mq_send - Closed message queue (EBADF)
@@ -38,7 +38,7 @@
 Init: mq_getattr - NULL attributes (EINVAL)
 _______________mq_timedsend
-Init: mq_timedsend - on queue Qnoblock Init: 0 sec 77 us
-Init: mq_timedsend - on queue Qblock Init: 0 sec 988482 us
-Init: mq_timedsend - on queue Qdefault Init: 0 sec 101 us
+Init: mq_timedsend - on queue Qnoblock Init: 0 sec 127 us
+Init: mq_timedsend - on queue Qblock Init: 1 sec -9245 us
+Init: mq_timedsend - on queue Qdefault Init: 0 sec 130 us
 _______________mq_receive errors
 Init: mq_receive - Unopened message queue (EBADF)
@@ -49,7 +49,7 @@
 Init: mq_receive - Queue is empty (EAGAIN)
 _______________mq_timedreceive
-Init: Init: mq_timedreceive - on queue Qnoblock Init: 0 sec 83 us
-Init: Init: mq_timedreceive - on queue Qblock Init: 0 sec 986568 us
-Init: Init: mq_timedreceive - on queue Qdefault Init: 1 sec -11823 us
+Init: Init: mq_timedreceive - on queue Qnoblock Init: 0 sec 128 us
+Init: Init: mq_timedreceive - on queue Qblock Init: 1 sec -715 us
+Init: Init: mq_timedreceive - on queue Qdefault Init: 1 sec -1836 us
 _______________mq_open functionality
 _______________mq_notify
@@ -71,8 +71,8 @@
 waiting on any signal for 3 seconds.
 _______________multi-thread Task 1 Test
-Task_1: Fri Jan  1 00:00:17 1988
+Task_1: Fri Jan  1 00:00:18 1988
 Task_1: mq_send -  to Qblock msg: 12345678 priority 31
 Task_1: pthread_exit
-Init: Fri Jan  1 00:00:17 1988
+Init: Fri Jan  1 00:00:18 1988
 _______________multi-thread Task 2 Test
 Init: Verify Queues are empty
@@ -80,8 +80,8 @@
 Init: Verify Queues are full
 Init: mq_send -  to Qblock msg: Last priority 32
-Task_2: Fri Jan  1 00:00:17 1988
+Task_2: Fri Jan  1 00:00:18 1988
 Task_2: Verify Queues are full
 Task_2: pthread_exit
-Init: Fri Jan  1 00:00:17 1988
+Init: Fri Jan  1 00:00:18 1988
 Init: Verify Queues are full
 Init: Empty all Queues
@@ -95,9 +95,8 @@
 Task_3: pthread_exit
 _______________mq_timedout_receive
-Init: Init: verify_timedout_mq_timedreceive - on queue Qnoblock Init: 0 sec 54 us
+Init: Init: verify_timedout_mq_timedreceive - on queue Qnoblock Init: 0 sec 81 us
 _______________verify_timedout_mq_timedsend
-Init: verify_timedout_mq_timedsend - on queue Qnoblock Init: 0 sec 54 us
-Init: verify_timedout_mq_timedsend - on queue Qblock Init: 0 sec 55 us
-Init: verify_timedout_mq_timedsend - on queue Qdefault Init: 0 sec 78 us
-*** END OF POSIX MESSAGE QUEUE TEST ***
-
+Init: verify_timedout_mq_timedsend - on queue Qnoblock Init: 0 sec 84 us
+Init: verify_timedout_mq_timedsend - on queue Qblock Init: 0 sec 86 us
+Init: verify_timedout_mq_timedsend - on queue Qdefault Init: 0 sec 104 us
+*** END OF TEST PSXMSGQ 1 ***
Index: testsuites/psxtests/psxobj01/init.c
===================================================================
--- testsuites/psxtests/psxobj01/init.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxobj01/init.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -30,9 +30,10 @@
 )
 {
-  Objects_Name_or_id_lookup_errors namerc;
-  Objects_Information              TestClass;
-  Objects_Id                       id;
-  char                             name[64];
-  bool                             bc;
+  Objects_Get_by_name_error  error;
+  Objects_Information        TestClass;
+  Objects_Control           *the_object;
+  char                       name[64];
+  size_t                     name_len;
+  bool                       bc;
 
   TEST_BEGIN();
@@ -54,25 +55,22 @@
   );
 
-  puts( "INIT - _Objects_Name_to_id_string - NULL name" );
-  namerc = _Objects_Name_to_id_string( &TestClass, NULL, &id );
-  if ( namerc != OBJECTS_INVALID_NAME ) {
-    printf( "ERROR - Status = %d\n", namerc );
-    rtems_test_exit(0);
-  }
+  puts( "INIT - _Objects_Get_by_name - NULL name" );
+  the_object = _Objects_Get_by_name( &TestClass, NULL, NULL, &error );
+  rtems_test_assert( the_object == NULL );
+  rtems_test_assert( error == OBJECTS_GET_BY_NAME_INVALID_NAME );
 
-  puts( "INIT - _Objects_Name_to_id_string - NULL ID" );
-  namerc = _Objects_Name_to_id_string( &TestClass, name, NULL );
-  if ( namerc != OBJECTS_INVALID_ADDRESS ) {
-    printf( "ERROR - Status = %d\n", namerc );
-    rtems_test_exit(0);
-  }
+  puts( "INIT - _Objects_Get_by_name - name too long" );
+  strcpy( name, "TOOOOOOOOOOOOOOOOOO LONG" );
+  the_object = _Objects_Get_by_name( &TestClass, name, NULL, &error );
+  rtems_test_assert( the_object == NULL );
+  rtems_test_assert( error == OBJECTS_GET_BY_NAME_NAME_TOO_LONG );
 
-  puts( "INIT - _Objects_Name_to_id_string - name of non-existent object" );
+  puts( "INIT - _Objects_Get_by_name - name of non-existent object" );
   strcpy( name, "NOT FOUND" );
-  namerc = _Objects_Name_to_id_string( &TestClass, name, &id );
-  if ( namerc != OBJECTS_INVALID_NAME ) {
-    printf( "ERROR - Status = %d\n", namerc );
-    rtems_test_exit(0);
-  }
+  name_len = 123;
+  the_object = _Objects_Get_by_name( &TestClass, name, &name_len, &error );
+  rtems_test_assert( the_object == NULL );
+  rtems_test_assert( error == OBJECTS_GET_BY_NAME_NO_OBJECT );
+  rtems_test_assert( name_len == 9 );
 
   /* out of memory error ONLY when POSIX is enabled */
Index: testsuites/psxtests/psxobj01/psxobj01.scn
===================================================================
--- testsuites/psxtests/psxobj01/psxobj01.scn	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxobj01/psxobj01.scn	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -1,7 +1,6 @@
-*** POSIX OBJECT TEST 1 ***
-INIT - _Objects_Name_to_id_string - NULL name
-INIT - _Objects_Name_to_id_string - NULL ID
-INIT - _Objects_Name_to_id_string - name of non-existent object
+*** BEGIN OF TEST PSXOBJ 1 ***
+INIT - _Objects_Get_by_name - NULL name
+INIT - _Objects_Get_by_name - name too long
+INIT - _Objects_Get_by_name - name of non-existent object
 INIT - _Objects_Set_name fails - out of memory
-Allocate_majority_of_workspace: 
-*** END OF POSIX OBJECT TEST 1 ***
+*** END OF TEST PSXOBJ 1 ***
Index: testsuites/psxtests/psxsem01/init.c
===================================================================
--- testsuites/psxtests/psxsem01/init.c	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxsem01/init.c	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -280,8 +280,8 @@
   fatal_posix_service_status( errno, EINVAL, "sem_unlink errno value");
 
-  puts( "Init: sem_unlink (\"\") - EINVAL" );
+  puts( "Init: sem_unlink (\"\") - ENOENT" );
   status = sem_unlink( "" );
   fatal_posix_service_status( status, -1, "sem_unlink error return status");
-  fatal_posix_service_status( errno, EINVAL, "sem_unlink errno value");
+  fatal_posix_service_status( errno, ENOENT, "sem_unlink errno value");
 
   /*
Index: testsuites/psxtests/psxsem01/psxsem01.scn
===================================================================
--- testsuites/psxtests/psxsem01/psxsem01.scn	(revision 1f0e652a2afc7db36c55276a965ab1fffe7932dc)
+++ testsuites/psxtests/psxsem01/psxsem01.scn	(revision c904df573396d95957dc79b242b3a76911063089)
@@ -1,9 +1,9 @@
-*** POSIX SEMAPHORE MANAGER TEST 1 ***
+*** BEGIN OF TEST PSXSEM 1 ***
 Init: sem_init - UNSUCCESSFUL (EINVAL)
 Init: sem_init - SUCCESSFUL
 Init: sem_init - UNSUCCESSFUL (ENOSPC)
 Init: sem_init - UNSUCCESSFUL (ENOSYS -- pshared not supported)
-Init: sem_getvalue - SUCCESSFUL
-Init: sem_getvalue - UNSUCCESSFUL
+Init: sem_getvalue - SUCCESSFUL 
+Init: sem_getvalue - UNSUCCESSFUL 
 Init: sem_destroy - SUCCESSFUL
 Init: sem_destroy - UNSUCCESSFUL (EINVAL)
@@ -14,8 +14,8 @@
 Init: sem_trywait - SUCCESSFUL
 Init: sem_trywait - UNSUCCESSFUL (EAGAIN)
-Init: sem_trywait - UNSUCCESSFUL (EINVAL) -- skipping
+Init: sem_trywait - UNSUCCESSFUL (EINVAL)
 Init: sem_timedwait - SUCCESSFUL
 Init: sem_timedwait - UNSUCCESSFUL (ETIMEDOUT)
-Init: sem_timedwait - UNSUCCESSFUL (EINVAL)
+Init: sem_timedwait - UNSUCCESSFUL (EINVAL) -- skipping
 Init: sem_post - UNSUCCESSFUL (EINVAL)
 Init: sem_destroy - SUCCESSFUL
@@ -35,6 +35,5 @@
 Init: sem_unlink - UNSUCCESSFUL (ENOENT)
 Init: sem_unlink (NULL) - EINVAL
-Init: sem_unlink ("") - EINVAL
+Init: sem_unlink ("") - ENOENT
 Init: sem_unlink - UNSUCCESSFUL (ENOENT)
-*** END OF POSIX SEMAPHORE MANAGER TEST 1 ***
-
+*** END OF TEST PSXSEM 1 ***
