4 #ifndef RUDIMENTS_PROCESS_H
5 #define RUDIMENTS_PROCESS_H
7 #include <rudiments/private/processincludes.h>
9 #ifdef RUDIMENTS_NAMESPACE
55 static pid_t getProcessId();
59 static pid_t getParentProcessId();
63 static pid_t getProcessGroupId();
67 static pid_t getProcessGroupId(pid_t pid);
71 static bool setProcessGroupId();
74 static bool setProcessGroupId(pid_t pgid);
77 static bool setProcessGroupId(pid_t pid, pid_t pgid);
80 static pid_t getSessionId();
83 static pid_t getSessionId(pid_t pid);
86 static uid_t getRealUserId();
89 static uid_t getEffectiveUserId();
96 static bool setUserId(uid_t uid);
102 static bool setEffectiveUserId(uid_t uid);
111 static bool setRealAndEffectiveUserId(uid_t uid,
115 static gid_t getRealGroupId();
118 static gid_t getEffectiveGroupId();
125 static bool setGroupId(gid_t gid);
131 static bool setEffectiveGroupId(gid_t gid);
140 static bool setRealAndEffectiveGroupId(gid_t gid,
145 static mode_t setFileCreationMask(mode_t mask);
161 static bool detach();
165 static void exit(int32_t status);
168 #ifdef RUDIMENTS_NAMESPACE