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 45The 46.Nm 47daemon keeps track of the Bluetooth services registered on the host 48and responds to Service Discovery inquiries from the remote Bluetooth devices. 49.Pp 50In order to use any service remote Bluetooth device need to send Service 51Search and Service Attribute or Service Search Attribute request over 52Bluetooth L2CAP connection on SDP PSM (0x0001). 53The 54.Nm 55daemon will try to find matching Service Record in its Service Database 56and will send appropriate response back. 57The remote device then will process the response, extract all required 58information and will make a separate connection in order to use the service. 59.Pp 60Bluetooth applications, running on the host, register services with 61the local 62.Nm 63daemon. 64Operation like service registration, service removal and service change are 65performed over the control socket. 66It is possible to query entire content of the 67.Nm 68Service Database with 69.Xr sdpquery 1 70by issuing 71.Cm browse 72command on the control socket. 73.Pp 74The command line options are as follows: 75.Bl -tag -width indent 76.It Fl d 77Do not detach from the controlling terminal. 78.It Fl c Ar path 79Specify path to the control socket. 80The default path is 81.Pa /var/run/sdp . 82.It Fl G Ar group 83Grant permission to members of the 84.Ar group 85to modify the 86.Nm 87Service Database. 88.It Fl g Ar group 89Specifies the group the 90.Nm 91should run as after it initializes. 92The value specified may be either a group name or a numeric group ID. 93This only works if 94.Nm 95was started as root. 96The default group name is 97.Dq Li _sdpd . 98.It Fl h 99Display usage message and exit. 100.It Fl u Ar user 101Specifies the user the 102.Nm 103should run as after it initializes. 104The value specified may be either a user name or a numeric user ID. 105This only works if 106.Nm 107was started as root. 108The default user name is 109.Dq Li _sdpd . 110.El 111.Sh CAVEAT 112The 113.Nm 114daemon 115will listen for incoming L2CAP connections on a wildcard BD_ADDR. 116.Pp 117In case of multiple Bluetooth devices connected to the same host it is 118possible to specify which services should be 119.Dq bound 120to which Bluetooth device. 121Such assignment should be done at service registration time. 122.Pp 123Requests to register, remove or change service can only be made via the 124control socket. 125The 126.Nm 127daemon will check the peer's credentials and will only accept the request 128when the peer is the superuser, of if the peer is a member of the group 129specified with the 130.Fl G 131option. 132.Pp 133The 134.Nm 135daemon does not check for duplicated Service Records. 136It only performs minimal checking on the service data sent in the Service 137Register request. 138It is assumed that application must obtain all required resources such 139as 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 sdp 3 , 146.Xr sdpquery 1 147.Sh AUTHORS 148.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com 149.Sh HISTORY 150The 151.Nm 152daemon first appeared in 153.Fx 5.3 154and was imported into 155.Nx 4.0 156by 157.An Iain Hibbert 158under the sponsorship of 159.An Itronix, Inc. 160It was imported into 161.Dx 1.11 . 162.Sh BUGS 163Most likely. 164Please report if found. 165