1L.SYS(5) File Formats Manual L.SYS(5)
2
3
4
6 L.sys - UUCP remote host description file
7
9 The L.sys file is consulted by the UUCP daemon uucico(8) for informa‐
10 tion on remote systems. L.sys includes the system name, appropriate
11 times to call, phone numbers, and a login and password for the remote
12 system. L.sys is thus a privileged file, owned by the UUCP Administra‐
13 tor; it is accessible only to the Administrator and to the superuser.
14
15 Each line in L.sys describes one connection to one remote host, and has
16 the form:
17
18 System Times Caller Class Device/Phone_Number [Expect Send]....
19
20 Fields can be separated by any number of blanks or tabs. Lines begin‐
21 ning with a `#' character are comments; long lines can be continued by
22 appending a `\' character to the end of the line.
23
24 The first five fields (System through Device/Phone_Number) specify the
25 hardware mechanism that is necessary to make a connection to a remote
26 host, such as a modem or network. Uucico searches from the top down
27 through L.sys to find the desired System; it then opens the L-
28 devices(5) file and searches for the first available device with the
29 same Caller, Class, and (possibly) Device. (``Available'' means that
30 the device is ready and not being used for something else.) Uucico
31 attempts a connection using that device; if the connection cannot be
32 made (for example, a dialer gets a busy signal), uucico tries the next
33 available device. If this also fails, it returns to L.sys to look for
34 another line for the same System. If none is found, uucico gives up.
35
36 System is the hostname of the remote system. Every machine with which
37 this system communicates via UUCP should be listed, regardless of who
38 calls whom. Systems not listed in L.sys will not be permitted a con‐
39 nection. The local hostname should not appear here for security rea‐
40 sons.
41
42 Times is a comma-separated list of the times of the day and week that
43 calls are permitted to this System. Times is most commonly used to
44 restrict long distance telephone calls to those times when rates are
45 lower. List items are constructed as:
46
47 keywordhhmm-hhmm/grade;retry_time
48
49 Keyword is required, and must be one of:
50
51 Any Any time, any day of the week.
52
53 Wk Any weekday. In addition, Mo, Tu, We, Th, Fr, Sa, and Su can be
54 used for Monday through Sunday, respectively.
55
56 Evening When evening telephone rates are in effect, from 1700 to 0800
57 Monday through Friday, and all day Saturday and Sunday.
58 Evening is the same as Wk1700-0800,Sa,Su.
59
60 Night When nighttime telephone rates are in effect, from 2300 to 0800
61 Monday through Friday, all day Saturday, and from 2300 to 1700
62 Sunday. Night is the same as Any2300-0800,Sa,Su0800-1700.
63
64 NonPeak This is a slight modification of Evening. It matches when the
65 USA X.25 carriers have their lower rate period. This is 1800 to
66 0700 Monday through Friday, and all day Saturday and Sunday.
67 NonPeak is the same as Any1800-0700,Sa,Su.
68
69 Never Never call; calling into this System is forbidden or impossi‐
70 ble. This is intended for polled connections, where the remote
71 system calls into the local machine periodically. This is nec‐
72 essary when one of the machines is lacking either dial-in or
73 dial-out modems.
74
75 The optional hhmm-hhmm subfield provides a time range that modifies the
76 keyword. hhmm refers to hours and minutes in 24-hour time (from 0000
77 to 2359). The time range is permitted to "wrap" around midnight, and
78 will behave in the obvious way. It is invalid to follow the Evening,
79 NonPeak, and Night keywords with a time range.
80
81 The grade subfield is optional; if present, it is composed of a `/'
82 (slash) and single character denoting the grade of the connection, from
83 0 to 9, A to Z, or a to z. This specifies that only requests of grade
84 grade or better will be transferred during this time. (The grade of a
85 request or job is specified when it is queued by uucp or uux.) By con‐
86 vention, mail is sent at grade C, news is sent at grade d, and uucp
87 copies are sent at grade n. Unfortunately, some sites do not follow
88 these conventions, so it is not 100% reliable.
89
90 The retry_time subfield is optional; it must be preceded by a `;'
91 (semicolon) and specifies the time, in minutes, before a failed connec‐
92 tion may be tried again. (This restriction is in addition to any con‐
93 straints imposed by the rest of the Time field.) By default, the retry
94 time starts at 10 minutes and gradually increases at each failure,
95 until after 26 tries uucico gives up completely (MAX RETRIES). If the
96 retry time is too small, uucico may run into MAX RETRIES too soon.
97
98 Caller is the type of device used:
99
100 ACU Automatic call unit or auto-dialing modem such as the Hayes
101 Smartmodem 1200 or Novation ``Smart Cat''. See L-devices for a
102 list of supported modems.
103
104 DIR Direct connect; hardwired line (usually RS-232) to a remote
105 system.
106
107 MICOM Micom Terminal Switch.
108
109 PAD X.25 PAD connection.
110
111 PCP GTE Telenet PC Pursuit. See L-devices for configuration
112 details.
113
114 SYTEK Sytek high-speed dedicated modem port connection.
115
116 TCP Berkeley TCP/IP or 3Com UNET connection. These are mutually
117 exclusive. TCP ports do not need entries in L-devices since
118 all the necessary information is contained in L.sys. If sev‐
119 eral alternate ports or network connections should be tried,
120 use multiple L.sys entries.
121
122 Class is usually the speed (baud) of the device, typically 300, 1200,
123 or 2400 for ACU devices and 9600 for direct lines. Valid values are
124 device dependent, and are specified in the L-devices file.
125
126 On some devices, the baud may be preceded by a non-numeric prefix.
127 This is used in L-devices to distinguish among devices that have iden‐
128 tical Caller and baud, but yet are distinctly different. For example,
129 1200 could refer to all Bell 212-compatible modems, V1200 to Racal-
130 Vadic modems, and C1200 to CCITT modems, all at 1200 baud.
131
132 On TCP connections, Class is the port number (an integer number) or a
133 port name from /etc/services that is used to make the connection. For
134 standard Berkeley TCP/IP, UUCP normally uses port number 540.
135
136 Device/Phone_Number varies based on the Caller field. For ACU devices,
137 this is the phone number to dial. The number may include: digits 0
138 through 9; # and * for dialing those symbols on tone telephone lines; -
139 (hyphen) to pause for a moment, typically two to four seconds; = (equal
140 sign) to wait for a second dial tone (implemented as a pause on many
141 modems). Other characters are modem dependent; generally standard tele‐
142 phone punctuation characters (such as the slash and parentheses) are
143 ignored, although uucico does not guarantee this.
144
145 The phone number can be preceded by an alphabetic string; the string is
146 indexed and converted through the L-dialcodes(5) file.
147
148 For DIR devices, the Device/Phone_Number field contains the name of the
149 device in /dev that is used to make the connection. There must be a
150 corresponding line in L-devices with identical Caller, Class, and
151 Device fields.
152
153 For TCP and other network devices, Device/Phone_Number holds the true
154 network name of the remote system, which may be different from its UUCP
155 name (although one would hope not).
156
157 Expect and Send refer to an arbitrarily long set of strings that alter‐
158 nately specify what to expect and what to send to login to the remote
159 system once a physical connection has been established. A complete set
160 of expect/send strings is referred to as an expect/send script. The
161 same syntax is used in the L-devices file to interact with the dialer
162 prior to making a connection; there it is referred to as a chat script.
163 The complete format for one expect/send pair is:
164
165 expect-timeout-send-expect-timeout send
166
167 Expect and Send are character strings. Expect is compared against
168 incoming text from the remote host; send is sent back when expect is
169 matched. By default, the send is followed by a `\r' (carriage return).
170 If the expect string is not matched within timeout seconds (default
171 45), then it is assumed that the match failed. The `expect-send-
172 expect' notation provides a limited loop mechanism; if the first expect
173 string fails to match, then the send string between the hyphens is
174 transmitted, and uucico waits for the second expect string. This can be
175 repeated indefinitely. When the last expect string fails, uucico hangs
176 up and logs that the connection failed.
177
178 The timeout can (optionally) be specified by appending the parameter
179 `~nn' to the expect string, when nn is the timeout time in seconds.
180
181 Backslash escapes that may be imbedded in the expect or send strings
182 include:
183
184 \bGenerate a 3/10 second BREAK.
185 \bnWhere n is a single-digit number;
186 generate an n/10 second BREAK.
187 \cSuppress the \r at the end of a send string.
188 \dDelay; pause for 1 second. (Send only.)
189 \rCarriage Return.
190 \sSpace.
191 \nNewline.
192 \xxxWhere xxx is an octal constant;
193 denotes the corresponding ASCII character.
194
195 As a special case, an empty pair of double-quotes "" in the expect
196 string is interpreted as ``expect nothing''; that is, transmit the send
197 string regardless of what is received. Empty double-quotes in the send
198 string cause a lone `\r' (carriage return) to be sent.
199
200 One of the following keywords may be substituted for the send string:
201
202 BREAKGenerate a 3/10 second BREAK
203 BREAKnGenerate an n/10 second BREAK
204 CRSend a Carriage Return (same as "").
205 EOTSend an End-Of-Transmission character, ASCII \004.
206 Note that this will cause most hosts to hang up.
207 NLSend a Newline.
208 PAUSEPause for 3 seconds.
209 PAUSEnPause for n seconds.
210 P_ODDUse odd parity on future send strings.
211 P_ONEUse parity one on future send strings.
212 P_EVENUse even parity on future send strings. (Default)
213 P_ZEROUse parity zero on future send strings.
214
215 Finally, if the expect string consists of the keyword ABORT, then the
216 string following is used to arm an abort trap. If that string is subse‐
217 quently received any time prior to the completion of the entire
218 expect/send script, then uucico will abort, just as if the script had
219 timed out. This is useful for trapping error messages from port selec‐
220 tors or front-end processors such as ``Host Unavailable'' or ``System
221 is Down.''
222
223 For example:
224
225 "" "" ogin:--ogin: nuucp ssword: ufeedme
226
227 This is executed as, ``When the remote system answers, expect nothing.
228 Send a carriage return. Expect the remote to transmit the string
229 `ogin:'. If it doesn't within 45 seconds, send another carriage return.
230 When it finally does, send it the string `nuucp'. Then expect the
231 string `ssword:'; when that is received, send `ufeedme'.''
232
234 /etc/uucp/L.sys
235 /etc/uucp/UUAIDS/L.sysL.sys example
236
238 uucp(1), uux(1), L-devices(5), services(5), uucico(8)
239
241 ``ABORT'' in the send/expect script is expressed ``backwards,'' that
242 is, it should be written `` expect ABORT'' but instead it is `` ABORT
243 expect''.
244
245 Several of the backslash escapes in the send/expect strings are confus‐
246 ing and/or different from those used by AT&T and Honey-Danber UUCP.
247 For example, `\b' requests a BREAK, while practically everywhere else
248 `\b' means backspace. `\t' for tab and `\f' for formfeed are not
249 implemented. `\s' is a kludge; it would be more sensible to be able to
250 delimit strings with quotation marks.
251
252
253
2544.3 Berkeley Distribution October 22, 1996 L.SYS(5)