xref: /freebsd/lib/libc/posix1e/mac_is_present.3 (revision ad136d1e29fa5fcb8f2635d42b7c8a1dfef4ff50)
1d97fcfceSRobert Watson.\" Copyright (c) 2002 Networks Associates Technology, Inc.
2d97fcfceSRobert Watson.\" All rights reserved.
3d97fcfceSRobert Watson.\"
4d97fcfceSRobert Watson.\" This software was developed for the FreeBSD Project by Chris
5d97fcfceSRobert Watson.\" Costello at Safeport Network Services and NAI Labs, the Security
6d97fcfceSRobert Watson.\" Research Division of Network Associates, Inc. under DARPA/SPAWAR
7d97fcfceSRobert Watson.\" contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS
8d97fcfceSRobert Watson.\" research program.
9d97fcfceSRobert Watson.\"
10d97fcfceSRobert Watson.\" Redistribution and use in source and binary forms, with or without
11d97fcfceSRobert Watson.\" modification, are permitted provided that the following conditions
12d97fcfceSRobert Watson.\" are met:
13d97fcfceSRobert Watson.\" 1. Redistributions of source code must retain the above copyright
14d97fcfceSRobert Watson.\"    notice, this list of conditions and the following disclaimer.
15d97fcfceSRobert Watson.\" 2. Redistributions in binary form must reproduce the above copyright
16d97fcfceSRobert Watson.\"    notice, this list of conditions and the following disclaimer in the
17d97fcfceSRobert Watson.\"    documentation and/or other materials provided with the distribution.
18d97fcfceSRobert Watson.\"
19d97fcfceSRobert Watson.\" THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS ``AS IS'' AND
20d97fcfceSRobert Watson.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21d97fcfceSRobert Watson.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22d97fcfceSRobert Watson.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE
23d97fcfceSRobert Watson.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24d97fcfceSRobert Watson.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25d97fcfceSRobert Watson.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26d97fcfceSRobert Watson.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27d97fcfceSRobert Watson.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28d97fcfceSRobert Watson.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29d97fcfceSRobert Watson.\" SUCH DAMAGE.
30d97fcfceSRobert Watson.\"
31d97fcfceSRobert Watson.\" $FreeBSD$
323b296920SRuslan Ermilov.\"
33ad136d1eSRuslan Ermilov.Dd July 7, 2006
34ad136d1eSRuslan Ermilov.Dt MAC_IS_PRESENT 3
35051bb54bSRuslan Ermilov.Os
36d97fcfceSRobert Watson.Sh NAME
371e5294bcSRobert Watson.Nm mac_is_present
38d97fcfceSRobert Watson.Nd report whether the running system has MAC support
393b296920SRuslan Ermilov.Sh LIBRARY
403b296920SRuslan Ermilov.Lb libc
41d97fcfceSRobert Watson.Sh SYNOPSIS
42d97fcfceSRobert Watson.In sys/mac.h
43d97fcfceSRobert Watson.Ft int
44d97fcfceSRobert Watson.Fn mac_is_present "const char *policyname"
45d97fcfceSRobert Watson.Sh DESCRIPTION
46d97fcfceSRobert WatsonThe
471e5294bcSRobert Watson.Fn mac_is_present
48d97fcfceSRobert Watsonfunction determines whether the currently-running kernel supports MAC for
49d97fcfceSRobert Watsona given policy or not.
50d97fcfceSRobert WatsonIf
51d97fcfceSRobert Watson.Fa policyname
523b296920SRuslan Ermilovis
53ad136d1eSRuslan Ermilov.Pf non- Dv NULL ,
54d97fcfceSRobert Watsonthe presence of the named policy
553b296920SRuslan Ermilov(e.g.\&
563b296920SRuslan Ermilov.Dq Li biba ,
573b296920SRuslan Ermilov.Dq Li mls ,
583b296920SRuslan Ermilov.Dq Li te )
59d97fcfceSRobert Watsonis checked, otherwise the presence of any MAC policies at all is checked.
60d97fcfceSRobert Watson.Sh RETURN VALUES
61d97fcfceSRobert WatsonIf the system supports the given MAC policy, the value 1 is returned.
62d97fcfceSRobert WatsonIf the specified MAC policy is not supported, the value 0 is returned.
633b296920SRuslan ErmilovIf an error occurs, the value \-1 is returned.
64d97fcfceSRobert Watson.Sh ERRORS
65d97fcfceSRobert Watson.Bl -tag -width Er
66d97fcfceSRobert Watson.It Bq Er EINVAL
67d97fcfceSRobert WatsonThe value of
68d97fcfceSRobert Watson.Fa policyname
69d97fcfceSRobert Watsonis not valid.
70d97fcfceSRobert Watson.It Bq Er ENOMEM
71d97fcfceSRobert WatsonInsufficient memory was available to allocate internal storage.
72d97fcfceSRobert Watson.El
73d97fcfceSRobert Watson.Sh SEE ALSO
7476a829fdSChris Costello.Xr mac 3 ,
7576a829fdSChris Costello.Xr mac_free 3 ,
7676a829fdSChris Costello.Xr mac_get 3 ,
7776a829fdSChris Costello.Xr mac_prepare 3 ,
7876a829fdSChris Costello.Xr mac_set 3 ,
7976a829fdSChris Costello.Xr mac_text 3 ,
808f8690e7SChris Costello.Xr mac 4 ,
8176a829fdSChris Costello.Xr mac 9
8209a7f448SRobert Watson.Sh HISTORY
8309a7f448SRobert WatsonSupport for Mandatory Access Control was introduced in
8409a7f448SRobert Watson.Fx 5.0
8509a7f448SRobert Watsonas part of the
8609a7f448SRobert Watson.Tn TrustedBSD
8709a7f448SRobert WatsonProject.
88