ラベル API は、第 2 章「ラベルと認可上限」で概説されています。コーティング例は、第 3 章「ラベルのコーディング例」にありあす。詳しく説明されている例は、第 4 章「印刷とラベル API」にあります。
次に、ラベル関連 API のタイプをリストし、各タイプのルーチンおよびシステムコールのプロトタイプ宣言を示します。
m_label_t *m_label_alloc(const m_label_type_t label_type);
int m_label_dup(m_label_t **dst, const m_label_t *src);
void m_label_free(m_label_t *label);
int label_to_str(const m_label_t *label, char **string, const m_label_str_t conversion_type, uint_t flags);
int blequal(const m_label_t *level1, const m_label_t *level2);
int bldominates(const m_label_t *level1, const m_label_t *level2);
int blstrictdom(const m_label_t *level1, const m_label_t *level2);
int blinrange(const m_label_t *level, const brange_t *range);
void blmaximum(m_label_t *maximum_label, const m_label_t *bounding_label);
void blminimum(m_label_t *minimum_label, const m_label_t *bounding_label);
m_range_t *getuserrange(const char *username);
blrange_t *getdevicerange(const char *device);
char *getpathbylabel(const char *path, char *resolved_path, size_t bufsize, const m_label_t *sl);
m_label_t *getzonelabelbyid(zoneid_t zoneid);
m_label_t *getzonelabelbyname(const char *zonename);
zoneid_t *getzoneidbylabel(const m_label_t *label);
char *getzonerootbyid(zoneid_t zoneid);
char *getzonerootbylabel(const m_label_t *label);
char *getzonerootbyname(const char *zonename);
tsol_host_type_t tsol_getrhtype(char *hostname);
int fgetlabel(int fd, m_label_t *label_p);
int getlabel(const char *path, m_label_t *label_p);
int setflabel(const char *path, const m_label_t *label_p);
int getplabel(m_label_t *label_p);
int label_to_str(const m_label_t *label, char **string, const m_label_str_t conversion_type, uint_t flags);
int str_to_label(const char *string, m_label_t **label, const m_label_type_t label_type, uint_t flags, int *error);