このプロセスは、プロセス認可上限を別の値に設定する場合、その新しい値がプロセス自身の CMW ラベルの機密ラベル部と同等でないときには、proc_setclr 特権を必要とします。新しいプロセス認可上限は、 setclearance(2) システムコールを使用して設定します。次の例は、認可上限の構造を ADMIN_HIGH に初期化し、それを setclearance(2) システムコールに渡します。
#include <tsol/label.h> main() { int retval; bclear_t hiclear, undef, loclear; bclearhigh(&hiclear); /* 有効セット内で proc_setclr をオン (有効) にする */ retval = setclearance(&hiclear); /* proc_setclr 特権をオフ (無効) にする */ printf("Retval = %d¥n", retval); }
printf(1) 文によって、次のように出力されます。
Retval = 0