| SETPGID(2) | System Calls Manual | SETPGID(2) | 
setpgid, setpgrp —
#include <unistd.h>
int
  
  setpgid(pid_t
    pid, pid_t
  pgrp);
int
  
  setpgrp(pid_t
    pid, pid_t
  pgrp);
setpgid() sets the process group of the specified
  process pid to the specified pgrp.
  If pid is zero, then the call applies to the current
  process. If pgrp is zero, then the process id of the
  process specified by pid is used instead.
If the invoker is not the super-user, then the affected process must have the same effective user-id as the invoker or be a descendant of the invoking process.
setpgid() returns 0 when the operation was successful.
  If the request failed, -1 is returned and the global variable
  errno indicates the reason.
setpgrp() is identical to
  setpgid(), and is retained for calling convention
  compatibility with historical versions of BSD.
setpgid() will fail and the process group will not be
  altered if:
EACCES]EINVAL]EPERM]ESRCH]setpgid() function conforms to IEEE
  Std 1003.1-1990 (“POSIX.1”).
| December 18, 2003 | NetBSD 9.3 |