EN JA
SDPD(8)
SDPD(8) FreeBSD System Manager's Manual SDPD(8)

名称

sdpdBluetooth サービス発見プロトコル (Service Discovery Protocol) デーモン

書式

sdpd [ -dh][ -c path][ -g group][ -u user]

解説

sdpd デーモンは、ホスト上に登録された Bluetooth サービスの経過を追って、リモート Bluetooth デバイスからサービス発見 (Service Discovery) 問い合わせに応答します。

なんらかのサービスを使用するためには、リモート Bluetooth デバイスは SDP PSM (0x0001) で Bluetooth L2CAP 接続上で、サービス検索 (Service Search) とサービス属性 (Service Attribute) またはサービス検索属性 (Service Search Attribute) 要求を送信する必要があります。 sdpd デーモンは、サービスデータベース (Service Database) で適合するサービスレコード (Service Record) を見つけようと試み、適切な応答を返送します。リモートデバイスは、次に、応答を処理して、すべての必要な情報を抽出して、サービスを利用するために別々の接続を行います。

ホストで実行している、Bluetooth アプリケーションはローカル sdpd デーモンでサービスを登録します。サービス登録、サービス削除、およびサービス変更のような操作は、制御ソケット上で実行されます。制御ソケット上で browse コマンドを発行することによって sdpcontrol(8)sdpd サービスデータベース (Service Database) の全体の内容について問い合わせることは可能です。

コマンドラインオプションは次の通りです:

-d
制御端末から、デタッチしません。
-c path
制御ソケットへのパスを指定します。デフォルトのパスは /var/run/sdp です。
-g group
sdpd がその初期化の後に、実行すべきグループを指定します。値はグループ名か数値グループ ID のいずれかで指定できます。 sdpd がルートとして開始された場合にだけ、これは動作します。デフォルトのグループ名は“ nobody”です。
-h
使用法のメッセージを表示して、終了します。
-u user
sdpd がその初期化の後に、実行すべきユーザを指定します。値はユーザ名か数値ユーザ ID のいずれかで指定できます。 sdpd がルートとして開始された場合にだけ、これは動作します。デフォルトのユーザ名は“ nobody”です。

警告

sdpd デーモンはワイルドカードの BD_ADDR で着信 L2CAP 接続を listen (接続を受け付け) します。

同じホストに接続された複数の Bluetooth デバイスの場合には、どのサービスがどの Bluetooth デバイスに“バインド”されるべきであるかを指定することは可能です。そのような割り当てはサービス登録時に行われるべきです。

サービスを登録するか、削除するか、または変更する要求は、制御ソケットを通してのみ行うことができます。 sdpd デーモンは、ピアの資格証明をチェックして、アプリケーションに“ root”ユーザ ID と同じ実効ユーザ ID がある場合にだけ、要求を受け付けます。

sdpd デーモンは複製されたサービスレコード (Service Record) をチェックしません。それはサービス登録 (Service Register) 要求で送信されたサービスデータで最小のチェックのみを実行します。サービスを登録する前に、アプリケーションは RFCOMM チャネルなどのようなすべての必要なリソースを取得しなければならないと仮定します。

関連ファイル

/var/run/sdp

関連項目

sdp(3), sdpcontrol(8)

作者

Maksim Yevmenkin <m_evmenkin@yahoo.com>

バグ

たぶんあるでしょう。見つけたなら、報告してください。
January 13, 2004 FreeBSD