NAME
syscall - indirect system call
SYNOPSIS
#define _BSD_SOURCE /* or _GNU_SOURCE or _SVID_SOURCE */
#include <unistd.h>
#include <sys/syscall.h> /* For SYS_xxx definitions */
I int syscall(int number , ...);
DESCRIPTION
R syscall ()
performs the system call whose assembly language
interface has the specified
number
with the specified arguments.
Symbolic constants for system calls can be found in the header file
R <sys/syscall.h> .
RETURN VALUE
The return value is defined by the system call being invoked.
In general, a 0 return value indicates success.
A -1 return value indicates an error,
and an error code is stored in
R errno .
NOTES
R syscall ()
first appeared in
4BSD.
EXAMPLE
#define _GNU_SOURCE
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/types.h>
int
main(int argc, char *argv[])
{
pid_t tid;
tid = (long) syscall(SYS_gettid);
}