Trusted Solaris 開発ガイド

有効な認可上限

有効な認可上限とは、label_encodings(4) ファイルで定義されている認可上限を指します。認可上限が有効であるかを検査するには、bclearvalid(3) ルーチンを呼び出してください。TS A B で動作しているプロセスはこの認可上限と等しく、特権なしでこの処理を実行できます。

#include <tsol/label.h>
 main()
 {
 	int			retval, error;
 	bclear_t			bclear;
 	char			*string = "TS ABLE BAKER";

 	retval = stobclear(string, &bclear, NEW_LABEL, &error);
 	retval = bclearvalid(&bclear);
 	printf("Return value = %d¥n", retval);
 }

printf(1) 文によって、次のように出力されます。1 は、認可上限が有効であることを示します。-1 は、label_encodings ファイルがアクセス不可であることを示します。0 は、ラベルが有効でないか、プロセスの機密ラベルが認可上限より優位でなく sys_trans_label 特権が有効でないことを示します。

Return value = 1