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

FreeBSD Manual Pages

  
 
  

home | help
TCSETPGRP(3)	       FreeBSD Library Functions Manual		  TCSETPGRP(3)

NAME
     tcsetpgrp -- set foreground process group ID

SYNOPSIS
     #include <unistd.h>

     int
     tcsetpgrp(int fd, pid_t pgrp_id);

DESCRIPTION
     If	the process has	a controlling terminal,	the tcsetpgrp()	function sets
     the foreground process group ID associated	with the terminal device to
     pgrp_id.  The terminal device associated with fd must be the controlling
     terminal of the calling process and the controlling terminal must be cur-
     rently associated with the	session	of the calling process.	 The value of
     pgrp_id must be the same as the process group ID of a process in the same
     session as	the calling process.

     If	the calling process is a member	of a background	process	group, the
     process group will	be sent	a SIGTTOU signal.  If the calling process is
     blocking or ignoring SIGTTOU signals, the process is allowed to perform
     the operation and the SIGTTOU signal is not sent.

     Upon successful completion, tcsetpgrp() returns a value of	zero.

ERRORS
     If	an error occurs, tcsetpgrp() returns -1	and the	global variable	errno
     is	set to indicate	the error, as follows:

     [EBADF]		The fd argument	is not a valid file descriptor.

     [EINTR]		The tcsetpgrp()	function was interrupted by a signal.

     [EINVAL]		An invalid value of pgrp_id was	specified.

     [ENOTTY]		The calling process does not have a controlling	termi-
			nal, or	the file represented by	fd is not the control-
			ling terminal, or the controlling terminal is no
			longer associated with the session of the calling
			process.

     [EPERM]		The pgrp_id argument does not match the	process	group
			ID of a	process	in the same session as the calling
			process.

SEE ALSO
     setpgid(2), setsid(2), tcgetpgrp(3)

STANDARDS
     The tcsetpgrp() function is expected to be	compliant with the IEEE	Std
     1003.1-1988 ("POSIX.1") specification.

FreeBSD	13.0			 March 7, 2017			  FreeBSD 13.0

NAME | SYNOPSIS | DESCRIPTION | ERRORS | SEE ALSO | STANDARDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=tcsetpgrp&sektion=3&manpath=OpenBSD+6.9>

home | help