Trusted Solaris 開発ガイド

ソケットと TLI

Trusted Solaris 7 は、シングルレベルポートとマルチレベルポート上で、Berkeley ソケットとトランスポートレイヤーインタフェース (TLI) を使用したネットワーク通信をサポートします。システムコールの UNIX アドレスファミリは、完全に解決されたパス名によって指定された特殊ファイルを使用して、同じホスト上にプロセス間接続を確立します。システムコールのインターネットアドレスファミリは、IP アドレスとポート番号を使用して、ネットワーク上のプロセス間接続を確立します。

PAF_DISKLESS_BOOT プロセス属性フラグは、ディスクレスブートサーバーをサポートします。このフラグがオンの場合、ネットワークパケットヘッダー内のセキュリティ属性情報は送信されません。プロセスの属性フラグの取得と設定は、第 2 章「プログラミングインタフェースの概要」を参照してください。

UNIX アドレスファミリ

UNIX アドレスファミリのインタフェースでは、1 つのファイルに対し 1 つのサーバーバインド (結合) しか確立できません。マルチレベルポート接続を行う場合、サーバープロセスの有効セットに net_mac_read 特権が必要です。シングルレベルのポート接続が確立される場合には、サーバープロセスはソケットに対する必須同位読み取り権を必要とし、クライアントプロセスは必須同位書き込み権を必要とします。両プロセスとも、ファイルに対する必須アクセス権と任意アクセス権が必要です。ファイルに対するアクセスが拒否される場合、拒否されたプロセスは、有効セットに適切なファイル特権を入れてアクセス権を取得する必要があります。

サーバープロセスは、同じ MLD 内の複数の SLD にある同じ名前のファイルを使用して、複数のシングルレベルバインドを確立できます。この方法は、マルチレベルポート接続と異なり、並列のシングルレベルポート接続 (多重インスタンス化されたポート) を設定し、指定されたシングルレベルディレクトリに対する任意アクセスまたは必須アクセスが拒否されないかぎり特権を必要としません。第 8 章「マルチレベルディレクトリ」を参照してください。

インターネットアドレスファミリ

インターネットアドレスファミリでは、プロセスは、特権を持つポート番号または特権のないポート番号に対する、シングルラベルまたはマルチラベルの接続を確立できます。特権を持つポート番号にマルチレベルポート接続を行う場合には、net_mac_read 特権のほかに net_priv_addr 特権が必要です。