lauren@rand-unix.ARPA (03/01/85)
Since it is pretty widely known that I have my own versions of UUCP that are unrelated to AT&T code, I thought I'd comment on this general topic now to head off the direct mail that usually gets sent to me after such queries. --- It is important to realize that UUCP isn't really a protocol, it is an EFFECT. It is a bunch of different programs that happen to know how to speak to each other. There is no "formal" protocol in the sense that TCP/IP is a formally specified protocol. One reason you don't see much about how the protocol works is that since it is embodied in trade-secret source code, it would be illicit to read the UUCP source code to figure out the protocol (and then use or publish that information in non-Unix-licensed environments). I developed my own knowledge and versions of UUCP completely from the outside, without any reference to UUCP source code. This turned out to be a tremendously more difficult task than I had originally anticipated. It involved almost two years of experiments and endless experimental versions that "sorta" worked or worked only with some sites. One of the problems was that I never had any way to know what I DIDN'T yet know--until one day some new site would call me and everything would stop working. Then it was back to the drawing board. Over a long period of time, mainly by trial and error, I've gotten to the point where my own versions of UUCP and related programs (mail, netnews, rdmail, etc.) seem to be compatible with all known Unix UUCP's. I've even got 822 domain support built into my latest versions. But when people complain that it has taken me so long to make these available (particularly the MSDOS version) I can only point out that it all (from the communications level to the problems of incompatible filenames and file formats) was a LOT of work and that I had to do everything on my own time without any outside support. I'll be releasing my MSDOS uucp/mail/netnews/ remote access package, including domain support, as a complete package. For people who don't need all that stuff (and it is a LOT of stuff) I'll be happy to discuss unbundling UUCP itself or other parts of the package if people really want it. Once the various versions of UUCP have settled down again, I'll try get back to writing up a "formal" protocol spec, which would include communications info, file naming and handling, timing constraints (this turns out to be much more critical than one would think, especially on small machines) and all the other stuff I've learned over the last couple of years. Since all of this knowledge was gained without looking at Unix UUCP source, I'll be happy to share it once I can put it into a coherent framework and I finally have some spare time. ---- Frankly, if I had all of this work to do all over again, I probably wouldn't have started. It was simply too much work and ate a substantial chunk out of my life. What would I have done instead? I'd have used an automated Kermit for everything. Which is what I currently recommend to people trying to get fancy file transfer programs going with new machines. I am big Kermit fan. --Lauren-- P.S. If you have any questions, please contact me directly. I'll be happy to help. But these poor lists are already overflowing! Let's try give them a break. --LW--