The identity of a file descriptor's layer.
#include <prio.h> typedef PRUintn PRDescIdentity;
File descriptors may be layered. Each layer has it own identity. Identities are allocated by the runtime and are to be associated (by the layer implementor) with all file descriptors of that layer. It is then possible to scan the chain of layers and find a layer that one recognizes, then predict that it will implement a desired protocol.
There are three well-known identities:
PR_INVALID_IO_LAYER
, an invalid layer identity, for error returnPR_TOP_IO_LAYER
, the identity of the top of the stackPR_NSPR_IO_LAYER
, the identity used by NSPR properLayers are created by PR_GetUniqueIdentity
. A string may be associated with a layer when the layer is created. The string is copied by the runtime, and PR_GetNameForIdentity
returns a reference to that copy. There is no way to delete a layer's identity after the layer is created.