attach DSHM segment
dshm_handle_t dshm_attach (int dshmid, int dshmflgs, unsigned long * max_mappings);
dshm_attach attaches the designated DSHM segment
to the calling process, placing the map at the logical address assigned by
and allocating and initializing the per-attach management data.
Upon successful return, *max_mappings indicates the maximum concurrent
mappings the application can safely use (total across all attached
processes) without deadlocking.
If dshm_attach returns DSHM_NULL_HANDLE, an error occurred.
errno is set to identify the error.
Otherwise, dshm_attach returns
an opaque handle for use in subsequent operations
on the attached segment.
In the following conditions, dshm_attach fails and sets
Segment is not initialized.
is still in progress or was terminated prematurely.
Illegal flags in dshmflgs.
Attach failed due to address space conflict.
Insufficient resources to allocate per-attach management structure(s).
dshmid is not a valid dynamically mapped shared memory identifier.
Operation permission is denied to the calling process.
The available data space is not large enough to accommodate the shared
The number of dynamically mapped shared memory segments attached to the
calling process would exceed the system-imposed limit.
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004