Trusted Solaris 開発ガイド

プログラミングインタフェース宣言

これらのプログラミングインタフェースを使用すると、System V IPC オブジェクトのラベルを管理できます。従来のラベルなしインタフェースは、現在も有効であり使用できます。Trusted Solaris 7 のこれらの拡張機能では、ラベル情報にアクセスすることができます。

メッセージ待ち行列

getmsgqcmwlabel(2) ルーチンは、メッセージ待ち行列の CMW ラベルを取得します (情報ラベル部は未定義)。詳細は、getmsgqcmwlabel(2) のマニュアルページを参照してください。

msggetl(2) ルーチンは、指定された機密ラベルでメッセージ記述子を作成します。

詳細は、msgop(2)msgget(2)msgctl(2) のマニュアルページを参照してください。

int		getmsgqcmwlabel(					int msqid,
 							bclabel_t *cmwlabel);

 int 		msggetl(					key_t key,
 							int msgflg,
 							bslabel_t *senslabel);

 int		msgsndl(					int msqid,
 							const void *msgp,
 							size_t msgsz,
 							int msgflg,
 							bilabel_t *inflabel);

 int		msgrcvl(					int msqid,
 							void *msgp,
 							size_t msgsz,
 							long msgtyp,
 							int msgflg,
 							bilabel_t *inflabel);

セマフォセット

getsemcmwlabel(2) ルーチンは、セマフォセットの CMW ラベルを取得します。詳細は、getsemcmwlabel(2) のマニュアルページを参照してください。

semgetl(2) ルーチンは、指定された機密ラベルでセマフォセットを作成します。詳細は、semgetl(2) のマニュアルページを参照してください。

semopl(2) ルーチンは、指定されたセマフォセットに対してセマフォ処理を実行し、そのオペレーションの情報ラベルをユーザーが指定するようにします。詳細は、semopl(2) のマニュアルページを参照してください。

int		getsemcmwlabel(					int semid,
 							bclabel_t *cmwlabel);

 int		semgetl(					key_t key,
 							int nsems,
 							int semflg,
 							bslabel_t *senslabel);

 int		semopl(					int semid,
 							struct sembuf *sops,
 							size_t nsops,
 							bilable_t *inflabel);

共有メモリー領域

getshmcmwlabel(2) ルーチンは、共有メモリー領域の CMW ラベルを取得します。詳細は、getshmcmwlabel(2) のマニュアルページを参照してください。

shmgetl(2) ルーチンは、指定された機密ラベルで共有メモリー領域を作成します。詳細は、shmgetl(2) のマニュアルページを参照してください。

int		getshmcmwlabel(					int shmid,
 							bclabel_t *cmwlabel);

 int 		shmgetl(					key_t key,
 							size_t size,
 							int shmflg,
 							bslabel_t *senslabel);