Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!decvax!ittvax!swatt From: swatt@ittvax.UUCP (Alan S. Watt) Newsgroups: net.news,net.bugs.uucp Subject: Re: UUCP local file naming Message-ID: <923@ittvax.UUCP> Date: Thu, 11-Aug-83 11:44:45 EDT Article-I.D.: ittvax.923 Posted: Thu Aug 11 11:44:45 1983 Date-Received: Thu, 11-Aug-83 19:01:04 EDT References: csu-cs.2354 Lines: 69 I am glad awareness of this serious UUCP bug has hit a significant number of net sites. I have come up with several possible solutions. 1) Use Lauren's naming scheme for the "D." files such that when queued in the originating system, they are named D. but when they arrive at the destination system they are renamed D. As people have noted, this cannot be implemented on only a partial set of systems, as it will increase collision chances for systems running the original code. To make it work, you would have to use subdirectories, or at least one for all "incoming" work. The file naming nonsense is spread out in several places in "uucp.c" and "uux.c", and perhaps others as well. I looked into this slightly and it was a bit of a mess. If you don't mind just calling "gename" several times, it is easy, but this is expensive unless your sequence numbers are cached (UUCP hack published long ago). 2) Use the "grade" character to differentiate incoming and outgoing stuff. I, and perhaps others, do use this for its intended purpose of assigning priorities to work in the queues, but this only affects "C." and "X." files; its significance for "D." files is unused at present. "O" and "I" could be used to differentiate inbound and outbound data files. Similar comments as above. 3) Use "D." for outgoing stuff, and rename it to "d." when it arrives at the destination system. Same comments as above. The problem with all of these methods is they require everyone to adopt the same standards. Hence my preferred (at present) method: 4) Create a separate directory in the UUCP spool directory for each system with which you connect. Fix uucico to prefix all incoming spool-destined files with this system name. Fix uuxqt to look there for work based on the "S" line in the "X." file which specifies origin system. You do have to be careful that uucico's idea of the current remote system is always correct, but I can't recall finding any bugs on this score. This can be done on the local system regardless of what the rest of the UUCP world does. I also feel a bit less queasy about this hack because I have already been into the appropriate places of uucico and uuxqt and have a clear idea of what to do. It does add an extra step to the process of adding a new system connection however, as you have to create the new subdirectory. I also tend to prefer this approach because I think the subdirectories should be named for the system, not the arbitrary "C.", "D.", "X." files and whatever else is leftover from UUCP kludgery. - Alan S. Watt (decvax!ittvax!swatt)