Sun Microsystems, Inc.
spacerspacer
spacer   www.sun.com docs.sun.com | | |  
spacer
black dot
   
A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P   Q   R   S   T   U   V   W   X   Y   Z
    
 
Door Library Functionsdoor_return(3DOOR)


NAME

 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_prt 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_prt 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 TYPEATTRIBUTE VALUE
Architectureall
AvailabilitySUNWcsu
StabilityEvolving
MT-LevelSafe

SEE ALSO

 

door_call(3DOOR)


SunOS 5.9Go To TopLast Changed 5 Feb 2001

 
      
      
Copyright 2002 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.