37#ifndef _RTEMS_SCORE_STATUS_H
38#define _RTEMS_SCORE_STATUS_H
65 STATUS_CLASSIC_INCORRECT_STATE = 14,
66 STATUS_CLASSIC_INTERNAL_ERROR = 25,
67 STATUS_CLASSIC_INVALID_ADDRESS = 9,
68 STATUS_CLASSIC_INVALID_ID = 4,
69 STATUS_CLASSIC_INVALID_NAME = 3,
70 STATUS_CLASSIC_INVALID_NODE = 21,
71 STATUS_CLASSIC_INVALID_NUMBER = 10,
72 STATUS_CLASSIC_INVALID_PRIORITY = 19,
73 STATUS_CLASSIC_INVALID_SIZE = 8,
74 STATUS_CLASSIC_NO_MEMORY = 26,
75 STATUS_CLASSIC_NOT_DEFINED = 11,
76 STATUS_CLASSIC_NOT_OWNER_OF_RESOURCE = 23,
77 STATUS_CLASSIC_OBJECT_WAS_DELETED = 7,
78 STATUS_CLASSIC_PROXY_BLOCKING = 29,
79 STATUS_CLASSIC_RESOURCE_IN_USE = 12,
80 STATUS_CLASSIC_SUCCESSFUL = 0,
81 STATUS_CLASSIC_TIMEOUT = 6,
82 STATUS_CLASSIC_TOO_MANY = 5,
83 STATUS_CLASSIC_UNSATISFIED = 13
91#define STATUS_BUILD( classic_status, posix_status ) \
92 ( ( ( posix_status ) * 256 ) | ( classic_status ) )
97#define STATUS_GET_CLASSIC( status ) \
105#define STATUS_GET_POSIX( status ) \
112 STATUS_BARRIER_AUTOMATICALLY_RELEASED =
113 STATUS_BUILD( STATUS_CLASSIC_SUCCESSFUL, PTHREAD_BARRIER_SERIAL_THREAD ),
115 STATUS_BUILD( STATUS_CLASSIC_INCORRECT_STATE, EDEADLK ),
118 STATUS_INCORRECT_STATE =
122 STATUS_INTERNAL_ERROR =
124 STATUS_INVALID_ADDRESS =
128 STATUS_INVALID_NODE =
130 STATUS_INVALID_NAME =
132 STATUS_INVALID_NUMBER =
134 STATUS_INVALID_PRIORITY =
135 STATUS_BUILD( STATUS_CLASSIC_INVALID_PRIORITY, EINVAL ),
136 STATUS_INVALID_SIZE =
138 STATUS_MAXIMUM_COUNT_EXCEEDED =
140 STATUS_MESSAGE_INVALID_SIZE =
142 STATUS_MESSAGE_QUEUE_INVALID_NUMBER =
144 STATUS_MESSAGE_QUEUE_INVALID_SIZE =
146 STATUS_MESSAGE_QUEUE_NO_MEMORY =
148 STATUS_MESSAGE_QUEUE_WAIT_IN_ISR =
150 STATUS_MESSAGE_QUEUE_WAS_DELETED =
151 STATUS_BUILD( STATUS_CLASSIC_OBJECT_WAS_DELETED, EBADF ),
154 STATUS_MUTEX_CEILING_VIOLATED =
155 STATUS_BUILD( STATUS_CLASSIC_INVALID_PRIORITY, EINVAL ),
156 STATUS_NESTING_NOT_ALLOWED =
163 STATUS_BUILD( STATUS_CLASSIC_NOT_OWNER_OF_RESOURCE, EPERM ),
164 STATUS_OBJECT_WAS_DELETED =
165 STATUS_BUILD( STATUS_CLASSIC_OBJECT_WAS_DELETED, EINVAL ),
166 STATUS_PROXY_BLOCKING =
168 STATUS_RESOURCE_IN_USE =
170 STATUS_RESULT_TOO_LARGE =
This header file provides basic definitions used by the API and the implementation.
#define STATUS_BUILD(classic_status, posix_status)
Macro to build a status code from Classic and POSIX API parts.
Definition: status.h:91
Status_Control
Status codes.
Definition: status.h:111
Status_Classic
Status code parts for the Classic API.
Definition: status.h:64
POSIX Threads Private Support.