Copyright (c) 2007, Sun Microsystems, Inc. All Rights Reserved.
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
cc [flags...] file... -ltsol [library...]
#include <tsol/label.h> m_range_t *getuserrange(const char *username);
The getuserrange() function returns the label range of username. The lower bound in the range is used as the initial workspace label when a user logs into a multilevel desktop. The upper bound, or clearance, is used as an upper limit to the available labels that a user can assign to labeled workspaces.
The default value for a user's label range is specified in label_encodings(4). Overriding values for individual users are specified in user_attr(4).
The getuserrange() function returns NULL if the memory allocation fails. Otherwise, the function returns a structure which must be freed by the caller, as follows:
m_range_t *range; ... m_label_free(range->lower_bound); m_label_free(range->upper_bound); free(range);
The getuserrange() function will fail if:
ENOMEM
The physical limits of the system are exceeded by size bytes of memory which cannot be allocated.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | See below. |
MT-Level | MT-Safe |
The getuserrange() function is Committed for systems that implement the Defense Intelligence Agency (DIA) MAC policy of label_encodings(4). Other policies might exist in a future release of Trusted Extensions that might make obsolete or supplement label_encodings.
free(3C), libtsol(3LIB), m_label_free(3TSOL), label_encodings(4), user_attr(4), attributes(5)
The functionality described on this manual page is available only if the system is configured with Trusted Extensions.