3.4.6-1 shm_open always returns -1, errno EINVAL

Matthew Rickard rickard.matt@gmail.com
Sun Mar 12 06:44:43 GMT 2023

Hi all,

Cygwin 3.4.6-1 shm_open seems to reject all calls, returning  the value 
-1 and setting errno to 22 EINVAL.

For example, this program:

#include <sys/mman.h>
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>

int main() {
   int res = shm_open("123", O_CREAT | O_RDWR, 0666);
   int error = errno;
   printf("res=%d errno=%d\n", res, errno);
   if (error == EINVAL)
     printf("That's EINVAL\n");
   return 0;


$ gcc -Og -o tiny tiny.c; ./tiny
res=-1 errno=22

Not sure if relevant, but I am currently running cygserver, with a 
default config.

More information about the Cygwin mailing list