Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ door_info(3X) — SunOS 5.6

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

door_bind(3X)

door_server_create(3X)

door_info(3X)

NAME

door_info − return information associated with a door descriptor

SYNOPSIS

#include <door.h>
int door_info (int d, struct door_info ∗info);

DESCRIPTION

The door_info() function returns information associated with a door descriptor.  door_info() obtains information about the door descriptor d and places the information that is relevant to the door in the structure pointed to by the argument info.

The contents of the info argument contains the following fields:

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 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 remain. 

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 fields are returned as door_ptr_t objects rather than void ∗ pointers in order to allow clients and servers to interoperate 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.  Upon failure, -1 is returned and errno is set to indicate the error. 

ERRORS

The door_info() function fails if one or more of the following are true:

EFAULT The address of argument info is an invalid address. 

EBADF d is not a door descriptor. 

SEE ALSO

door_bind(3X), door_server_create(3X)

SunOS 5.6  —  Last change: 26 Nov 1996

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026