# PR_AttachSharedMemory Attaches a memory segment previously opened with {ref}`PR_OpenSharedMemory` and maps it into the process memory space. ## Syntax ```{code} #include ``` ```{code} NSPR_API( void * ) PR_AttachSharedMemory( PRSharedMemory *shm, PRIntn flags ); /* Define values for PR_AttachSharedMemory(...,flags) */ #define PR_SHM_READONLY 0x01 ``` ### Parameters The function has these parameters: shm : The handle returned from {ref}`PR_OpenSharedMemory`. flags : Options for mapping the shared memory. `PR_SHM_READONLY` causes the memory to be attached read-only. ### Returns Address where shared memory is mapped, or `NULL` if an error occurs. Retrieve the reason for the failure by calling {ref}`PR_GetError` and {ref}`PR_GetOSError`.