fork_exec prog args ~stdin ~stdout ~stderr ~setuid ~setgid
forks a new process that executes the program
in file prog
, with arguments args
. The pid of the new
process is returned immediately; the new process executes
concurrently with the current process.
The function raises EPERM if when using set{gid,uid}
and the user id is
not 0.
The standard input and outputs of the new process are connected
to the descriptors stdin
, stdout
and stderr
.
The close_on_exec flag is cleared from stderr
stdout
and stdin
so it's
safe to pass in fds with close_on_exec
set.
true
than we use PATH to find the process to exec.
setuid
and setgid
do not do a full id drop (e.g.: they save the id in
saved id) when the user does not have the privileges required to setuid to
anyone.: int | ; | (* | file system block size | *) | |
: int | ; | (* | fragment size | *) | |
: int | ; | (* | size of fs in frsize units | *) | |
: int | ; | (* | # free blocks | *) | |
: int | ; | (* | # free blocks for non-root | *) | |
: int | ; | (* | # inodes | *) | |
: int | ; | (* | # free inodes | *) | |
: int | ; | (* | # free inodes for non-root | *) | |
: int | ; | (* | file system ID | *) | |
: int | ; | (* | mount flags | *) | |
: int | ; | (* | maximum filename length | *) |
get file system statistics
The CIDR module moved into Core.Unix