Trusted Solaris 開発ガイド

ウィンドウの CMW ラベルの設定

次の例は、ウィンドウの CMW ラベルを設定します。新しい機密ラベルは、ウィンドウの機密ラベルおよびプロセスの機密ラベルよりも優位です。クライアントは、それ自身よりも優位なラベルを変換する場合、有効セットに sys_trans_label 特権を必要とします。また、そのウィンドウの機密ラベルを変更するには、win_upgrade_sl 特権を必要とします。

/* 機密ラベルを ASCII 文字列からバイナリに変換し */
/* 有効セット内で sys_trans_label をオン (有効) にする */
 	retval = stobsl(&string4, &senslabel, NEW_LABEL, &error);
/* sys_trans_label をオフ (無効) にする */
/* cmwlabel 構造体に機密ラベルを設定する */
 	setcsl(&cmwlabel, &senslabel);

/* CMW ラベルの機密ラベル部に新しい値を設定し */
/* 有効セット内で win_upgrade_sl をオン (有効) にする */
 	retval = XTSOLsetResLabel(display, window, IsWindow, &cmwlabel, SETCL_SL);
/* win_upgrade_sl をオフ (無効) にする */