次の例は、バイナリの CMW ラベルを 16 進に変換し、再び元に戻します。機密ラベルの変換と情報ラベルの変換はほとんど同じです。
#include <tsol/label.h>
#include <stdio.h>
main()
{
int retval;
bclabel_t hcmwlabel, hexcmw;
char *string;
getcmwplabel(&hcmwlabel);
if((string = bcltoh(&hcmwlabel)) != NULL)
printf("Hex string = %s¥n", string);
retval = htobcl(string, &hexcmw);
printf("Return Value = %d¥n", retval);
}
最初の printf 文により、バイナリ CMW ラベルが次のように 16 進形式で出力されます。
0xClearance hexadecimal value
2 番目の printf 文により、次のように出力されます。0 以外は、変換が成功したことを示します。
Return Value = 1