Trusted Solaris 開発ガイド

i ノードからの属性の取得

次のコードは、file (ファイル) の CMW ラベル (FSA_LABEL) を取得し、それを buffer (バッファー) に返します。

#include <tsol/fsattr.h>
 #include <tsol/label.h>

 main()
 {
 	char 		*file = "/export";
 	char 		buffer [3*1024], *string = (char *)0;
 	int 		length, retval;

 	length = sizeof(buffer);
 	retval = getfsattr(file, FSA_LABEL, buffer, length);
 	retval = bcltos((bclabel_t *)buffer, &string, 0, VIEW_INTERNAL);
 	printf("/export CMW label = %s ¥n", buffer);
 }

printf 文によって、次のように出力されます。

/export CMW label = ADMIN_LOW [ADMIN_LOW]

明示的定数の値

明示的定数の値は、次のいずれかになります。

FSA_ACLCNT - ファイルシステムアクセスのアクセス制御リスト (ACL) 数

FSA_ACL - ファイルシステムアクセスの ACL

FSA_DFACLCNT - ファイルシステムのデフォルト ACL 数

FSA_DFACL - ファイルシステムのデフォルト ACL

FSA_APRIV - ファイルシステムの許容特権セット

FSA_FPRIV - ファイルシステムの強制特権セット

FSA_LABEL - ファイルシステムの CMW ラベル

FSA_AFLAGS - ファイルシステムの属性フラグ。「ファイルシステムのセキュリティ属性フラグの取得と設定」を参照してください。

FSA_LBLRNG - ファイルシステムのラベル範囲

FSA_MLDPFX - ファイルシステムのマルチレベルディレクトリの接頭辞文字列

FSA_APSACNT - プロセス監査の事前選択マスク内のクラスの数

FSA_APSA - プロセス監査の事前選択マスク内のクラス。プロセスは、この情報を取得する場合、有効特権セット内で file_audit 特権を必要とする。詳細は、「特権と承認」を参照してください。

明示的定数の内容

CMW ラベル、ファイルシステムのラベル範囲、ファイル特権、およびマルチレベルディレクトリにアクセスするプログラミングインタフェースの概要は、「Trusted Solaris 7 のセキュリティ機構」で述べています。詳細は、該当するそれぞれの章を参照してください。