1
This is uucp.info, produced by makeinfo version 4.1 from uucp.texi.
4
* UUCP: (uucp). Transfer mail and news across phone lines.
7
This file documents Taylor UUCP, version 1.07.
9
Copyright (C) 1992, 1993, 1994, 1995, 2002 Ian Lance Taylor
11
Permission is granted to make and distribute verbatim copies of this
12
manual provided the copyright notice and this permission notice are
13
preserved on all copies.
15
Permission is granted to copy and distribute modified versions of
16
this manual under the conditions for verbatim copying, provided also
17
that the section entitled "Copying" are included exactly as in the
18
original, and provided that the entire resulting derived work is
19
distributed under the terms of a permission notice identical to this
22
Permission is granted to copy and distribute translations of this
23
manual into another language, under the above conditions for modified
24
versions, except that the section entitled "Copying" may be included in
25
a translation approved by the author instead of in the original English.
28
File: uucp.info, Node: Debugging Levels, Prev: Log File Names, Up: config File
34
Set the debugging level. This command is only effective if the
35
code has been compiled to include debugging. The default is to
36
have no debugging. The arguments are strings which name the types
37
of debugging to be turned on. The following types of debugging
41
Output debugging messages for abnormal situations, such as
45
Output debugging messages for chat scripts.
48
Output debugging messages for the initial handshake.
51
Output debugging messages for the UUCP session protocol.
54
Output debugging messages for the individual link protocols.
57
Output debugging messages for actions on the communication
61
Output debugging messages while reading the configuration
65
Output debugging messages for actions in the spool directory.
68
Output debugging messages whenever another program is
72
List all incoming data in the debugging file.
75
List all outgoing data in the debugging file.
80
The debugging level may also be specified as a number. A 1 will
81
set `chat' debugging, a 2 will set both `chat' and `handshake'
82
debugging, and so on down the possibilities. Currently an 11 will
83
turn on all possible debugging, since there are 11 types of
84
debugging messages listed above; more debugging types may be added
85
in the future. The `debug' command may be used several times in
86
the configuration file; every debugging type named will be turned
87
on. When running any of the programs, the `-x' switch (actually,
88
for `uulog' it's the `-X' switch) may be used to turn on
89
debugging. The argument to the `-x' switch is one of the strings
90
listed above, or a number as described above, or a comma separated
91
list of strings (e.g., `-x chat,handshake'). The `-x' switch may
92
also appear several times on the command line, in which case all
93
named debugging types will be turned on. The `-x' debugging is in
94
addition to any debugging specified by the `debug' command; there
95
is no way to cancel debugging information. The debugging level
96
may also be set specifically for calls to or from a specific
97
system with the `debug' command in the system file (*note
98
Miscellaneous (sys)::).
100
The debugging messages are somewhat idiosyncratic; it may be
101
necessary to refer to the source code for additional information
105
File: uucp.info, Node: sys File, Next: port File, Prev: config File, Up: Configuration Files
107
The System Configuration File
108
=============================
110
By default there is a single system configuration, named `sys' in
111
the directory NEWCONFIGDIR. This may be overridden by the `sysfile'
112
command in the main configuration file; see *Note Configuration File
115
These files describe all remote systems known to the UUCP package.
119
* Defaults and Alternates:: Using Defaults and Alternates
120
* Naming the System:: Naming the System
121
* Calling Out:: Calling Out
122
* Accepting a Call:: Accepting a Call
123
* Protocol Selection:: Protocol Selection
124
* File Transfer Control:: File Transfer Control
125
* Miscellaneous (sys):: Miscellaneous sys File Commands
126
* Default sys File Values:: Default Values
129
File: uucp.info, Node: Defaults and Alternates, Next: Naming the System, Prev: sys File, Up: sys File
131
Defaults and Alternates
132
-----------------------
134
The first set of commands in the file, up to the first `system'
135
command, specify defaults to be used for all systems in that file. Each
136
`sys' file uses a different set of defaults.
138
Subsequently, each set of commands from `system' up to the next
139
`system' command describe a particular system. Default values may be
140
overridden for specific systems.
142
Each system may then have a series of alternate choices to use when
143
calling out or calling in. The first set of commands for a particular
144
system, up to the first `alternate' command, provide the first choice.
145
Subsequently, each set of commands from `alternate' up to the next
146
`alternate' command describe an alternate choice for calling out or
149
When a system is called, the commands before the first `alternate'
150
are used to select a phone number, port, and so forth; if the call fails
151
for some reason, the commands between the first `alternate' and the
152
second are used, and so forth. Well, not quite. Actually, each
153
succeeding alternate will only be used if it is different in some
154
relevant way (different phone number, different chat script, etc.). If
155
you want to force the same alternate to be used again (to retry a phone
156
call more than once, for example), enter the phone number (or any other
157
relevant field) again to make it appear different.
159
The alternates can also be used to give different permissions to an
160
incoming call based on the login name. This will only be done if the
161
first set of commands, before the first `alternate' command, uses the
162
`called-login' command. The list of alternates will be searched, and
163
the first alternate with a matching `called-login' command will be
164
used. If no alternates match, the call will be rejected.
166
The `alternate' command may also be used in the file-wide defaults
167
(the set of commands before the first `system' command). This might be
168
used to specify a list of ports which are available for all systems
169
(for an example of this, see *Note Gateway Example::) or to specify
170
permissions based on the login name used by the remote system when it
171
calls in. The first alternate for each system will default to the
172
first alternate for the file-wide defaults (as modified by the commands
173
used before the first `alternate' command for this system), the second
174
alternate for each system to the second alternate for the file-wide
175
defaults (as modified the same way), and so forth. If a system
176
specifies more alternates than the file-wide defaults, the trailing
177
ones will default to the last file-wide default alternate. If a system
178
specifies fewer alternates than the file-wide defaults, the trailing
179
file-wide default alternates will be used unmodified. The
180
`default-alternates' command may be used to modify this behaviour.
182
This can all get rather confusing, although it's easier to use than
183
to describe concisely; the `uuchk' program may be used to ensure that
184
you are getting what you want.
187
File: uucp.info, Node: Naming the System, Next: Calling Out, Prev: Defaults and Alternates, Up: sys File
193
Specify the remote system name. Subsequent commands up to the next
194
`system' command refer to this system.
197
Start an alternate set of commands (*note Defaults and
198
Alternates::). An optional argument may be used to name the
199
alternate. This name will be recorded in the log file if the
200
alternate is used to call the system. There is no way to name the
201
first alternate (the commands before the first `alternate'
204
`default-alternates BOOLEAN'
205
If the argument is false, any remaining default alternates (from
206
the defaults specified at the top of the current system file) will
207
not be used. The default is true.
210
Specify an alias for the current system. The alias may be used by
211
local `uucp' and `uux' commands, as well as by the remote system
212
(which can be convenient if a remote system changes its name).
213
The default is to have no aliases.
216
Specifies a different system name to use when calling the remote
217
system. Also, if `called-login' is used and is not `ANY', then,
218
when a system logs in with that login name, STRING is used as the
219
local system name. Because the local system name must be
220
determined before the remote system has identified itself, using
221
`myname' and `called-login' together for any system will set the
222
local name for that login; this means that each locally used
223
system name must have a unique login name associated with it.
224
This allows a system to have different names for an external and
225
an internal network. The default is to not use a special local
229
File: uucp.info, Node: Calling Out, Next: Accepting a Call, Prev: Naming the System, Up: sys File
234
This section describes commands used when placing a call to another
239
* When to Call:: When to Call
240
* Placing the Call:: Placing the Call
241
* Logging In:: Logging In
244
File: uucp.info, Node: When to Call, Next: Placing the Call, Prev: Calling Out, Up: Calling Out
249
`time STRING [NUMBER]'
250
Specify when the system may be called. The first argument is a
251
time string; see *Note Time Strings::. The optional second
252
argument specifies a retry time in minutes. If a call made during
253
a time that matches the time string fails, no more calls are
254
permitted until the retry time has passed. By default an
255
exponentially increasing retry time is used: after each failure
256
the next retry period is longer. A retry time specified in the
257
`time' command is always a fixed amount of time.
259
The `time' command may appear multiple times in a single alternate,
260
in which case if any time string matches the system may be called.
261
When the `time' command is used for a particular system, any
262
`time' or `timegrade' commands that appeared in the system
263
defaults are ignored.
265
The default time string is `Never'.
267
`timegrade CHARACTER STRING [NUMBER]'
268
The CHARACTER specifies a grade. It must be a single letter or
269
digit. The STRING is a time string (*note Time Strings::). All
270
jobs of grade CHARACTER or higher (where `0' > `9' > `A' > `Z' >
271
`a' > `z') may be run at the specified time. An ordinary `time'
272
command is equivalent to using `timegrade' with a grade of `z',
273
permitting all jobs. If there are no jobs of a sufficiently high
274
grade according to the time string, the system will not be called.
275
Giving the `-s' switch to `uucico' to force it to call a system
276
causes it to assume there is a job of grade `0' waiting to be run.
278
The optional third argument specifies a retry time in minutes.
279
See the `time' command, above, for more details.
281
Note that the `timegrade' command serves two purposes: 1) if there
282
is no job of sufficiently high grade the system will not be
283
called, and 2) if the system is called anyway (because the `-s'
284
switch was given to `uucico') only jobs of sufficiently high grade
285
will be transferred. However, if the other system calls in, the
286
`timegrade' commands are ignored, and jobs of any grade may be
287
transferred (but see `call-timegrade' and `called-timegrade',
288
below). Also, the `timegrade' command will not prevent the other
289
system from transferring any job it chooses, regardless of who
292
The `timegrade' command may appear multiple times without using
293
`alternate'. When the `timegrade' command is used for a
294
particular system, any `time' or `timegrade' commands that
295
appeared in the system defaults are ignored.
297
If this command does not appear, there are no restrictions on what
298
grade of work may be done at what time.
301
Gives the maximum number of times this system may be retried. If
302
this many calls to the system fail, it will be called at most once
303
a day whatever the retry time is. The default is 26.
305
`success-wait NUMBER'
306
A retry time, in seconds, which applies after a successful call.
307
This can be used to put a limit on how frequently the system is
308
called. For example, an argument of 1800 means that the system
309
will not be called more than once every half hour. The default is
310
0, which means that there is no limit.
312
`call-timegrade CHARACTER STRING'
313
The CHARACTER is a single character `A' to `Z', `a' to `z', or `0'
314
to `9' and specifies a grade. The STRING is a time string (*note
315
Time Strings::). If a call is placed to the other system during a
316
time which matches the time string, the remote system will be
317
requested to only run jobs of grade CHARACTER or higher.
318
Unfortunately, there is no way to guarantee that the other system
319
will obey the request (this UUCP package will, but there are
320
others which will not); moreover, job grades are historically
321
somewhat arbitrary, so specifying a grade will only be meaningful
322
if the other system cooperates in assigning grades. This grade
323
restriction only applies when the other system is called, not when
324
the other system calls in.
326
The `call-timegrade' command may appear multiple times without
327
using `alternate'. If this command does not appear, or if none of
328
the time strings match, the remote system will be allowed to send
329
whatever grades of work it chooses.
331
`called-timegrade CHARACTER STRING'
332
The CHARACTER is a single character `A' to `Z', `a' to `z', or `0'
333
to `9' and specifies a grade. The STRING is a time string (*note
334
Time Strings::). If a call is received from the other system
335
during a time which matches the time string, only jobs of grade
336
CHARACTER or higher will be sent to the remote system. This
337
allows the job grade to be set for incoming calls, overriding any
338
request made by the remote uucico. As noted above, job grades are
339
historically somewhat arbitrary, so specifying a grade will only be
340
meaningful if the other system cooperates in assigning grades.
341
This grade restriction only applies to jobs on the local system;
342
it does not affect the jobs transferred by the remote system.
343
This grade restriction only applies when the other system calls
344
in, not when the other system is called.
346
The `called-timegrade' command may appear multiple times. If this
347
command does not appear, or if none of the time strings match, any
348
grade may be sent to the remote system upon receiving a call.
351
File: uucp.info, Node: Placing the Call, Next: Logging In, Prev: When to Call, Up: Calling Out
359
Specify the speed (the term "baud" is technically incorrect, but
360
widely understood) at which to call the system. This will try all
361
available ports with that speed until an unlocked port is found.
362
The ports are defined in the port file. If both `speed' and
363
`port' commands appear, both are used when selecting a port. To
364
allow calls at more than one speed, the `alternate' command must be
365
used (*note Defaults and Alternates::). If this command does not
366
appear, there is no default; the speed may be specified in the port
367
file, but if it is not then the natural speed of the port will be
368
used (whatever that means on the system). Specifying an explicit
369
speed of 0 will request the natural speed of the port (whatever
370
the system sets it to), overriding any default speed from the
371
defaults at the top of the file.
374
Name a particular port or type of port to use when calling the
375
system. The information for this port is obtained from the port
376
file. If this command does not appear, there is no default; a
377
port must somehow be specified in order to call out (it may be
378
specified implicitly using the `speed' command or explicitly using
379
the next version of `port'). There may be many ports with the
380
same name; each will be tried in turn until an unlocked one is
381
found which matches the desired speed.
384
If more than one string follows the `port' command, the strings are
385
treated as a command that might appear in the port file (*note
386
port File::). If a port is named (by using a single string
387
following `port') these commands are ignored; their purpose is to
388
permit defining the port completely in the system file rather than
389
always requiring entries in two different files. In order to call
390
out, a port must be specified using some version of the `port'
391
command, or by using the `speed' command to select ports from the
396
Give a phone number to call (when using a modem port) or a remote
397
host to contact (when using a TCP or TLI port). The commands
398
`phone' and `address' are equivalent; the duplication is intended
399
to provide a mnemonic choice depending on the type of port in use.
401
When used with a modem port, an `=' character in the phone number
402
means to wait for a secondary dial tone (although only some modems
403
support this); a `-' character means to pause while dialing for 1
404
second (again, only some modems support this). If the system has
405
more than one phone number, each one must appear in a different
406
alternate. The `phone' command must appear in order to call out
407
on a modem; there is no default.
409
When used with a TCP port, the string names the host to contact.
410
It may be a domain name or a numeric Internet address. If no
411
address is specified, the system name is used.
413
When used with a TLI port, the string is treated as though it were
414
an expect string in a chat script, allowing the use of escape
415
characters (*note Chat Scripts::). The `dialer-sequence' command
416
in the port file may override this address (*note port File::).
418
When used with a port that not a modem or TCP or TLI, this command
422
File: uucp.info, Node: Logging In, Prev: Placing the Call, Up: Calling Out
429
`chat-timeout NUMBER'
433
`chat-seven-bit BOOLEAN'
435
`chat-program STRINGS'
436
These commands describe a chat script to use when logging on to a
437
remote system. This login chat script is run after any chat
438
script defined in the `dial' file (*note dial File::). Chat
439
scripts are explained in *Note Chat Scripts::.
441
Two additional escape sequences may be used in send strings.
444
Send the login name, as set by the `call-login' command.
447
Send the password, as set by the `call-password' command.
449
Three additional escape sequences may be used with the
450
`chat-program' command. These are `\L' and `\P', which become the
451
login name and password, respectively, and `\Z', which becomes the
452
name of the system of being called.
454
The default chat script is:
456
chat "" \r\c ogin:-BREAK-ogin:-BREAK-ogin: \L word: \P
458
This will send a carriage return (the `\c' suppresses the
459
additional trailing carriage return that would otherwise be sent)
460
and waits for the string `ogin:' (which would be the last part of
461
the `login:' prompt supplied by a Unix system). If it doesn't see
462
`ogin:', it sends a break and waits for `ogin:' again. If it
463
still doesn't see `ogin:', it sends another break and waits for
464
`ogin:' again. If it still doesn't see `ogin:', the chat script
465
aborts and hangs up the phone. If it does see `ogin:' at some
466
point, it sends the login name (as specified by the `call-login'
467
command) followed by a carriage return (since all send strings are
468
followed by a carriage return unless `\c' is used) and waits for
469
the string `word:' (which would be the last part of the
470
`Password:' prompt supplied by a Unix system). If it sees
471
`word:', it sends the password and a carriage return, completing
472
the chat script. The program will then enter the handshake phase
473
of the UUCP protocol.
475
This chat script will work for most systems, so you will only be
476
required to use the `call-login' and `call-password' commands. In
477
fact, in the file-wide defaults you could set defaults of
478
`call-login *' and `call-password *'; you would then just have to
479
make an entry for each system in the call-out login file.
481
Some systems seem to flush input after the `login:' prompt, so they
482
may need a version of this chat script with a `\d' before the
483
`\L'. When using UUCP over TCP, some servers will not be handle
484
the initial carriage return sent by this chat script; in this case
485
you may have to specify the simple chat script `ogin: \L word: \P'.
488
Specify the login name to send with `\L' in the chat script. If
489
the string is `*' (e.g., `call-login *') the login name will be
490
fetched from the call out login name and password file (*note
491
Configuration File Names::). The string may contain escape
492
sequences as though it were an expect string in a chat script
493
(*note Chat Scripts::). There is no default.
495
`call-password STRING'
496
Specify the password to send with `\P' in the chat script. If the
497
string is `*' (e.g., `call-password *') the password will be
498
fetched from the call-out login name and password file (*note
499
Configuration File Names::). The string may contain escape
500
sequences as though it were an expect string in a chat script
501
(*note Chat Scripts::). There is no default.
504
File: uucp.info, Node: Accepting a Call, Next: Protocol Selection, Prev: Calling Out, Up: sys File
509
`called-login STRINGS'
510
The first STRING specifies the login name that the system must use
511
when calling in. If it is `ANY' (e.g., `called-login ANY') any
512
login name may be used; this is useful to override a file-wide
513
default and to indicate that future alternates may have different
514
login names. Case is significant. The default value is `ANY'.
516
Different alternates (*note Defaults and Alternates::) may use
517
different `called-login' commands, in which case the login name
518
will be used to select which alternate is in effect; this will
519
only work if the first alternate (before the first `alternate'
520
command) uses the `called-login' command.
522
Additional strings may be specified after the login name; they are
523
a list of which systems are permitted to use this login name. If
524
this feature is used, then normally the login name will only be
525
given in a single `called-login' command. Only systems which
526
appear on the list, or which use an explicit `called-login'
527
command, will be permitted to use that login name. If the same
528
login name is used more than once with a list of systems, all the
529
lists are concatenated together. This feature permits you to
530
restrict a login name to a particular set of systems without
531
requiring you to use the `called-login' command for every single
532
system; you can achieve a similar effect by using a different
533
system file for each permitted login name with an appropriate
534
`called-login' command in the file-wide defaults.
537
If BOOLEAN is true, then when the remote system calls `uucico'
538
will hang up the connection and prepare to call it back. The
541
`called-chat STRINGS'
543
`called-chat-timeout NUMBER'
545
`called-chat-fail STRING'
547
`called-chat-seven-bit BOOLEAN'
549
`called-chat-program STRINGS'
550
These commands may be used to define a chat script (*note Chat
551
Scripts::) that is run whenever the local system is called by the
552
system being defined. The chat script defined by the `chat'
553
command (*note Logging In::), on the other hand, is used when the
554
remote system is called. This called chat script might be used to
555
set special modem parameters that are appropriate to a particular
556
system. It is run after protocol negotiation is complete, but
557
before the protocol has been started. For additional escape
558
sequence which may be used besides those defined for all chat
559
scripts, see *Note Logging In::. There is no default called chat
560
script. If the called chat script fails, the incoming call will
564
File: uucp.info, Node: Protocol Selection, Next: File Transfer Control, Prev: Accepting a Call, Up: sys File
570
Specifies which protocols to use for the other system, and in which
571
order to use them. This would not normally be used. For example,
574
The default depends on the characteristics of the port and the
575
dialer, as specified by the `seven-bit' and `reliable' commands.
576
If neither the port nor the dialer use either of these commands,
577
the default is to assume an eight-bit reliable connection. The
578
commands `seven-bit true' or `reliable false' might be used in
579
either the port or the dialer to change this. Each protocol has
580
particular requirements that must be met before it will be
581
considered during negotiation with the remote side.
583
The `t' and `e' protocols are intended for use over TCP or some
584
other communication path with end to end reliability, as they do no
585
checking of the data at all. They will only be considered on a
586
TCP port which is both reliable and eight bit. For technical
587
details, see *Note t Protocol::, and *Note e Protocol::.
589
The `i' protocol is a bidirectional protocol. It requires an
590
eight-bit connection. It will run over a half-duplex link, such as
591
Telebit modems in PEP mode, but for efficient use of such a
592
connection you must use the `half-duplex' command (*note port
593
File::). *Note i Protocol::.
595
The `g' protocol is robust, but requires an eight-bit connection.
598
The `G' protocol is the System V Release 4 version of the `g'
599
protocol. *Note Big G Protocol::.
601
The `a' protocol is a Zmodem like protocol, contributed by Doug
602
Evans. It requires an eight-bit connection, but unlike the `g' or
603
`i' protocol it will work if certain control characters may not be
606
The `j' protocol is a variant of the `i' protocol which can avoid
607
certain control characters. The set of characters it avoids can
608
be set by a parameter. While it technically does not require an
609
eight bit connection (it could be configured to avoid all
610
characters with the high bit set) it would be very inefficient to
611
use it over one. It is useful over a eight-bit connection that
612
will not transmit certain control characters. *Note j Protocol::.
614
The `f' protocol is intended for use with X.25 connections; it
615
checksums each file as a whole, so any error causes the entire
616
file to be retransmitted. It requires a reliable connection, but
617
only uses seven-bit transmissions. It is a streaming protocol,
618
so, while it can be used on a serial port, the port must be
619
completely reliable and flow controlled; many aren't. *Note f
622
The `v' protocol is the `g' protocol as used by the DOS program
623
UUPC/Extended. It is provided only so that UUPC/Extended users
624
can use it; there is no particular reason to select it. *Note v
627
The `y' protocol is an efficient streaming protocol. It does error
628
checking, but when it detects an error it immediately aborts the
629
connection. This requires a reliable, flow controlled, eight-bit
630
connection. In practice, it is only useful on a connection that is
631
nearly always error-free. Unlike the `t' and `e' protocols, the
632
connection need not be entirely error-free, so the `y' protocol
633
can be used on a serial port. *Note y Protocol::.
635
The protocols will be considered in the order shown above. This
636
means that if neither the `seven-bit' nor the `reliable' command
637
are used, the `t' protocol will be used over a TCP connection and
638
the `i' protocol will be used over any other type of connection
639
(subject, of course, to what is supported by the remote system; it
640
may be assumed that all systems support the `g' protocol).
642
Note that currently specifying both `seven-bit true' and `reliable
643
false' will not match any protocol. If this occurs through a
644
combination of port and dialer specifications, you will have to
645
use the `protocol' command for the system or no protocol will be
646
selected at all (the only reasonable choice would be `protocol f').
648
A protocol list may also be specified for a port (*note port
649
File::), but, if there is a list for the system, the list for the
652
`protocol-parameter CHARACTER STRING ...'
653
CHARACTER is a single character specifying a protocol. The
654
remaining strings are a command specific to that protocol which
655
will be executed if that protocol is used. A typical command is
656
something like `window 7'. The particular commands are protocol
659
The `i' protocol supports the following commands, all of which take
663
The window size to request the remote system to use. This
664
must be between 1 and 16 inclusive. The default is 16.
667
The packet size to request the remote system to use. This
668
must be between 1 and 4095 inclusive. The default is 1024.
671
If this is between 1 and 4095 inclusive, the packet size
672
requested by the remote system is ignored, and this is used
673
instead. The default is 0, which means that the remote
674
system's request is honored.
677
The length of time, in seconds, to wait for a SYNC packet
678
from the remote system. SYNC packets are exchanged when the
679
protocol is started. The default is 10.
682
The number of times to retry sending a SYNC packet before
683
giving up. The default is 6.
686
The length of time, in seconds, to wait for an incoming
687
packet before sending a negative acknowledgement. The
691
The number of times to retry sending a packet or a negative
692
acknowledgement before giving up and closing the connection.
696
The maximum number of errors to permit before closing the
697
connection. The default is 100.
700
The rate at which to ignore errors. Each time this many
701
packets are received, the error count is decreased by one, so
702
that a long connection with an occasional error will not
703
exceed the limit set by `errors'. The default is 10.
706
The number of packets to receive before sending an
707
acknowledgement. The default is half the requested window
708
size, which should provide good performance in most cases.
710
The `g', `G' and `v' protocols support the following commands, all
711
of which take numeric arguments, except `short-packets' which
712
takes a boolean argument:
715
The window size to request the remote system to use. This
716
must be between 1 and 7 inclusive. The default is 7.
719
The packet size to request the remote system to use. This
720
must be a power of 2 between 32 and 4096 inclusive. The
721
default is 64 for the `g' and `G' protocols and 1024 for the
722
`v' protocol. Many older UUCP packages do not support packet
723
sizes larger than 64, and many others do not support packet
724
sizes larger than 128. Some UUCP packages will even dump
725
core if a larger packet size is requested. The packet size
726
is not a negotiation, and it may be different in each
727
direction. If you request a packet size larger than the
728
remote system supports, you will not be able to send any
732
The number of times to retry the initialization sequence.
736
The number of times to retry one phase of the initialization
737
sequence (there are three phases). The default is 4.
740
The timeout in seconds for one phase of the initialization
741
sequence. The default is 10.
744
The number of times to retry sending either a data packet or
745
a request for the next packet. The default is 6.
748
The timeout in seconds when waiting for either a data packet
749
or an acknowledgement. The default is 10.
752
The number of unrecognized bytes to permit before dropping the
753
connection. This must be larger than the packet size. The
757
The number of errors (malformed packets, out of order
758
packets, bad checksums, or packets rejected by the remote
759
system) to permit before dropping the connection. The
763
The rate at which to ignore errors. Each time this many
764
packets are received, the error count is decreased by one, so
765
that a long connection with an occasional error will not
766
exceed the limit set by `errors'. The default is 10.
769
If this is between 1 and 7 inclusive, the window size
770
requested by the remote system is ignored and this is used
771
instead. This can be useful when dealing with some poor UUCP
772
packages. The default is 0, which means that the remote
773
system's request is honored.
776
If this is between 32 and 4096 inclusive the packet size
777
requested by the remote system is ignored and this is used
778
instead. There is probably no good reason to use this. The
779
default is 0, which means that the remote system's request is
783
If this is true, then the code will optimize by sending
784
shorter packets when there is less data to send. This
785
confuses some UUCP packages, such as System V Release 4 (when
786
using the `G' protocol) and Waffle; when connecting to such a
787
package, this parameter must be set to false. The default is
788
true for the `g' and `v' protocols and false for the `G'
791
The `a' protocol is a Zmodem like protocol contributed by Doug
792
Evans. It supports the following commands, all of which take
793
numeric arguments except for `escape-control', which takes a
797
Number of seconds to wait for a packet to arrive. The
801
The number of times to retry sending a packet. The default
805
The number of times to retry sending the initialization
806
packet. The default is 4.
809
The number of garbage characters to accept before closing the
810
connection. The default is 2400.
813
The number of characters that may be sent before waiting for
814
an acknowledgement. The default is 1024.
817
Whether to escape control characters. If this is true, the
818
protocol may be used over a connection which does not
819
transmit certain control characters, such as `XON' or `XOFF'.
820
The connection must still transmit eight bit characters
821
other than control characters. The default is false.
823
The `j' protocol can be used over an eight bit connection that will
824
not transmit certain control characters. It accepts the same
825
protocol parameters that the `i' protocol accepts, as well as one
829
A list of characters to avoid. This is a string which is
830
interpreted as an escape sequence (*note Chat Scripts::).
831
The protocol does not have a way to avoid printable ASCII
832
characters (byte values from 32 to 126, inclusive); only
833
ASCII control characters and eight-bit characters may be
834
avoided. The default value is `\021\023'; these are the
835
characters `XON' and `XOFF', which many connections use for
836
flow control. If the package is configured to use
837
`HAVE_BSD_TTY', then on some versions of Unix you may have to
838
avoid `\377' as well, due to the way some implementations of
839
the BSD terminal driver handle signals.
841
The `f' protocol is intended for use with error-correcting modems
842
only; it checksums each file as a whole, so any error causes the
843
entire file to be retransmitted. It supports the following
844
commands, both of which take numeric arguments:
847
The timeout in seconds before giving up. The default is 120.
850
How many times to retry sending a file. The default is 2.
852
The `t' and `e' protocols are intended for use over TCP or some
853
other communication path with end to end reliability, as they do no
854
checking of the data at all. They both support a single command,
855
which takes a numeric argument:
858
The timeout in seconds before giving up. The default is 120.
860
The `y' protocol is a streaming protocol contributed by Jorge Cwik.
861
It supports the following commands, both of which take numeric
865
The timeout in seconds when waiting for a packet. The
869
The packet size to use. The default is 1024.
871
The protocol parameters are reset to their default values after
875
File: uucp.info, Node: File Transfer Control, Next: Miscellaneous (sys), Prev: Protocol Selection, Up: sys File
877
File Transfer Control
878
---------------------
880
`send-request BOOLEAN'
881
The BOOLEAN determines whether the remote system is permitted to
882
request files from the local system. The default is yes.
884
`receive-request BOOLEAN'
885
The BOOLEAN determines whether the remote system is permitted to
886
send files to the local system. The default is yes.
889
A shorthand command, equivalent to specifying both `send-request
890
BOOLEAN' and `receive-request BOOLEAN'.
892
`call-transfer BOOLEAN'
893
The BOOLEAN is checked when the local system places the call. It
894
determines whether the local system may do file transfers queued
895
up for the remote system. The default is yes.
897
`called-transfer BOOLEAN'
898
The BOOLEAN is checked when the remote system calls in. It
899
determines whether the local system may do file transfers queued
900
up for the remote system. The default is yes.
903
A shorthand command, equivalent to specifying both `call-transfer
904
BOOLEAN' and `called-transfer BOOLEAN'.
906
`call-local-size NUMBER STRING'
907
The STRING is a time string (*note Time Strings::). The NUMBER is
908
the size in bytes of the largest file that should be transferred
909
at a time matching the time string, if the local system placed the
910
call and the request was made by the local system. This command
911
may appear multiple times in a single alternate. If this command
912
does not appear, or if none of the time strings match, there are
913
no size restrictions.
915
With all the size control commands, the size of a file from the
916
remote system (as opposed to a file from the local system) will
917
only be checked if the other system is running this package: other
918
UUCP packages will not understand a maximum size request, nor will
919
they provide the size of remote files.
921
`call-remote-size NUMBER STRING'
922
Specify the size in bytes of the largest file that should be
923
transferred at a given time by remote request, when the local
924
system placed the call. This command may appear multiple times in
925
a single alternate. If this command does not appear, there are no
928
`called-local-size NUMBER STRING'
929
Specify the size in bytes of the largest file that should be
930
transferred at a given time by local request, when the remote
931
system placed the call. This command may appear multiple times in
932
a single alternate. If this command does not appear, there are no
935
`called-remote-size NUMBER STRING'
936
Specify the size in bytes of the largest file that should be
937
transferred at a given time by remote request, when the remote
938
system placed the call. This command may appear multiple times in
939
a single alternate. If this command does not appear, there are no
943
Specifies that files in the directories named by the STRINGS may
944
be sent to the remote system when requested locally (using `uucp'
945
or `uux'). The directories in the list should be separated by
946
whitespace. A `~' may be used for the public directory. On a
947
Unix system, this is typically `/usr/spool/uucppublic'; the public
948
directory may be set with the `pubdir' command. Here is an
949
example of `local-send':
951
local-send ~ /usr/spool/ftp/pub
953
Listing a directory allows all files within the directory and all
954
subdirectories to be sent. Directories may be excluded by
955
preceding them with an exclamation point. For example:
957
local-send /usr/ftp !/usr/ftp/private ~
959
means that all files in `/usr/ftp' or the public directory may be
960
sent, except those files in `/usr/ftp/private'. The list of
961
directories is read from left to right, and the last directory to
962
apply takes effect; this means that directories should be listed
963
from top down. The default is the root directory (i.e., any file
964
at all may be sent by local request).
966
`remote-send STRINGS'
967
Specifies that files in the named directories may be sent to the
968
remote system when requested by the remote system. The default is
971
`local-receive STRINGS'
972
Specifies that files may be received into the named directories
973
when requested by a local user. The default is `~'.
975
`remote-receive STRINGS'
976
Specifies that files may be received into the named directories
977
when requested by the remote system. The default is `~'. On
978
Unix, the remote system may only request that files be received
979
into directories that are writeable by the world, regardless of
983
Specifies a list of systems to which files may be forwarded. The
984
remote system may forward files through the local system on to any
985
of the systems in this list. The string `ANY' may be used to
986
permit forwarding to any system. The default is to not permit
987
forwarding to other systems. Note that if the remote system is
988
permitted to execute the `uucp' command, it effectively has the
989
ability to forward to any system.
991
`forward-from STRINGS'
992
Specifies a list of systems from which files may be forwarded. The
993
remote system may request files via the local system from any of
994
the systems in this list. The string `ANY' may be used to permit
995
forwarding to any system. The default is to not permit forwarding
996
from other systems. Note that if a remote system is permitted to
997
execute the `uucp' command, it effectively has the ability to
998
request files from any system.
1001
Equivalent to specifying both `forward-to STRINGS' and
1002
`forward-from STRINGS'. This would normally be used rather than
1003
either of the more specific commands.
1005
`max-file-time NUMBER'
1006
The maximum amount of time which will be sent sending any one file
1007
if there are other files to send. This will only be effective
1008
when using a protocol which permits interrupting one file send to
1009
send another file. This is true of the `i' and `j' protocols.
1010
The default is to have no maximum.
1013
File: uucp.info, Node: Miscellaneous (sys), Next: Default sys File Values, Prev: File Transfer Control, Up: sys File
1015
Miscellaneous sys File Commands
1016
-------------------------------
1019
If BOOLEAN is true, then conversation sequencing is automatically
1020
used for the remote system, so that if somebody manages to spoof
1021
as the remote system, it will be detected the next time the remote
1022
system actually calls. This is false by default.
1024
`command-path STRINGS'
1025
Specifies the path (a list of whitespace separated directories) to
1026
be searched to locate commands to execute. This is only used for
1027
commands requested by `uux', not for chat programs. The default
1031
The list of commands which the remote system is permitted to
1032
execute locally. For example: `commands rnews rmail'. If the
1033
value is `ALL' (case significant), all commands may be executed.
1034
The default is `rnews rmail'.
1037
Specify the minimum amount of file system space (in bytes) to
1038
leave free after receiving a file. If the incoming file will not
1039
fit, it will be rejected. This initial rejection will only work
1040
when talking to another instance of this package, since older UUCP
1041
packages do not provide the file size of incoming files. Also,
1042
while a file is being received, `uucico' will periodically check
1043
the amount of free space. If it drops below the amount given by
1044
the `free-space' command, the file transfer will be aborted. The
1045
default amount of space to leave free is from `policy.h'. This
1046
file space checking may not work on all systems.
1049
Specifies the public directory that is used when `~' is specifed in
1050
a file transfer or a list of directories. This essentially
1051
overrides the public directory specified in the main configuration
1052
file for this system only. The default is the public directory
1053
specified in the main configuration file (which defaults to a
1054
value from `policy.h').
1057
Set additional debugging for calls to or from the system. This
1058
may be used to debug a connection with a specific system. It is
1059
particularly useful when debugging incoming calls, since debugging
1060
information will be generated whenever the call comes in. See the
1061
`debug' command in the main configuration file (*note Debugging
1062
Levels::) for more details. The debugging information specified
1063
here is in addition to that specified in the main configuration
1064
file or on the command line.
1066
`max-remote-debug STRING ...'
1067
When the system calls in, it may request that the debugging level
1068
be set to a certain value. The `max-remote-debug' command may be
1069
used to put a limit on the debugging level which the system may
1070
request, to avoid filling up the disk with debugging information.
1071
Only the debugging types named in the `max-remote-debug' command
1072
may be turned on by the remote system. To prohibit any debugging,
1073
use `max-remote-debug none'.
1076
File: uucp.info, Node: Default sys File Values, Prev: Miscellaneous (sys), Up: sys File
1078
Default sys File Values
1079
-----------------------
1081
The following are used as default values for all systems; they can be
1082
considered as appearing before the start of the file.
1085
chat "" \r\c ogin:-BREAK-ogin:-BREAK-ogin: \L word: \P
1095
command-path [ from `policy.h' ]
1096
commands rnews rmail
1097
max-remote-debug abnormal,chat,handshake