Deleted Added
full compact
rfcomm_pppd.8 (153331) rfcomm_pppd.8 (164240)
1.\" Copyright (c) 2001-2003 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 unchanged lines hidden (view full) ---

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: rfcomm_pppd.8,v 1.7 2003/09/07 18:32:11 max Exp $
1.\" Copyright (c) 2001-2003 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 unchanged lines hidden (view full) ---

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: rfcomm_pppd.8,v 1.7 2003/09/07 18:32:11 max Exp $
26.\" $FreeBSD: head/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.8 153331 2005-12-12 04:19:36Z emax $
26.\" $FreeBSD: head/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.8 164240 2006-11-13 01:13:28Z markus $
27.\"
28.Dd February 4, 2003
29.Dt RFCOMM_PPPD 8
30.Os
31.Sh NAME
32.Nm rfcomm_pppd
33.Nd RFCOMM PPP daemon
34.Sh SYNOPSIS

--- 8 unchanged lines hidden (view full) ---

43.Fl s
44.Op Fl dhS
45.Op Fl a Ar address
46.Fl C Ar channel
47.Fl l Ar label
48.Sh DESCRIPTION
49The
50.Nm
27.\"
28.Dd February 4, 2003
29.Dt RFCOMM_PPPD 8
30.Os
31.Sh NAME
32.Nm rfcomm_pppd
33.Nd RFCOMM PPP daemon
34.Sh SYNOPSIS

--- 8 unchanged lines hidden (view full) ---

43.Fl s
44.Op Fl dhS
45.Op Fl a Ar address
46.Fl C Ar channel
47.Fl l Ar label
48.Sh DESCRIPTION
49The
50.Nm
51daemon is a simple wrapper daemon that allows to use standard
51daemon is a simple wrapper daemon that allows the use of
52.Xr ppp 8
52.Xr ppp 8
53on RFCOMM connection.
53via an RFCOMM connection.
54It can operate in two modes: client and server.
55.Pp
54It can operate in two modes: client and server.
55.Pp
56In the client mode,
56In client mode,
57.Nm
58opens an RFCOMM connection to the specified server's
59.Ar BD_ADRR
60and
61.Ar channel .
57.Nm
58opens an RFCOMM connection to the specified server's
59.Ar BD_ADRR
60and
61.Ar channel .
62Once RFCOMM connection is established,
62Once the RFCOMM connection is established,
63.Nm
64executes
65.Xr ppp 8
66in
67.Fl direct
68mode with the specified
69.Ar label .
63.Nm
64executes
65.Xr ppp 8
66in
67.Fl direct
68mode with the specified
69.Ar label .
70The
70Likewise,
71.Xr ppp 8
71.Xr ppp 8
72in its turn operates over the RFCOMM connection just like it would operate
73over the standard serial port thus allowing user to
72operates over the RFCOMM connection just like it would over a standard serial
73port, thus allowing a user to
74.Dq "dial out"
75and connect to the Internet.
76.Pp
74.Dq "dial out"
75and connect to the Internet.
76.Pp
77In the server mode,
77In server mode,
78.Nm
79opens an RFCOMM socket and listens for incoming connections from remote clients.
80Once the new incoming connection is accepted,
81.Nm
82forks and executes
83.Xr ppp 8
84in
85.Fl direct
86mode with the specified
87.Ar label .
78.Nm
79opens an RFCOMM socket and listens for incoming connections from remote clients.
80Once the new incoming connection is accepted,
81.Nm
82forks and executes
83.Xr ppp 8
84in
85.Fl direct
86mode with the specified
87.Ar label .
88The
88Likewise,
89.Xr ppp 8
89.Xr ppp 8
90in its turn operates over the RFCOMM connection just like it would operate over
91the standard serial port thus providing network connectivity to remote clients.
90operates over the RFCOMM connection just like it would over a standard serial
91port, thus providing network connectivity to remote clients.
92.Pp
93The options are as follows:
94.Bl -tag -width indent
95.It Fl a Ar address
92.Pp
93The options are as follows:
94.Bl -tag -width indent
95.It Fl a Ar address
96In the client mode, this required option specifies the address of the remote
96In client mode, this required option specifies the address of the remote
97RFCOMM server.
97RFCOMM server.
98In the server mode, this option can be used to specify the local
98In server mode, this option can be used to specify the local
99address to listen on.
99address to listen on.
100By default, server will listen on
100By default, in server mode, the daemon will listen on
101.Dv ANY
102address.
103The address can be specified as BD_ADDR or name.
101.Dv ANY
102address.
103The address can be specified as BD_ADDR or name.
104If name was specified then the
104If a name was specified, the
105.Nm
106utility will attempt to resolve the name via
107.Xr bt_gethostbyname 3 .
108.It Fl C Ar channel
105.Nm
106utility will attempt to resolve the name via
107.Xr bt_gethostbyname 3 .
108.It Fl C Ar channel
109In both client and server modes, this required option specifies RFCOMM channel
110to connect to or listen on.
111In the server mode, RFCOMM channel should be a number between 1 and 30.
112In the client mode, RFCOMM channel could either be a number between 1 and 30
109In both client and server mode, this required option specifies the RFCOMM
110channel to connect to or listen on.
111In server mode, the channel should be a number between 1 and 30.
112In client mode, the channel could either be a number between 1 and 30
113or a service name.
114Supported service names are:
115.Cm DUN
113or a service name.
114Supported service names are:
115.Cm DUN
116(for DialUp Networking service) and
116(Dial-Up Networking) and
117.Cm LAN
117.Cm LAN
118(for LAN Access Using PPP service).
119If service name was specified instead of numeric RFCOMM channel then
118(LAN Access Using PPP).
119If a service name is used instead of a numeric channel number, then
120.Nm
120.Nm
121utility will try to obtain RFCOMM channel for the service via Service
122Discovery Protocol.
121will try to obtain an RFCOMM channel number via SDP
122(Service Discovery Protocol).
123.It Fl c
124Act as an RFCOMM client.
125This is the default mode.
126.It Fl d
127Do not detach from the controlling terminal, i.e., run in foreground.
128.It Fl h
129Display usage message and exit.
130.It Fl l Ar label
123.It Fl c
124Act as an RFCOMM client.
125This is the default mode.
126.It Fl d
127Do not detach from the controlling terminal, i.e., run in foreground.
128.It Fl h
129Display usage message and exit.
130.It Fl l Ar label
131In both client and server modes, this required option specifies which
131In both client and server mode, this required option specifies which
132.Xr ppp 8
133label will be used.
134.It Fl S
132.Xr ppp 8
133label will be used.
134.It Fl S
135In the server mode, register the Serial Port (SP) service in addition to the
136LAN Access Using PPP (LAN) service.
135In server mode, register the
136.Cm SP
137(Serial Port) service in addition to the
138.Cm LAN
139(LAN Access Using PPP) service.
140.Pp
137It appears that some cell phones are using the so-called
138.Dq "callback mechanism" .
139In this scenario, the user is trying to connect his cell phone to the Internet,
141It appears that some cell phones are using the so-called
142.Dq "callback mechanism" .
143In this scenario, the user is trying to connect his cell phone to the Internet,
140and user's host computer is acting as the gateway server.
144while the user's host computer is acting as the gateway server.
141It seems that it is not possible to tell the phone to just connect and start
145It seems that it is not possible to tell the phone to just connect and start
142using the LAN service.
146using the
147.Cm LAN
148service.
143Instead, the user's host computer must
144.Dq "jump start"
149Instead, the user's host computer must
150.Dq "jump start"
145the phone by connecting to the phone's SP service.
151the phone by connecting to the phone's
152.Cm SP
153service.
146What happens next is the phone kills the existing connection and opens another
147connection back to the user's host computer.
154What happens next is the phone kills the existing connection and opens another
155connection back to the user's host computer.
148The phone really wants to use LAN service, but for whatever reason it looks
149for the SP service on the user's host computer.
150This brain damaged behavior was reported for Nokia 6600 and Sony/Ericsson P900.
156The phone really wants to use the
157.Cm LAN
158service, but for whatever reason it looks for the
159.Cm SP
160service on the user's host computer.
161This brain-damaged behavior was reported for the Nokia 6600 and the
162Sony/Ericsson P900.
151.It Fl s
152Act as an RFCOMM server.
153.It Fl u Ar N
163.It Fl s
164Act as an RFCOMM server.
165.It Fl u Ar N
154This option maps directly onto
166This option maps directly to the
155.Fl unit
156.Xr ppp 8
167.Fl unit
168.Xr ppp 8
157command line option and tells
169command-line option and tells
158.Nm
159to instruct
160.Xr ppp 8
161to only attempt to open
162.Pa /dev/tun Ns Ar N .
170.Nm
171to instruct
172.Xr ppp 8
173to only attempt to open
174.Pa /dev/tun Ns Ar N .
163This option only works in the client mode.
175This option only works in client mode.
164.El
165.Sh PPP CONFIGURATION
166.Ss Important Notes on PPP Configuration
167Special attention is required when adding new RFCOMM configurations to the
168existing PPP configuration.
169Please keep in mind that PPP will
170.Em always
171execute commands in the

--- 10 unchanged lines hidden (view full) ---

182other label.
183If you need to use PPP for both dialing out and accepting incoming
184RFCOMM connections, please make sure you have moved all commands related to
185dialing out from the
186.Dq Li default
187section into an appropriate outgoing label.
188.Ss RFCOMM Server
189One of the typical examples is the LAN access.
176.El
177.Sh PPP CONFIGURATION
178.Ss Important Notes on PPP Configuration
179Special attention is required when adding new RFCOMM configurations to the
180existing PPP configuration.
181Please keep in mind that PPP will
182.Em always
183execute commands in the

--- 10 unchanged lines hidden (view full) ---

194other label.
195If you need to use PPP for both dialing out and accepting incoming
196RFCOMM connections, please make sure you have moved all commands related to
197dialing out from the
198.Dq Li default
199section into an appropriate outgoing label.
200.Ss RFCOMM Server
201One of the typical examples is the LAN access.
190In this example, RFCOMM connection
191is used as a null-modem connection between client and server.
192Both client
193and server will start talking PPP right after RFCOMM connection was established.
202In this example, an RFCOMM connection
203is used as a null-modem connection between a client and a server.
204Both client and server will start talking PPP right after the RFCOMM
205connection has been established.
194.Bd -literal -offset indent
195rfcomm-server:
196 set timeout 0
197 set lqrperiod 10
198 set ifaddr 10.0.0.1 10.0.0.2 255.255.255.0
199 enable lqr
200 accept lqr
201 # Do not use PPP authentication. Assume that
202 # Bluetooth connection was authenticated already
203 disable pap
204 deny pap
205 disable chap
206 deny chap
207.Ed
208.Ss RFCOMM Client
209The
210.Nm
206.Bd -literal -offset indent
207rfcomm-server:
208 set timeout 0
209 set lqrperiod 10
210 set ifaddr 10.0.0.1 10.0.0.2 255.255.255.0
211 enable lqr
212 accept lqr
213 # Do not use PPP authentication. Assume that
214 # Bluetooth connection was authenticated already
215 disable pap
216 deny pap
217 disable chap
218 deny chap
219.Ed
220.Ss RFCOMM Client
221The
222.Nm
211utility
212supports both LAN and DUN (Dial-Up Networking) access.
213The client's configuration for the LAN access is very similar to server's and
214might look like this.
223utility supports both
224.Cm LAN
225(LAN Access Using PPP) and
226.Cm DUN
227(Dial-Up Networking) access.
228The client's configuration for
229.Cm LAN
230access is very similar to the server's and might look like this:
215.Bd -literal -offset indent
216rfcomm-client:
217 enable lqr
218 accept lqr
219 set dial
220 set timeout 0
221 disable iface-alias
222 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
223 # Do not use PPP authentication. Assume that
224 # Bluetooth connection was authenticated already
225 deny pap
226 disable pap
227 deny chap
228 disable chap
229.Ed
230.Pp
231.Bd -literal -offset indent
232rfcomm-client:
233 enable lqr
234 accept lqr
235 set dial
236 set timeout 0
237 disable iface-alias
238 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
239 # Do not use PPP authentication. Assume that
240 # Bluetooth connection was authenticated already
241 deny pap
242 disable pap
243 deny chap
244 disable chap
245.Ed
246.Pp
231The client's configuration for the DUN access is different.
247The client's configuration for
248.Cm DUN
249access is different.
232In this scenario, the client gets connected to the virtual serial port on the
233server.
250In this scenario, the client gets connected to the virtual serial port on the
251server.
234To open a PPP session, client must dial a number.
252To open a PPP session, the client must dial a number.
235Note that by default
236.Xr ppp 8
237will not execute any configured chat scripts.
238The
239.Ic force-scripts
240option can be used to override this behavior.
253Note that by default
254.Xr ppp 8
255will not execute any configured chat scripts.
256The
257.Ic force-scripts
258option can be used to override this behavior.
241The example of such configuration is shown below.
259An example configuration is shown below:
242.Bd -literal -offset indent
243rfcomm-dialup:
244 # This is IMPORTANT option
245 enable force-scripts
246
247 # You might want to change these
248 set authname
249 set authkey

--- 6 unchanged lines hidden (view full) ---

256 set timeout 30
257 enable dns
258 resolv rewrite
259
260 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
261 add default HISADDR
262.Ed
263.Pp
260.Bd -literal -offset indent
261rfcomm-dialup:
262 # This is IMPORTANT option
263 enable force-scripts
264
265 # You might want to change these
266 set authname
267 set authkey

--- 6 unchanged lines hidden (view full) ---

274 set timeout 30
275 enable dns
276 resolv rewrite
277
278 set ifaddr 10.0.0.1/0 10.0.0.2/0 255.255.255.0 0.0.0.0
279 add default HISADDR
280.Ed
281.Pp
264Note that by adjusting the initialization string, one can make CSD (Circuit
282Note that by adjusting the initialization string, one can make a CSD (Circuit
265Switched Data), HSCSD (High Speed Circuit Switched Data) or GPRS (General
266Packet Radio Service) connection.
267The availability of the particular connection
268type depends on the phone model and service plan activated on the phone.
269.Sh EXIT STATUS
270.Ex -std
271.Sh EXAMPLES
272.Dl "rfcomm_pppd -s -a 00:01:02:03:04:05 -C 1 -l rfcomm-server"

--- 6 unchanged lines hidden (view full) ---

279and channel
280.Li 1 .
281Once the incoming connection has been accepted,
282.Nm
283will execute
284.Xr ppp 8
285in
286.Fl direct
283Switched Data), HSCSD (High Speed Circuit Switched Data) or GPRS (General
284Packet Radio Service) connection.
285The availability of the particular connection
286type depends on the phone model and service plan activated on the phone.
287.Sh EXIT STATUS
288.Ex -std
289.Sh EXAMPLES
290.Dl "rfcomm_pppd -s -a 00:01:02:03:04:05 -C 1 -l rfcomm-server"

--- 6 unchanged lines hidden (view full) ---

297and channel
298.Li 1 .
299Once the incoming connection has been accepted,
300.Nm
301will execute
302.Xr ppp 8
303in
304.Fl direct
287mode with
305mode with the
288.Dq Li rfcomm-server
289label.
290.Pp
291.Dl "rfcomm_pppd -c -a 00:01:02:03:04:05 -C 1 -l rfcomm-client"
292.Pp
293This command will start
294.Nm
295in the client mode.
296.Nm
297will try to connect to the RFCOMM server at
298.Li 00:01:02:03:04:05
299address and channel
300.Li 1 .
306.Dq Li rfcomm-server
307label.
308.Pp
309.Dl "rfcomm_pppd -c -a 00:01:02:03:04:05 -C 1 -l rfcomm-client"
310.Pp
311This command will start
312.Nm
313in the client mode.
314.Nm
315will try to connect to the RFCOMM server at
316.Li 00:01:02:03:04:05
317address and channel
318.Li 1 .
301Once connected, the
319Once connected,
302.Nm
303will execute
304.Xr ppp 8
305in
306.Fl direct
320.Nm
321will execute
322.Xr ppp 8
323in
324.Fl direct
307mode with
325mode with the
308.Dq Li rfcomm-client
309label.
326.Dq Li rfcomm-client
327label.
310.Sh CAVEAT
328.Sh CAVEATS
311The
312.Nm
329The
330.Nm
313utility in server mode will try to register Bluetooth LAN Access Over PPP
314service with local SPD daemon.
315If local SDP daemon is not running the
331utility in server mode will try to register the Bluetooth LAN Access Over PPP
332service with the local SPD daemon.
333If the local SDP daemon is not running,
316.Nm
334.Nm
317utility will exit with error.
335will exit with an error.
318.Sh SEE ALSO
319.Xr rfcomm_sppd 1 ,
320.Xr bluetooth 3 ,
321.Xr ng_btsocket 4 ,
322.Xr ppp 8 ,
323.Xr sdpcontrol 8 ,
324.Xr sdpd 8
325.Sh AUTHORS
326.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com
336.Sh SEE ALSO
337.Xr rfcomm_sppd 1 ,
338.Xr bluetooth 3 ,
339.Xr ng_btsocket 4 ,
340.Xr ppp 8 ,
341.Xr sdpcontrol 8 ,
342.Xr sdpd 8
343.Sh AUTHORS
344.An Maksim Yevmenkin Aq m_evmenkin@yahoo.com