TCSETPGRP(3)

명칭
tcsetpgrp - foreground processing 그룹 ID 의 설정

프로그램 라이브러리
libc

서식
<sys/types.h> <unistd.h> int tcsetpgrp(int fd, pid_t pgrp_id)

해설
처리가 제어하는 단말을 가지는 경우는, tcsetpgrp 함수는 그 단말 디바이스와 제휴한 foreground processing 그룹 ID 를 pgrp_id (으)로 설정합니다. fd 에 제휴한 단말 디바이스는, 호출 처리의 제어 단말이 아니면 안되어, 또 그 제어 단말은 그 호출측 처리의 세션에 현재 제휴하고 있지 않으면 안됩니다. pgrp_id 의 값은, 같은 세션에 있어서의 처리의 호출측 처리의 처리 그룹 ID 와 같지 않으면 안됩니다.

처리가 성공해 완료하면(자), tcsetpgrp (은)는 값 0 을 돌려줍니다.

에러
에러가 일어났을 경우는, tcsetpgrp (은)는 값 -1 을 돌려주어 에러를 나타내는 글로벌 변수 errno (을)를 다음과 같이 설정합니다：

[EBADF]
    인수 fd 하지만 유효한 파일 기술자가 아닙니다.

[EINVAL]
    무효인 pgrp_id 의 값이 지정되었습니다.

[ENOTTY]
    호출 처리가 제어 단말을 가지고 있지 않은지, 또는 fd 그리고 표현되는 파일이 제어 단말이 아닌지, 또는 제어 단말이 이미 호출해 처리의 세션에 결합되고 있지 않습니다.

[EPERM]
    인수 pgrp_id 하지만, 같은 세션에 있어서의 처리의 호출측 처리의 처리 그룹 ID 와 일치하지 않습니다.

참조
setpgid(2), setsid(2), tcgetpgrp(3)

표준
tcsetpgprp 함수는, p1003.1-88 표준에 적합하고 있는 것이라고 생각됩니다.