- map between zone root pathnames and labels
cc [flags...] file... -ltsol [library...]
#include <tsol/label.h> char *getzonerootbyid(zoneid_t zoneid);
char *getzonerootbylabel(const m_label_t *label);
char *getzonerootbyname(const char *zonename);
The getzonerootbyid() function returns the root pathname of zoneid.
The getzonerootbylabel() function returns the root pathname of the zone whose label is label.
The getzonerootbyname() function returns the root pathname of zonename.
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. The returned pathname is relative to the root path of the caller's zone.
On successful completion, the getzonerootbyid(), getzonerootbylabel(), and getzonerootbyname() functions return a pointer to a pathname that is allocated within these functions. To free the storage, use free(3C). On failure, these functions return NULL and set errno to indicate the error.
These functions will fail if:
Invalid argument; pointer location is invalid.
zoneid invalid, or zone not found or not ready.
Zone does not exist.
Unable to allocate pathname.
See attributes(5) for descriptions of the following attributes:
The functionality described on this manual page is available only if the system is configured with Trusted Extensions.