1*4b169a6bSchristos /* 2*4b169a6bSchristos #progos: linux 3*4b169a6bSchristos */ 4*4b169a6bSchristos 5*4b169a6bSchristos #include <sys/types.h> 6*4b169a6bSchristos #include <sys/stat.h> 7*4b169a6bSchristos #include <unistd.h> 8*4b169a6bSchristos #include <stdio.h> 9*4b169a6bSchristos #include <errno.h> 10*4b169a6bSchristos #include <stdlib.h> 11*4b169a6bSchristos main(void)12*4b169a6bSchristosint main (void) 13*4b169a6bSchristos { 14*4b169a6bSchristos struct stat buf; 15*4b169a6bSchristos 16*4b169a6bSchristos /* From Linux, we get EFAULT. The simulator sends us EINVAL. */ 17*4b169a6bSchristos if (lstat (NULL, &buf) != -1 18*4b169a6bSchristos || (errno != EINVAL && errno != EFAULT)) 19*4b169a6bSchristos { 20*4b169a6bSchristos perror ("lstat 1"); 21*4b169a6bSchristos abort (); 22*4b169a6bSchristos } 23*4b169a6bSchristos 24*4b169a6bSchristos printf ("pass\n"); 25*4b169a6bSchristos exit (0); 26*4b169a6bSchristos } 27