xref: /freebsd/usr.sbin/bluetooth/sdpd/sdpd.8 (revision b2c76c41)
1.\" Copyright (c) 2004 Maksim Yevmenkin <m_evmenkin@yahoo.com>
2.\" All rights reserved.
3.\"
4.\" Redistribution and use in source and binary forms, with or without
5.\" modification, are permitted provided that the following conditions
6.\" are met:
7.\" 1. Redistributions of source code must retain the above copyright
8.\"    notice, this list of conditions and the following disclaimer.
9.\" 2. Redistributions in binary form must reproduce the above copyright
10.\"    notice, this list of conditions and the following disclaimer in the
11.\"    documentation and/or other materials provided with the distribution.
12.\"
13.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
14.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
17.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
19.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
20.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
21.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
22.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
23.\" SUCH DAMAGE.
24.\"
25.\" $Id: sdpd.8,v 1.1 2004/01/13 19:31:54 max Exp $
26.\"
27.Dd January 13, 2004
28.Dt SDPD 8
29.Os
30.Sh NAME
31.Nm sdpd
32.Nd Bluetooth Service Discovery Protocol daemon
33.Sh SYNOPSIS
34.Nm
35.Op Fl dh
36.Op Fl c Ar path
37.Op Fl g Ar group
38.Op Fl u Ar user
39.Sh DESCRIPTION
40The
41.Nm
42daemon keeps track of the Bluetooth services registered on the host
43and responds to Service Discovery inquiries from the remote Bluetooth devices.
44.Pp
45In order to use any service remote Bluetooth device need to send Service
46Search and Service Attribute or Service Search Attribute request over
47Bluetooth L2CAP connection on SDP PSM (0x0001).
48The
49.Nm
50daemon will try to find matching Service Record in its Service Database
51and will send appropriate response back.
52The remote device then will process the response, extract all required
53information and will make a separate connection in order to use the service.
54.Pp
55Bluetooth applications, running on the host, register services with
56the local
57.Nm
58daemon.
59Operation like service registration, service removal and service change are
60performed over the control socket.
61It is possible to query entire content of the
62.Nm
63Service Database with
64.Xr sdpcontrol 8
65by issuing
66.Cm browse
67command on the control socket.
68.Pp
69The command line options are as follows:
70.Bl -tag -width indent
71.It Fl d
72Do not detach from the controlling terminal.
73.It Fl c Ar path
74Specify path to the control socket.
75The default path is
76.Pa /var/run/sdp .
77.It Fl g Ar group
78Specifies the group the
79.Nm
80should run as after it initializes.
81The value specified may be either a group name or a numeric group ID.
82This only works if
83.Nm
84was started as root.
85The default group name is
86.Dq Li nobody .
87.It Fl h
88Display usage message and exit.
89.It Fl u Ar user
90Specifies the user the
91.Nm
92should run as after it initializes.
93The value specified may be either a user name or a numeric user ID.
94This only works if
95.Nm
96was started as root.
97The default user name is
98.Dq Li nobody .
99.El
100.Sh FILES
101.Bl -tag -width ".Pa /var/run/sdp" -compact
102.It Pa /var/run/sdp
103.El
104.Sh SEE ALSO
105.Xr sdp 3 ,
106.Xr sdpcontrol 8
107.Sh AUTHORS
108.An Maksim Yevmenkin Aq Mt m_evmenkin@yahoo.com
109.Sh CAVEATS
110The
111.Nm
112daemon
113will listen for incoming L2CAP connections on a wildcard BD_ADDR.
114.Pp
115In case of multiple Bluetooth devices connected to the same host it is
116possible to specify which services should be
117.Dq bound
118to which Bluetooth device.
119Such assignment should be done at service registration time.
120.Pp
121Requests to register, remove or change service can only be made via the
122control socket.
123The
124.Nm
125daemon will check peer's credentials and will only accept the request if
126the application has the same effective user ID as the
127.Dq Li root
128user ID.
129.Pp
130The
131.Nm
132daemon does not check for duplicated Service Records.
133It only performs minimal checking on the service data sent in the Service
134Register request.
135It is assumed that application must obtain all required resources such
136as RFCOMM channels etc., before registering the service.
137.Sh BUGS
138Most likely.
139Please report if found.
140