aboutsummaryrefslogtreecommitdiff
path: root/sbin/slattach/slattach.8
blob: 57ec88bec95401be42e3ab52bb631f5752e56076 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
.\" Copyright (c) 1986, 1991 The Regents of the University of California.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\" 3. All advertising materials mentioning features or use of this software
.\"    must display the following acknowledgement:
.\"	This product includes software developed by the University of
.\"	California, Berkeley and its contributors.
.\" 4. Neither the name of the University nor the names of its contributors
.\"    may be used to endorse or promote products derived from this software
.\"    without specific prior written permission.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.\"     @(#)slattach.8	6.4 (Berkeley) 3/16/91
.\"
.\"	$Header: /home/ncvs/src/sbin/slattach/slattach.8,v 1.5 1995/09/18 13:33:28 ache Exp $
.\"
.Dd April 4, 1993
.Dt SLATTACH 8
.Os BSD 4.3
.Sh NAME
.Nm slattach
.Nd attach serial lines as network interfaces
.Sh SYNOPSIS
.Nm Slattach
.Op Fl a
.Op Fl c
.Op Fl e Ar exit-command
.Op Fl f
.Op Fl h
.Op Fl l
.Op Fl n
.Op Fl r Ar redial-command
.Op Fl s Ar baudrate
.Op Fl u Ar unit-command
.Op Fl z
.Op Fl K Ar keepalive
.Op Fl O Ar outfill
.Op Fl S Ar unit
.Ar ttyname 
.Sh DESCRIPTION
.Nm Slattach
is used to assign a tty line to a network interface,
and to define the network source and destination addresses.
The following operands are supported by
.Nm slattach :
.Bl -tag -width Ar
.It Fl a
Autoenable the VJ header compression option, if the other end of the link
is capable of VJ header compression then it will be used otherwise normal
headers will be used.
.It Fl c
Enables the VJ header compression option.  Note that both ends of the link
must be able to use VJ header compression for this to work.
.It Fl e Ar exit-command
Specifies a command to be invoked within a shell (sh -c exit-command)
before slattach exits.
.It Fl f
Disables the invocation of daemon() to run slattach in the background.
.It Fl h
Turn on cts/rts style flow control on the slip port, by default no flow
control is done.
.It Fl l
disable modem control (CLOCAL) and ignore carrier detect on the slip
port.  By default the redial-command is invoked upon carrier drop and
slattach aborts if no redial-command is specified.
.It Fl n
Throw away ICMP packets.  The slip interface will ignore ICMP packets
to prevent slow lines being saturated by ICMP responses.
.It Fl r Ar redial-command
Specifies a command to be invoked within a shell (sh -c
redial-command) whenever carrier is lost on the line.
.It Fl s Ar baudrate
Specifies the speed of the connection. If not specified, the
default of 9600 is used.
.It Fl u Ar unit-command
When the line is switched to slip discipline, run
.Ql sh \-c unit-command <last> <current> 
where <last> and <current> are the slip unit numbers when the line was
last opened and the unit number of the current slip connection
respecitvely.  The unit number can change after redialing if you are
using more than one slip line.  Slattach will abort if the unit number
changes and
.Ql \-u unit-command
was not specified.
.It Fl z
forces redial
redial-cmd upon startup irrespective of carrier.
.It Fl K Ar keepalive
Set SLIP "keep alive" timeout in seconds. If FRAME_END not received in this
timeout, reconnect occurse. Active "out fill" timeout expected from other
side.
Default value is no timeout.
.It Fl O Ar outfill
Set SLIP "out fill" timeout in seconds. It cause at least one FRAME_END
will be sended during this timeout.
Needed for "keep alive" timeout on other side.
Default value is no timeout.
.It Fl S Ar unit
Set SLIP unit number directly. Use with caution, no check for two
interfaces with same number made.
Default is dynamic assignment.
.It Ar ttyname
Specifies the name of the tty device.
.Ar Ttyname
should be a string of the form 
.Ql ttyXX or
.Ql /dev/ttyXX.
.El
.Pp
Only the super-user may attach a network interface.
.Pp
To detach the interface, use
.Dq Li ifconfig interface-name down
after killing off the
.Nm slattach
process using
.Ql kill -INT .
.Ar Interface-name
is the name that is shown by
.Xr netstat 1
.Pp
To setup slattach to redial the phone when carrier is lost, use the
.Ql \-r redial-cmd
option to specify a script or executable that will reconnect the
serial line to the slip server.  For example, the script could redial
the server and log in, etc.
.Pp
To reconfigure the network interface in case the slip unit number
changes, use the
.Ql \-u unit-cmd
option to specify a script or executable that will be invoked as 
.Ql sh \-c unit-cmd old new,
where old and new are the slip unit numbers before and after
reconnecting the line.  The unit number can change if you have more
than one line disconnect at the same time.  The first to succeed in
reconnecting will get the lowest unit number.
.Pp
To kill slattach use
.Ql kill -INT
(SIGINT) which causes it to close the tty and exit.
.Pp
To force a redial, use
.Ql kill -HUP
(SIGHUP) which causes slattach to think carrier was lost and thus invoke 
.Ql sh -c redial-command
to reconnect to the server.
.Pp
If you use a hard-wired connection rather than a modem, invoke
slattach with the
.Ql \-l
option in order to ignore carrier on the slip line.
.Sh EXAMPLES
.Bd -literal -offset indent -compact
slattach ttyh8
slattach \-s 4800 /dev/tty01
slattach \-c \-s 38400 /dev/sio01
slattach \-r 'kermit -y dial.script >kermit.log 2>&1'
.Ed
.Sh DIAGNOSTICS
Look for error messages in /var/log/messages (slattach is a daemon).
Messages indicating the specified interface does not exit, the
requested address is unknown, the user is not privileged and tried to
alter an interface's configuration are logged there.  Slattach also
logs failure to set the controlling terminal or failure to install
signal handlers.  Upon connection and redial the ttyname and baud rate
are logged and on shutdown the ttyname is logged.
.Pp
.Sh FILES
.Pa /var/run/slattach.<tty>.pid ,
.Pp
with
.Aq tty
replaced by the terminal path name component of
.Ar ttyname .
This file contains the numerical process ID of the
.Nm slattach
process and can be examined by scripts in oder to send a signal to
.Nm slattch .
.Sh SEE ALSO
.Xr startslip 1 ,
.Xr sliplogin 8 ,
.Xr netstat 1 ,
.Xr netintro 4 ,
.Xr ifconfig 8 ,
.Xr rc 8
.Sh HISTORY
The
.Nm
command appeared in
.Bx 4.3 .