[net.sources] uuslave.c coordination & move to comp.mail.uucp

gnu@hoptoad.UUCP (01/31/87)

[I hereby move further discussion of uuslave to comp.mail.uucp .]

bruceb@telesoft.UUCP (Bruce Bergman @spot) writes:
>                                                            ...the protocol
> level of uucp is not documented.  Those who know the info aren't willing to
> share it, so if you want to rewrite uucp, you are on your own.
> Anyhow, with the advent of uuslave.c, the gaps have filled in.

It takes some digging, but the protocol level of UUCP *is* documented.  There
is a mailing list for people interested in reimplementing uucp in the public
domain, and the protocol description has come out over it.  I have also sent
it out to several people who have asked the net for it.

To get on the mailing list, send mail to ihnp4!akgua!ucf-cs!ki4pv!tanner.
So far only three issues have been mailed to this list, but I expect that
with uuslave, the traffic will pick up substantially.

I am hacking uuslave.c to actually run on my Sun Unix system and talk
to my uucp (I have multiple modems, so uucp can call "out" to uuslave).  So
far it compiles (some system V-isms needed ifdeffing for 4.2BSD) and
with some debugging has gotten through initialization of the uucp link
and a "hang up?" "yes" transaction.  The original code from the BBS
does absolutely NO error checking whatsoever.  A bit gets dropped, it
doesn't care.  I've added almost full error checking so far, added lots
of comments, and restructured the code so it can be read in 80 columns and
understood.

It seems to be having trouble with data transfers though; it has fixed,
funny ideas about packet acknowledgements.  That part of the code needs
to be generalized to match the protocol, rather than having upper level
code wait for specific packet formats.

When this version will actually send and receive a data file with Sun's
UUCP, I will post the revised sources to net.sources.  (Mod.sources
would be too slow, since a lot of folks are interested; and I'm sure
the code will evolve quickly anyway.)

> If anyone is interested in the Modula-2 or C versions of uuslave.c for MS-DOS,
> please send me a note.  I'll be porting it as we speak, in any case.

I think that we should try to keep a single set of C sources that run UUCP
on all machines.  Take C-Kermit as an example.  I hate having seventyleven
different versions of things, with slight changes and typos, for different
machines.  It will be a lot easier to keep track of the evolution of this
beast with #ifdef's in the mainline code, or a separate "system dependent"
module (one per system) for system dependent code.

I am willing to act as a clearing house for C versions of uuslave that run
on different systems, in order that there be some center to the chaos.
I will only accept versions which have actually been tested and run
against a Unix uucp though.  I don't want to go to the work of merging
in changes that don't even work yet.  If you send me a version, please
specify what machine it ran on, the configuration of the machine (e.g. opsys
revision, funny peripherals), what Unix site it was tested against, and what
version of Unix and uucp the site runs (if you know).

I will post the uucp protocol description to comp.mail.uucp.  See you there!
-- 
John Gilmore  {sun,ptsfa,lll-crg,ihnp4}!hoptoad!gnu   gnu@ingres.berkeley.edu
Love your country but never trust its government.
		     -- from a hand-painted road sign in central Pennsylvania