

NAME
	UUCico

SYNOPSIS
	UUCico -D[EVICE] device -U[NIT] unit -Getty -w -r1 -xn -Xn -xx -h0
	       -o -[s/S]system -e -s -7 -p # -pri -d0 -t<timeout> -T<timeout>

DESCRIPTION
	UUCico is the basis for UUCP.	It can be run either from a
	GETTY when somebody logs into the Amiga, or it can be run
	from DCRON or manually to originate connections.

	Some options to UUCico are now outdated and should not be
	used.  Specifically, earlier distributions did not have a
	GETTY and UUCICO had to deal with waiting for connections
	itself.

	Either way, the final result is a connection between your
	machine and some remote machine.  UUCICO will retrieve any
	queued work on the remote machine and send any queued work on
	your machine.  These work files are located in UUCP:SPOOL.

	The term 'work' refers to items queued by other programs,
	such as PNEWS and MAIL.  These programs create files in
	UUCP:SPOOL that inform UUCICO what to do with them and where
	to send them to.  On the flip side, when UUCICO receives a
	work file it will write it to UUCP:SPOOL then run UUXQT.

	UUXQT scans received files and determines how to break them
	up (for example, append them to the appropriate mail box or
	news directory).  The control files in UUCP:SPOOL contain a
	line indicating the appropriate program required to unpack
	the files.  UUXQT reads this line and runs the proper
	unpacker (RMAIL, RNEWS, or CUNBATCH).

				    LOCKING

	UUCico locks the serial port in the same manner Getty does, but
	doing the equivalent of the UUCP:C/LOCKSERIAL command before
	openning it.  Thus, uucico's will never bump into each other
	on the port.  Any terminal program you run should lock the
	serial port as well.  This is done by running the terminal
	program via UUCP:C/LOCKSERIAL with the appropriate arguments,
	see the manual pages for GETTY and LOCKSERIAL for more information


GENERAL OPTIONS

	(*)'d Options are supplied automatically on Getty Initiated
	connections

   (*)  -D devicename       Default is serial.device (space is required)
   (*)  -U unitnumber       Default is 0 (space is optional)
	-xn		    Set log level for us and for remote system
	-Xn		    Set log level but do not tell remote system
			    about it.

	-xx		    Debug handshake to stdout (but not once connection
			    is established).  Useful for debugging L.Sys
			    send-expect stuff.

	-h0		    Ignore Carrier Detect.

	-b		    BATCH news before anything else

	-7		    Set 7WIRE mode for serial connections
			    (i.e. hardware handshaking)

	-p #

	-pri		    UUCico ups its priority by 1 during transfer,
			    then downs it by 1 to run uuxqt. (i.e. +1
			    during transer, -1 for uuxqt)

	-d0		    IGNORE DTR switch forces UUCico to use the
			    +++ sequence to disconnect instead of dropping
			    DTR.   This is a workaround for a possible
			    bug in the serial device for those who
			    experience crashes when UUCico tries to
			    disconnect.

	-n[size]	    Set protocol window size.  If size is not
			    specified, a window size of 1 is forced.  The
			    default (-n option not specified) it a
			    window size of 7.

			    Sometimes it is necessary to reduce the window
			    size to 3 or 4 when connecting to heavily
			    loaded UNIX systems.

	-t<timeout>	    Set GIO protocol timeout before packet retry.
			    Default is 5.  In many cases this can cause
			    long no-activity delays due to small glitches
			    when, in fact, the receiving host is not loaded
			    down.  Setting the timeout to 1 generally fixes
			    this.

	-T<timeout>	    Set timeout for send-expect strings, default
			    is 15 seconds.

	-P<segsize>	    Set segment size, in powers of two where a
			    segment size of 2 == 64 bytes.  The maximum
			    segment size is 9 (2048 bytes??).

			    This option should be used only by EXPERIENCED
			    UUCP users.  Larger is not necessarily better
			    since all packets are fixed length.

GETTY INITIATED OPTIONS

   (*)  -Getty              Tells UUCICO that it was started from a Getty.

MANUAL POLL OPTIONS

	-ssystem	    Poll (call-up) the specified system

	-Ssystem	    Same as -s but ignore time restrictions
			    (note, currently time restrictions are
			     ignored anyway)

	-r1		    Call all systems we have pending work for

	-r1 -ssystem	    Call this specific system if we have pending
			    work.

	-o		    Tells UUCICO to not search for a CONNECT
			    message when carrier is detected (hardwired
			    configuration)

OBSOLETE OPTIONS    (WAIT MODE OPTIONS)  DO NOT USE IF YOU CAN HELP IT

	-w		    Tells UUCICO to wait for one or more
			    connections (depending on -e) AFTER having
			    previously polled one or more systems
			    (-r, -s, -S).


	-e		    Tells UUCICO to loop forever waiting for
			    connections.

	<nooptions>	    If UUCICO is run without either -Getty,
			    -s, or -r, it will wait for a single
			    connection.

TIMELOG FORMAT
	UUcico automatically appends an entry to UUSPOOL:TimeLog in
	the following format:

	dd-mmm-yy mm:ss mm:ss in=nnnnn out=nnnnn <system_name>

	The date, then two on-line times.  The first is the connect time
	from carrier detect, the second is connect time from send-expect
	success.  Use whichever one is appropriate for bill calculations.
	Following that is the number of data bytes received (total of
	received file sizes) and the number of data bytes sent (total of
	transmitted file sizes).  These numbers do not reflect additional
	overhead used by the G protocol (messages, acks, packet overhead,
	or retries).



EXAMPLE
				-----

	; Place a line similar to this in your startup-sequence!
	; See GETTY manual

	resident uucp:C/Getty
	run <nil: >nil: Getty -A -B19200 -Mm

				-----

	; Manually poll system 'foo'
	UUCico -sfoo

				-----

	; From DCRON  (DCRON ENTRY)
40	1	*	*	*	uucp:c/uucico -r1



FILES/REQUIRES
	UUCP:
	UUCP:c/*
	UUCP:lib/*
	UUCP:mail/
	UUCP:spool/
	UUCP:spool/LOGFILE

REFERENCES
	man/L.Sys
	man/Getty
	man/DCron
	man/Assigns




