Commit Graph

32 Commits

Author SHA1 Message Date
manu
66fc5fb621 Empty shell for Darwin audit API 2004-07-28 22:24:06 +00:00
manu
bc620e30a6 Added the utrace system call 2004-07-28 21:30:00 +00:00
manu
09ee1c0349 The entropy collection sysctl returns the number of record and not the
copied data size.
2004-07-27 20:41:48 +00:00
manu
a380f938d4 Added kern.debug.getentropy sysctl 2004-07-25 07:54:54 +00:00
manu
941b113c0e Add the sysctl that provides interface enumeration (used by getifaddrs()
library call). Programs such as ifconfig or XFree86 4.4 XDarwin use it.
The emulation is not complete, as ifconfig is not able to display inet6
addresses correctly.
2004-07-21 01:37:57 +00:00
manu
aab7e2ab6f Useful debug since ktrace doesn't show sysctl arg array. 2004-07-04 20:30:14 +00:00
atatat
190adb15c3 Sysctl descriptions under emul subtree. 2004-05-25 04:29:08 +00:00
atatat
3f800573aa Be consistent about using sysc_init_field() 2004-04-25 05:54:38 +00:00
christos
a97d60211a fix undefined variable. 2004-03-29 21:43:28 +00:00
atatat
19af35fd0d Tango on sysctl_createv() and flags. The flags have all been renamed,
and sysctl_createv() now uses more arguments.
2004-03-24 15:34:46 +00:00
atatat
4604fb0abe Remove useless comment 2004-01-17 03:30:14 +00:00
manu
219b24a068 Chand emul.darwin MIB to fit best current practice.
emul.darwin.init.pid instead of emul.darwin.init_pid, and so on.

This breaks backward compatibility with the pre-dynamic sysctl(8) for
emul.darwin, but it has never been available in a formal release, so
it should be alright.
2003-12-26 16:00:53 +00:00
atatat
13f8d2ce5f Dynamic sysctl.
Gone are the old kern_sysctl(), cpu_sysctl(), hw_sysctl(),
vfs_sysctl(), etc, routines, along with sysctl_int() et al.  Now all
nodes are registered with the tree, and nodes can be added (or
removed) easily, and I/O to and from the tree is handled generically.

Since the nodes are registered with the tree, the mapping from name to
number (and back again) can now be discovered, instead of having to be
hard coded.  Adding new nodes to the tree is likewise much simpler --
the new infrastructure handles almost all the work for simple types,
and just about anything else can be done with a small helper function.

All existing nodes are where they were before (numerically speaking),
so all existing consumers of sysctl information should notice no
difference.

PS - I'm sorry, but there's a distinct lack of documentation at the
moment.  I'm working on sysctl(3/8/9) right now, and I promise to
watch out for buses.
2003-12-04 19:38:21 +00:00
manu
c36ad94b40 Add HW_PAGE_SIZE sysctl 2003-11-22 23:26:52 +00:00
christos
4bec333ae4 Fix uninitialized variable warnings 2003-10-25 18:37:49 +00:00
manu
9972873c7d Handle mouseup and mousdown events
Add three sysctl to choose wsdisplay unit and screen and wsmux that
ioframebuffer and iohidsystem will use.
2003-09-14 09:48:42 +00:00
jdolecek
a034152027 move dupfd from struct proc to struct lwp - it's per-LWP, not per-process; we
use curlwp where the lwp is not directly available, i.e. in device open
routines

briefly discussed on tech-kern
2003-09-13 08:32:10 +00:00
manu
8e53685a40 Fix the build by removing machine dependent stuff from darwin_sysctl.h (it
is included by userland build, and it included darwin_machdep.h, which is
unavaillable for most arches)
2003-09-07 08:05:47 +00:00
manu
7dda8d2416 KERN_PROC and KERN_PROCARGS sysctl. This helps ps working (it's not
yet perfect)
2003-09-06 23:54:47 +00:00
manu
90c0f71598 Add HW_MACHINE sysctl 2003-07-10 14:47:34 +00:00
fvdl
d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr
960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
manu
cb771e3c64 Make the beast build again (but it is still probably broken) 2003-01-24 21:37:01 +00:00
christos
498aa03f2a lwp conversion 2003-01-22 17:47:03 +00:00
manu
7f468ee029 Bug fixes for the fake pid hack.
WindowServer is now able to talk with mach_init to exchange bootstrap
information.
2003-01-03 14:47:27 +00:00
manu
459d0be3a4 More hacks to make Darwin's /sbin/init happy with its pid. 2002-12-28 00:15:23 +00:00
manu
3b815ab820 We must also return pid 2 when mach_init asks for its pid after it forked init. 2002-12-27 19:54:54 +00:00
manu
41bfbd28fe On Darwin, mach_init is the system bootstrap process. It is responsible
for forking the traditional UNIX init(8) and it does the Mach port naming
service. We need mach_init for the naming service, but unfortunately, it
will only act as such if its PID is 1. We introduce a sysctl
(emul.darwin.init_pid) to fool a given process into thinking its PID is 1.
That way we can get mach_init into behaving as the name server.

Typical use:
/sbin/sysctl -w emul.darwin.init_pid=$$ ; exec /emul/darwin/sbin/mach_init
2002-12-24 12:15:45 +00:00
manu
3b0f6d78ed Introduce BSD system calls with alternate patch checking (in /emul) in
compat/common, so that they can be shared by several emulations, and use
them for Darwin.

This removes the ugly dependance on FreeBSD freebsd_file.c for COMPAT_DARWIN
2002-12-08 00:50:23 +00:00
manu
f47b85037b Added a few kern sysctl which are the same on Darwin and NetBSD. 2002-11-29 13:18:09 +00:00
manu
de5d0b9706 Remove __P 2002-11-28 21:23:54 +00:00
manu
1ee1245718 Add support for two Darwin sysctl 2002-11-23 02:18:53 +00:00