1.\" Copyright (c) 1986, 1991 The Regents of the University of California. 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.\" 3. Neither the name of the University nor the names of its contributors 13.\" may be used to endorse or promote products derived from this software 14.\" without specific prior written permission. 15.\" 16.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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.\" @(#)slattach.8 6.4 (Berkeley) 3/16/91 29.\" 30.\" $FreeBSD: src/sbin/slattach/slattach.8,v 1.16.2.6 2003/02/23 21:17:43 trhodes Exp $ 31.\" $DragonFly: src/sbin/slattach/slattach.8,v 1.4 2008/05/09 20:31:04 swildner Exp $ 32.\" 33.Dd April 4, 1993 34.Dt SLATTACH 8 35.Os 36.Sh NAME 37.Nm slattach 38.Nd attach serial lines as network interfaces 39.Sh SYNOPSIS 40.Nm 41.Op Fl a 42.Op Fl c 43.Op Fl e Ar exit-command 44.Op Fl f 45.Op Fl h 46.Op Fl l 47.Op Fl n 48.Op Fl z 49.Op Fl L 50.Op Fl r Ar redial-command 51.Op Fl s Ar baudrate 52.Op Fl u Ar unit-command 53.Op Fl K Ar keepalive 54.Op Fl O Ar outfill 55.Op Fl S Ar unit 56.Ar ttyname 57.Sh DESCRIPTION 58The 59.Nm 60utility is used to assign a tty line to a network interface, 61and to define the network source and destination addresses. 62.Pp 63The following options are available: 64.Bl -tag -width indent 65.It Fl a 66Autoenable the VJ header compression option, if the other end of the link 67is capable of VJ header compression then it will be used otherwise normal 68headers will be used. 69.It Fl c 70Enable the VJ header compression option. Note that both ends of the link 71must be able to use VJ header compression for this to work. 72.It Fl e Ar exit-command 73Specify a command to be invoked within a shell 74.Ql sh \-c Ar exit-command 75before 76.Nm 77exits. 78.It Fl f 79Disable the invocation of 80.Fn daemon 81to run 82.Nm 83in the background. 84.It Fl h 85Turn on cts/rts style flow control on the slip port, by default no flow 86control is done. 87.It Fl l 88Disable modem control (CLOCAL) and ignore carrier detect on the slip 89port. By default the 90.Ar redial-command 91is invoked upon carrier drop and 92.Nm 93aborts if no 94.Ar redial-command 95is specified. 96.It Fl n 97Throw away ICMP packets. The slip interface will ignore ICMP packets 98to prevent slow lines being saturated by ICMP responses. 99.It Fl r Ar redial-command 100Specify a command to be invoked within a shell 101.Ql sh \-c Ar redial-command 102whenever carrier is lost on the modem line. 103Empty 104.Ar redial-command 105(i.e.\& 106.Fl r Qq "" ) 107cause connection reestablishing on leased line 108without any external command invoked. 109.It Fl s Ar baudrate 110Specify the speed of the connection. 111If not specified, the 112default of 9600 is used. 113.It Fl u Ar unit-command 114When the line is switched to slip discipline, run 115.Dq Nm "sh -c" Ar unit-command old new 116where 117.Ar old 118and 119.Ar new 120are the slip unit numbers when the line was 121last opened and the unit number of the current slip connection 122respectively. The unit number can change after redialing if you are 123using more than one slip line. 124When 125.Nm 126is connected for the first time, 127.Dq Nm "sh -c" Ar unit-command \-1 new 128is run. 129When 130.Nm 131is disconnected, 132.Dq Nm "sh -c" Ar unit-command old \-1 133is run. 134The 135.Nm 136utility will abort if the unit number 137changes and 138.Dq Fl u Ar \%unit-command 139was not specified. 140.It Fl z 141Force redial 142.Ar redial-command 143upon startup irrespective of carrier. 144.It Fl L 145Use uucp-style device locking. 146You need it unless you start 147.Nm 148from external program which already does uucp locking. 149Default case is no uucp locking to satisfy such programs. 150.It Fl K Ar keepalive 151Set SLIP "keep alive" timeout in seconds. 152If FRAME_END is not received in 153this amount of time, re-connect occurs. 154The default value is no timeout. 155.It Fl O Ar outfill 156Set SLIP "out fill" timeout in seconds. It forces at least one FRAME_END 157to be sent during this time period, which is necessary for the "keep alive" 158timeout on the remote side. 159The default value is no timeout. 160.It Fl S Ar unit 161Set the SLIP unit number directly. 162Use with caution, because no check is made 163for two interfaces with same number. 164By default sliplogin dynamically assigns the unit number. 165.It Ar ttyname 166Specify the name of the tty device. 167.Ar Ttyname 168should be a string of the form 169.Ql ttyXX 170or 171.Ql /dev/ttyXX . 172.El 173.Pp 174Only the super-user may attach a network interface. 175.Pp 176To detach the interface, use 177.Dq Li ifconfig interface-name down 178after killing off the 179.Nm 180process using 181.Ql kill -INT . 182.Ar Interface-name 183is the name that is shown by 184.Xr netstat 1 . 185.Pp 186To setup 187.Nm 188to redial the phone when carrier is lost, use the 189.Fl r Ar redial-command 190option to specify a script or executable that will reconnect the 191serial line to the slip server. For example, the script could redial 192the server and log in, etc. 193.Pp 194To reconfigure the network interface in case the slip unit number 195changes, use the 196.Fl u Ar unit-command 197option to specify a script or executable that will be invoked as 198.Ql sh \-c Ar unit-command old new 199where 200.Ar old 201and 202.Ar new 203are the slip unit numbers before and after 204reconnecting the line. The unit number can change if you have more 205than one line disconnect at the same time. The first to succeed in 206reconnecting will get the lowest unit number. 207.Pp 208To kill 209.Nm 210use 211.Ql kill -INT 212.Dv ( SIGINT ) 213which causes it to close the tty and exit. 214.Pp 215To force a redial, use 216.Ql kill -HUP 217.Dv ( SIGHUP ) 218which causes 219.Nm 220to think carrier was lost and thus invoke 221.Ql sh \-c Ar redial-command 222to reconnect to the server. 223.Pp 224If you use a hard-wired connection rather than a modem, invoke 225.Nm 226with the 227.Fl l 228option in order to ignore carrier on the slip line. 229.Sh FILES 230.Bl -tag -width /usr/share/examples/slattach/* -compact 231.It Pa /var/run/slattach.<tty>.pid 232with 233.Ar tty 234replaced by the terminal path name component of 235.Ar ttyname . 236This file contains the numerical process ID of the 237.Nm 238process and can be examined by scripts in order to send a signal to 239.Nm 240.It Pa /usr/share/examples/slattach/* 241.El 242.Sh EXAMPLES 243.Bd -literal -offset indent -compact 244slattach ttyd8 245slattach \-s 4800 /dev/ttyd1 246slattach \-c \-s 38400 /dev/cuaa1 247slattach \-r 'kermit -y dial.script >kermit.log 2>&1' 248.Ed 249.Sh DIAGNOSTICS 250Look for error messages in 251.Pa /var/log/messages 252.No ( Nm 253is a daemon). 254Messages indicating the specified interface does not exit, the 255requested address is unknown, the user is not privileged and tried to 256alter an interface's configuration are logged there. 257The 258.Nm 259utility 260also logs failure to set the controlling terminal or failure to install 261signal handlers. Upon connection and redial the ttyname and baud rate 262are logged and on shutdown the ttyname is logged. 263.Sh SEE ALSO 264.Xr netstat 1 , 265.Xr startslip 1 , 266.Xr uustat 1 , 267.Xr netintro 4 , 268.Xr ifconfig 8 , 269.Xr rc 8 , 270.Xr sliplogin 8 271.Sh HISTORY 272The 273.Nm 274utility appeared in 275.Bx 4.3 . 276