JavaScript is required to for searching.
Skip Navigation Links
Exit Print View
Solaris Trusted Extensions Reference Manual
search filter icon
search icon

Document Information

Preface

Introduction

User Commands

System Administration Commands

System Calls

Trusted Extensions Library

bcleartoh(3TSOL)

bcleartoh_r(3TSOL)

bcleartos(3TSOL)

blcompare(3TSOL)

bldominates(3TSOL)

blequal(3TSOL)

blinrange(3TSOL)

blmaximum(3TSOL)

blminimum(3TSOL)

blminmax(3TSOL)

blstrictdom(3TSOL)

bltocolor(3TSOL)

bltocolor_r(3TSOL)

bltos(3TSOL)

bsltoh(3TSOL)

bsltoh_r(3TSOL)

bsltos(3TSOL)

btohex(3TSOL)

getdevicerange(3TSOL)

getpathbylabel(3TSOL)

getplabel(3TSOL)

getuserrange(3TSOL)

getzoneidbylabel(3TSOL)

getzonelabelbyid(3TSOL)

getzonelabelbyname(3TSOL)

getzonerootbyid(3TSOL)

getzonerootbylabel(3TSOL)

getzonerootbyname(3TSOL)

h_alloc(3TSOL)

hextob(3TSOL)

h_free(3TSOL)

htobclear(3TSOL)

htobsl(3TSOL)

labelbuilder(3TSOL)

labelclipping(3TSOL)

label_to_str(3TSOL)

m_label(3TSOL)

m_label_alloc(3TSOL)

m_label_dup(3TSOL)

m_label_free(3TSOL)

sbcleartos(3TSOL)

sbltos(3TSOL)

sbsltos(3TSOL)

setflabel(3TSOL)

stobclear(3TSOL)

stobl(3TSOL)

stobsl(3TSOL)

str_to_label(3TSOL)

tsol_getrhtype(3TSOL)

tsol_lbuild_create(3TSOL)

tsol_lbuild_destroy(3TSOL)

tsol_lbuild_get(3TSOL)

tsol_lbuild_set(3TSOL)

Xbcleartos(3TSOL)

Xbsltos(3TSOL)

X Library Extensions

File Formats

Standards, Environments, and Macros

Index

str_to_label

- parse human readable strings to label

Synopsis

cc [flag...] file... -ltsol [library...]
#include <tsol/label.h>

int str_to_label(const char *string, m_label_t **label, 
    const m_label_type_t label_type, uint_t flags, int *error);

Description

str_to_label() is a simple function to parse human readable strings into labels of the requested type.

The caller is responsible for freeing the allocated resources by calling the m_label_free() function. label_type defines the type for a newly allocated label. The label type can be:

MAC_LABEL

The string should be translated as a Mandatory Access Control (MAC) label.

USER_CLEAR

The string should be translated as a label that represents the least upper bound of the labels that the user is allowed to access.

If error is NULL, do not return additional error information for EINVAL. The calling process must have mandatory read access to label and human readable string. Or the calling process must have the sys_trans_label privilege.

The manifest constants ADMIN_HIGH and ADMIN_LOW are the human readable strings that correspond to the Trusted Extensions policy admin_high and admin_low label values. See labels(5).

Return Values

Upon successful completion, the str_to_label() function returns zero (0). Otherwise, -1 is returned, errno is set to indicate the error, and error provides additional information for EINVAL. Otherwise, error is a zero-based index to the string parse failure point.

Errors

The str_to_label() function fails if:

EINVAL

Invalid parameter. M_BAD_STRING indicates that string could not be parsed. M_BAD_LABEL indicates that the label passed in was in error.

ENOTSUP

The system does not support label translations.

ENOMEM

The physical limits of the system are exceeded by size bytes of memory which cannot be allocated.

Attributes

See attributes(5) for descriptions of the following attributes:

ATTRIBUTE TYPE
ATTRIBUTE VALUE
MT-Level
MT-Safe
Interface Stability
See NOTES and WARNINGS below

See Also

label_to_str(3TSOL), m_label(3TSOL), label_encodings(4), attributes(5), labels(5)

Validating the Label Request Against the Printer’s Label Range in Solaris Trusted Extensions Developer’s Guide

Notes

str_to_label() is Stable. Parsing types that are relative to Defense Intelligence Agency (DIA) encodings schema are Standard. Standard is specified in label_encodings(4).

Warnings

A number of the parsing rules rely on the DIA label encodings schema. The rules might not be valid for other label schemata.