PXFSETPGID(3F) Last changed: 1-6-98
NAME
PXFSETPGID - Set process group ID
SYNOPSIS
SUBROUTINE PXFSETPGID (ipid, ipgid, ierror)
INTEGER ipid, ipgid, ierror
IMPLEMENTATION
UNICOS, UNICOS/mk, and IRIX systems
STANDARDS
IEEE standard interface for FORTRAN 77
DESCRIPTION
On IRIX systems, this routine is in libfortran.so which is linked by
default when compiling programs with the MIPSpro 7 Fortran 90 compiler
or when compiling programs with the -craylibs option to the MIPSpro
7.2 F77 compiler.
The PXFSETPGID routine uses the setpgid(2) system call to change the
process group ID of the process with a process ID of ipid. The
process group ID may be for an existing process group or a new process
group which will be created. Upon sucessful completion, the process
with a process ID of ipid will have its process group ID set to ipgid.
When using the CF90 compiler or MIPSpro 7 Fortran 90 compiler on
UNICOS, UNICOS/mk, or IRIX systems, all arguments must be of default
kind unless documented otherwise. On UNICOS and UNICOS/mk, default
kind is KIND=8 for integer, real, complex, and logical arguments; on
IRIX, the default kind is KIND=4.
The following is a list of valid arguments for this routine:
ipid An input integer variable that contains the process ID of
the process to change the process group ID. As a special
case, if ipid is zero the process ID of the calling process
is used.
ipgid An input integer variable containing the new process group
ID.
ierror An output integer variable that contains zero if PXFSETPGID
was successful or nonzero if PXFSETPGID was not successful.
PXFSETPGID may return any of the following error values:
EACCES If the value of ipid matches the process ID of a child
process of the calling process and the child process has
successfully executed one of the PXFEXEC(3F) functions.
EINVAL If the value of ipgid is less than 0 or is not a value
supported by the implementation.
EPERM If the process indicated by ipid is a session leader; if the
value of ipid is valid but 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; or if the value
of ipgid does not match the process ID of the process
indicated by pid and no process with a process group ID
exists that matches the value of ipgid in the same session
as the calling process.
ESRCH If the value of ipid does not match the ID of the calling
process or of a child of the calling process.
EXAMPLES
program pxftest
integer ipid, ierror
CALL PXFGETPID(ipid, ierror)
if (ierror .ne. 0) then
print *,'FAILED: PXFGETPID call with error = ',ierror
else
CALL PXFSETPGID(ipid, ipid, ierror)
if (ierror .eq. 0) then
print *,'PASSED: PXFSETPGID normal test'
else
print *,'FAILED: PXFSETPGID normal test with error = ',ierror
endif
endif
end
SEE ALSOsetpgid(2)
Application Programmer's Library Reference Manual, publication SR-
2165, for the printed version of this man page.