HardenedBSD/sys/i386/linux
Marcel Moolenaar c6dfea0ebd Add sysctl variables for the Linuxulator. These reside under `compat.linux' as
discussed on current.

The following variables are defined (for now):

    osname (defaults to "Linux")
        Allow users to change the name of the OS as returned by uname(2),
        specially added for all those Linux Netscape users and statistics
        maniacs :-) We now have what we all wanted!

    osrelease (defaults to "2.2.5")
        Allow users to change the version of the OS as returned by uname(2).
        Since -current supports glibc2.1 now, change the default to 2.2.5
        (was 2.0.36).

    oss_version (defaults to 198144 [0x030600])
        This one will be used by the OSS_GETVERSION ioctl (PR 12917) which I
        can commit now that we have the MIB. The default version number is the
        lowest version possible with the current 'encoding'.

A note about imprisoned processes (see jail(2)):
  These variables are copy-on-write (as suggested by phk). This means that
  imprisoned processes will use the system wide value unless it is written/set
  by the process. From that moment on, a copy local to the prison will be
  used.

A note about the implementation:
  I choose to add a single pointer to struct prison, because I didn't like the
  idea of changing struct prison every time I come up with a new variable. As
  a side effect, the extra storage is only needed when a variable is set from
  within the prison. This also minimizes kernel bloat when the Linuxulator is
  not used; both compiled in or as a module.

Reviewed by: bde (first version only) and phk
1999-08-27 19:47:41 +00:00
..
imgact_linux.c
linux_dummy.c Fix lingo: 'is not implemented or obsoleted' is not the same as 'is obsoleted 1999-08-25 13:17:05 +00:00
linux_file.c Fix bug in the fcntl syscall where 'arg' was not set properly. 1999-08-15 14:22:30 +00:00
linux_genassym.c
linux_ioctl.c Fix a bug in debug-printfs of struct linux_termios fields, where I forgot to 1999-08-17 10:27:55 +00:00
linux_ipc.c
linux_locore.s Use ALIGN_TEXT macro for alignment to avoid ambiguity. 1999-08-25 19:04:39 +00:00
linux_mib.c Add sysctl variables for the Linuxulator. These reside under `compat.linux' as 1999-08-27 19:47:41 +00:00
linux_mib.h Add sysctl variables for the Linuxulator. These reside under `compat.linux' as 1999-08-27 19:47:41 +00:00
linux_misc.c Add sysctl variables for the Linuxulator. These reside under `compat.linux' as 1999-08-27 19:47:41 +00:00
linux_proto.h Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always 1999-08-25 11:19:03 +00:00
linux_signal.c Implementation of linux_rt_sigaction and linux_rt_sigprocmask syscalls. Both 1999-08-14 17:28:46 +00:00
linux_socket.c
linux_stats.c Fix linux_newlstat in that it doesn't return the attributes of its containing 1999-08-25 15:23:54 +00:00
linux_syscall.h Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always 1999-08-25 11:19:03 +00:00
linux_sysent.c Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always 1999-08-25 11:19:03 +00:00
linux_sysvec.c
linux_util.c
linux_util.h
linux.h Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always 1999-08-25 11:19:03 +00:00
Makefile
syscalls.conf
syscalls.master Change all UNIMPL syscalls to STD and add them to linux_dummy. Now we always 1999-08-25 11:17:36 +00:00