]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/log
FreeBSD/FreeBSD.git
22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Thu, 1 Aug 2002 01:18:42 +0000 (01:18 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Authorize the creation of UNIX domain sockets in the file system
namespace via an appropriate invocation a MAC framework entry
point.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoWhen invoking NDINIT() in preparation for CREATE, set SAVENAME since
rwatson [Thu, 1 Aug 2002 01:16:22 +0000 (01:16 +0000)]
When invoking NDINIT() in preparation for CREATE, set SAVENAME since
we'll use nd.ni_cnp later.

Submitted by: green
Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Thu, 1 Aug 2002 01:09:54 +0000 (01:09 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument ctty driver invocations of various vnode operations on the
terminal controlling tty to perform appropriate MAC framework
authorization checks.

Note: VOP_IOCTL() on the ctty appears to be authorized using NOCRED in
the existing code rather than td->td_ucred.  Why?

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Thu, 1 Aug 2002 01:07:03 +0000 (01:07 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the ktrace write operation so that it invokes the MAC
framework's vnode write authorization check.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Thu, 1 Aug 2002 01:04:16 +0000 (01:04 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the kernel ACL retrieval and modification system calls
to invoke MAC framework entry points to authorize these operations.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoModify the cache handling code to assume 2 virtual colours, which is much
jake [Thu, 1 Aug 2002 00:16:22 +0000 (00:16 +0000)]
Modify the cache handling code to assume 2 virtual colours, which is much
simpler and easier to get right.  Add comments.  Add more statistic
gathering on cacheable and uncacheable mappings.

22 years agoAdd some statistic gathering for cache flushes.
jake [Wed, 31 Jul 2002 23:39:50 +0000 (23:39 +0000)]
Add some statistic gathering for cache flushes.

22 years agoForgot this one: properly initialize an address set when the set
luigi [Wed, 31 Jul 2002 22:42:08 +0000 (22:42 +0000)]
Forgot this one: properly initialize an address set when the set
size is less than 32 bits (/28 mask or more).
Also remove a debugging fprintf().

22 years agoTwo bugfixes:
luigi [Wed, 31 Jul 2002 22:31:47 +0000 (22:31 +0000)]
Two bugfixes:
  + the header file contains two different opcodes (O_IPOPTS and O_IPOPT)
    for what is the same thing, and sure enough i used one in the kernel
    and the other one in userland. Be consistent!

  + "keep-state" and "limit" must be the last match pattern in a rule,
    so no matter how you enter them move them to the end of the rule.

22 years agoThe ppp and tunnel modules now rely on opt_mac.h. Missed in a previous
rwatson [Wed, 31 Jul 2002 20:19:28 +0000 (20:19 +0000)]
The ppp and tunnel modules now rely on opt_mac.h.  Missed in a previous
commit.

Submitted by: Anders Andersson <anders@hack.org>

22 years agoStash various networking paramters in the environment for the kernel
jake [Wed, 31 Jul 2002 20:17:06 +0000 (20:17 +0000)]
Stash various networking paramters in the environment for the kernel
to pick up, ala pxe.

22 years agoNew release note: SA-02:33.
bmah [Wed, 31 Jul 2002 20:09:07 +0000 (20:09 +0000)]
New release note:  SA-02:33.

22 years agoAdd 16-bit before bus to keep the words card and bus apart.
imp [Wed, 31 Jul 2002 20:01:11 +0000 (20:01 +0000)]
Add 16-bit before bus to keep the words card and bus apart.

22 years agoMake sure to set both sets of registers which control the RX and TX buffer
silby [Wed, 31 Jul 2002 19:58:36 +0000 (19:58 +0000)]
Make sure to set both sets of registers which control the RX and TX buffer
sizes.  Previously, the end result was at the mercy of the card's default
setting.  This change will reduce the number of buffer underruns for
some users.

PR: kern/37929
Submitted by: Thomas Nystrom <thn@saeab.se>
MFC after: 7 days

22 years ago- Split the unaligned access check flags out of md_flags in struct mdthread
jhb [Wed, 31 Jul 2002 19:37:03 +0000 (19:37 +0000)]
- Split the unaligned access check flags out of md_flags in struct mdthread
  and move them into md_uac in struct mdproc.  mdproc is protected by the
  proc lock.  md_flags now is only ever modified by the current thread, so
  it doesn't need a lock.
- Rename the constants for all the per-thread MD flags to use MDTD_*
  instead of MDP_*.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 19:06:49 +0000 (19:06 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the TCP socket code for packet generation and delivery:
label outgoing mbufs with the label of the socket, and check socket and
mbuf labels before permitting delivery to a socket.  Assign labels
to newly accepted connections when the syncache/cookie code has done
its business.  Also set peer labels as convenient.  Currently,
MAC policies cannot influence the PCB matching algorithm, so cannot
implement polyinstantiation.  Note that there is at least one case
where a PCB is not available due to the TCP packet not being associated
with any socket, so we don't label in that case, but need to handle
it in a special manner.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years ago o Setting PG_MAPPED and PG_WRITEABLE on pages that are mapped and unmapped
alc [Wed, 31 Jul 2002 18:46:47 +0000 (18:46 +0000)]
 o Setting PG_MAPPED and PG_WRITEABLE on pages that are mapped and unmapped
   by pmap_qenter() and pmap_qremove() is pointless.  In fact, it probably
   leads to unnecessary pmap_page_protect() calls if one of these pages is
   paged out after unwiring.

Note: setting PG_MAPPED asserts that the page's pv list may be
non-empty.  Since checking the status of the page's pv list isn't any
harder than checking this flag, the flag should probably be eliminated.
Alternatively, PG_MAPPED could be set by pmap_enter() exclusively
rather than various places throughout the kernel.

22 years agoAlso print the serial # on atacontrol cap ....
sos [Wed, 31 Jul 2002 18:30:38 +0000 (18:30 +0000)]
Also print the serial # on atacontrol cap ....

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 18:30:34 +0000 (18:30 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the raw IP socket code for packet generation and delivery:
label outgoing mbufs with the label of the socket, and check the
socket and mbuf labels before permitting delivery to a socket,
permitting MAC policies to selectively allow delivery of raw IP mbufs
to various raw IP sockets that may be open.  Restructure the policy
checking code to compose IPsec and MAC results in a more readable
manner.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoByteswap the serial #
sos [Wed, 31 Jul 2002 18:29:34 +0000 (18:29 +0000)]
Byteswap the serial #

22 years agoFinally first shot at a driver for the Promise SuperTrak SX6000 ATA RAID
sos [Wed, 31 Jul 2002 18:27:30 +0000 (18:27 +0000)]
Finally first shot at a driver for the Promise SuperTrak SX6000 ATA RAID
controller. Some testing has already been done, but its still greenish.
RAID's has to be setup via the BIOS on the SuperTrak, but all RAID
types are supported by the driver. The SuperTrak rebuilds failed arrays
on the fly and supports spare disks etc etc...

Add "device     pst" to your config file to use.

As usual bugsreports, suggestions etc are welcome...

Development sponsored by:       Advanis
Hardware donated by:            Promise Inc.

22 years agoFinally first shot at a driver for the Promise SuperTrak SX6000 ATA RAID
sos [Wed, 31 Jul 2002 18:26:30 +0000 (18:26 +0000)]
Finally first shot at a driver for the Promise SuperTrak SX6000 ATA RAID
controller. Some testing has already been done, but its still greenish.
RAID's has to be setup via the BIOS on the SuperTrak, but all RAID
types are supported by the driver. The SuperTrak rebuilds failed arrays
on the fly and supports spare disks etc etc...

Add "device pst" to your config file to use.

As usual bugsreports, suggestions etc are welcome...

Development sponsored by: Advanis
Hardware donated by: Promise Inc.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 18:07:45 +0000 (18:07 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Provide implementations of some sample operating system security
policy extensions.  These are not yet hooked up to the build as
other infrastructure is still being committed.  Most of these
work fairly well and are in daily use in our development and (limited)
production environments.  Some are not yet in their final form,
and a number of the labeled policies waste a lot of kernel memory
and will be fixed over the next month or so to be more conservative.
They do give good examples of the flexibility of the MAC framework
for implementing a variety of security policies.

mac_biba: Implementation of fixed-label Biba integrity policy,
similar to those found in a number of commercial
trusted operating systems.  All subjects and objects
are assigned integrity levels, and information flow
is controlled based on a read-up, write-down
policy.  Currently, purely hierarchal.

mac_bsdextended: Implementation of a "file system firewall",
which allows the administrator to specify a series
of rules limiting access by users and groups to
objects owned by other users and groups.  This
policy is unlabeled, relying on existing system
security labeling (file permissions/ownership,
process credentials).

mac_ifoff: Secure interface silencing.  Special-purpose module
to limit inappropriate out-going network traffic
for silent monitoring scenarios.  Prevents the
various network stacks from generating any output
despite an interface being live for reception.

mac_mls: Implementation of fixed-label Multi-Level Security
confidentiality policy, similar to those found in
a number of commercial trusted operating systems.
All subjects and objects are assigned confidentiality
levels, and information flow is controlled based on
a write-up, read-down policy.  Currently, purely
hiearchal, although non-hierarchal support is in the
works.

mac_none: Policy module implementing all MAC policy entry
points with empty stubs.  A good place to start if
you want all the prototypes types in for you, and
don't mind a bit of pruning.  Can be loaded, but
has no access control impact.  Useful also for
performance measurements.

mac_seeotheruids: Policy module implementing a security service
similar to security.bsd.seeotheruids, only a slightly
more detailed policy involving exceptions for members
of specific groups, etc.  This policy is unlabeled,
relying on existing system security labeling
(process credentials).

mac_test: Policy module implementing basic sanity tests for
label handling.  Attempts to ensure that labels are
not freed multiple times, etc, etc.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 17:21:01 +0000 (17:21 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

When fragmenting an IP datagram, invoke an appropriate MAC entry
point so that MAC labels may be copied (...) to the individual
IP fragment mbufs by MAC policies.

When IP options are inserted into an IP datagram when leaving a
host, preserve the label if we need to reallocate the mbuf for
alignment or size reasons.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 17:17:51 +0000 (17:17 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the code managing IP fragment reassembly queues (struct ipq)
to invoke appropriate MAC entry points to maintain a MAC label on
each queue.  Permit MAC policies to associate information with a queue
based on the mbuf that caused it to be created, update that information
based on further mbufs accepted by the queue, influence the decision
making process by which mbufs are accepted to the queue, and set the
label of the mbuf holding the reassembled datagram following reassembly
completetion.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoFix an easy WARNS.
markm [Wed, 31 Jul 2002 16:53:59 +0000 (16:53 +0000)]
Fix an easy WARNS.

22 years agoFix some easy WARNS.
markm [Wed, 31 Jul 2002 16:52:16 +0000 (16:52 +0000)]
Fix some easy WARNS.

22 years agoGive lint a small bit of help.
markm [Wed, 31 Jul 2002 16:50:21 +0000 (16:50 +0000)]
Give lint a small bit of help.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:46:56 +0000 (16:46 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

When generating an IGMP message, invoke a MAC entry point to permit
the MAC framework to label its mbuf appropriately for the target
interface.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:45:16 +0000 (16:45 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

When generating an ARP query, invoke a MAC entry point to permit the
MAC framework to label its mbuf appropriately for the interface.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agosort(1) and uniq(1).
markm [Wed, 31 Jul 2002 16:44:01 +0000 (16:44 +0000)]
sort(1) and uniq(1).

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:42:47 +0000 (16:42 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the MAC framework to label mbuf created using divert sockets.
These labels may later be used for access control on delivery to
another socket, or to an interface.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI LAbs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:39:49 +0000 (16:39 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument connect(), listen(), and bind() system calls to invoke
MAC framework entry points to permit policies to authorize these
requests.  This can be useful for policies that want to limit
the activity of processes involving particular types of IPC and
network activity.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoFreeBSD has setkey in different location from NetBSD.
ume [Wed, 31 Jul 2002 16:39:19 +0000 (16:39 +0000)]
FreeBSD has setkey in different location from NetBSD.

Submitted by: Mike Makonnen <makonnen@pacbell.net>

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:23:42 +0000 (16:23 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Label mbufs received via kernel tunnel device interfaces by invoking
appropriate MAC framework entry points.

Perform access control checks on out-going mbufs delivered via tunnel
interfaces by invoking appropriate MAC entry points:

NOTE: Currently the label for a tunnel interface is not derived from
the label of the process that opened the tunnel interface.  It
probably should be.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoThese file are no longer used (moved to userland and/or merged into
jake [Wed, 31 Jul 2002 16:23:27 +0000 (16:23 +0000)]
These file are no longer used (moved to userland and/or merged into
pmap.c).

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:22:02 +0000 (16:22 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Label mbufs received via ethernet-based interfaces by invoking
appropriate MAC framework entry points.

Perform access control checks on out-going mbufs delivered via
ethernet-based interfaces by invoking appropriate MAC entry
points.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:16:03 +0000 (16:16 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument the interface management code so that MAC labels are
properly maintained on network interfaces (struct ifnet).  In
particular, invoke entry points when interfaces are created and
removed.  MAC policies may initialized the label interface based
on a variety of factors, including the interface name.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoNew release note: SA-02:32.
bmah [Wed, 31 Jul 2002 16:13:59 +0000 (16:13 +0000)]
New release note:  SA-02:32.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:13:13 +0000 (16:13 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

When decompressing data from one mbuf into another mbuf, preserve the
mbuf label by copying it to the new mbuf.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:11:32 +0000 (16:11 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke a MAC framework entry point to authorize reception of an
incoming mbuf by the BPF descriptor, permitting MAC policies to
limit the visibility of packets delivered to particular BPF
descriptors.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:09:38 +0000 (16:09 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument BPF so that MAC labels are properly maintained on BPF
descriptors.  MAC framework entry points are invoked at BPF
instantiation and allocation, permitting the MAC framework to
derive the BPF descriptor label from the credential authorizing
the device open.  Also enter the MAC framework to label mbufs
created using the BPF device.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 16:05:30 +0000 (16:05 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument UFS to support per-inode MAC labels.  In particular,
invoke MAC framework entry points for generically supporting the
backing of MAC labels into extended attributes.  This ends up
introducing new vnode operation vector entries point at the MAC
framework entry points, as well as some explicit entry point
invocations for file and directory creation events so that the
MAC framework can push labels to disk before the directory names
become persistent (this will work better once EAs in UFS2 are
hooked into soft updates).  The generic EA MAC entry points
support executing with the file system in either single label
or multilabel operation, and will fall back to the mount label
if multilabel is not specified at mount-time.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoThese were repo-copied to have a .S extension.
jake [Wed, 31 Jul 2002 15:56:15 +0000 (15:56 +0000)]
These were repo-copied to have a .S extension.

22 years agoAdd pathconf/fpathconf entries from POSIX.1e indicating support for
rwatson [Wed, 31 Jul 2002 15:54:03 +0000 (15:54 +0000)]
Add pathconf/fpathconf entries from POSIX.1e indicating support for
ACLs, Capabilities, Information Labels, and MAC Labels on the
queried file system.

22 years ago*.s -> *.S.
jake [Wed, 31 Jul 2002 15:52:04 +0000 (15:52 +0000)]
*.s -> *.S.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 15:45:16 +0000 (15:45 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Instrument devfs to support per-dirent MAC labels.  In particular,
invoke MAC framework when devfs directory entries are instantiated
due to make_dev() and related calls, and invoke the MAC framework
when vnodes are instantiated from these directory entries.  Implement
vop_setlabel() for devfs, which pushes the label update into the
devfs directory entry for semi-persistant store.  This permits the MAC
framework to assign labels to devices and directories as they are
instantiated, and export access control information via devfs vnodes.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoSort headers to reduce diffs between branches.
nectar [Wed, 31 Jul 2002 15:11:59 +0000 (15:11 +0000)]
Sort headers to reduce diffs between branches.

22 years agoinclude file of SASLv1 was changed to /usr/local/include/sasl1.
ume [Wed, 31 Jul 2002 15:06:09 +0000 (15:06 +0000)]
include file of SASLv1 was changed to /usr/local/include/sasl1.

22 years agoMoved the rule for locore.o from kern.post.mk to Makefile.$ARCH.
jake [Wed, 31 Jul 2002 14:59:05 +0000 (14:59 +0000)]
Moved the rule for locore.o from kern.post.mk to Makefile.$ARCH.

22 years agosome dolt forgot to add in an include for <limits.h>
darrenr [Wed, 31 Jul 2002 14:47:02 +0000 (14:47 +0000)]
some dolt forgot to add in an include for <limits.h>

22 years agoReplace the FOO_DEBUG definitions with USB_DEBUG, and switch the
joe [Wed, 31 Jul 2002 14:34:36 +0000 (14:34 +0000)]
Replace the FOO_DEBUG definitions with USB_DEBUG, and switch the
debugging levels to off by default.  Now that debug levels can be
tweaked by sysctl we don't need to go through hoops to get the
different usb parts to produce debug data.

22 years agoMake this compile with the debugging options switched on.
joe [Wed, 31 Jul 2002 14:27:40 +0000 (14:27 +0000)]
Make this compile with the debugging options switched on.

22 years agoWake up Joe! It would help if I included sys/sysctl.h.
joe [Wed, 31 Jul 2002 14:20:07 +0000 (14:20 +0000)]
Wake up Joe!  It would help if I included sys/sysctl.h.

22 years agoAdd a sysctl (debug.usb.uhub) for tweaking the uhub debug levels.
joe [Wed, 31 Jul 2002 13:58:15 +0000 (13:58 +0000)]
Add a sysctl (debug.usb.uhub) for tweaking the uhub debug levels.

22 years agoThe Elan SC520 MMCR is actually 16bit wide, so u_char is inconvenient.
phk [Wed, 31 Jul 2002 13:45:44 +0000 (13:45 +0000)]
The Elan SC520 MMCR is actually 16bit wide, so u_char is inconvenient.

22 years agoGet bored with hard coded debug level variables and introduce a debug.usb
joe [Wed, 31 Jul 2002 13:33:55 +0000 (13:33 +0000)]
Get bored with hard coded debug level variables and introduce a debug.usb
sysctl tree for tweaking them real-time.

Reviewed by: iedowse

22 years agoPatch to fix bounds checking/overflow.
darrenr [Wed, 31 Jul 2002 12:50:28 +0000 (12:50 +0000)]
Patch to fix bounds checking/overflow.

Obtained from: OpenBSD

22 years agoUse struct xfile, not struct file.
des [Wed, 31 Jul 2002 12:43:17 +0000 (12:43 +0000)]
Use struct xfile, not struct file.

22 years agoRewrite sockstat(1) in C.
des [Wed, 31 Jul 2002 12:32:03 +0000 (12:32 +0000)]
Rewrite sockstat(1) in C.

Sponsored by: DARPA, NAI Labs

22 years agoHave the kern.file sysctl export xfiles rather than files. The truth is
des [Wed, 31 Jul 2002 12:26:52 +0000 (12:26 +0000)]
Have the kern.file sysctl export xfiles rather than files.  The truth is
out there!

Sponsored by: DARPA, NAI Labs

22 years agoNit in previous commit: the correct sysctl type is "S,xvnode"
des [Wed, 31 Jul 2002 12:25:28 +0000 (12:25 +0000)]
Nit in previous commit: the correct sysctl type is "S,xvnode"

22 years agoInitialize v_cachedid to -1 in getnewvnode().
des [Wed, 31 Jul 2002 12:24:35 +0000 (12:24 +0000)]
Initialize v_cachedid to -1 in getnewvnode().
Reintroduce the kern.vnode sysctl and make it export xvnodes rather than
vnodes.

Sponsored by: DARPA, NAI Labs

22 years agoIntroduce struct xvnode, which will be used instead of struct vnode for
des [Wed, 31 Jul 2002 12:19:49 +0000 (12:19 +0000)]
Introduce struct xvnode, which will be used instead of struct vnode for
sysctl purposes.  Also add two fields to struct vnode, v_cachedfs and
v_cachedid, which hold the vnode's device and file id and are filled in
by vn_open_cred() and vn_stat().

Sponsored by: DARPA, NAI Labs

22 years agoAdd struct xfile, which will be used instead of struct file for sysctl
des [Wed, 31 Jul 2002 12:16:51 +0000 (12:16 +0000)]
Add struct xfile, which will be used instead of struct file for sysctl
purposes.

Sponsored by: DARPA, NAI Labs

22 years agoFix a bunch of format string warnings which broke
mux [Wed, 31 Jul 2002 12:01:14 +0000 (12:01 +0000)]
Fix a bunch of format string warnings which broke
the sparc64 build.

Tested on: sparc64, i386

22 years agoDeny the SIZE command on large files when in ASCII mode.
yar [Wed, 31 Jul 2002 10:55:31 +0000 (10:55 +0000)]
Deny the SIZE command on large files when in ASCII mode.
This eliminates an opportunity for DoS attack.

Pointed out by: maxim
Inspired by: lukemftpd, OpenBSD
MFC after: 2 weeks

22 years agoIt should be "ucom", not "usio".
joe [Wed, 31 Jul 2002 10:52:46 +0000 (10:52 +0000)]
It should be "ucom", not "usio".

22 years agoRegen
joe [Wed, 31 Jul 2002 10:05:58 +0000 (10:05 +0000)]
Regen

22 years agoCorrect URL to the Handbook
blackend [Wed, 31 Jul 2002 10:05:37 +0000 (10:05 +0000)]
Correct URL to the Handbook

MFC after: 1 week

22 years agoMFNetBSD: uvisor.c (1.14, 1.15)
joe [Wed, 31 Jul 2002 10:05:26 +0000 (10:05 +0000)]
MFNetBSD: uvisor.c (1.14, 1.15)

Add support for Palm (M500, M505, M125) and Sony devices (Clie 4.0 and 4.1).

22 years agoCorrect URL to the FAQ
blackend [Wed, 31 Jul 2002 10:05:00 +0000 (10:05 +0000)]
Correct URL to the FAQ

MFC after: 1 week

22 years agoCorrect a few grammar bogons.
schweikh [Wed, 31 Jul 2002 09:32:22 +0000 (09:32 +0000)]
Correct a few grammar bogons.
MFC after: 3 days

22 years agoRemove trailing white spaces
joe [Wed, 31 Jul 2002 09:24:41 +0000 (09:24 +0000)]
Remove trailing white spaces

Obtained from: NetBSD (1.16)

22 years agoRegen
joe [Wed, 31 Jul 2002 09:09:50 +0000 (09:09 +0000)]
Regen

22 years agoAdd the HP ScanJet 2200C.
joe [Wed, 31 Jul 2002 09:07:56 +0000 (09:07 +0000)]
Add the HP ScanJet 2200C.

22 years agoEnable the HP 2200C and Visioneer Scanport 3000 scanners, and remove
joe [Wed, 31 Jul 2002 09:05:52 +0000 (09:05 +0000)]
Enable the HP 2200C and Visioneer Scanport 3000 scanners, and remove
some trailing spaces whilst I'm here.

Obtained from: NetBSD.

22 years agoAdd the Primax (Visioneer) 6200 scanner.
joe [Wed, 31 Jul 2002 08:51:32 +0000 (08:51 +0000)]
Add the Primax (Visioneer) 6200 scanner.

Obtained from: OpenBSD (via NetBSD)

22 years ago o Lock page accesses by vm_page_io_start() with the page queues lock.
alc [Wed, 31 Jul 2002 07:27:08 +0000 (07:27 +0000)]
 o Lock page accesses by vm_page_io_start() with the page queues lock.
 o Assert that the page queues lock is held in vm_page_io_start().

22 years agoI forgot this bit of uglyness in the fsck_ffs cleanup.
phk [Wed, 31 Jul 2002 07:01:18 +0000 (07:01 +0000)]
I forgot this bit of uglyness in the fsck_ffs cleanup.

22 years agoGrammar (`was' -> `were')
chris [Wed, 31 Jul 2002 06:40:34 +0000 (06:40 +0000)]
Grammar (`was' -> `were')

22 years agoNew release notes: uaudio, uvisor, gpt, mca.
bmah [Wed, 31 Jul 2002 04:01:12 +0000 (04:01 +0000)]
New release notes:  uaudio, uvisor, gpt, mca.

22 years ago- Define NO_CPU_CFLAGS during BMAKE and TMAKE (and thus XMAKE) so that
jhb [Wed, 31 Jul 2002 03:56:03 +0000 (03:56 +0000)]
- Define NO_CPU_CFLAGS during BMAKE and TMAKE (and thus XMAKE) so that
  bsd.cpu.mk doesn't have to worry about compilers other than the current
  version.
- Allow TARGET_CPUTYPE to override CPUTYPE in bsd.cpu.mk.
- Treat an empty CPUTYPE the same as an undefined CPUTYPE.
- For buildworld, buildkernel, etc., define TARGET_CPUTYPE to CPUTYPE for
  native builds and define it to be empty for cross-builds.
  TARGET_CPUTYPE is only defined if it is not already defined via the
  commandline or environment.

22 years agoFix markup nits and a (not related) typo.
bmah [Wed, 31 Jul 2002 03:25:25 +0000 (03:25 +0000)]
Fix markup nits and a (not related) typo.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 03:03:22 +0000 (03:03 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the necessary MAC entry points to maintain labels on sockets.
In particular, invoke entry points during socket allocation and
destruction, as well as creation by a process or during an
accept-scenario (sonewconn).  For UNIX domain sockets, also assign
a peer label.  As the socket code isn't locked down yet, locking
interactions are not yet clear.  Various protocol stack socket
operations (such as peer label assignment for IPv4) will follow.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoUpdated release notes: ACPI CA 20020725, OpenSSL 0.9.6e (+MFC).
bmah [Wed, 31 Jul 2002 02:48:20 +0000 (02:48 +0000)]
Updated release notes:  ACPI CA 20020725, OpenSSL 0.9.6e (+MFC).

22 years agoNote that the privilege indicating flag to vaccess() originally used
rwatson [Wed, 31 Jul 2002 02:05:12 +0000 (02:05 +0000)]
Note that the privilege indicating flag  to vaccess() originally used
by the process accounting system is now deprecated.

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 02:03:46 +0000 (02:03 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the necessary MAC entry points to maintain labels on vnodes.
In particular, initialize the label when the vnode is allocated or
reused, and destroy the label when the vnode is going to be released,
or reused.  Wow, an object where there really is exactly one place
where it's allocated, and one other where it's freed.  Amazing.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 01:51:34 +0000 (01:51 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke additional MAC entry points when an mbuf packet header is
copied to another mbuf: release the old label if any, reinitialize
the new header, and ask the MAC framework to copy the header label
data.  Note that this requires a potential allocation operation,
but m_copy_pkthdr() is not permitted to fail, so we must block.
Since we now use interrupt threads, this is possible, but not
desirable.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 01:42:19 +0000 (01:42 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the necessary MAC entry points to maintain labels on header
mbufs.  In particular, invoke entry points during the two mbuf
header allocation cases, and the mbuf freeing case.  Pass the "how"
argument at allocation time to the MAC framework so that it can
determine if it is permitted to block (as with policy modules),
and permit the initialization entry point to fail if it needs to
allocate memory but is not permitted to, failing the mbuf
allocation.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 01:27:33 +0000 (01:27 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Implement MAC framework access control entry points relating to
operations on mountpoints.  Currently, this consists only of
access control on mountpoint listing using the various statfs()
variations.  In the future, it might also be desirable to
implement checks on mount() and unmount().

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 01:11:29 +0000 (01:11 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the necessary MAC entry points to maintain labels on
mount structures.  In particular, invoke entry points for
intialization and destruction in various scenarios (root,
non-root).  Also introduce an entry point in the boot procedure
following the mount of the root file system, but prior to the
start of the userland init process to permit policies to
perform further initialization.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 00:48:24 +0000 (00:48 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Implement inter-process access control entry points for the MAC
framework.  This permits policy modules to augment the decision
making process for process and socket visibility, process debugging,
re-scheduling, and signaling.

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoFix a problem with sendfile() syscall by always doing I/O via bread() in
semenu [Wed, 31 Jul 2002 00:42:57 +0000 (00:42 +0000)]
Fix a problem with sendfile() syscall by always doing I/O via bread() in
ntfs_read(). This guarantee that requested cache pages will be valid if
UIO_NOCOPY specifed.

PR: bin/34072, bin/36189
MFC after: 1 week

22 years agoIntroduce support for Mandatory Access Control and extensible
rwatson [Wed, 31 Jul 2002 00:39:19 +0000 (00:39 +0000)]
Introduce support for Mandatory Access Control and extensible
kernel access control.

Invoke the necessary MAC entry points to maintain labels on
process credentials.  In particular, invoke entry points for
the initialization and destruction of struct ucred, the copying
of struct ucred, and permit the initial labels to be set for
both process 0 (parent of all kernel processes) and process 1
(parent of all user processes).

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoRegen.
rwatson [Wed, 31 Jul 2002 00:16:58 +0000 (00:16 +0000)]
Regen.

22 years agoReduce the memory footprint of MAC in the base system by halving
rwatson [Wed, 31 Jul 2002 00:03:26 +0000 (00:03 +0000)]
Reduce the memory footprint of MAC in the base system by halving
the number of policy slots to 4.

(Having run a quick errand, time to start on phase 2 of the MAC
integration)

Obtained from: TrustedBSD Project
Sponsored by: DARPA, NAI Labs

22 years agoRegen
joe [Tue, 30 Jul 2002 23:30:56 +0000 (23:30 +0000)]
Regen

22 years agoAdd support for a couple of network adapters; the 3Com 3C460B and
joe [Tue, 30 Jul 2002 23:30:15 +0000 (23:30 +0000)]
Add support for a couple of network adapters; the 3Com 3C460B and
the Belkin USB2LAN.

Obtained from: NetBSD

22 years agoRemove some strange code that allocates memory and then immediately
iedowse [Tue, 30 Jul 2002 23:26:22 +0000 (23:26 +0000)]
Remove some strange code that allocates memory and then immediately
frees it again. The idea was to perform M_WAITOK allocations in a
process context to reduce the risk of later interrupt-context
M_NOWAIT allocations failing, but in fact this code can be called
from contexts where it is not desirable to sleep (e.g. if_start
routines), so it causes lots of witness "could sleep" warnings.