この章で説明しているプログラミングインタフェースを使用するには、次のヘッダーファイルが必要です。
#include <tsix/t6attrs.h>
この章の例は、次のライブラリを使用してコンパイルしています。
-lsocket -lt6 -ltsol
t6attr_t データ構造体は、セキュリティ属性の全セットを保持できます。
t6attr_id_t 構造体は、全セキュリティ属性値のセットを示す列挙型の定数を含み (保持し) ます。t6attr_t 型の変数は、これらの定数を使用して初期化します。ほとんどの定数は、次に示すように固定バイトサイズです。しかし、T6_GROUPS は、その値の実際のサイズを示す可変サイズです。
t6set_attr(3N) ルーチンは、次に示す適切な型にキャストされるべき任意の型のパラメータを受け入れます。
t6get_attr(3N) ルーチンは、次に示す適切な型に変換されるべき任意の型の変数を返します。
列挙型の定数 |
内容 |
データ型 |
バイトサイズ |
T6_SL |
機密ラベル |
bslabel_t |
36 |
T6_SESSION_ID |
ネットワークセッション ID |
sid_t |
4 |
T6_CLEARANCE |
認可上限 |
bclear_t |
36 |
T6_IL |
情報ラベル |
bilabel_t |
68 |
T6_PRIVILEGES |
有効な特権 |
priv_set_t |
16 |
T6_AUDIT_ID |
監査 ID |
au_id_t |
4 |
T6_PID |
プロセス ID |
pid_t |
4 |
T6_AUDIT_INFO |
その他の監査情報 |
auditinfo_t |
24 |
T6_UID |
実効ユーザー ID |
uid_t |
4 |
T6_GID |
実効グループ ID |
gid_t |
4 |
T6_GROUPS |
追加グループ ID |
gid_t |
可変 |
T6_PROC_ATTR |
プロセスの属性フラグ |
pattr_t |
4 |
t6mask_t データ構造は、現在の処理対象のセキュリティ属性セットを示します。t6mask_t 型の変数を初期化するには、次に示す列挙型の値を割り当てます。
T6M_SL |
機密ラベル |
T6M_SESSION_ID |
ネットワークセッション ID |
T6M_CLEARANCE |
認可上限 |
T6M_IL |
情報ラベル |
T6M_PRIVILEGES |
有効な特権セット |
T6M_AUDIT_ID |
監査 ID |
T6M_PID |
プロセス ID |
T6M_AUDIT_INFO |
端末 ID と事前選択マスク |
T6M_UID |
実効ユーザー ID |
T6M_GID |
実効グループ ID |
T6M_GROUPS |
追加グループ ID |
T6M_NO_ATTRS |
属性なし |
T6M_ALL_ATTRS |
すべての属性 |