MsgVerifyEvent(), MsgVerifyEvent_r()
QNX SDP8.0C Library ReferenceAPIDeveloper
Check the validity of a receive ID and an event configuration
Synopsis:
#include <sys/neutrino.h>
int MsgVerifyEvent( rcvid_t rcvid,
const struct sigevent *event );
int MsgVerifyEvent_r( rcvid_t rcvid,
const struct sigevent *event );
Arguments:
- rcvid
- The receive ID that you want to check.
- event
- A pointer to a sigevent structure that contains the event you want to check.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
The MsgVerifyEvent() and MsgVerifyEvent_r() kernel calls check the validity of the receive ID rcvid, and the event configuration. You can use these functions to verify that an event is well-formed by a client (pass a rcvid of 0), and by a server (pass a rcvid of the target thread).
These functions are identical except in the way they indicate errors. See the Returns section for details.
Blocking states
These calls don't block.
Returns:
The only difference between the MsgVerifyEvent() and MsgVerifyEvent_r() functions is the way they indicate errors:
- MsgVerifyEvent()
- If successful, this function returns EOK. If an error occurs, this function returns -1 and sets errno.
- MsgVerifyEvent_r()
- If successful, this function returns EOK. This function does NOT set errno, even on success. If an error occurs, it may return any value from the Errors section.
Errors:
- EACCES
- The connection requires registered events, the target process is being loaded or terminated, or the target process's threads are being destroyed.
- EBADF
- The channel for the pulse delivery doesn't exist.
- EBUSY
- The event type is SIGEV_THREAD and the target process's threads are being destroyed or a core dump is being created for the target process.
- EINVAL
- Invalid event structure.
- ESRCH
- The connection for the pulse doesn't exist.
Classification:
Safety: | |
---|---|
Cancellation point | No |
Signal handler | Yes |
Thread | Yes |
Page updated: