Trusted Solaris 開発ガイド

CMW ラベル

CMW ラベルの ASCII 出力形式を、次に示します。

情報ラベル [機密ラベル]

次の例は、CMW ラベルを ADMIN_HIGH [ADMIN_HIGH] に初期化し、内部表示と外部表示を出力します。このプロセスは ADMIN_HIGH で動作するため、ADMIN_HIGH [ADMIN_HIGH] ラベルを変換するのに特権を必要としません。

#include <tsol/label.h>

 main()
 {
 	int 			retval, length = 0;
 	char 			*string1 = (char *)0, *string2 = (char *)0;
 	bclabel_t			cmwlabel;

 	bclhigh(&cmwlabel);
 	retval = bcltos(&cmwlabel, &string1, length, VIEW_INTERNAL);
 	printf("View Internal = %s¥n", string1);

 	retval = bcltos(&cmwlabel, &string2, length, VIEW_EXTERNAL);
 	printf("View External = %s¥n", string2);
 }

printf 文によって、次のように出力されます。


View Internal = ADMIN_HIGH [ADMIN_HIGH]

View External = TOP SECRET CC SB BRAVO1 BRAVO3 SA ALPHA1 
PROJECT X/PROJECT Y LIMDIS ORCON ORG X/ORG Y D/E ALL EYES 
NOFORN [TS A B SA SB CC]

注 -

bclhigh(3) と、bclmanifest(3) ファミリの他の関数を使用すると CMW ラベルの情報ラベルの値を操作できますが、この値をオブジェクトに対して設定することはできません。デフォルトで、オブジェクトの情報ラベルはすべて ADMIN_LOW です。