1 /* $NetBSD: irix_sysctl.c,v 1.6 2008/04/28 20:23:42 martin Exp $ */
2
3 /*-
4 * Copyright (c) 2003 The NetBSD Foundation, Inc.
5 * All rights reserved.
6 *
7 * This code is derived from software contributed to The NetBSD Foundation
8 * by Andrew Brown.
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 *
19 * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
20 * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
21 * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
22 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
23 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
24 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
26 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
27 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
28 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
29 * POSSIBILITY OF SUCH DAMAGE.
30 */
31
32 #include <sys/cdefs.h>
33 __KERNEL_RCSID(0, "$NetBSD: irix_sysctl.c,v 1.6 2008/04/28 20:23:42 martin Exp $");
34
35 #include <sys/param.h>
36 #include <sys/signal.h>
37 #include <sys/sysctl.h>
38
39 #include <compat/irix/irix_sysctl.h>
40
41 SYSCTL_SETUP(sysctl_emul_irix_setup, "sysctl emul.irix subtree setup")
42 {
43
44 sysctl_createv(clog, 0, NULL, NULL,
45 CTLFLAG_PERMANENT,
46 CTLTYPE_NODE, "emul", NULL,
47 NULL, 0, NULL, 0,
48 CTL_EMUL, CTL_EOL);
49 sysctl_createv(clog, 0, NULL, NULL,
50 CTLFLAG_PERMANENT,
51 CTLTYPE_NODE, "irix",
52 SYSCTL_DESCR("IRIX emulation settings"),
53 NULL, 0, NULL, 0,
54 CTL_EMUL, EMUL_IRIX, CTL_EOL);
55 sysctl_createv(clog, 0, NULL, NULL,
56 CTLFLAG_PERMANENT,
57 CTLTYPE_NODE, "kern",
58 SYSCTL_DESCR("IRIX kernel emulation settings"),
59 NULL, 0, NULL, 0,
60 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN, CTL_EOL);
61
62 sysctl_createv(clog, 0, NULL, NULL,
63 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
64 CTLTYPE_STRING, "vendor",
65 SYSCTL_DESCR("Emulated IRIX vendor name"),
66 NULL, 0, irix_si_vendor, 128,
67 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
68 EMUL_IRIX_KERN_VENDOR, CTL_EOL);
69 sysctl_createv(clog, 0, NULL, NULL,
70 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
71 CTLTYPE_STRING, "osprovider",
72 SYSCTL_DESCR("Emulated IRIX system manufacturer"),
73 NULL, 0, irix_si_os_provider, 128,
74 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
75 EMUL_IRIX_KERN_OSPROVIDER, CTL_EOL);
76 sysctl_createv(clog, 0, NULL, NULL,
77 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
78 CTLTYPE_STRING, "osname",
79 SYSCTL_DESCR("Emulated IRIX operating system name"),
80 NULL, 0, irix_si_os_name, 128,
81 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
82 EMUL_IRIX_KERN_OSNAME, CTL_EOL);
83 sysctl_createv(clog, 0, NULL, NULL,
84 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
85 CTLTYPE_STRING, "hwname",
86 SYSCTL_DESCR("Emulated IRIX system type"),
87 NULL, 0, irix_si_hw_name, 128,
88 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
89 EMUL_IRIX_KERN_HWNAME, CTL_EOL);
90 sysctl_createv(clog, 0, NULL, NULL,
91 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
92 CTLTYPE_STRING, "osrelmaj",
93 SYSCTL_DESCR("Emulated IRIX major release number"),
94 NULL, 0, irix_si_osrel_maj, 128,
95 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
96 EMUL_IRIX_KERN_OSRELMAJ, CTL_EOL);
97 sysctl_createv(clog, 0, NULL, NULL,
98 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
99 CTLTYPE_STRING, "osrelmin",
100 SYSCTL_DESCR("Emulated IRIX minor release number"),
101 NULL, 0, irix_si_osrel_min, 128,
102 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
103 EMUL_IRIX_KERN_OSRELMIN, CTL_EOL);
104 sysctl_createv(clog, 0, NULL, NULL,
105 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
106 CTLTYPE_STRING, "osrelpatch",
107 SYSCTL_DESCR("Emulated IRIX patch level"),
108 NULL, 0, irix_si_osrel_patch, 128,
109 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
110 EMUL_IRIX_KERN_OSRELPATCH, CTL_EOL);
111 sysctl_createv(clog, 0, NULL, NULL,
112 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
113 CTLTYPE_STRING, "processor",
114 SYSCTL_DESCR("Emulated IRIX processor type"),
115 NULL, 0, irix_si_processors, 128,
116 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
117 EMUL_IRIX_KERN_PROCESSOR, CTL_EOL);
118 sysctl_createv(clog, 0, NULL, NULL,
119 CTLFLAG_PERMANENT|CTLFLAG_READWRITE,
120 CTLTYPE_STRING, "version",
121 SYSCTL_DESCR("Emulated IRIX version number"),
122 NULL, 0, irix_si_version, 128,
123 CTL_EMUL, EMUL_IRIX, EMUL_IRIX_KERN,
124 EMUL_IRIX_KERN_VERSION, CTL_EOL);
125 }
Cache object: 5c2d57ab74571646188e99866c2780d3
|