April 10, 2007 RFCOMM_SPPD 1

### NAME

rfcomm_sppd - RFCOMM Serial Port Profile daemon

### SYNOPSIS

rfcomm_sppd [-d device] [-m mode] [-s service] [-t tty] {-a address | -c channel}

### DESCRIPTION

The rfcomm_sppd utility is a Serial Port Profile daemon, providing serial access over an RFCOMM connection to a remote device. rfcomm_sppd can work in client or server mode.

In client mode, rfcomm_sppd initiates an RFCOMM connection to the service at the remote address.

In server mode, rfcomm_sppd registers the service with the local SDP server and listens on the specified RFCOMM channel for an incoming connection.

The options are as follows:

-a address
  Client mode. Specify the address of the remote RFCOMM device. The address can be specified as BD_ADDR or name. If given as a name, then the rfcomm_sppd utility will attempt to resolve the name via bt_gethostbyname(3).

-c channel
  Server mode. Specify the RFCOMM channel number to listen on. rfcomm_sppd will register the service with the local sdpd(8) daemon. Note that registering services with sdpd(8) is a privileged operation.

-d device
  Use the local device with the specified address. The device can be specified by BD_ADDR or device name. See btconfig(8) for a list of available devices. If no device is specified, the connection will be set up on a system determined device.

-m mode
  Set connection link mode. Supported modes are:

  auth
    require devices be paired.
  encrypt
    auth, plus enable encryption.
  secure
    encryption, plus change of link key.

-s service
  This is the service class that will be searched for on the remote device. If no service is given, the default "Serial Port service class will be used. Known service classes are:

  DUN
    Dialup Networking
  LAN
    LAN access using PPP
  SP
    Serial Port

  In client mode, the service class may be given as a channel number, for instances where the remote device does not provide Service Discovery.

-t tty
  Slave pseudo tty name. If this option is given, rfcomm_sppd will detach from the controlling process after the Bluetooth connection is made, and operate over the named pty(4) pair. Otherwise, stdin/stdout will be used.

### EXIT STATUS

### FILES

```/dev/pty[p-sP-S][0-9a-v]`
  master pseudo terminals
```/dev/tty[p-sP-S][0-9a-v]`
  slave pseudo terminals

### EXAMPLES

```rfcomm_sppd``-a` `00:01:02:03:04:05``-s` `1``-t``/dev/ttyp1`

Will open an RFCOMM connection to the server at ```00:01:02:03:04:05` on channel ```1`. Once the connection has been established, rfcomm_sppd will detach and ```/dev/ttyp1` can be used to communicate with the remote serial port on the server, e.g. with the use of

```cu``-l``/dev/ttyp1`

In order to use rfcomm_sppd to automatically create a secured link for pppd(8), use
```pty` `rfcomm_sppd``-a` `00:01:02:03:04:05``-s` `DUN``-m` `secure".blm Pp`

in your pppd(8) configuration file.

### SEE ALSO

bluetooth(3), bluetooth(4), pty(4), btconfig(8), pppd(8), sdpd(8)

### HISTORY

The rfcomm_sppd program first appeared in FreeBSD and was ported to NetBSD4.0 by Iain Hibbert
under the sponsorship of Itronix, Inc
.

### AUTHORS

Maksim Yevmenkin <m_evmenkin@yahoo.com>
, Iain Hibbert

### BUGS

Please report if found.