pid_t getsid(pid_t pid); pid_t setsid(void);
This syscalls get and set the session ID of a process, which is a
separate ID inherited from parent to children processes. The session ID of
the first process started by Ironclad is 0, and userland takes care of
it from there.
getsid allows its arguments to be 0. When 0 is passed,
it will be taken to be the PID of the calling process.
On success, getsid returns the session ID, and setsid
returns the new session ID. On failure, both syscalls return -1 with the
following errno:
ESRCHThe passed PID is not valid.