check_openpf1.c

来自「xen虚拟机源代码安装包」· C语言 代码 · 共 39 行

C
39
字号
/* Check that --sysroot is applied to open(2).#sim: --sysroot=@exedir@   We assume, with EXE being the name of the executable:   - The simulator executes with cwd the same directory where the executable     is located (so argv[0] contains a plain filename without directory     components).   - There's no /EXE on the host file system.  */#include <stdio.h>#include <stdlib.h>#include <string.h>#include <errno.h>int main (int argc, char *argv[]){  char *fnam = argv[0];  FILE *f;  if (argv[0][0] != '/')    {      fnam = malloc (strlen (argv[0]) + 2);      if (fnam == NULL)	abort ();      strcpy (fnam, "/");      strcat (fnam, argv[0]);    }  f = fopen (fnam, "rb");  if (f == NULL)    abort ();  close (f);  /* Cover another execution path.  */  if (fopen ("/nonexistent", "rb") != NULL      || errno != ENOENT)    abort ();  printf ("pass\n");  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?