Trusted Solaris 開発ガイド

プロセス認可上限の設定

このプロセスは、プロセス認可上限を別の値に設定する場合、その新しい値がプロセス自身の 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