man pages section 3: Extended Library Functions, Volume 4

Exit Print View

Updated: July 2014
 
 

h_free(3TSOL)

Name

btohex, bsltoh, bcleartoh, bsltoh_r, bcleartoh_r, h_alloc, h_free - convert binary label to hexadecimal

Synopsis

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

char *bsltoh(const m_label_t *label);
char *bcleartoh(const m_label_t *clearance);
char *bsltoh_r(const m_label_t *label, char *hex);
char *bcleartoh_r(const m_label_t *clearance, char *hex);
char *h_alloc(const unsigned char type);
void h_free(char *hex);

Description

These functions convert binary labels into hexadecimal strings that represent the internal value.

The bsltoh() and bsltoh_r() functions convert a binary sensitivity label into a string of the form:

[0xsensitivity_label_hexadecimal_value]

The bcleartoh() and bcleartoh_r() functions convert a binary clearance into a string of the form:

0xclearance_hexadecimal_value

The h_alloc() function allocates memory for the hexadecimal value type for use by bsltoh_r() and bcleartoh_r().

Valid values for type are:

SUN_SL_ID

label is a binary sensitivity label.

SUN_CLR_ID

label is a binary clearance.

The h_free() function frees memory allocated by h_alloc().

Return Values

These functions return a pointer to a string that contains the result of the translation, or (char *)0 if the parameter is not of the required type.

Attributes

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

ATTRIBUTE TYPE
ATTRIBUTE VALUE
Interface Stability
Obsolete
MT-Level
MT-Safe with exceptions

The bsltoh(), bcleartoh(), bsltoh_r(), bcleartoh_r(), h_alloc(), and h_free() functions are Obsolete. Use the label_to_str(3TSOL) function instead.

The bsltoh() and bcleartoh() functions share the same statically allocated string storage. They are not MT-Safe. Subsequent calls to any of these functions will overwrite that string with the newly translated string. The bsltoh_r() and bcleartoh_r() functions should be used in multithreaded applications.

See also

atohexlabel(1M), hextoalabel(1M) ,label_to_str(3TSOL), libtsol(3LIB) , attributes(5), labels(5)

Notes

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