door_info(3door) [posix man page]
door_info(3DOOR) Door Library Functions door_info(3DOOR) NAME
door_info - return information associated with a door descriptor SYNOPSIS
cc [ flag ... ] file ... -ldoor [ library ... ] #include <door.h> int door_info(int d, struct door_info *info); DESCRIPTION
The door_info() function returns information associated with a door descriptor. It obtains information about the door descriptor d and places the information that is relevant to the door in the structure pointed to by the info argument. The door_info structure pointed to by the info argument contains the following members: pid_t di_target; /* door server pid */ door_ptr_t di_proc; /* server function */ door_ptr_t di_data; /* data cookie for invocation */ door_attr_t di_attributes; /* door attributes */ door_id_t di_uniquifier; /* unique id among all doors */ The di_target member is the process ID of the door server, or -1 if the door server process has exited. The values for di_attributes may be composed of the following: DOOR_LOCAL The door descriptor refers to a service procedure in this process. DOOR_UNREF The door has requested notification when all but the last reference has gone away. DOOR_UNREF_MULTI Similar to DOOR_UNREF, except multiple unreferenced notifications may be delivered for this door. DOOR_IS_UNREF There is currently only one descriptor referring to the door. DOOR_REFUSE_DESC The door refuses any attempt to door_call(3DOOR) it with argument descriptors. DOOR_REVOKED The door descriptor refers to a door that has been revoked. DOOR_PRIVATE The door has a separate pool of server threads associated with it. The di_proc and di_data members are returned as door_ptr_t objects rather than void * pointers to allow clients and servers to interoper- ate in environments where the pointer sizes may vary in size (for example, 32-bit clients and 64-bit servers). Each door has a system-wide unique number associated with it that is set when the door is created by door_create(). This number is returned in di_uniquifier. RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, -1 is returned and errno is set to indicate the error. ERRORS
The door_info() function will fail if: EFAULT The address of argument info is an invalid address. EBADF d is not a door descriptor. 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_bind(3DOOR), door_call(3DOOR), door_create(3DOOR), door_server_create(3DOOR), libdoor(3LIB), attributes(5) SunOS 5.10 14 Feb 2003 door_info(3DOOR)
Check Out this Related Man Page
door_info(3DOOR) Door Library Functions door_info(3DOOR) NAME
door_info - return information associated with a door descriptor SYNOPSIS
cc [ flag ... ] file ... -ldoor [ library ... ] #include <door.h> int door_info(int d, struct door_info *info); DESCRIPTION
The door_info() function returns information associated with a door descriptor. It obtains information about the door descriptor d and places the information that is relevant to the door in the structure pointed to by the info argument. The door_info structure pointed to by the info argument contains the following members: pid_t di_target; /* door server pid */ door_ptr_t di_proc; /* server function */ door_ptr_t di_data; /* data cookie for invocation */ door_attr_t di_attributes; /* door attributes */ door_id_t di_uniquifier; /* unique id among all doors */ The di_target member is the process ID of the door server, or -1 if the door server process has exited. The values for di_attributes may be composed of the following: DOOR_LOCAL The door descriptor refers to a service procedure in this process. DOOR_UNREF The door has requested notification when all but the last reference has gone away. DOOR_UNREF_MULTI Similar to DOOR_UNREF, except multiple unreferenced notifications may be delivered for this door. DOOR_IS_UNREF There is currently only one descriptor referring to the door. DOOR_REFUSE_DESC The door refuses any attempt to door_call(3DOOR) it with argument descriptors. DOOR_REVOKED The door descriptor refers to a door that has been revoked. DOOR_PRIVATE The door has a separate pool of server threads associated with it. The di_proc and di_data members are returned as door_ptr_t objects rather than void * pointers to allow clients and servers to interoper- ate in environments where the pointer sizes may vary in size (for example, 32-bit clients and 64-bit servers). Each door has a system-wide unique number associated with it that is set when the door is created by door_create(). This number is returned in di_uniquifier. RETURN VALUES
Upon successful completion, 0 is returned. Otherwise, -1 is returned and errno is set to indicate the error. ERRORS
The door_info() function will fail if: EFAULT The address of argument info is an invalid address. EBADF d is not a door descriptor. 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_bind(3DOOR), door_call(3DOOR), door_create(3DOOR), door_server_create(3DOOR), libdoor(3LIB), attributes(5) SunOS 5.10 14 Feb 2003 door_info(3DOOR)