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