1L.SYS(5)                      File Formats Manual                     L.SYS(5)


6       L.sys - UUCP remote host description file


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.
15       Each line in L.sys describes one connection to one remote host, and has
16       the form:
18       System  Times  Caller  Class  Device/Phone_Number  [Expect  Send]....
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.
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.
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.
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:
47            keywordhhmm-hhmm/grade;retry_time
49       Keyword is required, and must be one of:
51       Any     Any time, any day of the week.
53       Wk      Any weekday. In addition, Mo, Tu, We, Th, Fr, Sa, and Su can be
54               used for Monday through Sunday, respectively.
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.
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.
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.
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.
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.
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.
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.
98       Caller is the type of device used:
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.
104       DIR     Direct connect; hardwired line (usually  RS-232)  to  a  remote
105               system.
107       MICOM   Micom Terminal Switch.
109       PAD     X.25 PAD connection.
111       PCP     GTE   Telenet  PC  Pursuit.  See  L-devices  for  configuration
112               details.
114       SYTEK   Sytek high-speed dedicated modem port connection.
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.
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.
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.
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.
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.
145       The phone number can be preceded by an alphabetic string; the string is
146       indexed and converted through the L-dialcodes(5) file.
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.
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).
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:
165            expect-timeout-send-expect-timeout   send
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.
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.
181       Backslash  escapes  that  may be imbedded in the expect or send strings
182       include:
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.
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.
200       One of the following keywords may be substituted for the send string:
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.
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.''
223       For example:
225            ""  ""  ogin:--ogin:  nuucp  ssword:  ufeedme
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'.''


234       /etc/uucp/L.sys
235       /etc/uucp/UUAIDS/L.sysL.sys example


238       uucp(1), uux(1), L-devices(5), services(5), uucico(8)


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''.
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.
2544.3 Berkeley Distribution      October 22, 1996                       L.SYS(5)