tsolprof(4) データベースエントリにアクセスするインタフェースには、2 種類あります。get*str() は、文字列に対する profstr_t 構造体のポインタでエントリを返します。get*ent() は、profent_t 構造体で情報を返します。この構造体では、コマンドとアクションの情報にリンクリストが使用されています。コマンドまたはアクションのリスト全体をステップ実行したい場合は、リンクリストを操作する方が簡単です。しかし、たとえばプロファイルの説明を確認するだけのように、データを詳しく確認する必要がない場合は、get*str() ルーチンの方が高速です。
profstr_t 構造体は、tsolprof データベースのエントリ情報を含みます。
フィールド |
内容 |
char *name; |
当該エントリのプロファイル名 |
char *desc; |
プロファイルの説明 |
char *auths; |
コンマで区切られた承認 ID |
char *actions; |
セミコロンで区切られた CDE アクションの説明 |
char *cmds; |
セミコロンで区切られたコマンドの説明 |
profent_t 構造は、tsolprof(4) データベースのエントリ情報を含みます。アクションとコマンドの情報は、リンクリストで返されます。
フィールド |
内容 |
char *name; |
当該エントリのプロファイル名 |
char *desc; |
プロファイルの説明 |
char *auths; |
コンマで区切られた承認 ID |
profact_t *actions; |
プロファイル内の CDE アクションのリンクリスト |
profcmd_t *cmds; |
プロファイル内のコマンドのリンクリスト |
profact_t 構造体は、アクションのリンクリストを含みます。
フィールド |
内容 |
char *actname |
アクション名 |
char *argclass |
引数のクラス |
char *argtype |
引数の種類 |
char *argmode |
引数のモード |
char *argcount |
引数の数 |
char *privs |
特権 |
char *euid |
実効ユーザー ID |
char *egid |
実効グループ ID |
char *min |
割り当てられたラベル範囲における最下位のラベル |
char *max |
割り当てられたラベル範囲における最上位のラベル |
profcmd_t 構造体は、コマンドのリンクリストを含みます。
フィールド |
内容 |
char *dir |
コマンドが常駐するディレクトリ |
char *file |
コマンドファイルの名前 |
char *privs |
特権 |
char *euid |
実効ユーザー ID |
char *egid |
実効グループ ID |
char *min |
割り当てられたラベル範囲における最下位のラベル |
char *max |
割り当てられたラベル範囲における最上位のラベル |