Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
setpgid(2)			 System	Calls			    setpgid(2)

NAME
       setpgid - set process group ID

SYNOPSIS
       #include	<sys/types.h>
       #include	<unistd.h>

       int setpgid(pid_t pid, pid_t pgid);

DESCRIPTION
       The setpgid() function sets the process group ID	of the process with ID
       pid to pgid.

       If pgid is equal	to pid,	the process becomes a  process	group  leader.
       See  intro(2) for more information on session leaders and process group
       leaders.

       If pgid is not equal to pid, the	process	becomes	a member of an	exist-
       ing process group.

       If pid is equal to 0, the process ID of the calling process is used. If
       pgid is equal to	0, the process specified  by  pid  becomes  a  process
       group leader.

RETURN VALUES
       Upon  successful	 completion,  0	is returned. Otherwise,	-1 is returned
       and errno is set	to indicate the	error.

ERRORS
       The setpgid() function will fail	if:

       EACCES	       The pid argument	matches	the  process  ID  of  a	 child
		       process	of  the	 calling process and the child process
		       has successfully	executed  one of the  exec  family  of
		       functions (see exec(2)).

       EINVAL	       The  pgid  argument  is	less than (pid_t) 0 or greater
		       than or equal to	PID_MAX, or the	calling	process	has  a
		       controlling terminal that does not support job control.

       EPERM	       The  process indicated by the pid argument is a session
		       leader.

       EPERM	       The pid argument	matches	the  process  ID  of  a	 child
		       process of the calling process and the child process is
		       not in the same session as the calling process.

       EPERM	       The pgid	argument does not match	the process ID of  the
		       process	indicated by the pid argument, and there is no
		       process with a process group ID that  matches  pgid  in
		       the same	session	as the calling process.

       ESRCH	       The  pid	 argument does not match the process ID	of the
		       calling process or of a child process  of  the  calling
		       process.

ATTRIBUTES
       See attributes(5) for descriptions of the following attributes:

       +-----------------------------+-----------------------------+
       |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
       +-----------------------------+-----------------------------+
       |Interface Stability	     |Standard			   |
       +-----------------------------+-----------------------------+
       |MT-Level		     |Async-Signal-Safe		   |
       +-----------------------------+-----------------------------+

SEE ALSO
       intro(2),   exec(2),   exit(2),	 fork(2),  getpid(2),  getsid(2),  at-
       tributes(5), standards(5)

SunOS 5.10			  28 Dec 1996			    setpgid(2)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | ATTRIBUTES | SEE ALSO

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=setpgid&sektion=2&manpath=SunOS+5.10>

home | help