Annotation of embedaddon/lrzsz/man/lrz.1, revision 1.1

1.1     ! misho       1: '\"
        !             2: '\" Revision Level 
        !             3: '\" Last Delta     04-22-88
        !             4: .TH RZ 1 OMEN
        !             5: .SH NAME
        !             6: rx, rb, rz \- XMODEM, YMODEM, ZMODEM (Batch) file receive
        !             7: .SH SYNOPSIS
        !             8: .B rz
        !             9: .RB [\- "\ +8abeOpqRtTuUvy" ]
        !            10: .br
        !            11: .B rb
        !            12: .RB [\- "\ +abqRtuUvy" ]
        !            13: .br
        !            14: .B rx
        !            15: .RB [\- "\ abceqRtuUv" ]
        !            16: .I file
        !            17: .br
        !            18: .RB [ \- ][ v ] rzCOMMAND
        !            19: .SH DESCRIPTION
        !            20: This program uses error correcting protocols to receive
        !            21: files over a dial-in serial port from a variety of programs running under
        !            22: PC-DOS, CP/M,
        !            23: .SM Unix,
        !            24: and other operating systems.
        !            25: It is invoked from a shell prompt
        !            26: manually, or automatically as a result of an
        !            27: "sz file ..." command given to the calling program.
        !            28: 
        !            29: While
        !            30: .I rz
        !            31: is smart enough to be called from
        !            32: .I cu(1),
        !            33: very few versions of
        !            34: .I cu(1)
        !            35: are smart enough to allow
        !            36: .I rz
        !            37: to work properly.
        !            38: Unix flavors of Professional-YAM are available for such dial-out application.
        !            39: 
        !            40: 
        !            41: .B Rz
        !            42: (Receive ZMODEM)
        !            43: receives files with the ZMODEM batch protocol.
        !            44: Pathnames are supplied by the sending program,
        !            45: and directories are made if necessary (and possible).
        !            46: Normally, the
        !            47: "rz" command is automatically issued by the calling ZMODEM program,
        !            48: but some defective ZMODEM implementations may require starting
        !            49: .I rz
        !            50: the old fashioned way.
        !            51: 
        !            52: 
        !            53: .B Rb
        !            54: receives file(s) with YMODEM,
        !            55: accepting either standard 128 byte sectors or
        !            56: 1024 byte sectors
        !            57: (YAM sb
        !            58: .B -k
        !            59: option).
        !            60: The user should determine when
        !            61: the 1024 byte block length
        !            62: actually improves throughput without causing lost data
        !            63: or even system crashes.
        !            64: 
        !            65: If True YMODEM (Omen Technology trademark) file information (file length, etc.)
        !            66: is received,
        !            67: the file length controls the number of bytes written to
        !            68: the output dataset,
        !            69: and the modify time and file mode
        !            70: (iff non zero)
        !            71: are set accordingly.
        !            72: 
        !            73: If no True YMODEM file information is received,
        !            74: slashes in the pathname are changed to underscore,
        !            75: and any trailing period in the pathname is eliminated.
        !            76: This conversion is useful for files received from CP/M systems.
        !            77: With YMODEM, each file name is converted to lower case
        !            78: unless it contains one or more lower case letters.
        !            79: 
        !            80: 
        !            81: .B Rx
        !            82: receives a single
        !            83: .I file
        !            84: with XMODEM or XMODEM-1k protocol.
        !            85: The user should determine when
        !            86: the 1024 byte block length
        !            87: actually improves throughput without causing problems.
        !            88: The user must supply the file name to both sending and receiving programs.
        !            89: Up to 1023 garbage characters may be added to the received file.
        !            90: 
        !            91: 
        !            92: .B Rz
        !            93: may be invoked as
        !            94: .B rzCOMMAND
        !            95: (with an optional leading \- as generated by login(1)).
        !            96: For each received file,
        !            97: .I rz
        !            98: will pipe the file to ``COMMAND filename''
        !            99: where filename is the name of the transmitted file
        !           100: with the file contents as standard input.
        !           101: 
        !           102: Each file transfer is acknowledged when COMMAND exits with 0 status.
        !           103: A non zero exit status terminates transfers.
        !           104: 
        !           105: A typical use for this form is
        !           106: .I rzrmail
        !           107: which calls rmail(1)
        !           108: to post mail to the user specified by the transmitted file name.
        !           109: For example, sending the file "caf" from a PC-DOS system to
        !           110: .I rzrmail
        !           111: on a
        !           112: .SM Unix
        !           113: system
        !           114: would result in the contents of the DOS file "caf" being mailed to user "caf".
        !           115: 
        !           116: On some
        !           117: .SM Unix
        !           118: systems, the login directory must contain a link to
        !           119: COMMAND as login sets SHELL=rsh which disallows absolute
        !           120: pathnames.
        !           121: If invoked with a leading ``v'',
        !           122: .I rz
        !           123: will be verbose (see 
        !           124: .B v
        !           125: option).
        !           126: The following entry works for
        !           127: .SM Unix
        !           128: SYS III/V:
        !           129: .ce
        !           130: rzrmail::5:1::/bin:/usr/local/rzrmail
        !           131: If the SHELL environment variable includes
        !           132: .I "rsh"
        !           133: ,
        !           134: .I "rbash"
        !           135: or
        !           136: .I "rksh"
        !           137: (restricted shell),
        !           138: .I rz
        !           139: will not accept absolute pathnames
        !           140: or references to a parent directory,
        !           141: will not modify an existing file, and
        !           142: removes any files received in error.
        !           143: 
        !           144: If
        !           145: .B rz
        !           146: is invoked with stdout and stderr to different datasets,
        !           147: Verbose is set to 2, causing frame by frame progress reports
        !           148: to stderr.
        !           149: This may be disabled with the
        !           150: .B q
        !           151: option.
        !           152: 
        !           153: .SH OPTIONS
        !           154: The meanings of the available options are:
        !           155: .PP
        !           156: .PD 0
        !           157: .TP
        !           158: .B "-+, --append"
        !           159: append received data to an existing file (ZMODEM, ASCII only).
        !           160: .TP
        !           161: .B "-a, --ascii"
        !           162: Convert files to
        !           163: .SM Unix
        !           164: conventions by stripping carriage returns and all characters
        !           165: beginning with the first Control Z (CP/M end of file).
        !           166: .TP
        !           167: .B "-b, --binary"
        !           168: Binary
        !           169: (tell it like it is)
        !           170: file transfer override.
        !           171: .TP
        !           172: .B "-B NUMBER, --bufsize NUMBER"
        !           173: Buffer 
        !           174: .B NUMBER
        !           175: bytes before writing to disk. Default ist 32768, which should be enough
        !           176: for most situations. If you have a slow machine or a bad disk interface
        !           177: or suffer from other hardware problems you might want to increase
        !           178: the buffersize.
        !           179: .B -1
        !           180: or
        !           181: .B auto
        !           182: use a buffer large enough to buffer the whole file. Be careful with this
        !           183: options - things normally get worse, not better, if the machine starts
        !           184: to swap.
        !           185: .TP
        !           186: .B "-c, --with-crc"
        !           187: XMODEM only. Use 16 bit CRC (normally a one byte checksum is used).
        !           188: .TP
        !           189: .B "-C, --allow-remote-commands"
        !           190: allow remote command execution (
        !           191: .B insecure
        !           192: ). This allows the sender to execute an arbitrary command through
        !           193: .B system
        !           194: () or
        !           195: .B execl
        !           196: (). Default is to disable this feature (?). This option is ignored
        !           197: if running in restricted mode.
        !           198: .TP
        !           199: .B "-D, --null"
        !           200: Output file data to /dev/null; for testing.
        !           201: (Unix only)
        !           202: .TP
        !           203: .B "--delay-startup N"
        !           204: Wait 
        !           205: .B N
        !           206: seconds before doing anything.
        !           207: .TP
        !           208: .B "-e, --escape"
        !           209: Force sender to escape all control characters;
        !           210: normally XON, XOFF, DLE, CR-@-CR, and Ctrl-X are escaped.
        !           211: .TP
        !           212: .B "-E, --rename"
        !           213: Rename incoming file if target filename already exists. The new file
        !           214: name will have a dot and a number (0..999) appended.
        !           215: .TP
        !           216: .B "-h, --help"
        !           217: give help screen.
        !           218: .TP
        !           219: .B "-m N, --min-bps N"
        !           220: Stop transmission if BPS-Rate (Bytes Per Second) falls below N for a
        !           221: certain time (see --min-bps-time option).
        !           222: .TP
        !           223: .B "-M N, --min-bps-time"
        !           224: Used together with --min-bps. Default is 120 (seconds).
        !           225: .TP
        !           226: .B "-O, --disable-timeouts"
        !           227: Disable read timeout handling code. This makes lrz hang if the
        !           228: sender does not send any more, but increases performance (a bit)
        !           229: and decreases system load (through reducing the number of system
        !           230: calls by about 50 percent).
        !           231: 
        !           232: Use this option with care.
        !           233: .TP
        !           234: .B "--o-sync"
        !           235: Open output files in synchronous write mode. This may be useful if you
        !           236: experience errors due to lost interrupts if update (or bdflush or
        !           237: whoever this daemon is called on your system) writes the buffers to the
        !           238: disk.
        !           239: 
        !           240: This option is ignored and a warning is printed if your systems 
        !           241: doesn't support O_SYNC.
        !           242: .TP
        !           243: .B "-p, --protect"
        !           244: (ZMODEM) Protect: skip file if destination file exists.
        !           245: .TP
        !           246: .B "-q, --quiet"
        !           247: Quiet suppresses verbosity.
        !           248: .TP
        !           249: .B "-r, --resume"
        !           250: Crash recovery mode. lrz tries to resume interrupted file transfers.
        !           251: .TP
        !           252: .B "-R, --restricted"
        !           253: Enter more restricted mode. lrz will not create directories or files
        !           254: with a leading dot if this option is given twice.
        !           255: 
        !           256: See 
        !           257: .B SECURITY
        !           258: for mode information about restricted mode.
        !           259: .TP
        !           260: .B "-s HH:MM, --stop-at HH:MM"
        !           261: Stop transmission at
        !           262: .B HH
        !           263: hours,
        !           264: .B MM
        !           265: minutes. Another variant, using
        !           266: .B +N
        !           267: instead of
        !           268: .B HH:MM,
        !           269: stops transmission in
        !           270: .B N
        !           271: seconds.
        !           272: .TP
        !           273: .B "-S, --timesync"
        !           274: Request timesync packet from the sender. The sender sends its system time, 
        !           275: causing lrz to complain about more then 60 seconds difference. 
        !           276: 
        !           277: Lrz tries to set the local system time to the remote time if this option 
        !           278: is given twice (this fails if lrz is not run by root).
        !           279: 
        !           280: This option makes lrz incompatible with certain other ZModems. Don't
        !           281: use it unless you know what you are doing.
        !           282: .TP
        !           283: .B "--syslog[=off]"
        !           284: turn syslogging on or off. the default is set at configure time.
        !           285: This option is ignored if no syslog support is compiled in.
        !           286: .TP
        !           287: .B "-t TIM, --timeout TIM"
        !           288: Change timeout to
        !           289: .I TIM
        !           290: tenths of seconds. This is ignored if timeout handling is turned of
        !           291: through the 
        !           292: .B O 
        !           293: option.
        !           294: .TP
        !           295: .B "--tcp-client ADDRESS:PORT"
        !           296: Act as a tcp/ip client: Connect to the given port.
        !           297: 
        !           298: See 
        !           299: .B "--tcp-server"
        !           300: for more information.
        !           301: 
        !           302: .TP
        !           303: .B "--tcp-server"
        !           304: Act as a server: Open a socket, print out what to do, wait for connection.
        !           305: 
        !           306: You will normally not want to use this option as lrzsz is the only 
        !           307: zmodem which understands what to do (private extension). You might
        !           308: want to use this if you have to use zmodem (for which reason whatever),
        !           309: and cannot use the 
        !           310: .B --tcp
        !           311: option of
        !           312: .I lsz
        !           313: (perhaps because your telnet doesn't allow to spawn a local program
        !           314: with stdin/stdout connected to the remote side).
        !           315: 
        !           316: If you use this option you have to start 
        !           317: .I lsz 
        !           318: with the
        !           319: .B --tcp-client ADDRESS:PORT
        !           320: option. 
        !           321: .I lrz will print the address and port on startup.
        !           322: 
        !           323: Use of this option imposes a security risk, somebody else could connect
        !           324: to the port in between. See
        !           325: .B SECURITY 
        !           326: for details.
        !           327: .TP
        !           328: .B "-U, --unrestrict"
        !           329: turn off restricted mode (this is not possible if running under
        !           330: a restricted shell).
        !           331: .TP
        !           332: .B "--version"
        !           333: prints out version number.
        !           334: .TP
        !           335: .B "-v, --verbose"
        !           336: Verbose
        !           337: causes a list of file
        !           338: names to be appended to stderr.
        !           339: More v's generate more output.
        !           340: .TP
        !           341: .B "-wN, --windowsize N"
        !           342: Set window size to N.
        !           343: .TP
        !           344: .B "-X, --xmodem"
        !           345: use XMODEM protocol.
        !           346: .TP
        !           347: .B "-y, --overwrite"
        !           348: Yes, clobber any existing files with the same name.
        !           349: .TP
        !           350: .B "--ymodem"
        !           351: use YMODEM protocol.
        !           352: .TP
        !           353: .B "-Z, --zmodem"
        !           354: use ZMODEM protocol.
        !           355: .PD
        !           356: .ne 6
        !           357: .SH SECURITY
        !           358: Contrary to the original ZMODEM lrz defaults to restricted mode. In
        !           359: restricted mode lrz will not accept absolute pathnames or references 
        !           360: to a parent directory, will not modify an existing file, and
        !           361: removes any files received in error. Remote command execution is 
        !           362: disabled.
        !           363: 
        !           364: To use a more restricted mode set the environment variable 
        !           365: .B ZMODEM_RESTRICTED 
        !           366: or give the
        !           367: .B R
        !           368: option. This disables creation of subdirectories and invisible
        !           369: files.
        !           370: 
        !           371: Restricted mode may be turned off with the
        !           372: .B U 
        !           373: option, unless lrz runs under a restricted shell.
        !           374: 
        !           375: .TP
        !           376: Use of the 
        !           377: .B --tcp-client 
        !           378: or 
        !           379: .B --tcp-server 
        !           380: options imposes a security risk, as somebody else could connect to
        !           381: the port before you do it, and grab your data. If there's strong
        !           382: demand for a more secure mode i might introduce some sort of
        !           383: password challenge.
        !           384: 
        !           385: .SH ENVIRONMENT
        !           386: lrz uses the following environment variables:
        !           387: .TP
        !           388: .B SHELL
        !           389: lrz recognizes a restricted shell if this variable includes
        !           390: .I "rsh"
        !           391: or
        !           392: .I "rksh"
        !           393: \.
        !           394: .TP
        !           395: .B ZMODEM_RESTRICTED
        !           396: lrz enters the more restricted mode if the variable is set.
        !           397: .SH EXAMPLES
        !           398: .RE
        !           399: (Pro-YAM command)
        !           400: .RS
        !           401: .I <ALT-2>
        !           402: .br
        !           403: Pro-YAM Command:
        !           404: .I "sz *.h *.c"
        !           405: .br
        !           406: (This automatically invokes
        !           407: .I rz
        !           408: on the connected system.)
        !           409: .RE
        !           410: .SH SEE ALSO
        !           411: ZMODEM.DOC,
        !           412: YMODEM.DOC,
        !           413: Professional-YAM,
        !           414: crc(omen),
        !           415: sz(omen),
        !           416: usq(omen),
        !           417: undos(omen)
        !           418: 
        !           419: Compile time options required
        !           420: for various operating systems are described in the
        !           421: source file.
        !           422: .SH NOTES
        !           423: Sending serial data to timesharing minicomputers
        !           424: at sustained high speeds
        !           425: has been known to cause lockups, system halts, kernel panics,
        !           426: and occasional antisocial behaviour.
        !           427: When experimenting with high speed input to a
        !           428: system, consider rebooting the system
        !           429: if the file transfers are not successful,
        !           430: especially if the personality of the system appears altered.
        !           431: 
        !           432: The Unix "ulimit" parameter must be set high enough
        !           433: to permit large file transfers.
        !           434: 
        !           435: The TTY input buffering on some systems may not allow long blocks
        !           436: or streaming input at high speed.
        !           437: You should suspect this problem when you
        !           438: can't send data to the Unix system at high speeds using ZMODEM,
        !           439: YMODEM-1k or XMODEM-1k,
        !           440: when YMODEM with 128 byte blocks works properly.
        !           441: If the system's tty line handling is really broken, the serial port
        !           442: or the entire system may not survive the onslaught of long bursts
        !           443: of high speed data.
        !           444: 
        !           445: The DSZ or Pro-YAM
        !           446: .B "zmodem l"
        !           447: numeric parameter may be set to a value between 64 and 1024 to limit the
        !           448: burst length ("zmodem pl128").
        !           449: 
        !           450: 32 bit CRC code courtesy Gary S. Brown.
        !           451: Directory creation code from John Gilmore's PD TAR program.
        !           452: .SH BUGS
        !           453: Calling
        !           454: .I rz
        !           455: from most versions of cu(1) doesn't work because cu's receive process
        !           456: fights
        !           457: .I rz
        !           458: for characters from the modem.
        !           459: 
        !           460: Programs that do not properly implement the specified file transfer protocol
        !           461: may cause
        !           462: .I sz
        !           463: to "hang" the port for a minute or two.
        !           464: Every reported instance of this problem has been corrected by using
        !           465: ZCOMM, Pro-YAM, or other program with a correct implementation
        !           466: of the specified protocol.
        !           467: 
        !           468: Many programs claiming to support YMODEM only support XMODEM with 1k blocks,
        !           469: and they often don't get that quite right.
        !           470: 
        !           471: Pathnames are restricted to 127 characters.
        !           472: In XMODEM single file mode, the pathname given on the command line
        !           473: is still processed as described above.
        !           474: The ASCII option\'s CR/LF to NL translation merely deletes CR\'s;
        !           475: undos(omen) performs a more intelligent translation.
        !           476: .SH "VMS VERSION"
        !           477: The VMS version does not set the file time.
        !           478: 
        !           479: VMS C Standard I/O and RMS may interact to modify
        !           480: file contents unexpectedly.
        !           481: 
        !           482: The VMS version does not support invocation as
        !           483: .B rzCOMMAND .
        !           484: The current VMS version does not support XMODEM, XMODEM-1k, or YMODEM.
        !           485: 
        !           486: According to the VMS documentation,
        !           487: the buffered input routine used on the VMS version of
        !           488: .I rz
        !           489: introduces a delay
        !           490: of up to one second for each protocol transaction.
        !           491: This delay may be significant for very short files.
        !           492: Removing the "#define BUFREAD" line from rz.c will
        !           493: eliminate this delay at the expense of increased
        !           494: CPU utilization.
        !           495: 
        !           496: The VMS version causes DCL to generate a random off the wall
        !           497: error message under some error conditions; this is a result of
        !           498: the incompatibility of the VMS "exit" function with the
        !           499: Unix/MSDOS standard.
        !           500: .SH "ZMODEM CAPABILITIES"
        !           501: .I Rz
        !           502: supports incoming ZMODEM binary (-b), ASCII (-a),
        !           503: protect (-p),
        !           504: clobber (-y),
        !           505: and append (-+)
        !           506: requests.
        !           507: The default is protect (-p) and binary (-b).
        !           508: 
        !           509: The Unix versions support ZMODEM command execution.
        !           510: .SH FILES
        !           511: rz.c, crctab.c, rbsb.c, zm.c, zmodem.h Unix source files.
        !           512: 
        !           513: rz.c, crctab.c, vrzsz.c, zm.c, zmodem.h, vmodem.h, vvmodem.c,
        !           514: VMS source files.

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>