RTEMS ITRON 3.0 API User's Guide
ER ercd =tsnd_mbf( ID mbfid, VP msg, INT msgsz, TMO tmout );
E_OK
- Normal Completion
E_ID
- Invalid ID number (mbfid was invalid or could not be used)
E_NOEXS
- Object does not exist (the message buffer specified by
mbfid does not exist)
E_OACV
- Object access violation (A mbfid less than -4 was
specified from a user task. This is implementation dependent.)
E_PAR
- Parameter error (msgsz is 0 or less; msgsz is larger than
maxmsz; values unsuitable for msg; tmout is -2 or less)
E_DLT
- The object being waited for was deleted (the
message buffer of interest was deleted while waiting)
E_RLWAI
- WAIT state was forcibly released (rel_wai was received
while waiting)
E_TMOUT
- Polling failure or timeout
E_CTX
- Context error (issued from task-independent portions or a
task in dispatch disabled state; implementation dependent for psnd_mbf
and tsnd_mbf(tmout=TMO_POL))
EN_OBJNO
- An object number which could not be accessed on the
target node is specified.
EN_CTXID
- Specified an object on another node when the system
call was issued from a task in dispatch disabled state or from a
task-independent portion (implementation-dependent; applicable to
psnd_mbf and tsnd_mbf (tmout=TMO_POL) only)
EN_PAR
- A value outside the range supported by the target node
and/or transmission packet format was specified as a parameter (a value
outside supported range was specified for msgsz and/or tmout)
The tsnd_mbf
system call has the same function as snd_mbf
with an additional timeout feature. A maximum wait time (timeout value)
can be specified using the parameter tmout
. When a timeout is
specified, a timeout error, E_TMOUT
, will result and the system
call will finish if the period specified by tmout
elapses without
conditions for releasing wait being satisfied (i.e. without sufficient
buffer space becoming available).
Only positive values can be specified for tmout
. Specifying
TMO_POL
= 0 to tsnd_mbf
for tmout
indicates that a
timeout value of 0 be used, resulting in exactly the same processing as
psnd_mbf
. Specifying TMO_FEVR
= -1 to tsnd_mbf
for
tmout
indicates that an infinite timeout value be used, resulting
in exactly the same processing as snd_mbf
.
Multiprocessing is not supported. Thus none of the "EN_" status codes will be returned.
RTEMS ITRON 3.0 API User's Guide
Copyright © 1988-2008 OAR Corporation