Trusted Solaris 開発ガイド

システムコール

システムコールを使用して、SLD 名、MLD 装飾、SLD または MLD のファイル属性情報などを取得できます。

SLD 名の取得

getsldname(2) システムコールは、 path_name (パス名) に対する SLD 名を、指定された slabel (機密ラベル) で取得します。詳細は、getsldname(2) のマニュアルページを参照してください。fgetsldname(2) システムコールは、ファイル記述子を使用します。

int		getsldname(				const char *path_name,
 						const bslabel_t *slabel,
 						char *name_buf,
 						const int len);

 int		fgetsldname(				const int fd,
 						const bslabel_t *slabel_p,
 						char *name_buf,
 						const int len);

MLD 装飾の取得

getmldadorn(2) システムコールは、path_name に対する完全な装飾名を取得します。fgetmldadorn(2) システムコールは、ファイル記述子を使用します。詳細は、getmldadorn(2) のマニュアルページを参照してください。

int		getmldadorn(					const char *path_name,
 							char *adorn_buf[MLD_ADORN_MAX]);
 int		fgetmldadorn(					const int fd,
 							char adorn_buf[MLD_ADORN_MAX]);

SLD または MLD の属性情報の取得

mldstat(2) システムコールは、path_name によって指定された MLD のファイル属性情報を返します。mldlstat(2) システムコールは、MLD シンボリックリンクの情報を返します。詳細は、mldstat(2) のマニュアルページを参照してください。

int		mldstat(					const char *path_name,
 							struct stat *stat_buf);

 int		mldlstat(					const char *path_name,
 							struct stat *stat_buf);

MLD の属性フラグの取得

次のシステムコールの詳細は、第 2 章「プログラミングインタフェースの概要」「ファイルシステムのセキュリティ属性フラグの取得と設定」を参照してください。また、getfattrflag(2) のマニュアルページも参照してください。

int			mldgetfattrflag(								const char *path, secflgs_t *flags)
 int			mldsetfattrflag(								const char * path,
 											secflgs_t which,
 											secflgs_t flags))