<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/security/mac/mac_policy.h, branch stable/9</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=stable%2F9</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=stable%2F9'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2011-09-02T17:40:39Z</updated>
<entry>
<title>Correct several issues in the integration of POSIX shared memory objects</title>
<updated>2011-09-02T17:40:39Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2011-09-02T17:40:39Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9b6dd12e5da17c85b9e93f1ed31ec8719e6f40db'/>
<id>urn:sha1:9b6dd12e5da17c85b9e93f1ed31ec8719e6f40db</id>
<content type='text'>
and the new setmode and setowner fileops in FreeBSD 9.0:

- Add new MAC Framework entry point mac_posixshm_check_create() to allow
  MAC policies to authorise shared memory use.  Provide a stub policy and
  test policy templates.

- Add missing Biba and MLS implementations of mac_posixshm_check_setmode()
  and mac_posixshm_check_setowner().

- Add 'accmode' argument to mac_posixshm_check_open() -- unlike the
  mac_posixsem_check_open() entry point it was modeled on, the access mode
  is required as shared memory access can be read-only as well as writable;
  this isn't true of POSIX semaphores.

- Implement full range of POSIX shared memory entry points for Biba and MLS.

Sponsored by:   Google Inc.
Obtained from:	TrustedBSD Project
Approved by:    re (kib)
</content>
</entry>
<entry>
<title>Add the fo_chown and fo_chmod methods to struct fileops and use them</title>
<updated>2011-08-16T20:07:47Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2011-08-16T20:07:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9c00bb9190391479885cfb14ed23fb7003d10109'/>
<id>urn:sha1:9c00bb9190391479885cfb14ed23fb7003d10109</id>
<content type='text'>
to implement fchown(2) and fchmod(2) support for several file types
that previously lacked it. Add MAC entries for chown/chmod done on
posix shared memory and (old) in-kernel posix semaphores.

Based on the submission by:	glebius
Reviewed by:	rwatson
Approved by:	re (bz)
</content>
</entry>
<entry>
<title>Remove 'uio' argument from MAC Framework and MAC policy entry points for</title>
<updated>2009-03-08T12:32:06Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2009-03-08T12:32:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fefd0ac8a911c1b3b63da1602bb13cee5ffe4311'/>
<id>urn:sha1:fefd0ac8a911c1b3b63da1602bb13cee5ffe4311</id>
<content type='text'>
extended attribute get/set; in the case of get an uninitialized user
buffer was passed before the EA was retrieved, making it of relatively
little use; the latter was simply unused by any policies.

Obtained from:	TrustedBSD Project
Sponsored by:	Google, Inc.
</content>
</entry>
<entry>
<title>Improve the consistency of MAC Framework and MAC policy entry point</title>
<updated>2009-03-08T10:58:37Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2009-03-08T10:58:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6f6174a7621e3a97032b067d72d873d1cda60b64'/>
<id>urn:sha1:6f6174a7621e3a97032b067d72d873d1cda60b64</id>
<content type='text'>
naming by renaming certain "proc" entry points to "cred" entry points,
reflecting their manipulation of credentials.  For some entry points,
the process was passed into the framework but not into policies; in
these cases, stop passing in the process since we don't need it.

  mac_proc_check_setaudit -&gt; mac_cred_check_setaudit
  mac_proc_check_setaudit_addr -&gt; mac_cred_check_setaudit_addr
  mac_proc_check_setauid -&gt; mac_cred_check_setauid
  mac_proc_check_setegid -&gt; mac_cred_check_setegid
  mac_proc_check_seteuid -&gt; mac_cred_check_seteuid
  mac_proc_check_setgid -&gt; mac_cred_check_setgid
  mac_proc_check_setgroups -&gt; mac_cred_ceck_setgroups
  mac_proc_check_setregid -&gt; mac_cred_check_setregid
  mac_proc_check_setresgid -&gt; mac_cred_check_setresgid
  mac_proc_check_setresuid -&gt; mac_cred_check_setresuid
  mac_proc_check_setreuid -&gt; mac_cred_check_setreuid
  mac_proc_check_setuid -&gt; mac_cred_check_setuid

Obtained from:	TrustedBSD Project
Sponsored by:	Google, Inc.
</content>
</entry>
<entry>
<title>Rather than having MAC policies explicitly declare what object types</title>
<updated>2009-01-10T10:58:41Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2009-01-10T10:58:41Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=9162f64b58d01ec01481d60b6cdc06ffd8e8c7fc'/>
<id>urn:sha1:9162f64b58d01ec01481d60b6cdc06ffd8e8c7fc</id>
<content type='text'>
they label, derive that information implicitly from the set of label
initializers in their policy operations set.  This avoids a possible
class of programmer errors, while retaining the structure that
allows us to avoid allocating labels for objects that don't need
them.  As before, we regenerate a global mask of labeled objects
each time a policy is loaded or unloaded, stored in mac_labeled.

Discussed with:   csjp
Suggested by:     Jacques Vidrine &lt;nectar at apple.com&gt;
Obtained from:    TrustedBSD Project
Sponsored by:     Apple, Inc.
</content>
</entry>
<entry>
<title>Introduce accmode_t.  This is required for NFSv4 ACLs - it will be neccessary</title>
<updated>2008-10-28T13:44:11Z</updated>
<author>
<name>Edward Tomasz Napierala</name>
<email>trasz@FreeBSD.org</email>
</author>
<published>2008-10-28T13:44:11Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=15bc6b2bd8d8c56ad74e57675dde8501bc7f53e1'/>
<id>urn:sha1:15bc6b2bd8d8c56ad74e57675dde8501bc7f53e1</id>
<content type='text'>
to add more V* constants, and the variables changed by this patch were often
being assigned to mode_t variables, which is 16 bit.

Approved by:	rwatson (mentor)
</content>
</entry>
<entry>
<title>Rename three MAC entry points from _proc_ to _cred_ to reflect the fact</title>
<updated>2008-10-28T11:33:06Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2008-10-28T11:33:06Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=212ab0cfb38a01878cc1bd44eeb4e6fcab384d5d'/>
<id>urn:sha1:212ab0cfb38a01878cc1bd44eeb4e6fcab384d5d</id>
<content type='text'>
that they operate directly on credentials: mac_proc_create_swapper(),
mac_proc_create_init(), and mac_proc_associate_nfsd().  Update policies.

Obtained from:	TrustedBSD Project
</content>
</entry>
<entry>
<title>Add a MAC label, MAC Framework, and MAC policy entry points for IPv6</title>
<updated>2008-10-26T22:45:18Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2008-10-26T22:45:18Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4b908c8bb4b13eccb45b0fdb4ffcb8abcb086814'/>
<id>urn:sha1:4b908c8bb4b13eccb45b0fdb4ffcb8abcb086814</id>
<content type='text'>
fragment reassembly queues.

This allows policies to label reassembly queues, perform access
control checks when matching fragments to a queue, update a queue
label when fragments are matched, and label the resulting
reassembled datagram.

Obtained from:	TrustedBSD Project
</content>
</entry>
<entry>
<title>Add mac_inpcb_check_visible MAC Framework entry point, which is similar</title>
<updated>2008-10-17T12:54:28Z</updated>
<author>
<name>Bjoern A. Zeeb</name>
<email>bz@FreeBSD.org</email>
</author>
<published>2008-10-17T12:54:28Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=37ee72936b6d56df729f04d3384410373250b5f9'/>
<id>urn:sha1:37ee72936b6d56df729f04d3384410373250b5f9</id>
<content type='text'>
to mac_socket_check_visible but operates on the inpcb.

Reviewed by:	rwatson
MFC after:	3 months (set timer, decide then)
</content>
</entry>
<entry>
<title>Introduce two related changes to the TrustedBSD MAC Framework:</title>
<updated>2008-08-23T15:26:36Z</updated>
<author>
<name>Robert Watson</name>
<email>rwatson@FreeBSD.org</email>
</author>
<published>2008-08-23T15:26:36Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6356dba0b403daa023dec24559ab1f8e602e4f14'/>
<id>urn:sha1:6356dba0b403daa023dec24559ab1f8e602e4f14</id>
<content type='text'>
(1) Abstract interpreter vnode labeling in execve(2) and mac_execve(2)
    so that the general exec code isn't aware of the details of
    allocating, copying, and freeing labels, rather, simply passes in
    a void pointer to start and stop functions that will be used by
    the framework.  This change will be MFC'd.

(2) Introduce a new flags field to the MAC_POLICY_SET(9) interface
    allowing policies to declare which types of objects require label
    allocation, initialization, and destruction, and define a set of
    flags covering various supported object types (MPC_OBJECT_PROC,
    MPC_OBJECT_VNODE, MPC_OBJECT_INPCB, ...).  This change reduces the
    overhead of compiling the MAC Framework into the kernel if policies
    aren't loaded, or if policies require labels on only a small number
    or even no object types.  Each time a policy is loaded or unloaded,
    we recalculate a mask of labeled object types across all policies
    present in the system.  Eliminate MAC_ALWAYS_LABEL_MBUF option as it
    is no longer required.

MFC after:	1 week ((1) only)
Reviewed by:	csjp
Obtained from:	TrustedBSD Project
Sponsored by:	Apple, Inc.
</content>
</entry>
</feed>
