Mail Archives: cygwin/1997/01/24/02:41:26
Geoffrey, consider this a bug report, which is why I'm also directly
cc'ing you.
On Windows 95, if an executable calling fork() lives in a
network-mounted directory, the fork() fails with errno = 13 (EACCES -
Permission denied).
Here's a simple example. If you put this executable on a network-mounted
drive, it will fail. If it is on a local drive, it will succeed:
#include <errno.h>
main(int argc, char **argv)
{
int pid;
printf("In %d\n", getpid());
if (argc == 1) {
if ((pid = fork()) == 0) {
/* child */
execl(argv[0], argv[0], "dummy", 0);
printf("execl of %s failed\n", argv[0]);
} else if (pid == -1) {
printf("fork failed - errno = %d\n", errno);
} else {
int *x;
printf("In parent of %d\n", pid);
wait(&x);
}
}
}
Is there any workaround for this at all? I've been unable to find any
(even specifying the full path fails).
Thanks,
--
Shankar Unni shankar AT chromatic DOT com
Chromatic Research (408) 752-9488
-
For help on using this list, send a message to
"gnu-win32-request AT cygnus DOT com" with one line of text: "help".
- Raw text -