JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
man pages section 3: Realtime Library Functions     Oracle Solaris 10 1/13 Information Library
search filter icon
search icon

Document Information

Preface

Realtime Library Functions

aiocancel(3AIO)

aio_cancel(3RT)

aio_error(3RT)

aio_fsync(3RT)

aioread(3AIO)

aio_read(3RT)

aio_return(3RT)

aio_suspend(3RT)

aiowait(3AIO)

aio_waitn(3RT)

aiowrite(3AIO)

aio_write(3RT)

clock_getres(3RT)

clock_gettime(3RT)

clock_nanosleep(3RT)

clock_settime(3RT)

door_bind(3DOOR)

door_call(3DOOR)

door_create(3DOOR)

door_cred(3DOOR)

door_info(3DOOR)

door_return(3DOOR)

door_revoke(3DOOR)

door_server_create(3DOOR)

door_ucred(3DOOR)

door_unbind(3DOOR)

door_xcreate(3DOOR)

fdatasync(3RT)

lio_listio(3RT)

mq_close(3RT)

mq_getattr(3RT)

mq_notify(3RT)

mq_open(3RT)

mq_receive(3RT)

mq_reltimedreceive_np(3RT)

mq_reltimedsend_np(3RT)

mq_send(3RT)

mq_setattr(3RT)

mq_timedreceive(3RT)

mq_timedsend(3RT)

mq_unlink(3RT)

nanosleep(3RT)

proc_service(3PROC)

ps_kill(3PROC)

ps_lcontinue(3PROC)

ps_lgetfpregs(3PROC)

ps_lgetregs(3PROC)

ps_lgetxregs(3PROC)

ps_lgetxregsize(3PROC)

ps_lrolltoaddr(3PROC)

ps_lsetfpregs(3PROC)

ps_lsetregs(3PROC)

ps_lsetxregs(3PROC)

ps_lstop(3PROC)

ps_pcontinue(3PROC)

ps_pdread(3PROC)

ps_pdwrite(3PROC)

ps_pglobal_lookup(3PROC)

ps_pglobal_sym(3PROC)

ps_pread(3PROC)

ps_pstop(3PROC)

ps_ptread(3PROC)

ps_ptwrite(3PROC)

ps_pwrite(3PROC)

sched_getparam(3RT)

sched_get_priority_max(3RT)

sched_get_priority_min(3RT)

sched_getscheduler(3RT)

sched_rr_get_interval(3RT)

sched_setparam(3RT)

sched_setscheduler(3RT)

sched_yield(3RT)

sem_close(3RT)

sem_destroy(3RT)

sem_getvalue(3RT)

sem_init(3RT)

sem_open(3RT)

sem_post(3RT)

sem_reltimedwait_np(3RT)

sem_timedwait(3RT)

sem_trywait(3RT)

sem_unlink(3RT)

sem_wait(3RT)

shm_open(3RT)

shm_unlink(3RT)

sigqueue(3RT)

sigtimedwait(3RT)

sigwaitinfo(3RT)

timer_create(3RT)

timer_delete(3RT)

timer_getoverrun(3RT)

timer_gettime(3RT)

timer_settime(3RT)

door_return

- return from a door invocation

Synopsis

cc -mt [ flag ... ] file ... -ldoor  [ library ... ]
#include <door.h>

int door_return(char *data_ptr, size_t data_size, door_desc_t *desc_ptr,
     uint_t num_desc);

Description

The door_return() function returns from a door invocation. It returns control to the thread that issued the associated door_call() and blocks waiting for the next door invocation. See door_call(3DOOR). Results, if any, from the door invocation are passed back to the client in the buffers pointed to by data_ptr and desc_ptr. If there is not a client associated with the door_return(), the calling thread discards the results, releases any passed descriptors with the DOOR_RELEASE attribute, and blocks waiting for the next door invocation.

Return Values

Upon successful completion, door_return() does not return to the calling process. Otherwise, door_return() returns -1 to the calling process and sets errno to indicate the error.

Errors

The door_return() function fails and returns to the calling process if:

E2BIG

Arguments were too big for client.

EFAULT

The address of data_ptr or desc_ptr is invalid.

EINVAL

Invalid door_return() arguments were passed or a thread is bound to a door that no longer exists.

EMFILE

The client has too many open descriptors.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Architecture
all
Availability
SUNWcsu
Interface Stability
Evolving
MT-Level
Safe

See Also

door_call(3DOOR),libdoor(3LIB), attributes(5)