Solaris slpd は、プロキシ登録ファイルを使用したレガシーサービスの通知をサポートしています。プロキシ通知ファイルは、移植性のあるフォーマットで書かれたサービス通知のリストです。
サービス通知は、サービス URL 行、オプションのスコープ行、一連の属性の定義から構成されます。slpd はファイルからプロキシ通知を読み、その通知を登録し、SA クライアントと同じようにそれらを保持します。次のリストは、プロキシ登録ファイルの例を示します。行番号は説明のために付け加えたもので、ファイルの一部ではありません。
1 #Advertise legacy printer. 2 3 service:lpr://bizserver/mainspool,en,65535 4 scope=eng,corp 5 make-model=Laserwriter II 6 location-description=B16-2345 7 color-supported=monochromatic 8 fonts-supported=Courier,Times,Helvetica 9 10 9 10 #Advertise FTP server 11 12 ftp://archive/usr/src/public,en,65535,src-server 13 content=Source code for projects 14 |
この例では、LPR プロトコルをサポートするレガシーのプリンタおよび FTP サーバーが通知されています。
1 および 10 行 |
シャープ記号 (#) で始まるコメント行で、ファイルの動作には影響しない。コメント行の最後まですべてが無視される |
2、9、14 の空行 |
通知の区切り |
3 および 12 行 |
サービス URL |
4 行 |
スコープの指定 |
5〜8 および 13 行 |
属性の定義 |
サービス URL 行には、3 つの必須フィールドと 1 つのオプションフィールドがあり、コンマで区切られています。
最初のフィールド - 通知されるサービスの URL が書かれる。サービス URL には、一般的な URL または service: URL のいずれかを使用できる。service: URL の指定方法の仕様については、RFC 2609 を参照
2 番目のフィールド - 通知の言語を指定する。前述の例では、フィールドは英語 en を指定している。この言語は RFC 1766 の言語タグである
3 番目のフィールド - 登録の有効期限を秒単位で規定する。有効期限は符号なしの 16 ビット整数に限定される。有効期限が最大値 65535 より小さい場合は、slpd は他の通知のように通知をタイムアウトする。有効期限が 65535 の場合、slpd は定期的に通知を更新し、slpd が存在する限り有効期限は永続するとされる
実際には、永続しないプロキシ登録は実用性が限られています。これは、いったん slpd が通知を削除すると、UA にアクセスできなくなるためです。例に挙げた通知は両方とも永続します。
サービスタイプフィールド (省略可) - サービスタイプの定義に使用する。サービス URL が一般的な URL の場合は、URL が通知されるサービスタイプを変更できる。前述のプロキシ登録ファイルの例では、12 行目に一般的な FTP URL が含まれていて、オプションの型フィールドを使用して、この URL はサービスタイプ名 src-server で通知される。デフォルトでは service: 接頭辞はタイプ名には付かない
URL 行の後に、オプションのスコープ行があります。スコープ行はトークン scope と等号、およびコンマで区切られたスコープ名のリストで構成されます。このスコープ名は、net.slp.useScopes 構成プロパティで定義されたものです。ホストに構成されたスコープのリストに含まれるスコープのみ、このスコープリストに表示されます。スコープ行がない場合は、slpd が構成されているすべてのスコープに登録が行われています。スコープ行は URL 行のすぐ後になければなりません。その他の場所にある場合、スコープ行は属性として認識されます。
オプションのスコープ行の後は、サービス通知の大部分は属性と値リストのペアの行で構成されます。各ペアは属性タグ、等号、コンマで区切られた属性値のリスト (属性が単一値の場合は単一値) で構成されます。前述のプロキシ登録ファイルの例では、8 行目が複数の値を持つ値リストの例で、これ以外の値リストはすべて単一値を持っています。属性名および値のフォーマットは、ネットワークを通過する SLP メッセージと同じです。
フォーマットの説明については、RFC 2608 を参照してください。プロキシ登録ファイルは、ASCII でない文字のエスケープに、構成ファイルと同じ取り決めをサポートします。プロキシ登録ファイルのフォーマットについては、RFC 2614 を参照してください。