URL
https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk
Only display areas with differences |
Details |
Blame |
View Log
Rev 24 |
Rev 33 |
/* Check error message for invalid sysctl call.
|
/* Check error message for invalid sysctl call.
|
#xerror:
|
#xerror:
|
#output: Unimplemented _sysctl syscall *\n
|
#output: Unimplemented _sysctl syscall *\n
|
#output: program stopped with signal 4.\n
|
#output: program stopped with signal 4.\n
|
#notarget: cris*-*-elf
|
#notarget: cris*-*-elf
|
*/
|
*/
|
|
|
#include <unistd.h>
|
#include <unistd.h>
|
#include <sys/syscall.h>
|
#include <sys/syscall.h>
|
#include <errno.h>
|
#include <errno.h>
|
#include <stdio.h>
|
#include <stdio.h>
|
#include <stdlib.h>
|
#include <stdlib.h>
|
#include <errno.h>
|
#include <errno.h>
|
|
|
int main (void)
|
int main (void)
|
{
|
{
|
static int sysctl_args[] = { 99, 99 };
|
static int sysctl_args[] = { 99, 99 };
|
size_t x = 8;
|
size_t x = 8;
|
|
|
struct __sysctl_args {
|
struct __sysctl_args {
|
int *name;
|
int *name;
|
int nlen;
|
int nlen;
|
void *oldval;
|
void *oldval;
|
size_t *oldlenp;
|
size_t *oldlenp;
|
void *newval;
|
void *newval;
|
size_t newlen;
|
size_t newlen;
|
unsigned long __unused[4];
|
unsigned long __unused[4];
|
} scargs
|
} scargs
|
=
|
=
|
{
|
{
|
sysctl_args,
|
sysctl_args,
|
sizeof (sysctl_args) / sizeof (sysctl_args[0]),
|
sizeof (sysctl_args) / sizeof (sysctl_args[0]),
|
(void *) -1, &x, NULL, 0
|
(void *) -1, &x, NULL, 0
|
};
|
};
|
|
|
int err = syscall (SYS__sysctl, &scargs);
|
int err = syscall (SYS__sysctl, &scargs);
|
if (err == -1 && errno == ENOSYS)
|
if (err == -1 && errno == ENOSYS)
|
printf ("ENOSYS\n");
|
printf ("ENOSYS\n");
|
printf ("xyzzy\n");
|
printf ("xyzzy\n");
|
exit (0);
|
exit (0);
|
}
|
}
|
|
|
© copyright 1999-2024
OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.