man pages section 3: Extended Library Functions, Volume 4

Exit Print View

Updated: July 2014
 
 

getzonelabelbyid(3TSOL)

Name

getzonelabelbyid, getzonelabelbyname, getzoneidbylabel - map between zones and labels

Synopsis

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

m_label_t *getzonelabelbyid(zoneid_t zoneid);
m_label_t *getzonelabelbyname(const char *zonename);
zoneid_t *getzoneidbylabel(const m_label_t *label);

Description

The getzonelabelbyid() function returns the mandatory access control (MAC) label of zoneid.

The getzonelabelbyname() function returns the MAC label of the zone whose name is zonename.

The getzoneidbylabel() function returns the zone ID of the primary zone whose label is label.

All of these functions require that the specified zone's state is at least ZONE_IS_READY. The zone of the calling process must dominate the specified zone's label, or the calling process must be in the global zone.

Return Values

On successful completion, the getzonelabelbyid() and getzonelabelbyname() functions return a pointer to a sensitivity label that is allocated within these functions. To free the storage, use m_label_free(3TSOL). If the zone does not exist, NULL is returned.

On successful completion, the getzoneidbylabel() function returns the zone ID with the matching label. If there is no matching zone, the function returns -1.

Errors

The getzonelabelbyid() and getzonelabelbyname() functions will fail if:

ENOENT

The specified zone does not exist.

The getzonelabelbyid() function will fail if:

ENOENT

No zone corresponds to the specified label.

Attributes

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

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Committed
MT-Level
Safe

See also

Intro(2), getzonenamebyid(3C) , getzoneidbyname(3C), libtsol (3LIB), m_label_free(3TSOL), attributes (5), labels(5)

Notes

The functionality described on this manual page is available only if the system is configured with Trusted Extensions.