summaryrefslogtreecommitdiffstats
path: root/cpukit/itron/src/msgbuffertranslatereturncode.c
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1999-11-15 17:15:58 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1999-11-15 17:15:58 +0000
commit9da09940e4313465c77a2531f4a4f918d7ad99ef (patch)
tree0d580090a6772135d2123745c2a73409e62d933d /cpukit/itron/src/msgbuffertranslatereturncode.c
parentSplit ITRON semaphore manager into multiple files. (diff)
downloadrtems-9da09940e4313465c77a2531f4a4f918d7ad99ef.tar.bz2
Split ITRON Message Buffer Manager into multiple files.
Diffstat (limited to 'cpukit/itron/src/msgbuffertranslatereturncode.c')
-rw-r--r--cpukit/itron/src/msgbuffertranslatereturncode.c41
1 files changed, 41 insertions, 0 deletions
diff --git a/cpukit/itron/src/msgbuffertranslatereturncode.c b/cpukit/itron/src/msgbuffertranslatereturncode.c
new file mode 100644
index 0000000000..f6cfaf85fe
--- /dev/null
+++ b/cpukit/itron/src/msgbuffertranslatereturncode.c
@@ -0,0 +1,41 @@
+/*
+ * ITRON Message Buffer Manager
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.OARcorp.com/rtems/license.html.
+ *
+ * $Id$
+ */
+
+#include <itron.h>
+
+#include <rtems/itron/msgbuffer.h>
+#include <rtems/itron/task.h>
+
+/*
+ * _ITRON_Message_buffer_Translate_core_message_buffer_return_code
+ *
+ * This routine translates a core message buffer object status
+ * into the appropriate ITRON status code.
+ */
+
+ER _ITRON_Message_buffer_Translate_core_message_buffer_return_code(
+ CORE_message_queue_Status status
+)
+{
+ switch (status) {
+ case CORE_MESSAGE_QUEUE_STATUS_SUCCESSFUL:
+ return E_OK;
+ case CORE_MESSAGE_QUEUE_STATUS_TOO_MANY:
+ return E_TMOUT;
+ case CORE_MESSAGE_QUEUE_STATUS_INVALID_SIZE:
+ return E_PAR;
+ case CORE_MESSAGE_QUEUE_STATUS_UNSATISFIED_NOWAIT:
+ return E_TMOUT;
+ case CORE_MESSAGE_QUEUE_STATUS_TIMEOUT:
+ return E_TMOUT;
+ default:
+ return E_ID;
+ }
+}