blob: 52c459b19f4c69b1ac2129d878ac22ccb813875f [file] [log] [blame]
sewardjde4a1d02002-03-22 01:27:54 +00001
2/*--------------------------------------------------------------------*/
3/*--- A header file for making sense of syscalls. Unsafe in the ---*/
4/*--- sense that we don't call any functions mentioned herein. ---*/
5/*--- vg_unsafe.h ---*/
6/*--------------------------------------------------------------------*/
7
8/*
9 This file is part of Valgrind, an x86 protected-mode emulator
10 designed for debugging and profiling binaries on x86-Unixes.
11
12 Copyright (C) 2000-2002 Julian Seward
13 jseward@acm.org
14 Julian_Seward@muraroa.demon.co.uk
15
16 This program is free software; you can redistribute it and/or
17 modify it under the terms of the GNU General Public License as
18 published by the Free Software Foundation; either version 2 of the
19 License, or (at your option) any later version.
20
21 This program is distributed in the hope that it will be useful, but
22 WITHOUT ANY WARRANTY; without even the implied warranty of
23 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
24 General Public License for more details.
25
26 You should have received a copy of the GNU General Public License
27 along with this program; if not, write to the Free Software
28 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
29 02111-1307, USA.
30
31 The GNU General Public License is contained in the file LICENSE.
32*/
33
34
35/* These includes are only used for making sense of the args for
36 system calls. */
37#include <asm/unistd.h> /* for system call numbers */
38#include <sys/mman.h> /* for PROT_* */
39#include <sys/utsname.h> /* for uname */
40#include <sys/time.h> /* for struct timeval & struct timezone */
41#include <linux/net.h> /* for the SYS_* constants */
42#include <sys/resource.h> /* for struct rlimit */
43#include <linux/shm.h> /* for struct shmid_ds & struct ipc_perm */
44#include <sys/socket.h> /* for struct msghdr */
45#include <sys/un.h> /* for sockaddr_un */
46#include <net/if.h> /* for struct ifreq et al */
47#include <net/if_arp.h> /* for struct arpreq */
48#include <net/route.h> /* for struct rtentry */
sewardj5b9e3502002-03-29 04:35:08 +000049#include <asm/ipc.h> /* for struct ipc_kludge */
50#include <linux/msg.h> /* for struct msgbuf */
51#include <linux/sem.h> /* for struct sembuf */
sewardjde4a1d02002-03-22 01:27:54 +000052
53#include <linux/isdn.h> /* for ISDN ioctls */
54#include <linux/module.h> /* for struct module */
55#include <scsi/sg.h> /* for the SG_* ioctls */
56#include <sched.h> /* for struct sched_param */
57#include <linux/sysctl.h> /* for struct __sysctl_args */
58
59
60#define __USE_LARGEFILE64
61#include <sys/stat.h> /* for struct stat */
62#undef __USE_LARGEFILE64
63
64#include <asm/ioctls.h> /* for stuff for dealing with ioctl :( */
65#include <sys/soundcard.h> /* for various soundcard ioctl constants :( */
66
67#include <termios.h>
68#include <pty.h>
69
70/* 2.2 stuff ... */
71#include <sys/uio.h>
72
73/* Both */
74#include <utime.h>
75#include <sys/times.h> /* for struct tms */
76
77/* 2.0 at least, for gid_t and loff_t */
78#include <sys/types.h>
79
80#include <sys/statfs.h>
81
82#include <sys/sysinfo.h>
83
84#include <sys/poll.h>
85
86
87/*--------------------------------------------------------------------*/
88/*--- end vg_unsafe.h ---*/
89/*--------------------------------------------------------------------*/