childpid = fork(); /* fork returns >= 0 on success */ if (childpid >= 0) { /* fork returns 0 to child */ if (childpid == 0) { if (execve("/bin/ls", newargv, envp) == -1) { printf("*** ERROR: execve()\n"); exit(1); } pid = waitpid(childpid, &status, 0); } /* fork returns child pid to parents */ else { } }