#include <stdio.h>
// #include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <sys/stat.h>


int main(int argc, char **argv)
{
   struct stat st;
   static char fname[] = "./pipe";

   unlink(fname);

   mkfifo(fname, 0644);

   stat(fname, &st);
   printf("trying to set mode 04775 ");
   chmod(fname, 04775);
   stat(fname, &st);
   printf(" - result %o\n", st.st_mode);

   printf("trying to set mode 02777 ");
   chmod(fname, 02777);
   stat(fname, &st);
   printf(" - result %o\n", st.st_mode);

   unlink(fname);

   return 0;
}
