UUPC/extended version 1.13j
Installation and User Reference
September 13, 2003
Kendra
Electronic Wonderworks
Post Office Box 80144
Stoneham, MA 02180-0002 USA
Telephone: 781-279-9812
E-mail: help@kew.com
URL: http://www.kew.com

This document is Copyright © 1989-2001 by Kendra Electronic Wonderworks. All rights reserved. Please see our license agreement on page ix for restrictions on further distribution.
The UUPC/extended software is Changes and Compilation Copyright © 1989-2001 by Kendra Electronic Wonderworks, and also subject to our license agreement on page ix.
Table of Contents............................................................................................................... i
Tables............................................................................................................................... vii
Licensing, Redistribution, and Warranty....................................................................... ix
Terms and Conditions for Copying, Distribution, and Modification.......................... ix
NO WARRANTY............................................................................................................ xi
Revision.......................................................................................................................... xiii
Viewing this document.................................................................................................. xiii
Viewing on a Terminal............................................................................................. xiii
Viewing on a Under Windows................................................................................... xiii
Viewing using a Web Browser.................................................................................. xiii
Special Note for the 1.12u Edition............................................................................... xiii
Part 1: General Information............................................................................................. 1
Introduction.................................................................................................................. 1
Version Numbers............................................................................................. 1
Who Should Use This Program.................................................................................... 2
System Requirements................................................................................................. 3
Required Reading......................................................................................................... 3
Resolving Problems and Other Support....................................................................... 3
Registering for Support.................................................................................... 3
Support Via Electronic Mail............................................................................. 4
Support Via US Mail......................................................................................... 4
Support via Telephone..................................................................................... 5
Support via Mailing Lists................................................................................. 5
Frequently Asked Questions (and Answers)................................................................ 6
Part 2: Basic UUCP Installation..................................................................................... 11
New UUPC/extended Installations............................................................................ 11
Ingredients..................................................................................................... 11
Before You Begin Installing........................................................................... 13
Copying UUPC/extended files onto your system.......................................... 14
Configuring After Installation....................................................................... 16
Testing........................................................................................................... 23
All Dressed Up and No Where to Go?............................................................. 25
Upgrading an Existing Installation............................................................................ 25
Configuring Usenet News Support............................................................................ 26
Selecting a news reader................................................................................ 27
Arranging a News feed................................................................................... 27
Configuring for News..................................................................................... 27
Permissions (PERMISSN) Files.................................................................................. 29
Part 3: Advanced Mail Installation and Configuration............................................... 31
Changing How Mail is Addressed and Delivered Locally.......................................... 31
An Overview of RMAIL..................................................................................... 31
Using Nickname Files, Alias Files, Forward Files, and the HOSTPATH file 32
Implicit Nickname Processing, (or, What Your Bear Never Told You about Aliases) 33
Controlling Mail Routing for Entire Systems and Subdomains................................ 33
Overview of Mail Routing............................................................................... 33
Routing Mail Via Non-Default Mail Servers.................................................. 34
Routing Mail for SMTP Delivery.................................................................... 34
Keeping Local Mail on the Local System....................................................... 34
Aliasing Systems Via The HOSTPATH File................................................... 35
The Ever So English Sport of Site Hiding...................................................... 35
UUPC/extended as a Mail Gateway............................................................... 36
UUPC/extended and Simple Mail Transport Protocol (SMTP)................................... 37
Receiving Mail via the UUSMTPD Server...................................................... 37
UUPC/extended and POP3 clients............................................................................. 38
UUPC/extended in Multi-tasking and Multi-user Environments............................ 38
Using UUPC/extended Under Windows 3.x................................................... 38
Using UUPC/extended Under OS/2, Windows 95, and Windows NT............ 40
Using UUPC/extended On a LAN................................................................... 40
Configuring Universal Naming Convention (UNC) Names...................................... 41
Specialized Communications Drivers....................................................................... 41
Drivers Available Under Different Environments......................................... 41
Using with TCP/IP based hosts..................................................................... 42
Using FOSSIL communications drivers with UUPC/extended.................... 43
General Advice on Multitasking Environments....................................................... 45
Passive Polling: Letting Other Systems Call You...................................................... 45
Modifying your SYSTEMS, PASSWD, and PERMISSN files............................ 46
Test your machine's new configuration....................................................... 47
Test having their machine call yours........................................................... 47
Interfacing With Other Programs.............................................................................. 47
Types of Support............................................................................................. 47
Using V-mail and Other Third Party Mailers................................................ 48
Invoking uucico From External Programs................................................... 49
Having uucico Invoke External Programs.................................................... 49
Part 4: Command Reference........................................................................................... 51
Overview..................................................................................................................... 51
Command Syntax....................................................................................................... 51
COMM34...................................................................................................................... 52
EXPIRE........................................................................................................................ 53
FMT............................................................................................................................. 54
FROMWHO.................................................................................................................. 56
GENHIST...................................................................................................................... 57
GENSIG....................................................................................................................... 58
GETUUPC.................................................................................................................... 59
INEWS......................................................................................................................... 60
MAIL............................................................................................................................ 61
MAILCHEK................................................................................................................... 68
NEWSRUN................................................................................................................... 69
NOVRSTRK.................................................................................................................. 71
PNEWS........................................................................................................................ 72
REGSETUP.................................................................................................................. 73
RMAIL.......................................................................................................................... 75
RNEWS........................................................................................................................ 78
SENDBATS.................................................................................................................. 80
SU............................................................................................................................... 81
uucico........................................................................................................................ 82
uucicon..................................................................................................................... 87
UUCLEAN..................................................................................................................... 88
UUIO............................................................................................................................ 89
UUCP........................................................................................................................... 90
UUCPD......................................................................................................................... 92
UUHOUR...................................................................................................................... 93
UUNAME...................................................................................................................... 94
uupoll....................................................................................................................... 95
UUPOPD...................................................................................................................... 98
UUPORT..................................................................................................................... 100
UUSMTPD.................................................................................................................. 102
UUSTAT..................................................................................................................... 104
UUSUB....................................................................................................................... 107
UUTRAF..................................................................................................................... 108
uux............................................................................................................................ 110
uuxqt....................................................................................................................... 112
WAITING.................................................................................................................... 113
Part 5: Configuration Files........................................................................................... 115
Overview................................................................................................................... 115
The UUPC.RC and [userid].RC files.......................................................................... 115
Introduction.................................................................................................. 115
Keywords Valid in Individual or System Configuration Files..................... 116
Keywords Valid Only in System Configuration Files.................................. 119
Boolean Options Valid in Either UUPC.RC or [userid].RC............................ 122
Modem ([modem].MDM) Files..................................................................................... 128
Introduction.................................................................................................. 128
Modem File Guidelines................................................................................ 128
Valid Fields in Modem Files......................................................................... 129
Boolean Options In Modem Files................................................................. 133
Supplied Modem files................................................................................... 134
The PASSWD file...................................................................................................... 136
The SYSTEMS file.................................................................................................... 137
Introduction.................................................................................................. 137
Time............................................................................................................. 138
Call grades.................................................................................................... 140
Protocols....................................................................................................... 140
Scripts.......................................................................................................... 142
The Fine Art of Chat Scripts........................................................................ 143
Multiple entries in the SYSTEMS file......................................................... 145
System Mail ALIASES File....................................................................................... 146
User Mail FORWARD File......................................................................................... 148
User Mail Nickname File........................................................................................ 148
HOSTPATH routing file............................................................................................ 151
Synopsis....................................................................................................... 151
Description................................................................................................... 151
usenet News ACTIVE Groups File........................................................................... 153
Format.......................................................................................................... 153
Special News Groups.................................................................................... 153
Other Considerations.................................................................................. 154
Usenet news SYS (neighbours) file......................................................................... 155
Appendix 1: Additional Copyrights and Related Credits........................................... 161
Appendix 2: Working With UUPC/extended Source.................................................. 163
Appendix 3: How UUCP File Transfers Work............................................................... 165
Overview................................................................................................................... 165
What’s in a Name?................................................................................................... 165
Files in the UUCP spool directory............................................................................ 165
Basic UUCP Processing............................................................................................ 166
Sample UUCP Job..................................................................................................... 167
Appendix 4: How to Get UUPC/extended..................................................................... 168
Introduction.............................................................................................................. 168
Supported Methods....................................................................................... 168
Obsolete Methods......................................................................................... 168
Sources for UUPC/extended.................................................................................... 168
Anonymous FTP........................................................................................... 168
World Wide Web............................................................................................ 168
Anonymous UUCP......................................................................................... 168
Registering Your Current Copy............................................................................... 169
About the Files......................................................................................................... 169
General Description of the Files................................................................. 169
Summary of Archive Contents.................................................................... 171
Other Trivia............................................................................................................. 172
Questions and Comments........................................................................... 172
Appendix 5: How to Register......................................................................................... 173
Why You Should Register......................................................................................... 173
And as an Added Bonus............................................................................................ 174
Disclaimer of Warranty............................................................................................ 174
Instructions.............................................................................................................. 175
The Form.................................................................................................................. 176
User Information.......................................................................................... 176
System Information..................................................................................... 176
Items Ordered.............................................................................................. 179
Appendix 6: Changes From Previous Versions........................................................... 180
Introduction.............................................................................................................. 180
Version 1.13f – 1.13j Revision Summary................................................................ 180
Bug Fixes...................................................................................................... 180
Enhancements............................................................................................. 180
Version 1.13e Revision Summary........................................................................... 181
Bug Fixes...................................................................................................... 181
Version 1.13d Revision Summary........................................................................... 181
Bug Fixes...................................................................................................... 181
Enhancements............................................................................................. 182
Version 1.13c Revision Summary........................................................................... 182
Bug Fixes...................................................................................................... 182
Enhancements............................................................................................. 182
Version 1.13b Revision Summary........................................................................... 183
Bug Fixes...................................................................................................... 183
Enhancements............................................................................................. 183
Version 1.12w - Version 1.13a Revision Summary................................................ 184
Bug Fixes...................................................................................................... 184
Enhancements............................................................................................. 185
Version 1.12v - Version 1.12w Revision Summary................................................ 185
Bug Fixes...................................................................................................... 185
Enhancements............................................................................................. 186
Version 1.12t - Version 1.12u Revision Summary................................................. 186
Bug Fixes...................................................................................................... 186
Enhancements............................................................................................. 188
Version 1.12s Revision Summary........................................................................... 189
Bug Fixes...................................................................................................... 189
Enhancements............................................................................................. 190
Version 1.12r Revision Summary........................................................................... 192
Bug Fixes...................................................................................................... 192
Enhancements............................................................................................. 193
Version 1.12p Revision Summary........................................................................... 193
Bug Fixes...................................................................................................... 193
Version 1.12o Revision Summary........................................................................... 194
Enhancements............................................................................................. 194
Bug fixes....................................................................................................... 194
Other Changes............................................................................................. 196
Version 1.12j Through Version 1.12n Revision Summary..................................... 196
Enhancements............................................................................................. 196
Bug fixes....................................................................................................... 198
Other changes.............................................................................................. 200
Versions 1.12h through 1.12i Revision Summary................................................. 200
Enhancements............................................................................................. 200
Bug Fixes...................................................................................................... 201
Versions 1.12c through 1.12g Revision Summary................................................. 202
Bug Fixes...................................................................................................... 202
Enhancements and Other Hacks................................................................ 205
Index............................................................................................................................... 207
Table 1 - Archive Files Needed for Various Operating Systems 15
Table 2 - Files to Update for Basic Installation 16
Table 3 - Minimum Fields to Update in UUPC.RC for New Installation 18
Table 4 - Minimum [userid].RC fields to Update for New Installation 19
Table 5 - Contents of a Simple SYSTEMS File 20
Table 6 - Sample Time Zone (TZ) Environment Variable Values 22
Table 7 - Substitution Parameters Allowed in Shell Field of PASSWD File 49
Table 8 - Valid message Operands for MAIL Subcommands 62
Table 9 - Valid filename Operands for MAIL subcommands 63
Table 10 - Valid address operands for MAIL subcommands 63
Table 11 - Mail subcommand summary 64
Table 12 - Subcommands Available While Sending Mail 66
Table 13 - User/System Configuration Keywords 117
Table 14 - System Wide Configuration Keywords 119
Table 15 - Boolean Options Valid in User/System Configuration Files 122
Table 16 - Boolean options valid in System Wide Configuration Files 125
Table 17 - Modem File Configuration Keywords 129
Table 18 - Boolean options valid in Modem files 133
Table 19 - Modem Files Included 134
Table 20 - Fields in the PASSWD File 136
Table 21 - Description of the fields in the SYSTEMS File 137
Table 22 - Values Allowed for Time field in SYSTEMS File 139
Table 23 - Protocols Supported in Systems File 140
Table 24 - Strings Supported in Chat Scripts 143
Table 25 - Processing Flags Specified in Usenet SYS file 157
Table 26 - Compilers Used to Build UUPC/extended 163
Table 27 - Manifest of UUPC/extended Files Available for Download 170
Table 28 - Supported Substitution Parameters 205
"If you feed [UUPC for the Mac] after midnight, and it gets nasty and shreds your living room furniture, that's your problem, not mine. ;-)"
-- Dave Platt
"UUPC/extended", below, refers to the entire UUPC/extended package, as distributed by Kendra Electronic Wonderworks. A "work based on UUPC/extended" means either UUPC/extended or any derivative work under copyright law: that is to say, a work containing UUPC/extended or a portion of it, either verbatim or with modifications and/or translated into another language. (Translation is included without limitation in the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. UUPC/extended may be installed and run on as many systems as desired without restriction.
1. You may copy and distribute verbatim copies of UUPC/extended's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of UUPC/extended a copy of this License along with UUPC/extended[ahd1].
a) You may not distribute versions of UUPC/extended that you know to be obsolete. You are specifically prohibited from knowingly distributing obsolete versions of UUPC/extended in order to support third party programs.
b) You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.
c) If you publish UUPC/extended as part of a larger collection, compilation, or product, including but not limited to inclusion in a book as bonus software or as part of a CD-ROM collection, you agree to provide Kendra Electronic Wonderworks with two copies of each edition of the compilation free of charge for our review and use. Such copies are to be delivered to our address of record via US Mail.
We may waive our right to receive a particular edition, collection, or product without surrendering future rights to the same or other collections in which UUPC/extended is included.
2. You may modify your copy or copies of UUPC/extended, or any portion thereof, thus forming a work based on UUPC/extended, and copy and distribute such modifications or works under the terms of Section 1 above, provided that you also meet all of these conditions:
a) The modified files must carry prominent notices stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from UUPC/extended or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.
c) You may not make malicious changes to UUPC/extended. You may not insert computer viruses, worms, or other code intended to damage or disrupt the end user's system and/or data.
d) You may not cripple UUPC/extended's functionality in any way. In particular, you may not make continued use of UUPC/extended contingent on payment of a registration fee.
This does not preclude you from charging for services such as access to your own system running UUPC/extended or other mail software, but merely prevents you from charging a premium for providing the UUPC/extended software to others.
These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from UUPC/extended, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections. Specifically, unique works may interface to UUPC/extended via configuration, spooling, or other files using routines based on UUPC/extended source code without falling under the scope of this License.
It is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on UUPC/extended.
3. You may copy and distribute UUPC/extended (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for non-commercial distribution and only if you received UUPC/extended in object code or executable form with such an offer, in accord with Subsection b above.)
d) Distribution of multiple copies of the object code within a single legal organization is specifically exempted from this section.
The complete UUPC/extended source code means all the source code for all modules UUPC/extended contains plus the scripts used to control compilation and installation of the executable. However, UUPC/extended source code does not include any components of either the operating system under which UUPC/extended runs or the compiler and runtime libraries used to construct the executable.
4. Hardcopy distribution of the documentation for this program, including this Installation and User Reference, is restricted.
a) You may distribute this Installation and User Reference, in its raw or formatted form, in softcopy format with or without any source and object files, so long as you fulfill the requirements of the remainder of this license.
b) You may print as many copies of this document as needed for your own use.
c) You are prohibited from commercially publishing this document in hardcopy for third parties without the express written consent of Kendra Electronic Wonderworks, with the exception of this license and the appendixes.
This license and the appendixes may be distributed in hardcopy without restriction so long as the other conditions of this license are met.
5. You may not copy, modify, sublicense, or distribute UUPC/extended except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute UUPC/extended is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
6. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute UUPC/extended or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing UUPC/extended (or any work based on UUPC/extended), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying UUPC/extended or works based on it.
7. Each time you redistribute UUPC/extended (or any work based on UUPC/extended), the recipient automatically receives a license from the original licenser to copy, distribute or modify UUPC/extended subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.
General
8. Because UUPC/extended is licensed free of charge, there is no warranty for UUPC/extended, to the extent permitted by applicable law. Except when otherwise stated in writing, the copyright holders and/or other parties provide UUPC/extended "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of UUPC/extended is with you. Should UUPC/extended prove defective, you assume the cost of all necessary servicing, repair or correction.
9. In no event unless required by applicable law or agreed to in writing will any copyright holder, or any other party who may modify and/or redistribute UUPC/extended as permitted above, be liable to you for damages, including any general, special, incidental or consequential damages arising out of the use or inability to use UUPC/extended (including but not limited to loss of data or data being rendered inaccurate or losses sustained by you or third parties or a failure of UUPC/extended to operate with any other programs), even if such holder or other party has been advised of the possibility of such damages.
High Risk Activities (in Case You Didn’t Get it the First Time)
10. UUPC/extended is not fault-tolerant and is not designed, manufactured or intended for use or resale as on-line control equipment in hazardous environments requiring fail-safe performance, including but not limited to the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, direct life support machines, or weapons systems, in which the failure of the software could lead directly to death, personal injury, or severe physical or environmental damage ("High Risk Activities"). Kendra Electronic Wonderworks and other contributors to UUPC/extended specifically disclaim any express or implied warranty of fitness for High Risk Activities.
This is the 2nd revision of this document, and applies to UUPC/extended version 1.13j. This document was last updated on September 13, 2003 by Andrew H. Derbyshire. Even if you have read previous versions of this document, Required Reading on page 3 and Changes From Previous Versions on page 180 should be reviewed for updates.
This document includes overstrikes for printing on a printer. To read this document on-line, extract the program NOVRSTRK from the UUPC/extended optional programs archive and issue the following command:
NOVRSTRK UUPCDOCS.PRN UUPCDOCS.TXT
You can then browse the terminal ready version of the document, UUPCDOCS.TXT. However, given that this document is 243 pages long, you'll want to either print it or have a good search function handy.
This document was written using Word for Windows 97, and is distributed in Word format in the archive file upc13jaw.zip. If you have Windows but don’t have Word for Windows, you can download a free Word viewer/printer from Microsoft. The last we saw, the page was:
http://officeupdate.microsoft.com/downloadDetails/wd97vwr32.htm
However, like at many Web Sites, the folks in Redmond move things around a lot, so you may just want to start at http://www.microsoft.com and use their search function.
We convert the manual into HTML browser format, with varying success. We post it to our web site, http://www.kew.com. We also distribute the HTML format document in archive file upc13jah.zip.
In autumn of 1997, the telephone area code for Stoneham, Massachusetts changed from 617 to 781. This document has been updated to reflect this new area code in our telephone numbers.
”The Hitchhikers Guide to The Galaxy is a very unevenly edited book and contains many passages that simply seemed to its editors like a good idea at the time.”
- Douglas Adams
This document provides information on UUPC/extended version 1.13j, produced by Kendra Electronic Wonderworks with contributions from around the globe.
UUPC/extended is a PC based version (and pun of) UUCP (UNIX-to-UNIX copy). UUPC/extended implements peer-to-peer networking using the UNIX UUCP protocols. MS-DOS, OS/2, Windows 3.x, Windows NT, or Windows 95-based personal computers using these protocols can exchange mail, Usenet news, and files with a UNIX system, another UUPC/extended system, or other UUCP systems. It supports serial ports and (except in DOS environments) TCP/IP connections.
UUPC/extended is based on the free widely distributed 1987 interim version of UUPC, version 1.05, written by Stuart Lynne, Richard H. Lamb, and Samuel Lam, in Vancouver, BC. The MS-DOS version of UUPC is no longer maintained in Vancouver; UUPC/extended 1.13j is the official current release of UUPC. The differences between UUPC/extended and UUPC version 1.05 include user aliases, routing to multiple hosts, dial in support, limited domain address parsing and routing, support for the OS/2 and Windows operating environments, and various improvements in the user interface. Because of these changes, much of what is contained in this document does not apply to the original UUPC 1.05 package.
This documentation is written using Microsoft Word for Windows 97.
Minor revisions to UUPC/extended are denoted by changes to the letter suffix on the version number. Minor revisions include only those changes, no matter how great, that allow the user to return to a previous release by at most updating the configuration file. Major revisions are denoted by a change in the number of the version; a major revision has changes in it which introduce a permanent incompatibility with the previous release.
Beginning with version 1.12, major revisions are those which supposed are distributed to the registered user base, whether they introduce a permanent incompatibility or not. See How to Register, page 173, for details on how to register your copy of UUPC/extended. (In practice, both 1.12a and 1.13a were created because the previous versions were 1.11z and 1.12z, which is to say we ran out of letters.)
If you need to communicate with us regarding UUPC/extended, please be sure to include the full version number you are referring to, including the letter suffix.
For a full description of the changes to UUPC/extended and how they affect upgrading from one release to the next, see Changes From Previous Versions, page 180. It should be duly noted that there is no version 1.24b at this time. A user was having nightmares in which she didn't have version 1.24b and everyone else did . . .
As mentioned above, UUPC/extended is a peer-to-peer networking program. Your local system and systems with which it communicates are on an equal footing in that the capabilities and access of the systems are generally symmetrical. You have complete control over and must be responsible for your own system. Compare this to a client-server set-up, such as when you dial in to a central mainframe or bulletin board system on which the system operator handles the administration (and restricts your access).
One application for UUPC/extended is providing remote access to a private system or small network, for example allowing a laptop machine access a single remote PC or UNIX system. This application requires little overhead, and may be used for connections needed for just a few days.
A more common use for UUPC/extended is providing dial-up e-mail and batch news access to public networks such as Usenet and/or the Internet. When UUPC/extended is used for this purpose, you, as the system administrator, are responsible for maintaining your own system as a member of the global network community. Related duties include making sure your system calls other systems regularly (including when you are not around), monitoring your links to other systems, registering your system with a central authority such as the UUCP Project and/or the Internet Network Information Center, and other long term tasks.
Because of these responsibilities, not all people should use a program such as UUPC/extended for general e-mail access. As a rule of thumb, if you do not receive more than one e-mail message a week or do not require e-mail access for more than six months, then you should consider a commercial service such as CompuServe, America Online, MCI Mail, ATT Mail, or others over setting up UUPC/extended. This reduces the set-up work required on your part and avoids problems associated with registering and de-registering your system, leaving the system running during absences, and the like.
UUPC/extended is not intended for interactive logins; it does not present user prompt on login to allow user commands. Nor the UUCP protocols are not compatible with the protocols (Xmodem, Kermit, etc.) included with most PC terminal emulators, and UUPC/extended security is oriented towards a pre-defined list of known systems calling in regularly.
UUPC/extended should also be avoided if your primary interest is:
· A server which allows downloading files to other personal computers which do not have UUPC/extended or some other UUCP program. Use a BBS program instead for generic download functions and/or interactive access to your system.
· Interactive access to the Internet for World Wide Web surfing or FTP. Use a dial-up TCP/IP package instead.
Finally, UUPC/extended should be avoided if you lack the resources, financial or otherwise, to support the program. Installing the program does require either experience in setting up complex systems or a willingness to learn via associates or books. Trying to set up UUPC/extended without experience and resources (such as the Nutshell handbooks discussed below) can cause pain and suffering for a very important person-- you.
For the system requirements needed install UUPC/extended, see the equipment list that’s part of the Ingredients on page 11.
Read Part 2: Basic UUCP Installation, page 11, now for installation and upgrade instructions. Users of previous versions of UUPC/extended should also read Changes From Previous Versions, page 180, for a summary of changes in the current release. Instructions on using the programs are in Part 4: Command Reference, page 51.
This document and its companions only provide an overview of UUCP connections. The average person wishing to set up UUPC/extended will require a reference such as Using & Managing UUCP, part of the Nutshell Handbook series by O'Reilly and Associates.[1],[2],[3] This book, while not specifically addressing UUPC/extended, includes detailed information on:
· Format of the SYSTEMS file
· Format of the PERMISSN (Permissions) file
· Information on debugging login scripts
· Information on registering your site with various networks
· Use of the various UUCP commands under UNIX and other systems
Note: Please read all of the documentation (especially the following section with answers to common questions) and the Nutshell handbooks before sending mail. Yes, we know this manual runs 243 pages, we had to write all 66242 words of it.
See How to Register, page 173, for the cost and benefits of registering for telephone support and other goodies.
Unregistered users are supported via e-mail only.
Please report problems with this version of UUPC/extended via electronic mail to help@kew.com. Please be precise in your description and include all applicable information such as the operating system in use and its release, the release of UUPC/extended and any unique configuration aspects.
Note: If you are not using the current version, please upgrade before sending mail. Old versions are obsolete for a reason, and your problem may have been fixed already.
Note: Please don’t send us all your configuration files and logs in your initial mail. If you have a problem with a particular program you should include its log, but don’t turn the debugging volume all the way up. E-mail is wonderful -- we can always ask for more information.
Note: Do not send UUENCODEd files or MIME mail. If you need to do either, you’re sending too much information! Files which are not human readable will be discarded.
If you are unable to reach Kendra Electronic Wonderworks via electronic mail, mail your problem report to:
UUPC/extended Help Desk
Kendra Electronic Wonderworks
Post Office Box 80144
Stoneham, MA 02180-0002 USA
If and only if you are sending us paper mail, please include with your problem description listings of the files which apply, including:
· UUPC.RC
· [userid].RC
· SYSTEMS
Note: Passwords and userids can and should be changed in the SYSTEMS file.
· Directory listing for your configuration directory.
· A log of the applicable program execution, if any. Both uucico and RMAIL automatically write logs into the spool directory. Debug level 4 (-x 4 on the command line) will provide the needed level of detail.
No claim is made that the problem will be corrected, or that the person reporting the problem will be supplied a copy of the corrected code[4], but reasonable efforts will be made to correct the program.
Note: Don’t uuencode your log files or use MIME mail to send them.
E-mail is the fastest and most reliable way to contact us. Please try it before calling.
Our telephone number is 781-279-9812. However, we do not support unregistered users via telephone. If you are a registered user or making a general query, and you must call rather then using e-mail, the best time to call is between 6 PM and 10 PM Eastern Time (GMT -5).
An electronic mailing list, uupc‑info@kew.com, is open to those interested in UUPC/extended. This list includes messages from users asking questions and responses from Kendra Electronic Wonderworks, and announcements of general interest to users such as new features going into UUPC/extended.
Note: This list is for questions or suggestions of general interest. If you have a particular question, send mail to help@kew.com directly.
To join it, send a command of the following format in the body of a e‑mail message to listserv@kew.com:
subscribe uupc‑info
The list server also accepts the command:
help
To resign from the mailing list, send mail to the list server of the following format:
unsubscribe uupc‑info
Note: DO NOT send requests to be added or deleted to uupc-info@kew.com. Mail sent to this address is automatically forwarded to all users on the list. Questions of an administrative nature which require human attention should be directed to uupc-info-request@kew.com.
Since undeliverable addresses cause mail to be bounced to the list administrator, the administrator reserves the right to drop from the list any user for whom mail is rejected. In many cases, the user will not be notified, since the mail to notify the user will bounce for the same reason the address was deleted in the first place.
This is a digest form of the UUPC-Info mailing list above. Messages from UUPC-Info are collected into a single mail message and sent out weekly or when about 30 kilobytes of messages accumulate, whichever is more often. We only do trivial editing, mostly to purge administrative requests (i.e. subscribe). The digest is useful to people who don’t want to be bothered by messages often but still want full information about UUPC/extended.
To subscribe to and signoff from this mail list, the procedure is the same as the procedure listed above for UUPC-Info, but the list name sent in the commands is UUPC-Info-Digest.
This list is restricted to major announcements from the staff of Kendra Electronic Wonderworks, primarily new releases; users are not allowed to post to this list. Subscribing to this list allows users who do not want continuous updates about UUPC/extended to be notified when new releases are available. Registered users are automatically added to this list.
To subscribe to and signoff from this mail list, the procedure is the same as listed above in UUPC-Info, but the list name sent in the commands is UUPC-Announce.
The following section answers common questions about UUPC/extended. The first questions are general, the latter section deals with specific problems you may see and what to do about them.
Q. Does UUPC/extended support news?
A. In part. The RNEWS command distributed with UUPC/extended now correctly decompresses and delivers local news to directories based on the news group name, and we are in the process of assembling other news handling tools, but the news reader (a port of the UNIX program RN) is still in development.[5]
Q. The uupoll command takes over my entire DOS system when it runs. Can I run it under DOS and still use the system?
A. No, but you can run it under OS/2 or under Windows NT or Windows 95. DESQView should also work. At Kendra Electronic Wonderworks, kendra uses OS/2 Warp, and electra uses Windows 95.
Note: If you run UUPC/extended in the background, be sure to enable multitasking support in your UUPC.RC file with the Boolean option multitask.
Q. It takes forever for the system to recognize a busy signal on the other end. What can I do?
A. Make sure your modem file includes the configuration variable NoConnect to document the strings your modem uses to report failures in the dialing sequence. Also, consider enabling the Boolean option CarrierDetect in your modem file.
Q. Can UUPC/extended support multiple users on one system?
A. Yes. Each user should have an entry in the PASSWD file and a copy of [userid].RC under a unique name in the UUPC/extended configuration directory. A short command file similar to the sample SU.BAT file provided can be used to change the active user. UUPC/extended cannot prevent users from reading other users' mail or mail queued for another system. This is an MS-DOS restriction.
Q. UUPC/extended is wonderful, but it doesn't run on my (insert non-IBM or NT-compatible platform here).
A. While the original UUPC was targeted for both the Mac and Atari-ST in addition to the IBM, Kendra Electronic Wonderworks only supports the MS-DOS, Windows 3.x, OS/2, and Windows NT or Windows 95 environments. Contact Dave Platt <dplatt@snulbug.mtview.ca.us>, on where to find his version of UUPC for the Macintosh. For Amiga systems, try anonymous FTP to wuarchive.wust1.edu. There are no known reliable sources for UUPC for the Atari-ST.
Q. Who is kendra?
A.
Actually, that is correctly "What is kendra?" Kendra
means "womanly knowledge" in Old English.
kendra was originally an 80286 based Epson Equity III+ running MS-DOS 3.3 that used a second 8088 based system as a communications front end. She has
since had multiple upgrades, and as of this writing is actually three physical
machines:
pandora, an IBM PS/1 486DX2/66 running FreeBSD and Taylor UUCP; this is our external Internet gateway.
athena, a Northgate 386/33 DX running OS/2 Warp.[6]
sonata, a NEC Ready 150Mhz Pentium running Windows NT 4.0
Their sibling, our documentation system electra, is a Toshiba 405CS notebook with Windows 95.
Q. You mean you don’t use UUPC/extended to talk to the outside world?
A. Not at this time. UUPC/extended is not designed for use as a dedicated gateway machine, but rather to fit in to an existing PC environment. With the rise of excellent free UNIX clones with containing the original UNIX programs such as Taylor UUCP and sendmail that we are trying to emulate, our focus is to talk to such UNIX machines, not replace them.
Q. I want users to be able to login and read their mail on my system. Since I can't use COMMAND.COM, what shell should I specify for them?
A. Right idea, wrong question. UUPC/extended is not designed for remote user login. Rather, it allows routing mail among multiple peer sites. Set up each user as his/her own node. This arrangement gives each user all the tools of his/her own system when composing mail, and keeps the time spent on-line to a minimum.
Q. Why does Snuffles want chocolate?
A. Because Chocolate is happy food. Snuffles is a very happy bear. However, ever since someone sent her 18 pounds of chocolate, she now looks for donations to the Chocolate Ice Cream Fund instead. This leaves us room in the freezer for more mundane groceries.
Note: Snuffles does still accept[7] Girl Scout Thin Mints.
Q. Could you define a [common printer type] connected to FILE and print the docks to FILE? This would let me do a "copy /b filename LPT1:" and get a nice printed copy without Word for Windows (which I don't have) or a PostScript printer (which I also don't have).
A. In theory we could. In practice, it's the path to madness. We'd soon find ourselves doing that for LaserJets, Epsons, Proprinters, Applewriters, and every other brand of printer you can think of (and none of which we have, so testing would be impossible). Local copy shops often have PostScript printers, the *.PRN files should be printable by most printers, and registered users will receive a printed copy of the documents.
Q. When I start a UUPC/extended application, it displays a message like "environment variable UUPCSYSRC must be specified," or "User configuration parameter "mailbox" must be set, "then exits.
A. You need to set the UUPCSYSRC, UUPCUSRRC, and TZ environment variables. See step 8., page 22, under Configuring After Installation.
Q. When I start up the uucico command, it displays a message like: "Invalid host id in c:/uupc/permissn, MACHINE=[name]; Unable to initialize security," then exits.
A. The PERMISSN file and your SYSTEMS file are inconsistent. There is an entry in your PERMISSN file which does not match a corresponding system in the SYSTEMS file; a userid which does not appear in PASSWD; or a needed directory does not exist. See steps 4., The PASSWD file, and step 6. in Configuring After Installation, on page 16.
Q. When I start up the uucico command, it displays a message like: wanted "OK" got ??? "ERROR????" then exits.
A. You have a problem with your [modem].MDM file. Check your UUPC.RC file (for incoming calls) or SYSTEMS file (for outgoing calls) to make sure you're using the .MDM file you think you are, then check the lines in the file to find the one that gives your modem problems. Try "uucico -x 4" to see more information as uucico processes the script. Also, try using a FOSSIL driver to reduce the chance of lost connections. See also The Fine Art of Chat Scripts, page 143.
Q. When I try to connect to the remote machine, it refuses the connection, even though I was able to dial in with another telecommunications program.
A. This could be one of several things, most of which could be due to errors in the entry in your SYSTEMS file for your mail server. See part 4. in Configuring After Installation, page 20. Or, you could have given your system a different name in your UUPC.RC file than the mail server expected. See part 1. in Configuring After Installation, page 17.
Q. UUPC/extended will connect but will not exchange data with another system, What's wrong?
A. Any number of things, which is why you should seek additional information from either a UNIX guru or the Nutshell Handbooks. However, one hint is that any programs communicating via the UUCP "g" protocol must have a clean eight bit connection. A seven bit even parity connection or a connection with software (X-ON/X-OFF) flow control will ruin your whole day. If you can login as a normal user to the remote system, you can use the STTY command to determine the parity and flow control settings. Also, make sure the Boolean option variablePacket does not appear in your modem file.
Q. When UUPC/extended logins to the remote system, the remote delivers Shere as the first message and then RLOGIN as the second message. Why doesn't UUPC/extended like this second message?
A. The full answer (or at least the full list of the possible error responses to the second message sent to the remote host) is listed in Using & Managing UUCP. Suffice to say the RLOGIN means that the remote system does not know your system. Your system is missing from the remote's USERFILE, L.sys, Systems, or Permissions[8] files.
Q. After UUPC/extended picks up my mail, uuxqt tries to deliver it and fails with the message, "PERMISSION DENIED". What's wrong?
A. Look for additional information before the "PERMISSION DENIED" error message. A good chance is that uuxqt cannot find the RMAIL command. Any program invoked by uuxqt must be in the path. Placing a command in the directory uuxqt is invoked from is not enough, because uuxqt changes directories as it runs.
Q. A mail message created in the editor is sent, but the signature is not appended.
A. Your editor is appending a Ctrl-Z to the file before the signature is appended. Disable that "feature," or use a different editor.
Q. UUCP on your remote host keeps sending you messages about RNEWS exiting normally, and you want the messages to go away.
A. The sending host should set the -n flag for the uux command which generates the RNEWS command for you.
Q. I get dropped characters in the login script when running the DOS version of UUPC/extended under OS/2. How can I fix that?
A. Run the OS/2 uucico or use an OS/2 FOSSIL driver. The DOS version doesn't handle it well when a multi-tasking operating system steals its time slice. The problem also occurs when running the DOS versions under Windows, and can be corrected by using the Windows version of UUPC/extended instead.
Note: The spool directory formats used by all versions of UUPC/extended are compatible, allowing a user to use the OS/2 or NT versions of uucico in conjunction with the DOS versions of other programs. This allows interfacing to DOS-only third party programs
Q. Why are the names in the spool directory so strange?
A. Because DOS FAT file systems only use about 50 unique characters for file names, while UNIX supports about 80 unique characters. In addition, UNIX names can be longer. A mapping routine is used to compress 14 character UNIX names into 11 character DOS names. Part of this conversion involves removing the first two characters (such as X.) and the system name from the front of the file name (the entire system name is encoded as 6 bits, or about a single character), and the rest involves base 80 arithmetic. Neat, huh?
Q. Okay, DOS is brain dead, but why use strange names in the spool directory for my system, which supports mixed-case and long names? I enabled the Boolean option longname and the Boolean option monocase, but they had no effect on the names in the spool directory.
A. First, using the standard mapping routine for the more advanced file systems makes the DOS FAT based spool directories compatible with other versions. This means other DOS programs can interface with DOS UUPC/extended programs while the native versions of other UUPC/extended programs (like UUCICO) are used.
Second, it means less code to maintain. The same routine is upwardly compatible even if the names are ugly.
Most importantly, while some file systems retain the case of characters in the directory listing, names in the DOS-derived file systems (VFAT, HPFS, NTFS) are still case-insensitive when it comes to actually creating or search for files. That is, long.file.name, Long.File.Name and LONG.FILE.NAME are all the same name to the PC operating systems, but they are unique to UNIX. The option monocase prevents UUPC/extended from generating mixed case names, but it cannot prevent a remote UNIX system from sending a mixed case name. Accepting UNIX-generated files and not honoring the case will result in file name collisions sooner or later.
"OS/2, the system so good you can't install it just once."
-- Dave Gomberg
The following assumes that you have never installed UUPC/extended before. If you are upgrading an existing UUPC/extended installation, skip to Upgrading an Existing Installation, beginning on page 25.
Note: If installing for Windows 3.x, first install the native DOS version and then add the Windows versions of the uucico and associated programs. This both allows initial debugging in a simpler environment and provides the needed foundation for running under Windows. See Using UUPC/extended Under Windows 3.x on page 38.
Many thanks to David Watt and his sidekick Frederick Bear Watt for assisting with this section and providing the examples, and to Snuffles for reminding us to change the system names to protect the guilty.
To start sending and receiving mail on your system you'll need the following equipment and knowledge:
Equipment:
* A computer running MS-DOS, OS/2, Windows NT, or Windows 95. Under DOS, you need at least 512 kilobytes of RAM and 2 megabytes of hard disk space (for executables, configuration files, documentation, and mail received). For OS/2, Windows 3.x, Windows NT, or Windows 95 you need the minimum configuration for the operating system plus 2 megabytes of free hard disk space.
* A modem.
* The manual for the modem.
* A text editor. The MS-DOS editor, Windows Notepad, or OS/2 editor will work fine.
* A copy of PKUNZIP.EXE, version 2.04g or later, or a compatible utility such as the Info-ZIP UNZIP utility. PKUNZIP is a shareware utility, UNZIP is freeware, and both can be found at almost all archive sites. Consult your local BBS, or get one of the two programs from wuarchive.wustl.edu.
* A friend or commercial UUCP provider with a machine that does UUCP. This can be a UNIX system, a PC running UUPC/extended or another UUCP clone, or a VMS system running DECUS UUCP.
Knowledge:
How to copy files.
How to edit a text file.
Once you've got all of that, follow these steps to prepare for, install, configure, and test UUPC/extended.
Preparing for installation:
1. Review Who Should Use This Program, page 2, to make sure UUPC/extended is right for you.
2. Read these instructions.
3. Name your system.
4. Find a UUCP neighbor.
5. Choose your user name.
6. Backup your system.
Installing UUPC/extended on your system:
1. Get the UUPC/extended archives needed for your operating system.
2. Make any required directories.
3. Copy the UUPC/extended files onto your system.
4. Create the on-line help files for MAIL.
Configuring UUPC/extended to process mail and call other systems:
1. Find your modem among the .MDM files.
2. Configure several files:
1. UUPC.RC
2. [userid].RC
3. [modem].MDM
4. SYSTEMS
5. PASSWD
6. PERMISSN
7. CONFIG.SYS
8. AUTOEXEC.BAT
9. [userid].SIG
3. Reboot your system.
Testing the new installation:
1. Check your configuration with UUNAME.
2. Check your PERMISSN file with uuxqt.
3. Send mail to yourself.
4. Check the PC <--> modem connection.
5. Check the PC <--> modem <--> modem <--> mail server connection.
6. Send remote UUCP mail.
Then you'll be up and running! Each of the steps is discussed in more detail below.
1. Who Should Use This Program, page 2, contains important information explaining what UUPC/extended will and will not do. It also discusses the responsibilities inherent in running a UUCP site. Please read it before proceeding further.
2. Read all of these instructions before doing anything. Trust us, you'll be glad you did.
3. Your machine needs a name. The name should be all lowercase, since many operating systems are not case-sensitive. If you plan to connect to the outside world, the first six characters of the name need to be unique over all of Usenet. This isn't precisely true, but it's close enough, and the truth is more complicated -- if you're interested in the details, buy a copy of Using & Managing UUCP, published by O'Reilly and Associates. Actually, go buy it anyway, and please read it before asking questions. Required Reading, page 3, has some suggestions on where to find this and other useful books. See RFC1178.TXT in the upc13jad.zip archive for some considerations to keep in mind when choosing a system name.[9]
Example: Fred chose the name "toscis" for his machine, in honor of Snuffles' favorite ice cream.
4. Find a friend or commercial service provider with a machine which supports sending and receiving UUCP news and mail to provide you with a link. Your contact must also be pals with the system administrator of the machine, or someone else who has the power to add accounts to the remote system.[10] They will have to add an account for your system and configure the remote UUCP to acknowledge its existence and permit your system to log in and exchange mail.
Example: Fred uses a feed from Kendra Electronic Wonderworks, which is known in the UUCP world as kewgate. Snuffles assigned toscis an account on kewgate called "Utoscis". The name is conventional -- Ukewgate, Uflopsie, and Uzzyzyx are several accounts on Fred's machine, for some of his neighbors to log onto his system.
Some Internet Service Providers (ISP’s, whose main business is dial-up TCP/IP access for Web Surfing and the like) also provide UUCP access, although many only grudgingly. If you're looking for a UUCP system to connect your machine to, you might try local universities and local software companies for friendly volunteers. The backup connection at the Wonderworks, for instance, is provided courtesy of a machine belonging to the EE department at a local university. If you have Usenet access, you might peruse comp.mail.maps for the names of local systems and their administrators who might be willing to give you a feed.
If you are willing to pay money to get to the Internet, there are a variety of network providers, ranging from small public service-oriented providers to large commercial companies with national coverage. We can’t provide a specific list because the players keep changing.
5. You need to choose a user name for yourself. This name does not have to be unique or anything, but you will need it for some of the configuration of UUPC/extended yet to come. It should be composed only of valid DOS file name characters and should have eight characters or less.
Example: Fred's user name on toscis is fbwatt. Our resident Plump Plush Platinum Programming Polar Bear's[11] user name on kewgate is Snuffles.
6. Backup your system. If you do not regularly backup your system, this is an excellent time to start. Again, trust us.
1. To install UUPC/extended, you need to get the specific archives needed for your system, as outlined in the table below.
UUPC/extended includes nearly two dozen executable files for each operating system. The executable files should be placed in their own directory to allow easy upgrades. This directory should then be added to your MS-DOS, OS/2, Windows NT, or Windows 95 PATH variable. The program will assume that you have used the following standard directories for the binaries:
|
Table 1 - Archive Files Needed for Various Operating Systems
|
2. Make directories for the UUPC/extended files. You need to make the base directory (\UUPC)[13], a directory for the sample files (\UUPC\SAMPLES), if you have not unpacked them elsewhere already, a directory for the binary files, and a public directory (\UUPC\PUBLIC)[14].
Example: kewgate has both OS/2 (16 or 32 bit) and DOS versions of UUPC/extended installed. The DOS files are in E:\UUPC\BIN and the OS/2 files are in E:\UUPC\OS2BIN.
Example: toscis runs the MS-DOS and Windows NT operating systems. Fred put the UUPC/extended DOS executables in C:\UUPC\BIN, the Windows NT executables in C:\UUPC\NTBIN and the documentation in C:\UUPC\SAMPLES. He built the directories at the C:\> prompt this way:
C:\> mkdir \uupc
C:\> mkdir \uupc\bin
C:\> mkdir \uupc\ntbin
C:\> mkdir \uupc\samples
C:\> mkdir \uupc\public
3. Unzip the archives. (Type "PKUNZIP" at the DOS prompt for instructions on how to unzip files.)
Example: To uncompress the documentation archive and program archives for MS-DOS and Windows NT, here's what Fred did:
C:\> PKUNZIP upc13jad.zip \uupc\samples *.*
C:\> PKUNZIP upc13jd1.zip \uupc\bin *.*
C:\> PKUNZIP upc13jd2.zip \uupc\bin *.*
C:\> PKUNZIP upc13jd3.zip \uupc\bin *.*
C:\> PKUNZIP upc13jn1.zip \uupc\ntbin *.*
C:\> PKUNZIP upc13jn2.zip \uupc\ntbin *.*
C:\> PKUNZIP upc13jn3.zip \uupc\ntbin *.*
4. Convert the printed formatted documentation for mail to on-line help files by running the program NOVRSTRK on MAIL.PRN and TILDE.PRN.
Example: Fred ran NOVRSTRK on both of the files:
C:\> \uupc\bin\novrstrk
\uupc\samples\mail.prn \uupc\mail.hlp
C:\> \uupc\bin\novrstrk
\uupc\samples\tilde.prn \uupc\tilde.hlp
All the files you need are now on your system.
Here's where you earn your daily chocolate by configuring the system for basic local mail and dialing out to other systems.[15] Table 2 - Files to Update for Basic Installation, below, summarizes the files to be updated and their functions. All of the files must be copied from the samples directory (\UUPC\SAMPLES) to their permanent home in the UUPC/extended configuration directory (\UUPC) except as noted.
Table 2 - Files to Update for Basic Installation
|
File name |
Function |
|
UUPC.RC |
System wide UUPC/extended configuration file. It defines both required and optional information which is the same for all users of the local system, and default values for individual users. This information includes the local system name, the name of its mail server, directory names (if you are not using the defaults), and selected performance parameters. |
|
[userid].RC |
User-specific UUPC/extended configuration file. It defines both required and optional information for one user. A customized copy of this file with a unique name exists for each user of the system. This file is sometimes referred to as the PERSONAL.RC file. |
|
[modem].MDM |
Defines the command strings required to initialize, dial, and answer with your modem. It also contains selected protocol information for UUCP connections made using the modem. The file is referenced by entries in the SYSTEMS file. Note: You may need more than one modem file if you use your modem to connect to more than one type of remote modem. |
|
SYSTEMS |
Defines the system names, times to call, devices (modem files) to call with, phone numbers, and login scripts to use when calling other systems. |
|
PASSWD |
Defines the user ids, names, and home directories of the users of your system. |
|
PERMISSN |
Defines the access remote systems have to your disk and what programs a remote system may direct uuxqt to run on its behalf. |
|
AUTOEXEC.BAT |
Under DOS and Windows NT, this file sets environment variables for your PATH (where to find programs), the location of the UUPC.RC file, the location of the [userid].RC file, and the local time zone. Note: This file resides in the root directory of your hard drive. |
|
CONFIG.SYS |
Under DOS, defines how many files can be open at once; under OS/2, is used in place of AUTOEXEC.BAT to define the environment information listed above. Note: This file resides in the root directory of your hard drive. |
|
[userid].SIG |
Included automatically at the end of each piece of mail you send to provide return address information. Note: This file resides in your home directory, defined by the variable Home in your [userid].RC file. See step 2., page 18, for further information. |
1. The first file to copy and edit is UUPC.RC, the system configuration file. This file defines the system name and other parameters which make your system unique.
The fields are described in The UUPC.RC and [userid].RC files, on page 115, and in the sample UUPC.RC file itself.[16] You must set the fields described in Table 3 - Minimum Fields to Update in UUPC.RC for New Installation, below. All other fields in the sample UUPC.RC file, such as the options= lines, can be left alone.
|
Table 3 - Minimum Fields to Update in UUPC.RC for New Installation
|
Here is toscis's completed UUPC.RC file, provided as an example.
Nodename=toscis
Domain=toscis.cambridge.ma.us
postmaster=fbwatt
Mailserv=kewgate
MailExt=SPB
InModem=TB2500
options=displaycopyright
Note: toscis has some additional fields defined in its UUPC.RC. We left them in this example to remind you that more complicated configurations are possible if you choose.
2. The second file to edit is the [userid].RC file, defining personal configuration options.
The [userid].RC files configure UUPC/extended for individual users. To configure your own [userid].RC file, copy the file \UUPC\SAMPLES\PERSONAL.RC to \UUPC\[userid].RC, where [userid] is your user name. Edit the [userid].RC file fields listed Table 4 - Minimum [userid].RC fields to Update for New Installation, below.
Example: Fred's personal configuration file is called FBWATT.RC, and is located in C:/UUPC on toscis.
|
Table 4 - Minimum [userid].RC fields to Update for New Installation
|
The UUPC.RC and [userid].RC files on page 115 and the descriptions in the sample PERSONAL.RC file explain these fields. If you include a Signature (highly recommended) and an Alias file, you will need to create these files as well. See step 9. on page 23 of this section for information on creating a signature file. See User Mail Nickname File, page 148, for a discussion of nickname files.
If multiple users are to share the same system, create multiple customized copies of the [userid].RC in \UUPC, each with a unique name such as "TOM.RC", "DICK.RC" or "HARRY.RC".
Example: Fred's completed FBWATT.RC file looks like this:
editor=emacs %s
FileSent=Outgoing
Home=c:/fbwatt
Mailbox=fbwatt
Name=Frederick B. Watt
options=noautoedit
Signature=fbwatt.sig
3. You must next decide which existing modem configuration file ([modem].MDM file) best describes your modem, or write a new one. See Modem ([modem].MDM) Files, page 128, for a complete list of supplied modem files.
Copy the modem file for your modem from the \UUPC\SAMPLES directory to the \UUPC directory.
Note: If none of the supplied samples is appropriate, then you will have to start with one of them, or with the sample modem configuration file (SAMPLE.MDM), and customize it for your modem. We explain how to customize modem files in Modem ([modem].MDM) Files, page 128, and in The Fine Art of Chat Scripts, on page 143.
Once you copy the [modem].MDM file, replace the port listed on the "Device=" with the communications port to which you connected your modem.
Note: If using a modem on DOS and your modem is on port COM3 or COM4, you may need to run the COMM34 utility. Refer to COMM34, page 52, for details.
4. You must copy and edit the sample SYSTEMS file, which defines the system names to call and when to call them. Copy it from \UUPC\SAMPLES directory to the \UUPC directory. Delete all the entries you do not need.
Note: The SYSTEMS file and its contents are described in detail in The SYSTEMS file on page 137.
A typical line in the SYSTEMS file contains these fields, defined in more detail by Table 5 - Contents of a Simple SYSTEMS File, below:
system Time MODEM speed telephone protocol script
|
Table 5 - Contents of a Simple SYSTEMS File
|
Example: Toscis's SYSTEMS file entry for kewgate looks like this:
kewgate Any TB2500 19200 781-279-9816 vg gin:--gin: Utoscis ssword:--ssword: AppleJuice
Copy this line into your SYSTEMS file, and do the following:
Replace "kewgate" with the name of your mail server.
* Replace "Any" with the time to call.
Replace "TB2500" with the name of the modem configuration file (.MDM file) you are using.
Replace "781-279-9816" with the phone number of the mail server you arranged a feed from in step 4 of Before You Begin Installing, page 13.
Replace "Utoscis" with the name your provider gave you in step 4 of Before You Begin Installing, page 13, for use on their system. Replace "AppleJuice" with the password your provider gave you.
For simple connections, these should be all of the changes you need to make to this file. For more complex connections, refer to The Fine Art of Chat Scripts, on page 143.
5. You must also create a \UUPC\PASSWD file, which defines the local users. This file is nearly identical in format to the /etc/passwd file used on UNIX systems.
At first, you should need only two lines in your PASSWD file. The following example can serve as models.
Example: tosci's PASSWD file looks like this, with entries for Fred himself and the postmaster:
fbwatt:*:::Frederick Watt:c:/u/fbwatt
postmast:*:::Postmaster:c:/u/postmast
Replace fbwatt with your user name, and "Frederick Watt" with your name. Replace "c:/u/fbwatt" with the Home directory given in your [userid].RC file. Leave the postmaster entry in the file (you can choose a new home directory); it exists to catch any failed mail.
Note: For a full description of the PASSWD file, see The PASSWD file on page 136.
6. The \UUPC\PERMISSN file is identical in format to a file called Permissions available on newer UNIX UUCP systems. The file format is explained in detail in Using & Managing UUCP.
The PERMISSN file is used to control where remote systems are permitted to read and write files on your system. For a simple configuration where you call only a mail server and no machines call your system, your PERMISSN file should look like this:
MACHINE=kewgate SENDFILES=yes REQUEST=yes
Replace "kewgate" with the name of your mail server, managed by your provider in step 4 of Before You Begin Installing, page 13.
For more complex configurations refer to the section Permissions (PERMISSN) Files, on page 29.
7. Under DOS, you need only update CONFIG.SYS if it does not exist, exists but does not have a FILES= line in it, or the FILES= value is less than 20. In any of these cases, add or replace the following line to your CONFIG.SYS, or create a CONFIG.SYS in the root directory of your boot disk or diskette if you currently do not have one:
FILES=20
Note: If you already have a FILES= line in your CONFIG.SYS, it should read at least 10 and should be raised to 20. If the number is greater than 20, then do not lower it.
If you are using OS/2, then you must update CONFIG.SYS in the same way you would update AUTOEXEC.BAT under DOS.
8. AUTOEXEC.BAT is executed by MS-DOS whenever you reboot your system and by Windows NT at login. UUPC/extended needs three environment variables set, which is best done by adding some commands to your AUTOEXEC.BAT file. At the bottom of your AUTOEXEC.BAT file, add the following lines. If you are running OS/2, add the same lines to your CONFIG.SYS file.
set UUPCSYSRC=c:\uupc\uupc.rc
set UUPCUSRRC=[userid].RC
But instead of writing [userid] on the second line, use your user name, the same as in the [userid].RC file you wrote above.
Under Windows NT, you don't need to modify CONFIG.SYS or AUTOEXEC.BAT at all. Instead, use the System Properties applet in the Control Panel. The UUPCUSRRC variable is optional under Windows NT.
You'll also need to set TZ, your local time zone. The format of the TZ variable is zzz##dddwhere zzz is the name of the time zone, ## is the offset in hours from Universal Standard Time (AKA GMT), and ddd is the name of the daylight savings time zone, if used.
Note: The offset from GMT is specified as positive number if you are west of the prime median (Western Europe and America), and a negative number if east of the prime meridian (Eastern Europe, Asia, Australia).
Note: UUPC/extended does not actually display the time zone name, but rather uses the actual hour offset in mail header messages. The number is negated from the value specified in the TZ variable, however, because the convention for UNIX environment variables (and used by the various C runtime libraries) is different than the standard for Internet mail.
Various possible TZ variable values are listed in Table 6 - Sample Time Zone (TZ) Environment Variable Values, below. Your mileage and time zone may vary.
|
Table 6 - Sample Time Zone (TZ) Environment Variable Values
|
8. You'll also need to edit your path variable. Fred, who put his UUPC/extended executable files in C:\UUPC\BIN, added the line:
PATH=%path%;C:\UUPC\BIN
at the bottom of the file. In DOS, you must make sure the path does not exceed 128 characters. Under OS/2, the file you need to edit is CONFIG.SYS. There is no path size limit under OS/2, but the path must be on one line and cannot use variables. Under OS/2, Fred would simply append ";C:\UUPC\OS2BIN" to his existing path.
Note: Several of the programs, including uucico and uuxqt, change directories as required to search for spool files. Because of this, programs such as RMAIL and (if used) RNEWS must be in your path. Having them in the current directory is not sufficient.
9. For each user, customize the [userid].SIG file, and copy it to the 'Home' directory defined in [userid].RC for that user. This file is appended to all outgoing mail from the user, providing a boiler-plate signature with the user's reply address. If this file is not installed, then the line in the [userid].RC file describing it must be commented out with a pound sign (#) in column 1.
Note: Especially for users of new systems, we strongly advise you to create a signature file and include in it your name, electronic mail address, snail mail address, and telephone number. This extra information helps others contact you if your electronic mail address fails for any reason.[18]
Example: Here's a typical (boring) signature:
Fred Watt -- N1HMB Home: 617-555-9956
fbwatt@toscis.cambridge.ma.us Work: 617-555-4330
10. Reboot your system. This allows your changes to your AUTOEXEC.BAT/CONFIG.SYS to take effect.
Congratulations! If you've done all of these things, you are ready to start using UUPC/extended.
1. Begin testing by running the UUNAME program.
Just type UUNAME at a system prompt to prove your configuration is valid. This program will a) die gloriously or b) display a list of known systems (the remote systems you listed in your SYSTEMS file). If it dies, the error message you get should provide some clues. Check the necessary configuration files and try again.
2. Run uuxqt to check the PERMISSNS file information.
Type uuxqt at a system prompt. This program will a) die or b) print a copyright message and exit. If it dies, there is a problem with your PERMISSNS file and the error message you get should provide some clues. See Permissions (PERMISSN) Files, page 29, for more information.
3. Send mail to yourself.
Perform this test to convince yourself that UUPC/extended can send mail. At the system prompt, type:
C:\> mail -s "Test message" postmaster
? Test
? .
Abort, Continue, Edit, List, or Send? Send
Note: The "." only works as a message terminator if the "dot" Boolean option is set in your UUPC.RC file, as it is in the supplied sample. Otherwise, you have to use Ctrl-Z.
You should then receive the message:
Delivering mail from userid to postmaster
If you don't, the error messages should provide some clues. Correct the necessary configuration files and try again.
3. Test the PC <-> modem connection.
Perform this test to convince yourself that your modem responds to commands. Using a telecommunications program such as Kermit, send some commands to the modem. Just sending AT (attention) to the modem, and getting "OK" back,[19] is good enough.
4. Test the PC <-> modem <-> modem <-> mail server connection.
Perform this test to convince yourself that your computer can talk to your mail server, and that you can log in to the mail server using the user name and password your provider back in "Before You Begin Installing", step 4, on page 13, gave you. Using a telecommunications program like Kermit, dial up the remote system and try to log in. The remote system should give you a message like "Shere=[mailserv]". If you succeed, hang up[20] and go on to the final step. If the remote system does not recognize your account for some reason, talk to the provider who gave you the account and find out why.
5. Try sending remote UUCP mail.
If this test succeeds, your system is able to properly receive and send electronic mail. At the system prompt, type the following:
C:\> mail -s "Test message" postmaster@[mailserv].UUCP
? This is my first message. When you receive it, please reply.
? .
Abort, Continue, Edit, List, or Send? Send
Spooling mail from [userid] to postmaster via [mailserv]
but instead of typing "[mailserv]," on the first line, substitute the name of your mail server, exactly as you entered it on the "MailServ=" line in your UUPC.RC file.
Note: For full instructions on using the program, see MAIL, page 61.
If all goes well, you should be able to enter a message and send it off, with the mail program giving you messages like those above.
Then, dial out to the remote system:
C:\> uuio -s all
And watch the connection. With luck, you will have just sent your first UUCP mail message. Welcome!
Under certain circumstances, you may have installed your system and have no one to call. If you feel lonely and hurt over this state of affairs, you can call kewgate anonymously and download a UUPC/extended file or ten for the cost of the phone call. See Anonymous UUCP, page 168, for instructions.
Follow these steps to upgrade.
1. If upgrading from a release of UUPC/extended prior to 1.11a, you must clear your spool directories of files before installing the new release. In general, this is done by invoking UUIO for the previous release to deliver any queued files to other sites.
2. Backup your system, especially the UUPC/extended directories.
3. If upgrading from MS-DOS to Windows 3.x, OS/2, or Windows NT, create new directories for the new operating environment binaries.
4. Delete or rename your old executables. Subtle file name changes occur between releases, such as file extensions changing between .COM and .EXE files, and this clearing out the executables directory is the safest way to insure you get the all new modules.
5. Uncompress the new executables and documents. Be careful not to overwrite your customized configuration and batch files with the supplied sample files. See page 15 for the list of files to uncompress for your operating system.
6. Read Changes From Previous Versions, page 180, for changes related to the newest release. In many cases, Changes From Previous Versions includes documentation of new configuration file variables and Boolean options before any other documents.
7. Earlier versions of UUPC/extended have different user-customizable variables. Type "uuname -x 2" to see a list of missing or obsolete variables in your configuration files.[21] Update as needed. Look at Changes From Previous Versions, page 180, to see what the new variables do.
8. If you are converting from a release previous to 1.10a, you must update the SYSTEMS file to the newer format. You must also write a PERMISSN file. See the sample files for details.
9. If upgrading from a previous OS/2 32-bit release of UUPC/extended which included DLL files, delete the DLL files from the previous release. (1.12i was the first OS/2 32 bit release with DLL files.)
10. If using the 32-bit OS/2 version, copy the new supplied DLL files to a directory in your LIBPATH list of directories. They cannot go into the binaries directory (\uupc\os2bin32) unless you have added the directory to your LIBPATH and rebooted.
11. If using the 32 bit OS/2 version and you do not have either or the Internet Access Kit (provided with OS/2 Warp) or IBM TCP/IP 2.x (or newer), replace the TCP/IP enabled versions of UUCICO and RMAIL with the serial-port only versions. To do so:
Rename UUCICO.EXE to UUCICOT.EXE
Rename uuCICON.EXE to UUCICO.EXE
Rename RMAIL.EXE to RMAILT.EXE
Rename RMAILN.EXE to RMAIL.EXE
12. If upgrading from a release previous to 1.12a, see the new section Modem ([modem].MDM) Files beginning on page 128 to determine if you should update your modem file(s) to take advantage of new options and keywords.
13. If running Windows 3.x on top of DOS, you may optionally install the Windows versions of uupoll, and uucico and uupoll. See Using UUPC/extended Under Windows 3.x, page 38, for additional Windows information.
14. Based on Changes From Previous Versions, page 180, and other documentation, update your configuration to exploit any new features of UUPC/extended you find useful. In particular, if using the OS/2 version of UUPC/extended, consider setting the Boolean option undelete in your UUPC.RC file.
15. Change or add a line as applicable to the UUPC.RC configuration file with the version= configuration file keyword and the current version number, for example:
Version=1.13j
Using UUPC/extended for news requires a few steps on top of the basic installation procedures defined above. The exact nature of these steps depends on whether you are using a news reader program which uses the C-news like support native to UUPC/extended, or a third party news engine such as SNEWS or Network News Systems for Windows/NT. In all cases, the general steps include:
1. Select and install program to read news.
2. Arrange a news feed
3. Configure the local system
4. Test
These topics are covered in more detail in the following sections.
Since UUPC/extended does not come with a news reader of its own, you must chose and a news reader separately. Among the possible choices and the systems they run on include:
· RNR (DOS)
· TRN (OS/2)
· SNEWS (DOS, OS/2)
In addition, NNS (which is actually a full function news delivery system) can be used under Windows/NT to provide NNTP support to a host or network connected to the outside world via UUCP. This allows use of any NNTP compliant news reader under Windows/NT or other client on the same network as a Windows/NT server.
Unlike mail, which is specifically addressed to a particular user and delivered on request of the sender, Usenet news must be subscribed on a group by group basis from a connected system already receiving it. This system can be your existing mail feed or a second system. If your primary mail feed cannot provide news, locating a news feed is much like locating a mail feed as described in Before You Begin Installing on page 13, that is to say painful. In addition to the normal information exchanged between you and another mail site (telephone numbers, login information), you must tell also your news feed what news groups you wish to receive. If you understand the Usenet hierarchy you may have specific groups in mind, otherwise ask the news feed what groups it receives and select off that list.
Warning: A full news feed requires hours a day of modem connect time to receive and hundreds of megabytes to store for any length of time. Select only those groups you actually want, especially if working on a personal system with limited free space.
No matter what program you use to process news, if your news feed is not a system already defined to UUPC/extended, you must add the information for the system to SYSTEMS, PERMISSN, and (if the system is calling you) PERMISSN files.
1. Verify you have installed the expire, iNEWS, newsrun, rNEWS, SENDBATS, and uux programs as part of UUPC/extended.
2. If your news feed will be compressed, install a program to uncompress it. Programs commonly used to do this are gzip and compress. After installing the program, you may need up the uncompress= variable in the UUPC.RC file.
3. If you have multiple disk partitions on your system, you may wish to move the news spool directory from the default directory (\uupc\news) to a different drive. To so, specify the NewsDir= in the UUPC.RC directory.
4. Create a news ACTIVE file, documented in usenet News ACTIVE Groups File on 153, with all the news groups you will be reading locally.
5. Create a news SYS file, documented in Usenet news SYS (neighbours) file on page 155, to define your news feed and any other sites you wish to forward news to.[22]
6. Tell your news feed to start sending news.
7. Be sure to run expire daily. This can be done directly or via the UUCLEAN script.
NNS is a self-contained network news server for Windows NT, and can run stand alone using the TCP/IP based NNTP protocol to process news. News is stored in multiple files and indexed in a NNS specific database. The system can be used as a leaf site or to feed multiple other sites. NNTP based news readers on Windows/NT or other systems on the same network can then access the articles stored on the NNS server.
Because NNS performs its own management of news, UUPC/extended is only used a news transfer program, allowing news to be sent and received via the UUCP protocols rather than the NNTP protocol that NNS natively supports. When using NNS with UUPC/extended, news is queued with UUX, transmitted to remote sites using UUCICO, and passed to the remote news system using RNEWS.
Once your news feed system is defined and you can exchange mail with it, you need to:
1. Install NNS if you have not done so.
2. Verify you have installed the RNEWS, regsetup, and uux programs as part of UUPC/extended.
3. If your news feed will be compressed, install a program to uncompress it. Programs commonly used to do this are gzip and compress. After installing the program, you may need up the uncompress= variable in the UUPC.RC file.
4. Add the Boolean option nns to your UUPC.RC file.
5. Run the program regsetup to copy the UUPC/extended configuration information to the Windows/NT registry for use by NNS.
6. Tell owner of your news feed to begin sending news.
SNEWS is a self-contained news database and reader for DOS and OS/2, but requires another program such as UUPC/extended to exchange news with remote systems. The system best used as used as a leaf site.
Because SNEWS performs its own management of news, UUPC/extended is only used a news transfer program; mail is queued with UUX, transmitted to remote sites using UUCICO, and passed to the remote news system using RNEWS.
Once your news feed system is defined and you can exchange mail with it, you need to:
1. Install SNEWS if you have not done so.
2. Verify you have installed the RNEWS, and uux programs as part of UUPC/extended.
3. Add the Boolean option snews to your UUPC.RC file.
4. Tell the owner of your news feed to begin sending news.
Each system you contact must be defined in a PERMISSN file located in the configuration directory. In the permissions file, systems can be classified by whether they are called out to or dial in to the local system, or both. Permissions files define which directories and commands are accessible to the remote system. They are discussed in more detail in Using & Managing UUCP.
For your own protection, think carefully before giving a remote system read or write access outside of the default (\uupc\public, \uupc\spool) directories. Think very carefully before giving write access to anonymous logins.
Systems you call out to must have a MACHINE entry, such as
MACHINE=pandora
This defines the existence of the machine "pandora", and grants it default permissions. These permissions include the ability to execute RMAIL and RNEWS, and the ability to send files to the spool directory. If the additional keyword REQUEST=yes is added to the MACHINE statement, then the remote system may also read and write files in your public directory, which defaults to \uupc\public or can be redefined by the variable PubDir in the UUPC.RC file.
Systems which dial into you must have a LOGNAME entry, such as:
LOGNAME=userid VALIDATE=system SENDFILES=YES
This allows host "system" to login as user id "userid" with the same default permissions as described above. It further allows your system to transmit files to the other system even though it called you (SENDFILES=YES)[23]. However, to run uuxqt the remote system must also have a MACHINE entry, because uuxqt does not look at LOGIN entries.[24] Thus, to handle the general case of a system calling you to deliver mail, both of the above entries must exist in the permissions file, but they can be combined:
LOGNAME=userid \
VALIDATE=system \
MACHINE=system \
SENDFILES=YES
The remote system can be granted access to additional directories and programs through the use of additional parameters on the LOGNAME and MACHINE statements; these are documented in Using & Managing UUCP.
If you allow anonymous logins, an entry should also be placed in the PERMISSN file for the system "*anonymous". Such an entry might look like this:
LOGNAME=nuucp \
MACHINE=*anonymous \
REQUEST=yes \
READ=~/ NOWRITE=~/
This allows anonymous UUCP systems to login as nuucp (provided nuucp has an entry in your PASSWD file), and to read but not write to your PubDir.
Note: One difference between the PERMISSIONS file as defined in the Nutshell Handbooks and as implemented in UUPC/extended is that only one user id may be specified per LOGNAME entry in UUPC/extended. This restriction is a security feature to prevent one system from logging in as another.
PERMISSN files can be difficult to set up and use, so don't be alarmed if you have some trouble at first.
“Any sufficiently advanced technology is indistinguishable from a rigged demo. “
-- Andy Finkel
This section explains how to use nickname, alias, and other files to control mail addressing and routing. Also, look here for information about networks, specialized communications drivers, and interfacing UUPC/extended to third party programs.
Much of the advanced configuration you can do with UUPC/extended involves changing how RMAIL delivers mail when invoked by MAIL (for locally originated mail) and UUXQT (for remotely originated mail). The formal description of RMAIL and its parameters is on page 75, and should be reviewed. In addition, a short summary of the default processing for mail sent from a local user is in order:
1) The user generates mail via the MAIL command.[25]
2) The user presses “s” to send the mail. The destination addresses entered by the user are processed by MAIL, which attempts to resolve them as described in Implicit Nickname Processing, (or, What Your Bear Never Told You about Aliases) on page 33. Then RMAIL is invoked.
3) RMAIL reads the headers for the newly created message, and decides to whom the message is addressed.
4) RMAIL invokes a subroutine called deliver() for each address.
5) deliver() determines if the destination address is local, remote UUCP, remote SMTP, or handled by a gateway program.[26]
6) For remote UUCP mail addresses, the mail is queued for uucico to transmit at a later time.
7) For remote SMTP mail, the mail is queued in the local host UUXQT queue for deferred processing under the conditions:
· The RMAIL was compiled without internal SMTP support. This is always true for the DOS version, and also for the alternative OS/2 version (RMAILN).[27]
· The -t option is provided on the RMAIL command line (the MAIL command always provides this) and the Boolean option fastsmtp is not set.
8) For local mail addresses, the system alias file is checked for the address. If the alias exists, it is expanded without checking the PASSWD file. The addresses in the expansion are processed via a recursive call to deliver(), except that addresses read directly from the system alias file are not checked to be system aliases again.
9) If the local address is not defined as a system alias, then the PASSWD file is searched. If the address is not a local user id, then the mail is bounced (delivered) to the local postmaster. If the "bounce" option is set, the mail is also returned to the sender.[28]
10) If the local address is valid, then the addressee's home directory is checked for a file named FORWARD. If this FORWARD file exists, it is processed for delivery instructions, otherwise the mail is delivered to the addressee’s system mailbox.
There are a number of ways to customize this processing to route mail to non-default files, to programs, or to other systems.
Aliases in electronic mail serve two purposes. First, the alias file works like an e‑mail address book, allowing an individual user to type a familiar nickname (fred) rather than a long full address (FFlintstone@dino.bc) to address mail.
Second, aliases allow groups of users (such as mailing lists) to be addressed through a single standard address. Under UUPC/extended, aliases are stored in two different types of optional alias files: the NICKNAME file, documented in User Mail Nickname File on page 148, and the system ALIASES file, documented in System Mail ALIASES File on page 146. The nickname file is used only for mail sent by a local user using the MAIL front end. The system alias file is used for all local addresses processed by the RMAIL command.
Many mail systems (including UUPC/extended) also support a user forwarding his/her own mail via an optional FORWARD file[29]. The processing performed by the FORWARD file overlaps that of the system ALIASES file. The primary difference between the system ALIASES file and an individual's FORWARD file is that the former is generally maintained by a system administrator for all special addresses in a system or network, while the latter file is maintained by the end user for just his own mail.
In addition to the files described above, UUPC/extended supports aliasing and re-routing entire systems via an optional HOSTPATH file. This file allows mail for entire remote systems to be treated as local mail, rerouted by a non-default path, or directed to an arbitrary program for further processing.
When the MAIL command processes an address, it first attempts to find a matching entry in the NICKNAME file. If no match is found, mail looks for the user id and host on the address side of the NICKNAME and PASSWD lists, in that order. If a match is found, then the associated address and user name information are entered just as if the nickname had been used. (This behavior insures that a "standard" address is used for replies to mail.) If no match is found, and the address being processed does not include a system name, then the current value of FromDomain is appended to the userid.
By default, the MAIL command and RMAIL command combine to deliver mail in the following fashion:
1. Mail to a user id without a host name is delivered locally, as described in An Overview of RMAIL on page 31.
2. Mail to the current system's host name (as defined by the UUPC.RC NodeName= line) is delivered locally.
3. Mail to the current system's domain name (as defined by the UUPC.RC Domain= line) is delivered locally unless the FromDomain= line is defined in UUPC.RC.
4. If a FromDomain= line is defined in UUPC.RC, then mail to the current system's domain name (as defined by the UUPC.RC Domain= line) is queued for the system listed on the UUPC.RC MailServ= line.
Note: The use of the FromDomain= keyword is further documented as part of The Ever So English Sport of Site Hiding, page 35.
5. Mail to a simple system name or a system of the form system.UUCP listed in the SYSTEMS file is queued for that system.
6. Mail to a system with a system name listed in the SYSTEMS file and the local domain name[30] is queued for that system.
7. All other mail is queued for the system defined as the mail server by the UUPC.RC MailServ= line.
You may sometimes need to override the default processing rules. For example, a system which is not directly connected may still be routed via a system other than the default mail server, or the local system's mail may be passed to a gateway program for delivery on a LAN. UUPC/extended handles such overrides via a HOSTPATH file, the basic syntax of which is described in HOSTPATH routing file on page 151.
As noted above, mail for other than the local system or directly connected systems is routed to the default mail server. This behavior is desirable when a system only handles mail destined for a mail server and/or a few other systems. However, if directly connected systems other than the mail server call additional systems, then UUPC/extended must be explicitly told about the additional mail routing.
For example, if the local system calls system fee in addition to its regular mail server, and fee provides the cheapest route to systems fie, foe, and foo, then the following entries would be required in the HOSTPATH file:
fie fee
foe fee
foo fee
Once fie, foe, and foo are defined, additional systems can be routed via these connections, up to one hundred systems deep:
giant fie
bean.sales.com foe
*.bean.stalk.com foo
Note the sub-domain reference for *.bean.stalk.com: mail for all systems that may exist in that domain (low.bean.stalk.com, middle.bean.stalk.com, way.up.there.bean.stalk.com) will be routed via fee, foo, and then on to the bean.stalk.com domain.
Note: If the name of the directly connected system does not appear in the SYSTEMS file, the system is presumed to be routed via the default mail server. This exception effectively negates the routing entry in HOSTPATH.
Beginning with UUPC/extended version 1.12s, the 32-bit RMAIL client can deliver mail to remote hosts over an TCP/IP network. To direct mail to be delivered via SMTP, add to the hostpath file:
name @ any.internet.host.name
*.domain @ another.internet.host.name
Where the names on the left of the at-sign (@) are the names to be routed, and the names on the right are the valid host names of the SMTP servers to be contacted.
Note: It is legal to specify the host specified in the configuration variable mailserv as routed via an SMTP server. This means all mail going via the mailserv will also be sent via the SMTP gateway.
A special case of routing occurs when a route is specified via the local system. If an otherwise unknown system or domain is defined to be routed via the local system, mail for that system is rejected as unreachable and bounced. The gateway for a domain can thus prevent mail from leaving the domain via a HOSTPATH entry like so:
*.my.domain.com localhost
If the local system is localhost, then mail for systems within the my.domain.com domain which are not listed in the SYSTEMS file or in a more specific HOSTPATH entry will be bounced by the local RMAIL. (Mail for the mail server will itself will be delivered normally, because the mail server is defined in the SYSTEMS file.)
At times, it is not enough to route mail via a particular system. For example, if a downstream system[31] is renamed (or has a different domain name than the upstream server), then the two names for the system must be made equivalent via the HOSTPATH file. For example, to define bull as an alias of cow:
bull = cow
If a system is both aliased and explicitly routed, then the route will override the alias.
Aliases for systems are taken into consideration when performing implicit nickname lookups. Thus, if the system bull is aliased as above and a nickname exists for a user at system cow, mail sent to the user at system bull will use the nickname for user at system cow. For a full discussion of implicit nickname processing, see Implicit Nickname Processing, (or, What Your Bear Never Told You about Aliases), page 33.
One special combination of routing and aliasing is so common as to not always even require a HOSTPATH entry at all. Site hiding, which allows multiple systems to share a single domain name[32] to the outside world, is enabled by the FromDomain= keyword in the UUPC.RC file. This keyword overrides the Domain= keyword in selected mail headers, and automatically aliases the value of the Domain= header to the mail server. For example, if four systems, all in the "forest.oz" domain, share the domain name used by their mail server, then each hidden system will have UUPC.RC entries like:
Domain=lions.forest.oz
FromDomain=forest.oz
MailServ=toto
Domain=tigers.forest.oz
FromDomain=forest.oz
MailServ=toto
Domain=bears.forest.oz
FromDomain=forest.oz
MailServ=toto
Domain=ohmy.forest.oz
FromDomain=forest.oz
MailServ=toto
Mail from each of the systems would appear to come from forest.oz, and internally UUPC/extended would automatically alias toto to forest.oz. Mail to a simple user id would be expanded to include the FromDomain name, which would mean it would also be routed to toto.
Setting up the central server for site hiding requires a small amount of additional work. Each user on each hidden system must have a corresponding entry in the system alias file on the central server (See System Mail ALIASES File, page 146.). You must use either the full system name (lions.forest.oz, etc.) or the simple system name (lions, tigers, bears, ohmy ...) in the system aliases file, not the FromDomain which is the same for all systems. The mail server can be defined to be hidden as well, with UUPC.RC entries like:
NodeName=toto
MailServ=wizard
Domain=toto.forest.oz
FromDomain=forest.oz
However, in this case, you must use a HOSTPATH entry to define forest.oz as an alias of the local system:
forest.oz = toto
Otherwise, mail for forest.oz would be forwarded to the mail server, in this example wizard.
An additional use of the HOSTPATH file is to redirect mail to an external program for processing. This processing is invoked via the or bar (|) separating the victim from the canonical name. In this case, the canonical name is actually the program to run. The following arguments are passed to the program:
The victim for whom routing is being done.
The actual host name of the addressee.
The user id of the addressee.
The mail to be delivered is read by the gateway program from standard input. For example, to route all mail for the funky.lan.com domain to a gateway program called foogate, add the following to the local HOSTPATH file:
*.funky.lan.com | foogate
A special case of mail gatewaying is moving mail between the UUCP and SMTP environments. Commencing with version 1.12s, UUPC/extended includes intrinsic support for exchanging mail with remote hosts via TCP/IP to SMTP mailers. This SMTP support is in three parts:
· The UUSMTPD server which receives mail under OS/2 or Windows NT.
· The SMTP enabled RMAIL, which under OS/2 or Windows NT can transmit mail to a SMTP server defined in the HOSTPATH file.
· The non-SMTP aware RMAIL client for DOS.
The functionality of these components is discussed in the sections below.
To receive mail via SMTP protocol, you need to:
· Have an OS/2 or Windows NT based PC with the TCP/IP network stack installed and available to other machines.
· Define to other systems using SMTP mail that the PC can receive SMTP mail.
· Have the native OS/2 or Windows NT version of UUPC/extended installed.
· Run the UUSMTPD server directly (Windows NT or OS/2) or via the master Internet daemon inetd (OS/2 only).
The UUSMTPD server itself requires no additional configuration to run, although like all UUPC/extended mail programs various routing and other tuning is possible to handle special cases. See the UUSMTPD command reference on page 102 for an additional discussion of the server options and parameters.
Note: In its default configuration, the server will reject mail it does not recognize as either to or from a local user.
The SMTP server will pass all mail received to the same back-end used by RMAIL, so routing delivery takes place just as it had been received by the UUCP protocol and handled by RMAIL.
The primary issue with processing SMTP mail is have the server machine on-line and defined to other machines that it can receive SMTP mail; unlike UUCP where a peer machine can contact a remote system, authenticate itself with a password, and then request the bi-directional exchange of mail, the system with mail to send (the client) is always responsible for contacting the remote delivery machine (the server), and so the host name and/or IP address of the server must be known beforehand.
Note: Because the server name must be defined before use and accept connections on demand via TCP/IP, only continuously available hosts with statically assigned names can used for receiving SMTP mail. [33]
The actual definition of remote SMTP servers is performed in a number of ways depending on the sending software:
· The most general method used for most Internet mailers is via the domain name servers MX (mail exchanger) record. These records define the names and ordering of hosts to attempt delivery to for mail. Definition of DNS servers and the general use of MX records is beyond the scope of this manual; contact your DNS administrator for additional details on MX record configuration.
· For Web browsers such as Netscape Navigator/Communicator, Microsoft Internet Explorer and IBM OS/2 Web Explorer, all have configuration parameters to allow specifying the address of the local SMTP server. For such browsers, the name of the UUSMTPD host should be specified.
· For another UUPC/extended system, the routing SMTP host(s) is specified in the HOSTPATH file; see HOSTPATH routing file on page 151
Most POP3 clients including Netscape Navigator, Netscape Communicator, and Microsoft Internet Explorer retrieve mail using POP3 and send it with SMTP. This means you must run both the UUPOPD and UUSMTPD servers locally to service such clients.
If you one or more users to be able retrieve mail using UUPOPD, define each user in the PASSWD file with a valid password and as a member of the group pop3. Allow mail to be delivered normally, and then either UUPOPD or the MAIL command can be used to read it.
Note: You need not be connected to the Internet to use a web browser to read/send mail via UUPC/extended if you create a local hosts file or setup a local DNS service.
Some consideration should be given to running UUPC/extended in environments other than, especially where those environments DOS may allow background and/or concurrent access to data used by UUPC/extended. These considerations are discussed in the following sections.
Our general advice is, don’t run UUPC/extended under Windows 3.x. Use the DOS version on old systems, and on newer systems upgrade to Windows 95, OS/2, or Windows NT. Use of UUPC/extended with these operating systems is discussed in the following section, Using UUPC/extended Under OS/2, Windows 95, and Windows NT, on page 40.
Unlike the DOS, Windows NT, and OS/2 versions of UUPC/extended, the Windows version is not self-sufficient; the Windows version exists primarily to support uucico in the Windows environment, alleviating performance problems with the DOS version of the uucico program under Windows. Windows versions of most of the utilities (UUSUB, UUCP, etc.) are also included.
However, the Windows version of MAIL is a straight port of the DOS MAIL program (it does not support pull down menus or dialog boxes), and both MAIL and uuxqt operate more efficiently under DOS than Windows. Binaries for these programs and their support modules RMAIL and RNEWS are not included in the Windows archives.[34]
We specifically recommended that the DOS versions of MAIL, uuxqt, and RMAIL be used in conjunction with the Windows versions of uupoll, uucico, and the various status reporting programs.[35] To do so, install the supplied Windows programs in the \UUPC\WINBIN directory and when running Windows place the \UUPC\WINBIN directory before the \UUPC\BIN directory in your PATH. You may need to alter your path when you enter and exit Windows.
If you use the Windows version of uuxqt or MAIL, you must also use the Windows versions of RMAIL and RNEWS. A special flag (-f) is passed to RMAIL and RNEWS to take the place of file redirection, which is not available under Windows.
See General Advice on Multitasking Environments on page 45 for various considerations to keep in mind when running multiple copies of UUPC/extended programs on a single system.
Note: Under Windows 3.x, only one copy of uucico can run at a time. This is a Windows restriction on programs with multiple data segments.
Warning: As this document went to press, specific minor problems were known to exist with gracefully shutting down uupoll, and the manual pages for both uupoll and uucico should be reviewed before using these programs under Windows. Please report any problems with the Windows version to help@kew.com.
UUPC/extended programs run as 16-bit[36] native text mode applications under OS/2 1.3 or 2.x and as 32-bit native text mode applications under OS/2 2.x, Windows 95, and Windows NT. Both Windows NT and Windows 95 use the same binaries. Given enough system resources, either OS/2 or Windows NT can support multiple uucico/uupoll and/or UUSMTPD processes in background without affecting foreground performance. DOS versions of all programs except uucico and UUSMTPD can also be used in the respective DOS compatibility boxes. The DOS uucico (and by extension uupoll) should not be used in a DOS box because overhead from simulating the DOS serial port environment can impact transfer speeds and can cause transmission errors (resulting in resent data, further impacting transfer speeds).
Note: DOS performance problems under OS/2 can be somewhat alleviated by using an OS/2 specific FOSSIL driver (such as the one supplied with the SIO.SYS driver), which uses blocked I/O.
Under both OS/2 and Windows NT, a passive uucico listening on a serial port can be suspended by another uucico dialing out or by the UUPORT command. This allows a terminal emulator such as Kermit to use the serial port without shutting down a poll running in background. The process of suspending and resuming the port can even be automated via a command file such as:
@echo off
uuport -s com1
kermit %1 %2 %3 %4 %5 %6 %7 %8 %9
uuport -r com2
It is not possible to suspend a uucico listening on a network port (named pipes or TCP/IP), but these connections generally use unique addresses reserved for UUCP transfers.
See General Advice on Multitasking Environments, page 45, for various considerations when running multiple UUPC/extended programs at once.
UUPC/extended can be used in a LAN environment via a shared network drive, or with Universal Naming Convention (UNC) share names. In addition, uucico has limited direct network support (see Specialized Communications Drivers on page 41, below).
However, it is not possible to protect the configuration directory from the network nodes (MAIL and RMAIL require access to the SEQF, PASSWD, and SYSTEMS files), and thus local users can learn the passwords for remote systems and, in some configurations, read other users' mail. Network administrators must decide if this restriction presents a security exposure.
Note: Effective with release 1.12a, the SYSTEMS file and PASSWD files can be renamed using the UUPC.RC variables Passwd and Systems. Thus, two similar UUPC.RC files pointing at different sets of SYSTEMS and PASSWD files can be used; general users can access world readable files (with fake password data) in order to get mail routing information. A specially authorized user can access the live SYSTEMS and PASSWD files used by uucico to make and accept calls.
Even if all workstations on the LAN are running DOS, you should see General Advice on Multitasking Environments, page 45, for various considerations when running multiple UUPC/extended programs at once.
UUPC/extended can be configured using Universal Naming Convention (UNC) names instead of conventional file names to refer to its configuration files. UNC names look like this:
\\machinename\sharename\path\filename.ext
Where machinename is the name of the remote system where the share point is located, sharename is the name of the remote share point, and path and filename.ext are just like normal paths and file names. Many PC network operating systems, including Novell, Lantastic, Windows for Workgroups, and Windows NT, allow you to use UNC names when opening files over the network.
Note: If you use UNC names in your UUPC.RC or [userid].RC files, you must make sure that RMAIL.EXE and RNEWS.EXE can be found in the path, or that the path= line is specified in UUPC.RC to point to the UNC share point and directory where RMAIL and RNEWS can be found.
Example: Some typical lines that might be in a UUPC.RC configured to use UNC names might be:
Path=\\dino\uupc\dosbin
ConfDir=\\dino\uupc
NewsDir=\\dino\uupc\news
Specialized communications drivers are enabled in a modem file via the Suite= keyword as described in Table 17 - Modem File Configuration Keywords on page 129.
Under MS-DOS, uucico supports connections driven by:
1. The internal communications driver (COMM), which directly controls to the Universal Asynchronous Receiver/Transmitter (UART) driving the serial port.
2. A generic FOSSIL (Fido-Opus-Seadog Standard Interface Layer) interface which supports any FOSSIL (INT 14) driver conforming to Version 5 of the FOSSIL specification.
3. An INT 14 BIOS level driver. The standard IBM PC BIOS interface is too slow for most serial connections (resulting in transmission errors), but many packages, such as LAN modem sharing software, emulate it.
Under Windows 3.x, Windows NT, and OS/2, uucico will use any serial device supported by the system. In addition, TCP/IP connections over a LAN be made if such support is installed under OS/2 (32 bit only), Windows 3.x or Windows NT. Under OS/2 2.x, named pipe connections can be made over a LAN if such support is installed.
For connections which uucico does not directly support via LAN protocols (i.e. IPX or NETBIOS), RMAIL can be used as a gateway to appropriate file transfer programs. See UUPC/extended as a Mail Gateway, page 36, for details.
UUPC/extended will communicate to the uucp port (decimal 540) of any system which supports UUCP connections on this port. Because the TCP/IP protocols guarantee reliable delivery, faster protocols which do little error checking (such as 't' or 'e') can and should be used in place of the slower but more robust modem-oriented protocols (such as 'g' and 'v').
For connecting other systems to a local system running UUPC/extended over a TCP/IP link, you may fire off a uucico running in passive mode with a modem file which specifies the suite=TCP/IP keyword (see Table 17 - Modem File Configuration Keywords on page 129). Under OS/2 with IBM TCP/IP running, you can run the supplied uucpd script to fire off uucico and then have the remote system connect as if the uucico were running continuously.[37]
Connecting to remote UNIX systems via an active polling is more complicated. The UUPC/extended system again uses a modem file which specifies suite=TCP/IP, and includes the host name to connect to in place of the phone number in the systems file. But, it's like this — not all UNIX systems are created equal. Because of bugs in some versions of the UNIX uucpd daemon (known to exist on the USL System V 4.1 box we tested with), connecting via TCP/IP may not work under the following conditions:
1. The UNIX system uses a shadow password file (a copy of passwd which only root can read) and /etc/inet.conf defines the user id to run uucpd as uucp or other non-root user id.
2. The shell for the user connecting to the UNIX system is not the same as the shell expected by the uucpd daemon; it normally looks for /usr/lib/uucp/uucico.
3. The UNIX system uses a shadow password file and uucpd does not look in it for the login passwd.
Note: One check for this condition is to determine the name of the shadow password file on your system and then run the UNIX strings program on both the uucpd module and the ftpd module. If the shadow password file name is listed in the ftpd module but not the uucpd module, then most likely the uucpd module is missing shadow password support and must be replaced.
As noted above, the DOS version of UUPC/extended supports using a special type of communications driver called a FOSSIL (Fido-Opus-Seadog Standard Interface Layer). A number of drivers support the FOSSIL standard, and these drivers are used by a wide variety of PC bulletin board programs, particularly in the FidoNet electronic mail and bulletin-board world. Because of this large installed base, FOSSIL drivers are robust and have been tested on a variety of systems.
While the internal COMMFIFO driver handles most serial ports with no trouble, FOSSIL drivers allow uucico to run on an even wider variety of systems. FOSSIL drivers can be used with uucico to support any of the following situations:
FOSSIL drivers are already installed for other programs.
Special serial port configurations such as non-standard interrupts for COM3 or COM4.
uucico using COMMFIFO cannot initialize the modem.
Running DOS uucico under OS/2.
Note: Kendra Electronic Wonderworks does not endorse or support any particular FOSSIL driver.
Here's how you configure UUPC/extended versions 1.11z and later for use with FOSSIL drivers.
A FOSSIL driver
A text editor
The latest version of PKUNZIP
1. Get a FOSSIL driver.
2. Install the FOSSIL driver.
3. Edit your .MDM file, adding Suite=FOSSIL.
4. Reboot your system if CONFIG.SYS was edited.
5. Test the results.
1. Get a FOSSIL driver. These are available from many sources, including by anonymous UUCP from kewgate, and by anonymous FTP from any Simtel-20 mirror site, including wuarchive.wustl.edu and ftp.uu.net. Three drivers tested with UUPC/extended are:
BNU170.ZIP
OCOM_531.ZIP
X00V124.ZIP
Other FOSSIL drivers should work as well.
2. Install the FOSSIL driver.
The FOSSIL drivers all come with installation instructions. You will have to tune them for use with UUPC/extended, however. If you have a high-speed modem (9600 baud or greater), and you use large window-size protocols like G or v, you will need to install your FOSSIL driver with larger transmit and receive buffers than the defaults. The largest size you should need is 8 KB.
See the FOSSIL driver's instructions for further details.
For a high-speed configuration, here are the settings our friend Fredrick Watt used for installing each of the three tested FOSSIL drivers on toscis:
BNU170: Nothing was added to CONFIG.SYS. In AUTOEXEC.BAT, Fred added the BNU directory to the path and then added:
BNU /T:4096 /R:4096 /F- /Z0
X00V124: Nothing was added to AUTOEXEC.BAT. In CONFIG.SYS, Fred added:
DEVICE=C:\X00\X00.SYS E F=15 R=4096 T=4096
OCOM_531: Nothing was added to CONFIG.SYS. In AUTOEXEC.BAT, Fred added the directory with the driver to the path and then added:
OPUSCOMM
OCOM_CFG C S2=4096,4096
Note: S2=4096,4096 set the communications buffers for COM2 only -- your setting may differ depending on your communications port. Read the instructions for the driver.
3. In your .MDM file, add the line Suite=fossil.
Example: In toscis' TBWORLD.MDM file, Fred added the line DOS.Suite=FOSSIL. Since toscis runs more than one operating system, Fred needed DOS.Suite so that OS/2 and Windows NT would still use the internal serial port drivers. If you don't use additional operating systems, there is no need for the DOS. prefix.
4. Reboot your system.
If everything was configured properly, you'll get a sign-on message from the FOSSIL driver you installed.
5. Test the results.
Call one of your neighbors with the new driver, and enjoy.
Check the driver’s buffer sizes. uucico, which can queue 4K of data at once, can easily overrun the standard buffer sizes used by FOSSIL drivers.
The FOSSIL driver documentation is often helpful. In addition, several of the FOSSIL driver packages come with diagnostic programs that display the status of various RS-232 lines, so you can see whether data is actually being sent.
UUPC/extended includes specific support for environments where more than one program may be accessing UUPC/extended files at a time. Some of this support, such as checking the time stamp of a mailbox before overwriting it when exiting MAIL, requires little additional processing time and is always active. Other support requires special processing and must be enabled via the addition of the Boolean option multitask to the options= line in the UUPC.RC. Under DOS, you should also load the SHARE TSR program.
Note: Under all environments except DOS, the Boolean option multitask should always be enabled in the UUPC.RC file, and it may be enabled under DOS without ill effects. You must enable multitask if you run UUPOPD, UUSMTPD, and/or set the Boolean option bounce. This latter restriction applies even under DOS.
Specifically, the Boolean option multitask enables:
If a “Permission Denied” error is returned when opening a file, UUPC/extended retries up to 10 times waiting for the file to become available.
Log files are written to temporary files in the spool directory and then appended to the permanent log in the logging directory when the program exits.
The SYSLOG file, if enabled by the Boolean option syslog, is opened and closed for each file transmitted or received.
uucico creates a lock file when connecting to a system to insure only one conversation at a time can go on with that system.
uuxqt creates a lock file when processing commands from a system to insure only one uuxqt at a time is processing commands from that system.
When mail is read from the system mailbox for a user, it is copied to the user's home directory and the system mailbox is cleared to allow additional deliveries while the user is reading mail.
This additional processing prevents such conflicts as multiple programs writing to log files or mailboxes, and attempts to insure programs do not abort when files such as the SEQF file are being updated and are thus inaccessible. The only major remaining exposure is that a program can explicitly write to a mail file in a user's directory, but this situation is uncommon and MAIL will detect when the file size or date changes and warn the user before losing the other program's changes.
What if you want to have other systems dial in to yours to route mail and news, rather than calling them? To configure UUPC/extended to allow other systems to call yours, you will need to modify several of the configuration files.
In addition, the owners of the other systems will have to modify configuration files on their machines. For UUPC/extended systems, see Configuring After Installation, page 16. Configuring non-UUPC/extended systems is beyond the scope of this documentation, but descriptions of how to configure many other systems can be found in Using & Managing UUCP.
To allow a remote system to dial in, you'll need to do the following:
A. Modify your SYSTEMS, PASSWD, and PERMISSN files.
B. Test your machine's new configuration.
C. Test having their machine call yours.
Example: Let's assume that one of your UUCP neighbors, whose machine is named "bosox," decides that she wants to be able to dial in to your machine, called "snuffles."
We'll go through the changes that need to be made to each of these files one at a time.
1. SYSTEMS
In your SYSTEMS file, you will need to add a line for the remote system.
If you already successfully call the other system, then the existing line in your SYSTEMS file is good enough: leave it alone.
If you don't already call the remote system, then add a line to your SYSTEMS file that looks like this:
Example: bosox Never TBWORLD 38400 999-9999
Replace bosox with the name of their machine.
As described in The SYSTEMS file, page 137, the second entry on this line describes how often the remote system is called. "Never" means that you never call the remote system. Because you never call them, the modem type, outgoing baud rate, phone number, and protocol fields are not used. Despite that, they still have to be filled in.
2. PASSWD
You will also need to add a line to your PASSWD file for the remote machine. For more information about the PASSWD file format, see the documentation in the file itself, or in step The PASSWD file of Configuring After Installation, page 136.
The PASSWD line you'll want to add will look something like this:
Example: Ubosox:Apple#Juice:::bosox
Replace Ubosox with their dial-in user name, Apple#Juice with their password, and bosox with the name of their machine. The name can be descriptive, since it's only used to report the login.
3. PERMISSN
For a simple configuration, add lines like the following to your PERMISSN file:
Example: LOGNAME=Ubosox VALIDATE=bosox MACHINE=bosox \
SENDFILES=yes REQUEST=yes COMMANDS=rmail:rnews
Replace Ubosox with their dial-in user name from your PASSWD file, and bosox with their machine name. The “\” is simply a continuation character.
To test your new configuration, run UUNAME, and then uuxqt. If they do not print out any warnings, then you have probably configured your PASSWD, SYSTEMS, and PERMISSN files correctly.
Once your neighbor’s machine is configured, it can try calling in. For UUPC/extended, simply run uucico or UUIO:
uucico
-s yoursystem or
UUIO -s yoursystem
For other UUCP packages, consult the documentation.[38]
UUPC/extended supports external programs in number of ways, most of which are documented as part of the individual programs. This external program support includes:
INEWS, NewsRUN, and RNEWS accept news for processing on the local system, saving it (as documented in RNEWS on page 78, and NEWSRUN on page 69) for processing by third party news packages such as TRN, SNEWS, and TIN.
RMAIL accepts RFC-822 mail (with some restrictions) from any mail user agent and performs delivery or other action as described under An Overview of RMAIL on page 31. Rmail also supports a direct interface to write the mail into a queue for other mailers as defined below in Using V-mail and Other Third Party Mailers on page 48.
uux allows queuing any command and its associated parameters for uuxqt running locally or remote program, subject to security restrictions.
UUCP allows copying files between any two systems, again subject to security restrictions.
Under DOS, uucico can be invoked by other programs which answered the phone and validated the user access to the system.
Under DOS, OS/2, and Windows NT, uucico can invoke external programs when that program is specified in the [ConfDir]\PASSWD file, and connection specific information such as the user id and port speed can be passed to the program as documented in Having uucico Invoke External Programs on page 49.
Those features not described as part of the various commands or in the description of mail delivery are covered below.
In order to efficiently drive V-Mail Server by Vandenburg Systems Research,[39],[40] UUPC/extended includes special support for writing mail directly in the external V-Mail queue. This support can also be used for interfacing to other third party mailers.
Note: Use of this interface has a major advantage over trying to read the UUPC/extended spool directory: the spool uses a complex mapping routine to map names between DOS's monocase file system and UNIX systems's mixed case file system.[41] The external queue support simply uses the true DOS name of the file.
As noted in System Mail ALIASES File on page 146, external queue support is enabled by an alias beginning with a greater than (>) sign. When such an alias exists, the mail as received is written into a file in the directory defined by the UUPC.RC variable VMSQueueDir=, with a prefix of UUPC followed by four unique characters and an extension of ".D".
A second file is written into the same directory with a name having the same format, except the extension is ".X". The .X file contains two lines. The first line begins with the letter D (data), followed by a space and the full file name of the associated file. The second line begins with the letter C (command), followed by the contents of the UUPC.RC variable Vmail=, and finally the contents of the original alias line following the greater than sign.
Thus, if the UUPC.RC file includes:
Vmail=e:\vms\mail.exe
VMSQueueDir=e:\vms\queue
And the system ALIASES file contains:
listserv: >-t listserv
Then, when mail is sent to Listserv on the local system, the contents of the mail will be written to a file E:\VMS\QUEUE\UUPC????.D and the additional file E:\VMS\QUEUE\UUPC????.X will be created containing:
D E:\VMS\QUEUE\UUPC????.D
C E:\VMS\VMAIL.EXE -t listserv
Of course, the external program (in the case of V-Mail, VMAIL.EXE) must be run to actually read the files and process them for mailing.
Under all environments except Windows 3.1, uucico in passive mode can be invoked with the phone already off hook and user id and password validated by external program. To do so, use the speed (-z) and user id (-w) parameters to specify the processing already performed, and under Windows NT and OS/2, specify the port handle (-h). It is not possible to directly override the port name to be answered; you must override the modem file (where the port name is configured) instead.[42]
uucico may be invoked to validate access for and then invoke external programs if those programs handle the serial port in a compatible fashion. The standard command processors such as COMMAND.COM under DOS and CMD.EXE under OS/2 cannot be used because they do not talk to the serial port.
For the external program to be compatible, it must handle the port as follows:
Under DOS, the external program must provide its own communications handler to talk to the serial port or shares an external driver (such as the FOSSIL interface) with uucico.
Under OS/2 or Windows NT, the program must be native for the environment (OS/2 uucico cannot invoke an external DOS program), and must accept and operate on an open file handle.
Note: External shells are not supported under Windows 3.x
To invoke the external program, the program and any arguments must be specified as the last field in the PASSWD file as described in The PASSWD file on page 136. The program will be run from the specified home directory, but the home directory will not be searched for the program unless the full path name of the program is specified or the home directory is included in the PATH environment variable in effect when uucico is invoked.
In order for the program to receive information about its operating environment, the substitution parameters defined below may be used to pass information to it. All parameters begin with a percent sign (%) followed by a single character denoting the parameter to be inserted.
Table 7 - Substitution Parameters Allowed in Shell Field of PASSWD File
|
Parameter |
Resulting Value |
Example Output |
|
%% |
Single Percent Sign (%) |
% |
|
%l |
File handle (OS/2 and Windows NT only) |
3 |
|
%p |
Port name |
COM2 |
|
%s |
Port speed |
19200 |
|
%u |
User id |
Utoscis |
Thus, a shell specified as:
/bin/myprog port %p baud %s
will be invoked as:
/bin/myprog port COM2 BAUD 19200
“When you're in command, command.”
-- Admiral Chester A. Nimitz
This section describes the syntax of the commands supplied with UUPC/extended. It assumes you have installed the programs and configured them as described in Part 2: Basic UUCP Installation, page 11, and that you have access to the Nutshell Handbook Using & Managing UUCP.
To obtain the syntax of the various command line options, enter the command name followed by '-?'; for example:
uuxqt -?
Synopsis
comm34 port3 [port4]
Availability
MS-DOS only (possible in OS/2 DOS box, see below)
Description
COMM34 defines non-default addresses for communications ports 3 and 4 (COM3 and COM4) under MS-DOS. It does this by poking the provided operands into the BIOS memory segment at hexadecimal address 0040:0000, where uucico and other programs such as Kermit search for port addresses. It also displays all defined port addresses for COM1-4.
Note: This command is not available under OS/2, but may be used in an OS/2 DOS box. However, the preferred way to define port addresses for COM3 and COM4 for both OS/2 and DOS boxes under OS/2 is to add information to the relevant DEVICE= statements in the OS/2 CONFIG.SYS file.
Options
comm34 supports the following options:
port3 is the hexadecimal address for COM3, or 0 if omitted and port4 is specified.
port4 is the hexadecimal address for communications port 4.
Note: If using the native UUCICO communications driver, COM3 must use Interrupt Request Line (IRQ) 4 and COM4 must use IRQ 3. To use other IRQ’s, you must use a FOSSIL driver. See Using FOSSIL communications drivers with UUPC/extended on page 43 for additional information on FOSSIL drivers.
COMM34 must be run before uucico, and only needs to be run once, perhaps by putting the appropriate line in your AUTOEXEC.BAT file. If all operands are omitted, COMM34 displays a help screen and the current port assignments.
Synopsis
expire [-x debuglevel] [-e days] [newsgroup newsgroup newsgroup…]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
EXPIRE archives and/or deletes articles created by RNEWS in normal mode after a specified period of days. For EXPIRE to run, the ACTIVE file must exist. (See usenet News ACTIVE Groups File, page 153, for the layout of the ACTIVE file.) Articles are stored in the directory hierarchy defined by the NewsDir variable as they are received. EXPIRE deletes the articles after the period specified.
Options
The expire program supports the following options:
-e days Number of days news is to be kept in directories accessible to the user before being deleted. The default period is seven (7) days.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may be set to 0 for unattended production use, or as high 20 for detailed debugging.
newsgroup The name of the newsgroup to scan for expired articles. The default is to scan all news groups in the ACTIVE file for articles to expire.
Synopsis
fmt [-#] [-c string]
[-s] [input-file [output-file]]
fmt [-#] [-c string] [-s] [-i input-file
[-o output-file]]
Availability
MS-DOS, OS/2, and Windows NT
Description
FMT is a simple paragraph formatter for use when entering mail in line mode. It effectively removes all carriage returns from within a paragraph and then writes the paragraph out in lines as close as possible to 72 characters in length without going over. Paragraphs are separated by blank lines in the input and output files.
Note: If the first word on a new line is longer than the maximum line length, it is written by itself on the line. It is not truncated.
Options
fmt supports the following options:
-# specifies the maximum line length as #. For example, -72 specifies the maximum line length as the default 72 columns.
-c string specifies that string is to be appended to at the end of each new line inserted. Note that if -s is specified, existing lines do nothave Istring appended.
-s specifies overlength lines are to split but no lines are to be joined together.
-i input-file specifies the name of the input file. The default is standard input.
-o output-file specifies the name of the output file. The default is standard output. If the output-file specified, the input-file must be specified as well.
input-file specifies the name of the input file. The default is standard input.
output-file specifies the name of the output file. The default is standard output. If the output-file specified as a positional operand, the input-file must be specified as a positional operand as well.
Examples
To format all the text you have typed in from line mode, use fmt as a pipe at the question mark (?) prompt while sending mail:
~|FMT
Bugs
The program doesn’t support all the options of the UNIX version, in particular it doesn’t handle hanging indents well.
Specifying both the option switch (-o or -i) for a file name and the positional arguments causes the positional arguments to silently override the option switch.
The program fails to preserve intra-line spacing, if even if it doesn’t need to do anything to the line. It’s specially rude about transforming nuking tabs into spaces to avoid having to determine how wide the the tab logically is.
See Also
MAIL, NOVRSTRK
History
Written by Drew Derbyshire of Kendra Electronic Wonderworks in August 1990. Added both the -c and -s options in a great hurry in May 1998 for a UUPC/extended Makefile hack which wasn’t actually needed. Also corrected inter-paragraph spacing in May 1998.
Synopsis
fromwho [-l] [-s] [-n] [-a] [-f [mailbox]]
Availability
MS-DOS, OS/2, Windows 3.1 and Windows NT
Description
The fromwho command summarizes the contents of the specified mailbox, or of the current user’s system mailbox if no mailbox is specified.
Options
fromwho supports the following options:
-l Turn listing of users/subjects off.
-s Turn listing of subjects off.
-f mailbox Set the mailbox to summarize.
-n List only new mail
-a Show sender address instead of sender name
Bugs
The program does not fully support UUPC/extended mailbox names, and for example does not automatically add the standard mailbox extension.
Author
Originally by jearls@data.acs.calpoly.edu, modified for use with UUPC/extended by Kai Uwe Rommel.
Synopsis
genhist [-x debug]
Availability
MS-DOS, OS/2, and Windows NT
Description
GENHIST generates the history database used for processing Usenet news articles. It need only be run when the history database does not exist or has been corrupted. If you have upgraded your version of UUPC/extended from a version earlier than 1.12e, and you received news from one of your UUCP neighbors before you installed version 1.12e, then you will need to run this program to regenerate the history database.
Options
genhist supports the following options:
-x debug Display debug messages at or below level debug. The default value is 1. The option may set to 0 for unattended production use, or as high 20 for detailed debugging.
Bugs
None reported so far.
Synopsis
gensig fixed.inp variable.inp merged.out
Availability
MS-DOS, OS/2, and Windows NT
Description
GENSIG reads a standard signature file and appends random text selected from a second file, writing the combined data to a third file. The format of the command is:
gensig fixed.inp variable.inp merged.out
Where fixed.inp is the fixed portion of the signature file containing your name and address, and variable.inp is a file which begins which a delimiter line followed by quotes or other text separated by additional delimiter lines. For example, the variable input file might look like this:
**
The above is a delimiter line.
**
Free the Intel 386!
**
"UUPC/extended" is "system crash" spelled sideways.
**
Don't quote me!
The file merged.out will contain the entire text of the fixed.inp file followed by one delimited text block from variable.inp. If you use this utility to generate a signature file, then your [userid].RC should reference the file merged.out as your signature file.
Note: To generate fresh quotes, this program should be run from your AUTOEXEC.BAT or other regularly run batch file.
Synopsis
result-string = getuupc( variable-name [, [ default-result ] [, personal-rc-name ]] )
Availability
OS/2
Description
The getuupc command is an external REXX subroutine used by other OS/2 UUPC/extended REXX commands to retrieve UUPC/extended configuration variables. Because it returns text strings, it cannot be executed from the command line in a useful fashion.
The program looks up the value of variable-name in the PERSONAL.RC file (if provided) and if not found then in the UUPC.RC file (as determined by the UPCSYSRC environment variable) and returns the value found there. If the variable is not found in the UUPC.RC file, then the default is returned. If the variable is not found and no default is provided, an empty string is returned.
Options
variable-name specifies the label of the configuration variable to be retrieved.
default-result specifies the string to be returned if no value is found for variable-name.
personal-rc-name specifies the name of a [userid].RC file to be searched before the system UUPC.RC configuration file.
Bugs
The retrieval function does not implement the entire range of functionality exploited by the various programs written in C. In particular, it doesn’t handle conditional prefixes on keywords, and the complex relative path name resolution used by the C programs cannot be emulated on the fly.
See Also
WAITING, UUCLEAN, UUHOUR
Synopsis
inews -h [-x debug] [ < article ]
Availability
MS-DOS, OS/2, and Windows NT
Description
INEWS is a filter that posts articles to newsgroups. It reads the header and contents of the article on standard input, adds any headers or other information missing from the article text, and then passes the article to rnews for delivery.
The syntax of the INEWS command is:
inews [-x debug]
Where:
-x debug Display debug messages at or below level debug. The default value is 1. The option may set to 0 for unattended production use, or as high 20 for detailed debugging.
-h Doesn't do anything. It's there for UNIX compatibility.
Bugs
INEWS doesn't correctly support posting to moderated newsgroups.
See Also
PNEWS, RNEWS
Command line interface for read and sending mail
Synopsis
mail
[-x debug] [-p] [-t] [-f name]
mail [-x debug] [-p] [-t] [-u userid]
mail [-x debug] [-s subject] address
... [-c] address ... [-b] address
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
The MAIL command is used to both compose and read mail. It provides a human interface to the user mailboxes, and formats mail so the RMAIL command can deliver it to local and remote users.
If MAIL is invoked interactively with one or more addresses, it prompts for the subject of the message (if not provided via the -s flag), and then prompts for the text of the message either directly or via a user-specified editor. (See The UUPC.RC and [userid].RC files, page 115, to find out how to specify an editor. The program then prompts for the action to take (list, edit, input additional lines of text directly, abort, or send) until the message is sent or aborted. When sent, the required RFC-822 headers are added to the mail and the entire message is passed to RMAIL for delivery.
If MAIL is invoked with one or more addresses and the input is not the keyboard, then the input is taken without prompting or editing and passed to RMAIL with the appropriate RFC-822 headers.
If invoked without addresses, MAIL reads the user's system mailbox (or other mailbox specified on the command line), displays a one line summary of each message, and prompts for a user command with an item number and a question mark (?). Commands can be issued to read, save, delete, or send mail until the program is terminated by the quit or exit command.
The following option is always accepted by MAIL:
-x debug Amount of debugging information to display. The default is taken from the environment variable UUPCDEBUG if set and is otherwise 0. The higher the debug level, the more information overwhelms the unsuspecting user.
The following options are accepted when composing mail:
-s subject Subject of the message to send. Multiple words must be enclosed in quotes. This option must precede any addresses and the -c and/or -b flags, if supplied.
-c address One or more carbon copy addresses. Such addresses are listed under the CC: field of the RFC-822 header rather than in the To: field. One or more addresses must be listed after the -c flag.
-b address One or more blind carbon copy addresses. Such addresses are listed under the Bcc: field of the RFC-822 header, which is dropped by RMAIL after processing. Thus, no one will see these addresses in the mail header.
The following options are accepted when reading mail:
-f filename Name of the file to read rather than the system mailbox. See below for the syntax of accepted file names.
-u userid Name of the user whose system mailbox is to be read.
-t Rather than display who mail is from in the summary, display who the mail is to. This option is automatically enabled for the file defined by the UUPC.RC variable FileSent= (See The UUPC.RC and [userid].RC files, page 115, for a further explanation.), which defines where a copy of mail you send is saved. If the -t flag is specified for the FileSent= file, it reverts to normal processing (displaying whom the mail is from).
-p Print all the mail in the specified mailbox and exit.
In the list of commands available when reading mail, messages refers to one or more messages in the mail box. These items can be specified in one of the following ways:
Table 8 - Valid message Operands for MAIL Subcommands
|
Operand |
Description |
|
Message Number |
A single numeric value, the special character dot (.) to specify the current item, or the special character dollar sign ($) to specify the last item in the mailbox. |
|
Message range |
Two message numbers separated by a hyphen (-). The messages must be in ascending order; for example, 1-$ is valid, but $-1 is not. |
|
List of messages |
A list of message numbers and/or message ranges, separated by spaces. The list need not be in ascending order. An example is: 1-5 8 7 14-17. |
|
Asterisk (*) |
Selects all messages in the mailbox |
|
Subject |
A slash (/) followed by a subject to search for, optionally followed by a terminating slash. Each Subject: or Resent-Subject: will be searched for the specified string. An example is /UUPC bugs/ |
|
User id |
A single word (no white space) appearing in the From or Resent-From lines of the mail header. Note that if the command accepts both an item and a userid, you cannot specify the item as a user id. Note: If the command accepts both an item and file name and you specify a user id for the item, you must explicitly provide the default filename unless the user id includes the characters at sign (@), percent sign (%), or exclamation point (!). |
Some commands also allow file names as operands. File names may look like any of the following:
Table 9 - Valid filename Operands for MAIL subcommands
|
Type of file |
Description |
Example |
|
Simple file name |
An MS-DOS file name with no path name |
snuffles.spb |
|
Relative path name |
An MS-DOS file name with one or more back slashes (\) which does not begin with a back slash or drive letter. |
mail\snuffles.spb |
|
Absolute path name |
An MS-DOS file name with one or more back slashes (\) which begins with a back slash or drive letter. |
d:\uupc\snuffles.spb |
|
UNC name |
Universal Naming Convention name. A file located on a network server. |
|
|
Mailbox |
A simple file name prefixed by the plus sign (+) character. This will cause the file be referenced as if it is the mailbox for the specified user. For example, +postmast refers to the mailbox for user postmast. |
+snuffles |
|
Relative to your home directory |
A simple file name preceded by a tilde and slash (~/). The file is then referenced by the prepending the home directory listed in your [userid].RC to the simple file name. |
~/oldmail/snuffles.spb |
|
Relative to another's home directory. |
A simple file name preceded by a tilde, the userid, and a slash (~userid/). The file is then referenced by the prepending the home directory listed in the PASSWD file for user "userid" to the simple file name. |
~snuffles/oldmail.spb |
When sending mail from the command line or via the mail or forward commands, the destination address must be entered. Acceptable addresses look like any of the following:
|
Table 10 - Valid address operands for MAIL subcommands
|
If the flag -c is inserted before a user id, then mail to the following users is sent as Carbon Copy (Cc:) addresses. If the flag -b is inserted before a user id, then mail to the following users is sent as blind carbon copies, whose addresses do not appear in the mail header. The blind carbon copy flag must follow all normal and carbon copy addressees.
Example: mail -s "Test message" Snuffles -c athena!binkley -b software@kew.com
Commands are entered in response to the mail question mark prompt (?). All commands must be separated from their operands, if any, by white space. Most commands can be abbreviated to a single character; the commands which cannot be so abbreviated and their shortest allowable abbreviation are debug (deb), dquit (dq), previous (pre), set (se), and status (st). Note that several of the command names are case sensitive.
The following commands can be used within MAIL:
Table 11 - Mail subcommand summary
|
Command |
Description |
|
empty line |
If the current message has not been read, then an empty line acts as a print command; otherwise, it acts as a next command. |
|
! command |
Executes command as an MS-DOS, OS/2, or Windows NT command. If command is omitted, runs an inferior command processor (which gives the user a new command prompt.) |
|
? |
Prints a summary of available commands. |
|
+ integer |
Alias for next command. |
|
- integer |
Alias for up command. |
|
alias a1 a2 a3 |
Displays alias information loaded from the user's aliases.txt file for nicknames a1 a2 a3. If an alias is a list of other aliases, then the list is recursively exploded and displayed. This command has no default operand; at least one alias must be specified. |
|
copy items file |
Copies mail items into file with headers. Default file is the printer on device PRN. |
|
debug integer |
Sets internal trace level to integer. The default is 0 when mail starts, and gets set to 1 if you just type "debug" without entering an integer. The internal trace level can also be set by the command line flag -x. |
|
delete messages |
Sets status of messages to deleted. Deleted messages are ignored when selecting mail by subject or user id, and are purged from the mailbox when the quit command is issued. See also undelete. |
|
dquit messages |
Short for delete followed by quit. |
|
exit |
Exits mail without updating mailbox; deleted items are left alone. Compare this to the quit command. |
|
forward messages address |
Resends messages to address. Note that if the askcc Boolean option is set, each message forwarded will be prompted for Carbon Copy addresses. |
|
go messages |
Positions to the last of the messages selected. |
|
headers |
Displays summary information for all items in the mailbox. |
|
Headers items |
Displays summary information for the selected items in the mailbox. |
|
help |
Prints this long help text. |
|
mail -s subject address |
Interactively send mail to address with optional subject. |
|
next integer |
Move down in mailbox by integer items. Default is 1. |
|
previous integer |
Alias of up command. |
|
print messages |
Display messages from the mailbox, using the external pager if defined in the configuration file and ignoring (not printing) a standard list of RFC-822 fields in the mail header such as Received: and Message-Id:. Compare this to the Print, type, and Type commands. |
|
Print messages |
Display messages from mailbox, using internal pager and ignoring (not printing) a standard list of RFC-822 fields in the mail header. |
|
quit |
Terminates the reading of mail. All deleted messages are purged, and all other messages are saved in the original mailbox or in ~/mbox depending on the setting of the save flag. |
|
reply messages |
Interactively sends mail to the authors of each of the messages requested. Note that each item is replied to separately, specifying "reply 1-10" will send ten pieces of mail to ten people. |
|
save messages file |
Saves the specified messages complete with mail headers into file, and then deletes the messages. Compare this to the copy and write commands. |
|
set |
Sets various Boolean options. These options can also be set in your [userid].RC file. The options are listed in The UUPC.RC and [userid].RC files, page 115. |
|
status |
Reports miscellaneous information, including: The version and creation time of the
program |
|
type messages |
Display messages from mailbox, using external pager if available and displaying RFC-822 fields suppressed by the print command. Compare with the print, Print, and Type commands. |
|
Type messages |
Display messages from mailbox, using internal pager and displaying RFC-822 fields suppressed by the print and Print commands. |
|
undelete messages |
Changes status of messages to unread. |
|
up integer |
Move up in the mailbox by integer items. Default is 1. |
|
write messages file |
Writes messages to file without the RFC-822 headers and then deletes them from the mailbox. The default file is ~/mbox. Compare with the copy and save commands. |
|
xit |
Alias for the exit command. |
The commands in Table 12 - Subcommands Available While Sending Mail are available when entering mail text in line mode. Line mode is automatically entered when sending mail unless the editor Boolean option is enabled or after selecting Continue (C) at the send mail prompt. The commands must be entered at the beginning of an input line, in columns one and two.
|
Table 12 - Subcommands Available While Sending Mail
|
Note: The ~m and ~M commands use the same syntax for items as the main mail parser; this allows specifying message number(s), user id, or subject. Type "help" at a MAIL prompt for a detailed description of the allowed syntax.
Note: The exact meaning of ~p and ~P commands are inverted by the use of the pager Boolean option.
Files
/uupc/tilde.hlp Help file for tilde
(~) commands when sending mail.
/uupc/mail/[userid].spb System Mailbox for [userid].
Bugs
Command line option checking is not as robust as it could be.
The automatic advancing of the current item pointer to an undeleted item makes multiple operations on a deleted item interesting.
Under MS-DOS, redirection from NUL looks like a device, not a file, and thus the program prompts for input when it has no business doing so.
MAIL incorrectly parses an return address with a quoted exclamation point, such as:
"Smarter than the average bear!" <snuffles@kew.com>
Some editors, like EDLIN, cause the signature file to be lost because the editor appends a ^Z (Ctrl-Z) to the file.
The reply command gets confused by mixed mode addresses.
How MAIL determines return addresses is sometimes flaky.
There is no 'Replyall' command to reply to all interested parties to a message.
In MAIL, entering '1' should print the first item in the mailbox if the Boolean option autoprint is set. Currently, it doesn't.
See Also
RMAIL, MAILCHEK
Synopsis
mailchek
Availability
OS/2
Description
mailchek uses OS/2 Visual REXX to put up a small window which automatically reports the mail waiting for all users of the system. The command accepts no operands.
Bugs
Visual REXX is not provided as part of base OS/2 or as part of UUPC/extended. It has to be obtained from IBM anonymous sites, such as software.watson.ibm.com.
Running the application can cause some systems to hang. This is no doubt a problem with REXX or the Visual REXX DLL, since the mailchek script itself has no intent, facility (or even ability) to hang the system.
See Also
WAITING, FROMWHO
Synopsis
newsrun [[-f | -F] filename] [-x debug]
Availability
MS-DOS, OS/2, and Windows NT
Description
NEWSRUN processes incoming news from other systems, and is normally never directly invoked by the user. It is invoked automatically by RNEWS upon the arrival of news at the local system or by INEWS when a local user posts an article. In either case, NEWSRUN is invoked directly when the Boolean option fastNews is set or otherwise via a uux command run by uuxqt .[43]
Article processing by NEWSRUN is controlled by the SYS file and the ACTIVE file. See usenet News ACTIVE Groups File on page 153 for the formats of these files.
Note: If the ACTIVE file does not exist or is empty, NEWSRUN will abort and the incoming news will be lost.
Note: If the SYS file does not exist, a default SYS file which accepts all remote news and sends all locally generated news to the news server is automatically generated.
Options
The options for NEWSRUN are as follows:
-f filename Specifies filename is to be used in place of standard input
-F filename Specifies filename is to be used in place of standard input, and the file is to be deleted after use.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use or as high 20 for detailed debugging.
Processing
News is processed as follows:
1. The ACTIVE file is loaded and the news history database is opened.
2. If news is batched with multiple articles per file transferred, then the articles in the file are written to a temporary file. The temporary file is then processed as a single article.
3. Each article is passed through the filters defined in the SYS file for the various defined systems. If an article passes the filters for any but the locally defined system, it is immediately queued or otherwise processed as defined by the SYS file. Articles for the local system are processed as defined below.
4. The news groups defined in article header are automatically overridden for all control messages; the article is saved in the group control if it exists in the ACTIVE file, or group junk if control does not exist and junk does. Newsrun automatically cancels (deletes) articles if it receives a cancel control message. If the Boolean option honorcontrol is set in UUPC.RC, then newgroup and rmgroup control messages are also processed.
For more details about control messages, see Using & Managing UUCP
5. If the message-id of the article is already in the history database, the article is saved in the group duplicates (if it exists in the ACTIVE file), and all other processing for the article is skipped.
6. The news groups line of the header is scanned for each article processed. For each group listed in the header which is also in the ACTIVE file, the article is copied to the group's directory under the next available article number.
7. If no valid local groups are defined in the header and the local group junk exists in the ACTIVE file, the article is saved to junk. Otherwise, the article is discarded.
8. Once all articles are processed, the ACTIVE file is written out with updated article numbers and the history database is closed.
Environment
If the environment variable UUCPSHADOWS is set to one or more space delimited system names and the SYS file does not exist, a default SYS file is generated to distribute all locally received articles to the remote systems. If the SYS file exists, the UUCPSHADOWS environment variable is ignored.
Bugs
Updates to the ACTIVE file can be lost if NEWSRUN crashes while writing it. Given an old ACTIVE file, the article numbers can be brought back up to date by running GENHIST.
See Also
EXPIRE, GENHIST, RNEWS, INEWS
Synopsis
novrstrk [input-file [output-file]]
Availability
MS-DOS, OS/2, and Windows NT
Description
NOVRSTRK strips overstrikes from files with carriage control to allow viewing on a terminal. If used to display the UUPC/extended documentation, it will drop the overstrikes created when back spaces are used to create bold and underscored text on a printer. The syntax of NOVRSTRK is:
novrstrk [input-file [output-file]]
The default input and output files are the console.
Synopsis
pnews
Availability
OS/2 only
Description
pnews allows the user to post news under OS/2. It prompts for important information, like newsgroups to post to and subject information, and then invokes the user’s defined editor to create the body of the post and perform additional header edits, if desired. When the user is done editing and confirms the post, the program invokes inews to actually perform the post.
Options
This program accepts no command line options.
Bugs
The program should be ported from REXX to C so its available on all platforms, not just OS/2.
See Also
INEWS
Synopsis
regsetup [-s] [-u ] [-c]
Availability
Windows NT only
Description
REGSETUP writes the contents of the UUPC.RC and [userid].RC files into the Windows NT Registry. It is provided to allow other Windows NT programs access to UUPC/extended's configuration data. REGSETUP also writes the UUPCSYSRC and UUPCUSRRC environment variables into the registry.
The UUPC.RC configuration information is written into HKEY_LOCAL_MACHINE; the [userid].RC configuration is written into HKEY_CURRENT_USER. UUPC/extended’s hive in the registry begins at "Software\Kendra Electronic Wonderworks\UUPC/extended", under either the HKEY_LOCAL_MACHINE or HKEY_CURRENT_USER keys. The configuration information is written into a subkey, whose name is the same as either the UUPCSYSRC or UUPCUSRRC environment variable's value.
Note: UUPC/extended will automatically retrieve the UUPCSYSRC and/or UUPCUSRRC values out of the registry if the environment variables are not set. Those are the only registry entries that UUPC/extended actually uses: it always retrieves the other configuration information from the text format configuration files. UUPC/extended ignores all other output from this program.
Options
regsetup supports the following options:
-c clears the current contents of the UUPC/extended hives in the NT registry.
-s writes the UUPC.RC file's contents into HKEY_LOCAL_MACHINE.
-u writes the [userid].RC file's contents into HKEY_CURRENT_USER.
These options can be used together. For example, if you run "REGSETUP -s -c", then the registry hive for UUPC/extended will be cleared before the new configuration data is copied into it.
Operational Notes
Once REGSETUP is run, this is how UUPC/extended resolves UUPCSYSRC and UUPCUSRRC under Windows NT:
1. It checks to see if the environment variables UUPCSYSRC and UUPCUSRRC exist. If they do, then it accepts those values.
2. If the variables aren't set, then UUPC/extended checks in HKEY_CURRENT_USER\Software\Kendra Electronic Wonderworks\UUPC/extended for a key called UUPCSYSRC and another key called UUPCUSRRC. If it finds them, then it uses those values.
3. If the variables aren't there either, then UUPC/extended checks in HKEY_LOCAL_MACHINE\Software\Kendra Electronic Wonderworks\UUPC/extended for a key called UUPCSYSRC and another key called UUPCUSRRC. If it finds them, then it uses those values. (These two steps are provided so that a user can override the default settings, if he or she so chooses, using the registry instead of environment variables.)
4. If none of these procedures result in a value being set, an error is reported and configuration initialization fails.
Bugs
REGSETUP does not write any of UUPC/extended's Boolean options (e.g. history, askcc, etc.) into the registry.
Synopsis
rmail [[-f | -F] filename] [-x debug] [-q] address(es)
rmail [[-f | -F] filename] [-x debug] [-s subject] -w address(es) [-c address(es)] [[-b address(es)]
rmail [[-f | -F] filename] [-x debug] -t]
Availability
MS-DOS, Windows 3.x (not distributed), OS/2, and Windows NT
Description
RMAIL is the Mail Delivery Agent (MDA) for UUPC/extended. Other programs such as MAIL and uuxqt pass it mail for delivery on standard input (STDIN), and RMAIL then handles actual writing to local mailboxes and/or queuing for remote systems. RMAIL is designed to be invoked from other programs, and as such, end-users should never have to invoke RMAIL directly. The following information is included primarily for those who need to invoke RMAIL from another program, such as an external news reader.
RMAIL operates in one of three modes, described below:
As an RFC-822 parsing back-end to the MAIL user agent program
As a stand alone mailer for utility programs such as uuxqt
As substitute for the UNIX RMAIL program invoked by uuxqt for remote mail delivery.
Options
-b address(es) Specifies optional blind carbon copy address(es). Must follow all other flags and addresses. Used only with -w flag.
-c address(es) Specifies optional carbon copy address(es). Must follow all other flags and addresses except for the -b flags and its associated addresses.
-f filename Specifies filename is to be used in place of standard input
-F filename Specifies filename is to be used in place of standard input. The file is deleted after use.
-s subject Optional subject. Used with and implies the -w flag.
-t Enables RFC-822 header parsing mode.
-w Enable stand-alone mailer mode.
-x debug Display debug messages at or below level debug. The default value is 1. The option may be set to 0 for unattended production use, or as high 20 for detailed debugging.
address(es) One or more addresses the mail is to be delivered to. Not used with -t flag, but required for other modes.
In RFC-822 mode, RMAIL is invoked with the (-t) flag, which directs RMAIL to determine the addresses by parsing the mail's RFC-822 header. This mode acts as the back-end to a program such as MAIL which generates the RFC-822 header and passes the mail to RMAIL for both local and remote delivery. RMAIL reads the header, validates the From: address, generates a UUCP From line, RFC-822 Message-ID: and Received: lines, and delivers mail to each address included in the To:, Cc:, and Bcc: headers. The Bcc: header, if any, is read for its addresses but not copied; all other header lines are copied as-is.
Note: When an RFC-822 header prefixed by Resent- is found, only the Resent- headers are used; the original headers are copied but otherwise ignored. In this case, the preceding description applies to the Resent- headers: the original headers are copied without being examined.
The RFC-822 header read by RMAIL is subject to the following restrictions:
All Resent- headers, if any, must precede the original headers.
The From: header must precede the To: header.
Note: If the address in the From: header does not match the address of the user defined in the UUPC.RC and/or [userid].RC files, a Sender: line is generated with the correct address.
The To:, Cc:, and Bcc: headers must be together in the listed order. Each address in these headers must begin on a new line and be less than 512 bytes long.
In stand alone mode, RMAIL is invoked with the (-w) flag to process mail without an existing RFC-822 header, bypassing the Mail User Agent (MAIL) for specialized applications such as mail generated by another program. This mail is subject to the following restrictions:
Mail is not logged in the user's outgoing mailbox
The user's signature file is not appended to the mail
User aliases are not expanded
All addresses plus the subject (if any) must fit on the MS-DOS or OS/2 command line
The following services are performed by RMAIL in stand alone mode:
A UUCP From line is generated.
A valid RFC-822 header is generated with Received:, Date:, Message-ID:, From:, and To: lines. In addition, Subject: and Cc: lines are generated as required if the Subject (-s) and/or Carbon Copy (-c) options are specified.
The generated RFC-822 header also includes a From: user id derived from the environment variable LOGNAME[44], if defined; otherwise the default current user is used. When LOGNAME is defined the real name of the user will be taken from the UUPC/extended PASSWD file if available, or a dummy name will be used.[45]
Mail is queued for the addresses on the command line, including primary addresses, carbon copied addresses, and blind carbon copied addresses. As with RFC-822 mode, the output of RMAIL in stand alone mode does not include any reference to blind carbon copy users in the actual mail header.
In the absence of other options, rmail runs in UNIX RMAIL emulation mode. The following processing takes place:
Mail is read in to a temporary file. The UUCP From line, which is the first line in the file, is parsed and stripped from the mail. No other mail headers are examined.
Mail is delivered to each local user on the command line with a UUCP From line generated from the system name(s) parsed from the incoming From line.
Mail is delivered to all other users on the command line with a UUCP From line generated from the system name(s) parsed from the incoming From line, with the system name from which uuxqt received the mail prefixed to the list unless it is already the first system in the list.
Note: uuxqt normally passes the incoming system name in the UU_MACHINE environment variable, if set. Otherwise, the incoming system name is taken from the "remote from system" portion of the From line. If this data is also missing or invalid, the incoming system name is generated as being from the local system and user id /dev/null.[46]
Bugs
All RFC-822 address data within quotes is ignored. It should be processed in accordance with RFC-822.
With the bounce option enabled, RMAIL only bounces mail back to the address it parsed from the information passed by uuxqt; it does not examine the RFC-822 headers for fields such as Errors-To:.
Synopsis
rnews [[-f | -F] filename] [-x debug]
Availability
MS-DOS, OS/2, and Windows NT
Description
RNEWS processes incoming news from other systems, and is normally never directly invoked by the user. It is invoked automatically by uuxqt upon the arrival of news at the local system.
RNEWS reads the news on standard input, and distributes news to various internal and external news programs depending on how the configuration options snews and nns are set in the UUPC.RC configuration file:
· If the Boolean option snews is set, a copy of the input data to rnews is saved in the NewsDir with a unique name and a file extension of .ART; the news is not uncompressed, unbatched or otherwise pre-processed. It is the responsibility of the SNEWS command or another news package to process the data and delete the file.
· If the Boolean option nns is set, then the news is uncompressed if it is compressed, and then saved in the NewsDir directory with a unique name and an extension of .NNS. It is the responsibility of the Network News System or other news package to complete processing of the data and delete the file.
· If neither the nns nor snews options are set, or a SYS file exists in the ConfDir, then the news is uncompressed if needed and the news is passed to NEWSRUN in one of two ways, depending on whether or not the Boolean option fastNews is set. If fastNews is set, NEWSRUN is invoked immediately, otherwise the data is queued to be processed by NEWSRUN via uux.
For those delivery routes which require possible decompression of incoming news, the program and its operands can be specified in the UUPC.RC file via the uncompress keyword as described in Table 14 - System Wide Configuration Keywords on page 119. Otherwise the program name is chosen dynamically based on the file contents to be one of compress, freeze, or gzip, and the -d flag followed by the input and output file names are automatically appended to the name.
Note: The various decompression programs are not supplied with UUPC/extended or supported by Kendra Electronic Wonderworks[47].
Options
RNEWS supports the following operands
-f filename specifies filename is to be used in place of standard input
-F filename specifies filename is to be used in place of standard input, and the file is to be deleted after use.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use or as high 20 for detailed debugging.
Bugs
It would appear that between NEWSRUN and RNEWS data can be corrupted, resulting in lost news batches. However, we have not sorted out which program is the actual cause of the problem. (We think we fixed this in 1.12r. Stay tuned.)
Bad news batches are discarded rather than being kept around for later examination. This might be considered a feature on systems with limited disk space.
See Also
EXPIRE, INEWS
Synopsis
sendbats [-x debug]
Description
SENDBATS takes articles queued for batch transmission to remote systems by newsrun and actually creates, compresses and invokes uux to queue the news batch. Its processing is driven by the articles queued by newsrun and by the contents of the SYS file (documented on page 155). All systems are processed in sequence by this program; no option is provided to process only one system.
Options
SENDBATS supports the following operand:
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use or as high 20 for detailed debugging.
Bugs
SENDBATS ought to support handling one system at a time.
The SYS file should support different batch sizes for the various systems you are queuing news for.
See Also
NEWSRUN
Synopsis
su userid [command]
Availability
MS-DOS and Windows NT (batch file)
OS/2 (REXX script)
Description
SU changes the environment variable UUPCUSRRC to change the user profile of the user using UUPC/extended. This allows multiple users to easily share the same PC for UUPC/extended.
Note: Because SU is a batch file under DOS and Windows NT, it does not examine UUPC.RC for the name of the UUPC/extended configuration directory. Thus, under DOS and Windows NT, if the directory is not the default \uupc, the SU command file must be edited to point at the correct configuration directory.
The syntax of the SU command is:
su userid [command]
Where:
userid defines the user to use when setting the UUPCUSRRC variable. The file \UUPC\[userid].RC must exist.
command defines an optional command to execute as this user, i.e. MAIL. The default is to run a second copy of COMMAND.COM. The default user id is restored by typing EXIT to terminate the inferior command processor.
Synopsis
uucico [-r 1] [-s system] [-x debug] [-l logname] [-n] [-t]
uucico -r 0 [-m inmodem] [-h handle] [-w user] [-x debug] [-z baudrate] [-l logname] [-d hhmm] [-t] [-U]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
uucico performs the actual exchange of files with other systems. Normally, uucico is invoked from either uupoll or UUIO, but the program can also be invoked directly. Depending on the operating environment, uucico can be used to establish connections over modems, TCP/IP sockets, or named pipes. For information about these transport layers, see Specialized Communications Drivers, page 41, and Modem ([modem].MDM) Files, page 128. To make uucico call all connected systems to deliver and pickup remote mail and files:
uucico -s all
This directs uucico to poll all the systems listed in the SYSTEMS file.
To make uucico wait for an incoming call:
break on
uucico -r 0
uucico will wait for a successful telephone call, and exit upon completion. Entering Ctrl-Break from the keyboard will terminate uucico.[48]
Under OS/2 and Windows NT only, when uucico is invoked in passive mode to listen for a phone to ring, it will automatically surrender the port to a uucico calling out or to the program UUPORT. If an actively calling uucico suspends a passive uucico, it will automatically wake the sleeping uucico to take the port back. If UUPORT is used to suspend a uucico, UUPORT must be invoked a second time to reactivate the sleeping uucico.
The full list of options supported by uucico is as follows:
-d hhmm Duration. This flag specifies that uucico running in passive mode will terminate after hh:mm (hours and minutes). Note that this is a duration, not an end time.
Note: This flag replaces the execute period flag (-u) in previous versions of uucico.
-g grade Call grade. If specified for an outbound poll, only files of this grade or higher are requested from the remote system. This option is ignored if the -r 0 option is specified or implied.
-h handle Under OS/2 or Windows NT, specifies that the indicated file or socket (OS/2 only) has been opened on behalf of uucico by the calling program and that uucico is to use this handle rather than opening a new port or socket. Under DOS, this parameter implies the port is already open, but the actual handle operand is ignored. This option implies the -r 0 option and is modified by the -z and -w options.
-l logname Specifies the name of the log file used by uucico. The default extension is ".LOG" and the default log file is uucico.LOG.
-m inmodem Specifies the name of the modem file to use for passive polling. This flag implies the -r 0 flag. The default is to use the value of the UUPC.RC variable InModem.
-r 0 Slave Mode: initializes the modem and waits for the telephone to ring with an incoming call, presenting the caller with a UNIX style login prompt. This option is modified by the -d, -w, -x, and -z options.
-r 1 Master Mode: actively poll (call out to) the system defined by the -s option. This option is the default, and is modified by the -n and -s options.
-n Call now flag: when specified, uucico ignores the time fields defined in the SYSTEM file when determining if a system should be called, and treats all systems as if they were defined with a time of "any".
-s sysname System name to call. Default is to call "any"— any system for which the local system has work queued. Sysname may also be specified as "all", which calls all systems listed in the SYSTEMS file, or as the name of any system listed the SYSTEMS file. This option is ignored when -r 0 is specified.
-t Trace all data sent or received through communications port to file LINEDATA.LOG in the spool directory.
Note: Routine use of this option is not recommended as it will rapidly fill your hard disk with debugging output.
-U specifies that uuxqt is to be executed on the completion of such successfully connection.
-w who Begin processing in slave mode as if user who had just logged in. This option is for use when another program has answered the modem and validated the user id. It implies the -r 0 option and is modified by the -z option.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use, or as high 20 for detailed debugging.
Note: Use of debug level 5 or higher for extended periods of time is not recommended as it will rapidly fill your hard disk with debugging output.
-z bps Set modem speed to bps bits per second when used with -w option. The default speed is the speed listed in the modem definition file defined in the UUPC.RC variable InModem. This option is ignored if -w is not specified.
Exit codes
uucico exits with a status of 0 if it manages to successfully connect to at least one remote machine while it was running.
Other exit codes and their meaning:
5 A normal exit, but uucico never connected to any remote sites.
69 The program aborted due to a panic situation.
100 The user pressed Ctrl-C to terminate uucico.
Files
BANNER Optional login banner file, displayed to all remote users before the login prompt is displayed. (Defined by the configuration variable Banner in the UUPC.RC file)
[ConfDir]/[modem].MDM Defines modem specific information for initializing and resetting modem, and selected performance parameters.
[ConfDir]/[userid].RC Personal UUPC/extended configuration file, defined by UUPCUSRRC environment variable set in AUTOEXEC.BAT.
[ConfDir]/HOSTATUS File with summary of file transfer volume and last connection information
[ConfDir]/PASSWD Defines valid users, their passwords, and program to execute upon login.
[ConfDir]/PERMISSN Defines file access for remote systems
[ConfDir]/SYSTEMS Defines systems this system can call, and associated dialing information
[ConfDir]/UUPC.RC System UUPC/extended configuration file, defined by UUPCSYSRC environment variable set in AUTOEXEC.BAT.
MOTD Optional Message of the Day file, displayed upon remote login to all users not running default (internal uucico) shell. (Defined by MOTD keyword in UUPC.RC file.)
[SpoolDir]/hostname/C/* Call files defining what files are to be transferred to or from host hostname.
[SpoolDir]/hostname/D/* files spooled for transfer by uucico to hostname, and remote data files sent from hostname for processing by uuxqt.
[SpoolDir]/hostname/X/* Execute files received by uucico defining commands to be executed on the local system by uuxqt.
[SpoolDir]/SYSLOG Detailed log of all file transfers. Written if Boolean option syslog is enabled.
[SpoolDir]/uucico.LOG Default location of uucico log file.
Bugs
Special care should be taken to enable the Boolean option multitask in UUPC.RC if multiple copies of uucico may be running at the same time.
Connections with 'g' protocol to real UNIX systems fail in mysterious ways (generally, at the end of the first file transfer) if the Boolean modem option variablepacket is set in the [modem].MDM file. This actually happens because most UNIX vendor's UUCP programs don't fully implement the protocol options, but UNIX sysadmins normally blame UUPC/extended.
Connections with 'f' protocol over modems are very prone to failure because the 'f' protocol assumes a reliable, flow-controlled transport layer.
On UNIX systems, the default for uucico is -r 0 (wait to be called) rather than -r 1 (call out). uucico -r 1 is a more reasonable default for a PC, but might be unexpected for a UNIX expert.
Under Windows 3.x, only one copy of uucico can be run at a time because the program has multiple read/write data segments. This restriction does not exist for the native OS/2 or Windows NT versions. (Hint, hint.)
Under Windows 3.x, uucico running in background and doing disk I/O can adversely affect foreground system performance, causing the keyboard to appear to lock up for a second or two. (This sentence was typed when uucico was dishing out such abuse.)
Under Windows 3.x, uucico must be killed with Ctrl-C typed into its console window. Closing uucico with the mouse, Alt-F4, or Close menu item will only cause the window to pop up elsewhere the next time a message is written.
DECUS UUCP 1.1 won't exchange protocol information with UUPC/extended. A fix for DECUS UUCP 1.1 was posted to the net, and the bug is also fixed in version 1.2.
UUPC/extended forces communications to No Parity, 8 data bits, 1 stop bit, no in-band flow control.
Note: This is a requirement of the UUCP "g" protocol, which requires a transparent data line, and thus is a permanent restriction for "g" protocol connections.
If uucico is suspended, woken up, and suspended again immediately, the second suspend may fail because uucico has not finished reinitializing the modem yet.
If for some reason uucico is not woken up after being suspended (if, for example, the suspending program crashes), the suspended uucico will do a Rip Van Winkle and sleep forever. It must be killed or manually woken up using UUPORT.
Named pipes under OS/2 are incredibly inefficient, with low throughput (~2K-4K bytes per second on a loop back to the local system with 'e' protocol) and high CPU usage. It is unclear if this is a uucico bug or lossage in the operating system itself.
uucico uses operating system messages when possible for operating system API errors (such as communications port errors) under OS/2 and Windows NT. However, it does not perform parameter substitution, meaning percent signs (%) followed by a single numeric digit may show up in error message texts.
Under OS/2, uucico runs at a raised priority to improve throughput. While this has no noticeable impact on response time with the IBM serial port driver, the publicly available SIO.SYS driver may take sufficient CPU time to affect interactive response time. The Priority keyword in the [modem].MDM file can be used to adjust the uucico priority under OS/2.
uucico for OS/2 will fail upon startup with a mysterious message about a not being able to find a file (actually, a DLL) if TCP/IP or the IBM Internet Access Kit (IAK) is not installed. This can be corrected by using UUCICION instead.
Under Windows NT, Ctrl-C does not work correctly when breaking UUCICO out of a network connection. You will eventually get out, but you may have to press ^C and say yes a couple of times.
See Also
uupoll, UUCPD, UUIO, uuxqt, RMAIL, UUPORT, and RNEWS
Synopsis
See uucico, above
Availability
OS/2 only
Description
The standard version of uucico for OS/2 requires various dynamic link libraries (DLL) for TCP/IP, even if you are not using TCP/IP based connections, and will fail if these libraries are not available. uucicon is a version of uucico which does not require that either IBM TCP/IP (2.0 or above) or the IBM Internet Access Kit (IAK) be installed.
In general, to use this version, rename it to uucico:
ren uucico.exe
uucicot.exe
ren uucicon.exe uucico.exe
Bugs
If the TCP/IP libraries in question were dynamically loaded by the program (a la C-kermit for OS/2), we could actually dispense with the second module and internally disable the TCP/IP support if the libraries are not available. However, given that IBM now gives the libraries away with every copy of OS/2, the work does not seem to be worth the effort.
See Also
uucico
Synopsis
uuclean [spooldir [tempdir]]
Availability
MS-DOS and Windows NT (batch file)
OS/2 (REXX script)
Description
UUCLEAN ages log files through five generations and clears old UUPC/extended temporary files from the spool and temporary directories. Under OS/2, UUCLEAN also executes UNDELETE to purge these files and other spool files from the OS/2 undelete cache. UUCLEAN must be executed when programs which create log files (uucico, uuxqt, and RMAIL) are not running.
Note: Under DOS and Windows NT, UUCLEAN does not clean log files created with non-standard names via use of the uucico log file (-l) flag.
The syntax of the UUCLEAN command is:
uuclean [logdir [spooldir [tempdir]]]
Where:
logdir Specifies the UUPC/extended log directory to clean. The default is \uupc\log on the current drive.
spooldir Specifies the UUPC/extended spool directory to clean. The default is \uupc\spool on the current drive.
tempdir Specifies the temporary directory to clean. The default is the value of the TEMP environment variable.
Note: Because UUCLEAN is a batch file under DOS and Windows NT, it does not examine UUPC.RC. Therefore, the batch file must be edited if you do not use the default directory structure and do use UUCLEAN.
Note: tempdir is a positional argument. If you want to specify tempdir, you must also specify spooldir.
Synopsis
UUIO [uucico options]
Availability
DOS, OS/2, Windows/NT
Description
UUIO is a batch file which executes UUSTAT -q and uucico followed by uuxqt. All UUIO command line arguments are passed to uucico. No user arguments are passed to UUSTAT or uuxqt.
Note: The UUSTAT command can be deleted from the UUIO command file with no loss of function. It is included for the informational display only.
See uucico on page 82, above, for a description of the command line arguments.
See Also
uucico, UUSTAT, uuxqt, uupoll
Synopsis
uucp [ -cCdfjmr ] [ -ggrade
] [ -nusername ][ -x debug] srcfile system!destfile
or
uucp [ -cCdfjmr ] [ -ggrade ] [ -nusername
][ -x debug] system!srcfile destfile
Availability
MS-DOS, OS/2, and Windows NT
Description
UUCP queues binary or text files for transfer between two or more directly connected systems. The basic UUCP command syntax is:
uucp srcfile
system!destfile or
uucp system!srcfile destfile
The first example copies a local file (srcfile) to a remote host (system) as destfile. The second example copies a file (srcfile) on a remote host (system) to the local file destfile. Filenames may be specified as an absolute path name, relative to a user's home directory (~user/file), or a path relative to the UUCP public directory (~/name). Systems may also be specified as a list of names such as system1!system2!...!destsystem!destfile, in which case the file is sent to the destination by way of the specified route.
Note: On most systems, access will be severely restricted. Check with a user or system administrator on the intermediate and destination systems before transferring files to possibly restricted locations.
Note: Beginning with UUPC/extended version 1.12e, multi-hop UUCP and uux transfers are supported. Because of the resulting system security exposure, the uucico program now validates all file transfer requests from outside the spool directories using the PERMISSN file. Before it only validated requests from the remote system and did not validate requests which were queued by the local system. Unless, according to the PERMISSN file, uucico can read the directory a file is queued from, the UUCP command must be used with the -C option to copy queued files to the spool directory. Otherwise, a remotely queued UUCP command could be used to steal your entire disk ... a Bad Thing.
UUCP accepts the following command line options:
-C Make a copy of outgoing files in the UUCP spool directory, rather than copying the source file directly to the target system. This lets you remove the source file after issuing the UUCP command.
-c Use the source file when copying out rather than copying the file to the spool directory. This is the default.
-d Make all necessary directories for the file copy. This is the default.
-f Do not make intermediate directories for the file copy.
-g grade grade is a single letter or number, from 0 to 9, A to Z, or a to z; 0 is the highest grade, and z is the lowest grade. Lower grades will cause the job to be transmitted earlier during a particular conversation. The default grade is n. By way of comparison, uux defaults to A; mail is usually sent at grade C.
-j Output the job identification ASCII string on the standard output. This job identification can be used by UUSTAT to obtain the status or terminate a job.
-m Send mail to the requester when the copy is complete.
-n username Notify username on the remote system (that is, send username mail) that a file was sent.
-r Do not start uucico, just queue the job. This is the default, and the option exists only for UNIX compatibility reasons.
-x debug Display debug messages at or below level debug. The default value is 1. The option may set to 0 for unattended production use, or as high 20 for detailed debugging.
For additional information on the UUCP command, see chapter 2 of Using & Managing UUCP.
Bugs
Access checking is not as severely enforced as it would be on a true UNIX system, particularly for locally originated UUCP commands.
See Also
MAIL, UUSTAT, uux, uucico, uuxqt.
Synopsis
uucpd socketNumber
Availability
OS/2 only; IBM TCP/IP support required
Description
UUCPD is a batch script that allows UUPC/extended to be invoked as a service from the OS/2 TCP/IP program called inetd. With inetd, you will not need to invoke a copy of uucico to wait on a network port when your machine boots up -- inetd will automatically invoke uucico when one of your network neighbors attempts to connect to you.
To configure inetd to invoke uucico when a remote host tries to connect on the UUCP network port, add the following line to the %ETC%\INETD.LST file:
uucp tcp uucpd
Otherwise, configure UUPC/extended as you normally would.
Note: inetd is only included in the full TCP/IP 2.0 package and Warp Connect, not in the Internet Access Kit (IAK) supplied with OS/2 Warp.
The UUCPD script takes one argument -- the handle number of the socket on which the network conversation is conducted.
Note: This command will not work unless it is invoked by inetd. Other attempts to use it will result in network errors.
Bugs
Since the associated uucico is run in the same session as the INETD, the window name tends to get mangled. Changing the uucico command in the UUCPD script to a START command will correct the problem, but doing so entails a perform hit, and who cares what the task switcher reports as the name of INETD, anyway?
Synopsis
uuhour
Availability
OS/2
Description
uuhour generates dummy jobs via uustat based on times listed in the POLL file. uucico can then be invoked to call only those systems with work (including dummy jobs), which tilts polling towards those systems which have not been recently contacted.
Note: This program is not run automatically; it must be regularly invoked via the -B option of uupoll or other method to be effective.
Note: uuhour remembers the last time it was run, and if the previous run was since the beginning of the current hour, it exits with an informational message.
Options
uuhour does not accept any command line options.
Bugs
The program should be ported to C and made available on all the UUPC/extended platforms.
See Also
uucico, uupoll, uustat
Synopsis
uuname [-l | -d ] [-x debug]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
UUNAME reports names of the remote systems defined to UUPC/extended via the SYSTEMS file or the local system name (nodename) defined in UUPC.RC.
The syntax of the UUNAME command is:
uuname [-l | -d ] [-x debug]
Where:
-d reports the local domain name.
-l reports the local system name.
-x debug Display debug messages at or below level debug. The default value is 1. The option may set to 0 for unattended production use, or as high 20 for detailed debugging.
By default uuname reports all the defined remote systems.
Bugs
Too stupid to have any.
Synopsis
uupoll [-r 0 | 1] [-f firsttime]
[-i hhmm] [-d hhmm] [-e hhmm] [-c hhmm] [-l logfile]
[-m modem]
[-B batchfile] [-C command]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
uupoll allows unattended operation of the PC, automatically running uucico on a timed basis. Each time uupoll invokes uucico, it also automatically runs uuxqt to process any files received by uucico.
To use uupoll to have uucico call out on a regular basis:
uupoll -f 0240 -i 0600
This will cause uucico to call out at 2:40 A.M. and every six hours thereafter until the user presses Ctrl-Break. Both flags are specified as hhmm (hours and minutes).
To use uupoll to have uucico call out on a regular basis, and automatically answer the telephone between outgoing calls:
uupoll -f 0240 -i 0600 -r 0
This will cause uucico to call out at 2:40 A.M. and every six hours thereafter until the user presses Ctrl-Break, and in addition uucico will be invoked in passive mode to answer the telephone between outgoing calls.
The full list of arguments allowed by uupoll are as follows:
-a hhmm Automatically call system "any" after each successful incoming poll if hhmm seconds have passed since last active poll. This option allows mail delivered by incoming systems to be automatically forwarded if the local system is allowed to call the destination system. The delay time may be specified as 0, in which case uucico will call system "any" after every successful incoming telephone call. This option has no effect unless -r 0 is specified.
-B command Batch command to execute before each active call at -i hhmm intervals. Default is to execute no commands before calling out.
-c hhmm Time of day to execute UUCLEAN to clean the spool directory in hours and minutes. The default is don’t run UUCLEAN daily.
-C command Command to run to clean spool directory at time specified by -c flag. The default is run the UUCLEAN command with no operands.
-d hhmm Duration of polling in hours and minutes. If the exit (-e) flag is not specified, then after this period uupoll exits. If neither -d or -e is specified, the default is poll until the user presses Ctrl-Break.
-e hhmm Time of day that uupoll is to exit. If neither -d or -e is specified, the default is poll until the user presses Ctrl-Break. If the specified time has already passed and the duration (-d) flag is not specified, then uupoll immediately exits. If the duration flag is specified, then uupoll will poll if and only if the exit time (-e hhmm) would be reached before the duration (-d hhmm) expires. In any case, uupoll will exit no later than the time specified by the exit time.
Example: uupoll -e 2400 -d 2400 will always run until the next midnight, but uupoll -e 300 -d 1200 will exit immediately if it is more than 12 hours before 3 AM (that is, the current time is before 3 PM).
-f hhmm First time to poll in hours and minutes. Default is to not actively poll unless the user specifies an interval via -i, in which case the default is the current time plus the interval.
Note: uupoll automatically determines when it is later than the specified first poll time and selects the available next time to poll. If it is desired for uupoll to poll 24 hours a day, then the first poll time should be specified as close to the previous midnight as possible.
If, for example, the system is to poll at 6:13 AM, 2:13 PM, and 10:13 PM, uupoll must be invoked with:
uupoll -i 0800 -f 0613
Even if it is after 6:13 AM.
-i hhmm Interval to poll in hours and minutes. Default is 0400 (4 hours) if -f is specified.
-l log log file name to pass to uucico.
-m modem modem name to pass to uucico for inbound calls.
-r 0 Directs uucico to answer telephone between active polls. Default is to not answer the telephone.
-r 1 Directs uucico not to answer the telephone, but to actively poll after the interval specified with -i.
-s system System name to call. Default is "all" for the first poll, followed by "any" for succeeding polls, which cannot be explicitly specified.
-x debug Debug level passed to uucico and uuxqt. Default is 1.
Note: Either -r, -i, or -f must be specified.
Note: For additional information on the -l, -m, -s, -x, and ‑r options, see the description of uucico on page 82, above.
Note: If you specify both the -r 0 and either the -f or -i options, the effect is to have uucico invoked to answer the telephone between the active polls defined by the -f or -i options.
Exit codes
uupoll exits with a status of 0 if it ran, carried out its work, and exited without encountering any problems.
Other exit codes and their meaning:
69 The program aborted due
to a panic situation.
100 The user pressed Ctrl-C to terminate uucico.
Bugs
Polls after 2 AM on the day when daylight savings time begins or ends in the US will be off by one hour. This is due to the way that uupoll handles (or fails to handle) days that are not 24 hours long. uupoll will not attempt to poll during the 25th hour of such days, instead waiting for the first poll of the next day.
Send mail from a UUPC/extended user mailbox to a POP3 client over a TCP/IP network.
Synopsis
UUPOPD [-d hhmm] [-g grade] [-h handle] [-l logname] [-U] [-x debug]
Availability
OS/2 32 bit and Windows NT only
Description
The UUPOPD daemon listens on the well-known TCP/IP POP3 port for network clients such Netscape Navigator and Microsoft Internet Explore. Clients can connect as a specified user and then query, retrieve, and delete messages from the standard UUPC/extended user mailbox. The daemon uses round-robin scheduling to process multiple connections on a single program thread.
Note: For a user to make use of the UUPOPD daemon, he/she/it must have a non-null password defined in the PASSWD file, and have a group entry of “pop3”. The same user id cannot be used for both UUCICO and UUPOPD, to discourage assword hacking attempts.
The options for the UUPOPD command are:
-d hhmm Duration. This flag specifies that UUPOPD running in passive mode will terminate after hh:mm (hours and minutes). Note that this is a duration, not an end time.
-g grade This is for compatility with the UUSMTPD daemon, which this program shares components with. It is silently ignored if specified.
-h handle Under OS/2 or Windows NT, specifies that the indicated file or socket (OS/2 only) has been opened on behalf of UUPOPD by the calling program and that UUPOPD is to use this handle rather than opening a new port or socket.
-l logname Specifies the name of the log file used by UUPOPD. The default extension is ".LOG" and the default log file is UUPOPD.log.
-p port The port name or number to use. The default is the port defined as the POP3 port (110).
-U This is for compatility with the UUSMTPD daemon, which this program shares components with. It is silently ignored if specified.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use, or as high 20 for detailed debugging.
Files
To Be Determined.
Bugs
Internally, the round robin scheduler can lead to delays for connections if expensive operations such as host name lookups or retrieving a long message take excessive time. This is balanced by faster response under moderate loads in normal use.
Hitting Ctrl-Break under Windows NT gives an immediate response from the daemon, but it then takes until the end of the time-out period of the network select call to actually exit.
The server only supports clear text password authorization, making it prone to Network sniffer attacks.
See Also
RMAIL, UUSMTPD, MAIL, PASSWD
Author
Written over a period of three days by Drew Derbyshire of Kendra Electronic Wonderworks and released with UUPC/extended 1.12v in March, 1998.
Communicate with background uucico to surrender communications port.
Synopsis
uuport [-s | -r] port
Availability
OS/2 and Windows NT only (also in DOS or Windows OS/2 compatibility box)
Description
UUPORT contacts an already running uucico via a named pipe and requests the uucico to surrender or resume use of the communications port specified. This allows another program to use the port without canceling and restarting the uucico using the port by hand. This command also works if UUPORT is run from an OS/2- or Windows NT-spawned DOS or Windows 3.x environment, provided the target is a native OS/2 or Windows NT uucico invocation. UUPORT is harmless under native DOS or Windows 3.x, but doesn't do anything useful.
The syntax of the UUPORT command is:
uuport [-s | -r] port
where:
-s surrender the port.
-r resume use of the port.
Note: If both the -s and -r flags are omitted, the current status is queried but left unchanged.
port The port name to process.
Files
\PIPE\uucico\ZZport pipe
for contacting local background uucico under
OS/2
\\.\PIPE\uucico\ZZport pipe
for contacting local background uucico under
Windows NT
\\servername\PIPE\uucico\ZZport pipe
for contacting networked background uucico
Bugs
If the DOS or Windows 3.x version of UUPORT is run to talk to a native Windows NT uucico, then the UUPORT command line must specify the server name: "\\.\port".
See uucico for additional problems and caveats.
See Also
uucico, uupoll
Author
Kai Uwe Rommel for OS/2, with the usual additional hacking by Kendra Electronic Wonderworks.
Dave Watt did the associated support in uucico for the Windows NT version.
Receive Mail via a TCP/IP network from a Simple Mail Transfer Protocol (SMTP) Mailer
Synopsis
uuSMTPD [-d hhmm] [-g grade] [-h handle] [-l logname] [-U] [-x debug]
Availability
OS/2 32 bit and Windows NT only
Description
The UUSMTPD daemon listens on the well-known TCP/IP SMTP port for network clients sending mail. It uses round-robin scheduling to process multiple connections on a single program thread. Any mail received from network clients is queued for local or remote delivery using an internal copy of the same back-end delivery engine used by RMAIL.
Note that you must configure clients to point to the mailer, either via MX records in your domain name server and/or by configuring desktop clients such as Netscape or Internet Explore to use the server running UUSMTPD as their server.
The options for the UUSMTPD command are:
-d hhmm Duration. This flag specifies that uuSMTPD running in passive mode will terminate after hh:mm (hours and minutes). Note that this is a duration, not an end time.
-g grade Specifies the mail grade used for remote mail queued by the delivery back-end.
-h handle Under OS/2 or Windows NT, specifies that the indicated file or socket (OS/2 only) has been opened on behalf of uuSMTPD by the calling program and that uuSMTPD is to use this handle rather than opening a new port or socket.
-l logname Specifies the name of the log file used by uuSMTPD. The default extension is ".LOG" and the default log file is uusmtpd.log.
-p port The port name or number to use. The default is the port defined as the SMTP port (25).
-U specifies that uuxqt is to be executed on the completion of each successfull connection.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use, or as high 20 for detailed debugging.
Files
To Be Determined.
Bugs
Internally, the round robin scheduler can lead to delays for connections if expensive operations such as host name lookups take excessive time. This is balanced by faster response under moderate loads in normal use.
Hitting Ctrl-Break under Windows NT gives an immediate response from the daemon, but it then takes until the end of the time-out period of the network select call to actually exit.
It takes too long to close down a connection from Netscape clients, it appears Netscape does not properly put a CR/LF on the end of the QUIT command.
The server claims to support ESMTP, but has a relatively small feature set.
The server does not perform checks of sender domains well, thus allowing more unsolicited e-mail (SPAM) through than is desirable.
The server delivery engine is specifically configured to not use the immediate SMTP delivery mode enabled by the Boolean option fastsmtp. Such immediate delivery attempts would have an adverse affect on the daemon response time to clients.
See Also
RMAIL
Author
This was written from scratch (except for the delivery engine) in two major periods of activity in late Spring and late Autumn of 1997 by Drew Derbyshire of Kendra Electronic Wonderworks for inclusion beginning with release 1.12t of UUPC/extended.
Synopsis
uustat
[-a] [-m] [-q] [ -k jobid ] [ -r jobid ] [-x debug]
uustat [ -s system] [ -u user] [-x
debug]
uustat [ -P system] [-x debug]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
UUSTAT will display the status of, or cancel, previously specified uucp commands, or provide general status on uucp connections to other systems. Only one of the following options can be specified with UUSTAT per command execution:
-a List all jobs in queue.
-m Report the status of accessibility of all machines.
-q List the jobs queued for each machine. If a status file entry exists for the machine, its date, time and status information are reported. In addition, if a number appears in parentheses next to the number of C or X files, it is the age in days of the oldest C/X file for that system.
Note: For systems with a large number of outstanding jobs, this command could take 30 seconds or more of real-time to execute.
-k jobid Kill the uucp request whose job identification is jobid.
-r jobid Rejuvenate expired job jobid. The files associated with jobid are touched so that their modification time is set to the current time.
Note: The refresh option hasn't yet been fully implemented, but that's okay because job expiration doesn't happen either.
-P system Create a poll work file. This empty call file causes system to be called every time uucico is invoked with the "-s any" option until the system is contacted.
-P all Create poll work files for all systems.
Any or all of the following options can also be specified with UUSTAT:
-s sys Report the status of all uucp requests for remote system sys.
-u user Report the status of all user requests issued by user.
-x debug Display debug messages at or below level debug. The default value is 1, but the option may set to 0 for unattended production use, or as high 20 for detailed debugging.
When no options are given, UUSTAT outputs the status of all uucp requests issued by the current user.
Note: Poll files created by the current user with the -P option are not displayed unless the -s or -a options are used.
Returns
Exits with a status of 0 upon successful completion of its task.
Other exit status code and their meaning:
1 Bad usage.
2 stat(), open(), access(), or utime() call failed.
3 fopen() failed or file pointer was NULL .
4 An internal problem, usually with file access.
69 The program aborted due to a panic situation.
100 The user typed Ctrl-C.
Files
/uupc/spool/system/C/* Command
Files for host "system"
/uupc/spool/system/D/* Data files
/uupc/hostatus System status summary file
Bugs
The Retry and Count features shown by UNIX systems are not implemented since UUPC/extended doesn't implement STST.system files where some of the needed information would come from.
Work poll files are created with class Z, which is what SunOS 4.1.3 uses for poll files. This behavior may not be desirable if the local system exploits call grading to process only classes above Z.
UUSTAT does not actually refresh times with the -r option.
The time reported by UUSTAT for each system is the time the local system last connected to the remote system, not the time of the last attempt as in UNIX versions of UUSTAT. This behavior is both for historical reasons and because the author thought it was more useful. UUSUB can be used to view the time of the last attempt.
Poll work files (generated with the -P flag) are not shown in a per user display.
See Also
UUCP, uucico, UUSUB
History
Originally Written Using MSC 3.0, MASM 2.0, April 1988
Ported to UUPC/extended with Borland C++ 2.0 and MS C 6.0, June 1991.
Copyright
Copyright © 1988, Dewey Coffman
Changes Copyright © 1991-2001, Kendra Electronic Wonderworks
Synopsis
uusub [-x debuglevel] [-c] [-s system]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
UUSUB reports statistics on the data transmitted between the local and remote systems since the last time the file HOSTATUS in the UUPC/extended spooling directory was created. UUSUB is invoked with no operands to report these statistics:
uusub
The syntax of UUSUB is:
uusub [-x debuglevel] [-c] [-s system]
Where:
-c Clears (resets) the totals.
-s sysname System name to report on or to clear. The default is report on or clear all known systems.
-x debug Display debug messages at or below level debug. The default value is 1. The option may be set to 0 for unattended production use, or as high 20 for detailed debugging.
See Also
UUSTAT, UUCICO, and UUNAME
Synopsis
uutraf [options] [statfile | - ]
Availability
MS-DOS, Windows 3.x, OS/2, and Windows NT
Description
UUTRAF analyses the UUPC/extended SYSLOG file and reports transfer statistics using a default sorting format or an optional user-specified sorting format.
The syntax of the UUTRAF command is:
uutraf [options] [statfile | - ]
Where:
statfile optional file to read input from. The default is the Spooldir SYSLOG file. A hyphen (-) causes UUTRAF to take input from stdin.
-a sort in ascending order, rather than descending.
-b[r|x|b] sort by number of bytes Received, transmitted(X), or Both.
-c[r|x|b] sort by transfer rate Received, transmitted(X), or Both.
-f[r|x|b] sort by number of files Received, transmitted(X), or Both.
-H include the header lines for restricted report forms.
-h Display a more verbose help message
-M merge per-port sub-totals for each node. This option implies the setting of -N.
-N restrict the report to the nodes (sites) summary.
-n sort by name (overrides following options).
-P restrict the report to the ports summary.
-S restrict the report to totals summary.
-s take the input from stdin rather than a file.
-t[r|x|b] sort by connect time Received, transmitted(X), or Both.
-V display version identification information
Examples
uutraf -bb will display the total bytes transferred, in descending order. (This is the default.)
uutraf -cx will display the connections with the fastest transfer rates, in descending order.
uutraf -tba will display the connections by total amount of transfer time, in ascending sort order.
Bugs
UUTRAF is not supported under Windows because the Borland C++ for Windows library is missing a floating point error handling function, and so the program won't link. Snuffles is deeply annoyed by this...
Multiple sorting options may not work as you would hope, and the sorting option syntax goes against de-facto rules for option syntax.
The -s option is redundant. ('-' is also valid) The -H option alone does nothing with the standard defaults (it is the default!). The -M option alone does imply -N but does not automatically supplement the standard defaults.
There is no header part in the totals summary, and no way to get the descriptive text to go away leaving only the numbers.
The field widths and formats are all fixed.
Transfer times alone do not necessarily reflect true port utilization.
Some versions of uucico skew transfer times and transfer rates by not resetting their timers at the appropriate point. In this case, and in the case where the sender must wait for a slow receiver to checksum the data before completing the job, the transfer rates will not be representative of the low-level throughput on the port. Modems that spoof UUCP protocols and/or contain large buffers will also skew these figures.
Authors
Greg Hackney <hack@texbell.swbt.com> - wrote the
original.
Greg A. Woods <woods@robohack.uucp> - wrote the dist library, added new
features.
Contributors
Doug Davis <doug@letni.uucp>, David Butler <gdb@ninja.uucp>, Bud Hovell <bhh@whizz.uucp>, David Kaelbing <drk@igor.uu.net>, Joe Garvey <garvey%cmic@mips.com>, D'Arcy Cain <darcy@druid.com>, Georg S. Nikodym <georgn@noweh.com>, Bill Duncan <bduncan@ve3ied.uucp>, Robert Story <rstory@elegant.com>, Kai Uwe Rommel
Synopsis
uux [ - ] [ -bcCjnprz ] [ -a name ] [ -g grade][ -x debug] command-string
Availability
MS-DOS, OS/2, and Windows NT
Description
The uux command queues commands for execution on remote systems. It is used by other facilities, such as news functions and the UUCP command, to handle processing more complex than simple file transfers. uux will gather 0 or more files from various systems, execute a command on a specified system and send the standard output to a file on a specified system.
Note: For security reasons, most installations severely limit the list of commands executable on behalf of an incoming request from uux, permitting only the receipt of mail. Check with a user or system administrator on the target systems before attempting to use this command.
The command-string is made up of one or more arguments that look like a command line, except that the command and file names may be prefixed by system-name!. A null system-name is interpreted as the local system.
Any special characters such as <>, ;, and | should be quoted either by quoting the entire command-string, or by quoting the special characters as individual arguments.
uux will notify you if the requested command on the remote system was disallowed, or if the command fails (that is, returns a non-zero exit status). This notification can be turned off by the -n option. The response comes by remote mail from the remote machine.
uux accepts the following options:
- sends the standard input to the uux command as the standard input to the command-string.
-a name Use name as the user identification replacing the initiator user ID. Notification will be returned to this user.
-b Return whatever standard input was provided to the uux command if the job fails (that is, returns a non-zero exit status).
-c Do not copy local file to the spool directory for transfer to the remote machine. This is the default.
-C Force the copy of local files to the spool directory for transfer.
-e Remote system should use /bin/sh to execute the command.
-E Remote system should use the exec call to execute the command.
-g grade grade is a single letter or number, from 0 to 9, A to Z, or a to z; 0 is the highest grade, and z is the lowest grade. Lower grades will transmit the job earlier during a particular conversation. The default grade is A.
-j Output the jobid ASCII string on the standard output. This job identification can be used by UUSTAT to obtain status information or terminate a job.
-n Do not return any indication by mail of success or failure of the job.
-p Same as '-': the standard input to uux is made the standard input to the command-string.
-r Do not start uucico, just queue the job. This is the default, and the option exists for UNIX compatibility reasons only.
-x debug Display debug messages at or below level debug. The default value is 1. The option may set to 0 for unattended production use, or as high 20 for detailed debugging.
-z Return an indication by mail even if the job succeeds (that is, returns a zero exit status).
See Also
MAIL, UUCP, UUSTAT, uucico
For additional information on the uux command, see chapter 3 of Using & Managing UUCP.
Bugs
uux interaction with uuxqt is ill-defined, and uuxqt tends to be paranoid about command line arguments because of the inherent lack of security in most supported operating systems.
Synopsis
uuxqt [-x debuglevel] [-s system]
Availability
MS-DOS, OS/2, and Windows NT
Description
uuxqt must be executed to process remote files after uucico has received these files from a remote host. It normally is invoked with no operands:
uuxqt
This will automatically process all eXecute files in the local spool queues with the default debugging level in effect.
uuxqt supports the following command line options:
-s sysname Process work only for sysname. The default is system "all", which processes work for all known systems.
-x debug Display debug messages at or below level debug. The default value is 1. The option may be set to 0 for unattended production use, or as high 20 for detailed debugging.
To automatically execute uuxqt every time uucico is run, use uupoll or UUIO.
Bugs
None known.
Synopsis
waiting [userid]
Availability
MS-DOS and Windows NT (batch file)
OS/2 (REXX script)
Description
The WAITING command reports on which users have mail waiting in the UUPC/extended mail directory. It exits without comment if no mail is waiting.
Note: Because WAITING is a batch file under DOS and Windows NT, it assumes the mail directory is \uupc\mail on the current drive. The file must be edited by hand if this is not the directory for system mailboxes.
Note: This command is more effective if the multitask option is specified in the UUPC.RC file, as then mail is moved out of the system mail directory as soon the user invokes the MAIL command after new mail arrives.
The syntax of the WAITING command is:
waiting [userid]
Where:
userid defines the userid to check for waiting mail. The default is all users.
Bugs
WAITING assumes the extension of mailbox files is SPB.
WAITING does not support the directory option, which would require looking in subdirectories for the waiting mail.
“The sendmail configuration file is one of those files that looks like someone beat their head on the keyboard. After working with it... I can see why!”
-- Harry Skelton
This section describes the UUPC/extended configuration files. It assumes you have installed the programs and configured them as described in Part 2: Basic UUCP Installation, page 11, and that you have access to the Nutshell Handbook Using & Managing UUCP.
The UUPC.RC file provides the basic configuration information required to initialize the various UUPC/extended programs. It provides information which applies to the entire local system. It can also provide defaults for individual users. These defaults can then be overridden by the values in each user's [userid].RC file[49].
Blank lines and lines beginning with a pound sign (#) are ignored. Entries in the file are of the form:
prefix.keyword=value
If multiple lines exist with the same keyword, the last line is used. An exception to this rule is the options= line; if multiple options= lines exist, the options are processed individually and the last occurrence of each option is used.
The prefix is optional, and if present must be:
1. DOS,
2. 32BITOS2 (for OS/2 2.x),
3. 16BITOS2 (for OS/2 1.x),
4. WIN16 (for Windows 3.x),
5. WIN32 (for Windows NT or Windows 95/98)
6. WIN9X (for Windows 95/9x)
7. WINNT (for Windows NT)
and must be followed by a period. Case is not significant for the prefix or keyword. If the prefix is present, the line is only used if the current environment matches the keyword. This allows multiple lines in the same configuration file for different environments, such as:
DOS.Editor=edit %s
OS2.Editor=epm %s
WIN16.Editor=notepad %s
WIN32.Editor=notepad %s
This allows the use of three different editors in four different environments. This could also be specified as:
Editor=notepad %s
DOS.Editor=edit %s
OS2.Editor=epm %s
In the latter example, the program notepad is the editor specified for all environments, but it is superseded for both the DOS and OS/2 environments.
Note: If the DOS versions of UUPC/extended programs are invoked under OS/2 or Windows NT, they will use the DOS environment keywords rather than attempting to determine the native environment.
The fields are described in Table 13 - User/System Configuration Keywords and Table 14 - System Wide Configuration Keywords below as being of several types, most of which are self-explanatory. Of special note, however, are fields described as tokens, path names or file names. Tokens are single words with no spaces. Any tab or space terminates the value. As for path and file names:
Path and file names must be valid names under the host operating system.
Path and file names without drive letters are presumed to reside on the same drive as the UUPC/extended configuration directory.
Slashes (/) and back slashes (\) are considered equivalent in paths. Back slashes are translated to slashes internally and translated back when opening files and for external commands such as editors.[50]
Relative path and file names (except for those listed in the next paragraph) are presumed to be relative to the UUPC/extended configuration directory.
The files defined by Aliases, AltSignature, and FileSent fields are assumed to be relative to the user's home directory. In addition, only these files may use the ~userid convention defined for files in MAIL, page 61.
Table 13 - User/System Configuration Keywords lists valid fields for the UUPC.RC or [userid].RC file. They are normally placed in the UUPC.RC if applicable to all users of local system, and otherwise put in each [userid].RC file as needed. The word omitted in the Example column indicates that most users will not need to worry about (or change) the field.
Table 13 - User/System Configuration Keywords
|
Keyword |
Type |
Description |
Default[51] |
Example[52] |
|
Aliases |
File name |
This keyword is Obsolete. Use the Nickname keyword instead. |
|
|
|
AltSignature |
File name |
Name of alternative file included in response to ~A command when sending mail. |
None. |
omitted |
|
BackupExt |
File Extension |
Extension used for files renamed by backup processing. Note: See backup option, below. |
BAK |
omitted |
|
Editor |
String |
Command string including the name of the editor used for editing outgoing mail. Note: %s must appear in the string to define where the file name should be substituted. |
None. |
edit %s |
|
FileSent |
File name |
Name of file in which all mail sent by local user is saved. |
None. Note: If this parameter is omitted, no copy is saved. |
outgoing |
|
FirstGrade |
Character |
uucico scans the queue for files of this grade and above, and sends those files first. |
C |
omitted |
|
Folders |
Path name |
Included for use by MUSH (Mail User's Shell). Not used by UUPC/extended. |
N/A |
omitted |
|
Home |
Path name |
Home directory of current user. This directory is the directory in which FORWARD files are searched for, and the default directory for the files defined by FileSent, Aliases, and Signature files. |
None. Note: This field is required. |
C:\u\snuffles |
|
MailBox |
User id |
Name (userid) of the currently active user. Should be 1-8 characters and only contain valid alphanumerics. |
Note: This field is required. |
snuffles |
|
MailGrade |
Character |
Default UUCP class used for mail. |
C |
omitted |
|
Name |
String |
Full name of the user |
Note: This field is required. |
Snuffles P. Bear |
|
NewsCache |
Integer |
Pages of news history file index to cache in memory. |
128 for 32-bit systems, 4 for 16-bit systems. |
omitted |
|
Nickname |
File name |
User aliases (nicknames) file. Note: If the path is omitted, this file is presumed to reside in the current user's home directory. |
None. |
nickname.txt |
|
Organization |
String |
Name of the organization to be listed in the Organization field in headers of outgoing mail. |
None. |
Itty-Bitty Machines Corporation |
|
Pager |
String |
Command string including the name of the pager used for displaying incoming mail. Note: %s must appear in the string to define where the file name should be substituted. |
None. |
list %s |
|
ReplyTo |
Token |
Address to which replies to outgoing mail are to be sent. |
Replies are sent to the originator of the mail. |
omitted |
|
ReplyToList |
List of tokens |
List of headers used to identify the address for a reply. |
"Resent-Reply-To:", "Resent-From:", "Reply-To:", "From:" |
omitted |