xref: /netbsd/sys/compat/linux/common/linux_types.h (revision bf9ec67e)
1 /*	$NetBSD: linux_types.h,v 1.14 2002/04/03 17:13:32 christos Exp $	*/
2 
3 /*-
4  * Copyright (c) 1995, 1998 The NetBSD Foundation, Inc.
5  * All rights reserved.
6  *
7  * This code is derived from software contributed to The NetBSD Foundation
8  * by Frank van der Linden and Eric Haszlakiewicz.
9  *
10  * Redistribution and use in source and binary forms, with or without
11  * modification, are permitted provided that the following conditions
12  * are met:
13  * 1. Redistributions of source code must retain the above copyright
14  *    notice, this list of conditions and the following disclaimer.
15  * 2. Redistributions in binary form must reproduce the above copyright
16  *    notice, this list of conditions and the following disclaimer in the
17  *    documentation and/or other materials provided with the distribution.
18  * 3. All advertising materials mentioning features or use of this software
19  *    must display the following acknowledgement:
20  *	This product includes software developed by the NetBSD
21  *	Foundation, Inc. and its contributors.
22  * 4. Neither the name of The NetBSD Foundation nor the names of its
23  *    contributors may be used to endorse or promote products derived
24  *    from this software without specific prior written permission.
25  *
26  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
27  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
28  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
30  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36  * POSSIBILITY OF SUCH DAMAGE.
37  */
38 
39 #ifndef _LINUX_TYPES_H
40 #define _LINUX_TYPES_H
41 
42 #if defined(__i386__)
43 #include <compat/linux/arch/i386/linux_types.h>
44 #elif defined(__alpha__)
45 #include <compat/linux/arch/alpha/linux_types.h>
46 #elif defined(__powerpc__)
47 #include <compat/linux/arch/powerpc/linux_types.h>
48 #elif defined(__arm__)
49 #include <compat/linux/arch/arm/linux_types.h>
50 /*
51  * The rest are not written yet:
52  */
53 #elif defined(__m68k__)
54 #include <compat/linux/arch/m68k/linux_types.h>
55 #elif defined(__mips__)
56 #include <compat/linux/arch/mips/linux_types.h>
57 #else
58 typedef unsigned long linux_clock_t;
59 typedef unsigned long linux_time_t;
60 #endif
61 
62 /*
63  * Structure for uname(2)
64  */
65 struct linux_utsname {
66 	char l_sysname[65];
67 	char l_nodename[65];
68 	char l_release[65];
69 	char l_version[65];
70 	char l_machine[65];
71 	char l_domainname[65];
72 };
73 
74 extern char linux_sysname[];
75 extern char linux_release[];
76 extern char linux_version[];
77 
78 struct linux_tms {
79 	linux_clock_t ltms_utime;
80 	linux_clock_t ltms_stime;
81 	linux_clock_t ltms_cutime;
82 	linux_clock_t ltms_cstime;
83 };
84 
85 struct linux_utimbuf {
86 	linux_time_t l_actime;
87 	linux_time_t l_modtime;
88 };
89 
90 struct linux___sysctl {
91 	int          *name;
92 	int           nlen;
93 	void         *oldval;
94 	size_t       *oldlenp;
95 	void         *newval;
96 	size_t        newlen;
97 	unsigned long __unused[4];
98 };
99 
100 #include <compat/linux/common/linux_siginfo.h>
101 
102 #endif /* !_LINUX_TYPES_H */
103