/* Check error message for invalid sysctl call. #xerror: #output: Unimplemented _sysctl syscall *\n #output: program stopped with signal 4 (*).\n #progos: linux */ #include #include #include #include #include #include int main (void) { static int sysctl_args[] = { 99, 99 }; size_t x = 8; struct __sysctl_args { int *name; int nlen; void *oldval; size_t *oldlenp; void *newval; size_t newlen; unsigned long __unused[4]; } scargs = { sysctl_args, sizeof (sysctl_args) / sizeof (sysctl_args[0]), (void *) -1, &x, NULL, 0 }; int err = syscall (SYS__sysctl, &scargs); if (err == -1 && errno == ENOSYS) printf ("ENOSYS\n"); printf ("xyzzy\n"); exit (0); }