この節では、システムセキュリティ構成とセキュリティ属性情報をチェックするプログラミングインタフェースとコード例を示します。これらの呼び出しにより処理されるデータの説明は、該当する章に示されています。たとえば、第 5 章「ラベル」ではラベルについて、第 3 章「特権」では特権について説明しています。
パス名を使用してファイルにアクセスするインタフェースと、ファイル記述子を使用してファイルにアクセスする別のインタフェースが存在する場合、構文はほとんど変わらないため、例ではパス名だけを示します。
この節で示す例はすべて、-ltsol ライブラリを使用してコンパイルします。
このシステムコールは、システムセキュリティ構成の情報を取得します。詳細は、secconf(2) のマニュアルページを参照してください。
long secconf( int name);
これらのシステムコールは、パス名またはファイル記述子を使用してファイルシステム属性情報を取得します。詳細は、getfsattr(2) のマニュアルページを参照してください。
int getfsattr( char *path, u_long type, void *buf_P, int len); int fgetfsattr( int fd, u_long type, void *buf_P);
これらのシステムコールは、パス名またはファイル記述子を使用してファイルシステムのセキュリティ属性フラグの情報を取得します。詳細は、getfattrflag(2) のマニュアルページを参照してください。
int fgetfattrflag( const char *path, secflgs_t *flags); int setfattrflag( const char *path, secflgs_t which, secflgs_t flags); int fsetfattrflag( int fildes, secflgs_t *flags); int getfattrflag( int fildes, secflgs_t *flags); int mldgetfattrflag( const char *path, secflgs_t *flags) int mldsetfattrflag( const char * path, secflgs_t which, secflgs_t flags))
これらのシステムコールは、プロセスのセキュリティ属性フラグの取得と設定を行います。getpattr(2) のマニュアルページを参照してください。
int getpattr( pattr_type_t type, pattr_flag_t *value); int setpattr( pattr_type_t type, pattr_flag_t value);