#include #include #include #include #include "tests/sys_mman.h" #include #include #include /* Test case supplied by Vasile Floroiu. */ #define DO(cmd) printf(#cmd "; status: %s\n", strerror(errno)) #define SZ 48216 + 1024 int main() { int fd; fd = shm_open("/hw_mngr.c", (O_CREAT | O_EXCL | O_RDWR), (S_IREAD | S_IWRITE)); DO(shm_open()); { void *ptr; ftruncate(fd, SZ); DO(ftruncate(fd, SZ)); ptr = mmap(0, SZ, (PROT_READ | PROT_WRITE), MAP_SHARED, fd, 0); DO(mmap()); munmap(ptr, SZ); DO(munmap()); } shm_unlink("/hw_mngr.c"); DO(shm_unlink()); return 0; }