有効な認可上限とは、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