home *** CD-ROM | disk | FTP | other *** search
- XC README, patchlevel 3.0 JPRadley 6 Jun 91
- This file (and every other one in the distribution) uses 4-character tabstops.
- The supplied .exrc file sets ts=4 and sw=4, for vi's purposes.
-
-
- B A C K G R O U N D
-
- Once upon a time (in 1985 or so), a fellow named Eric Coe wrote a Unix dialout
- telecommunications program called XCOMM. This program was substantially
- upgraded and improved by another fellow named Larry Gensch, who brought XCOMM
- up to Version 2.2. Version 2.2 included a simple script language, 128-byte
- Xmodem and Compuserve Quick-B file-transfer protocols, and some other stuff.
- Fred Buck then changed the program name to XCMALT, which it maintained until
- June 1991, when Jean-Pierre Radley renamed it XC.
-
- XC is a massive expansion and modification of XCOMM 2.2. Many bugs in
- XCOMM 2.2 have been fixed, and many advertised features that didn't work in
- XCOMM 2.2 do work in XC. Also, XC includes a fullscreen dialing
- directory; a totally rewritten and much more powerful script language
- allowing, among other things, remote execution of shell commands and
- unattended protocol-controlled file transfer (provided that your system also
- has Chuck Forsberg's "rz/sz" Xmodem/Ymodem/Zmodem program, available free for
- the download from many sources), a flexible variable mechanism, including
- access to shell environment variables, and more; BREAK-signal capability; the
- capability to upload a file in ASCII from within a script; and miscellaneous
- cosmetic changes.
-
- But while XC incorporates much of Larry Gensch's work, it's not supported
- by Larry Gensch. The changes from XCOMM 2.2 are the product of Steve Manes,
- who installed uucp LCKfile support and special compile-time tuning for SCO
- Xenix, and who wrote the fullscreen dialing directory; Fred Buck, who rewrote
- the script language, performed various bugfixes and alterations, and installed
- special compile-time tuning for the Tandy 6000; and Jean-Pierre Radley, who
- installed the B+ Protocol, used more termcap features, and is now the
- "caretaker" of XC.
-
-
- I N S T A L L A T I O N
-
- Edit xc.h. There are various definitions that have to be set according
- to your flavor of Unix, your preference for default directories, and other
- user-definable items. LOCKDIR in xcport.c might also need to change.
-
- Choose the proper flags for your case in the Makefile. Change the definition
- of INSDIR, which is the directory where you wish XC to reside.
- Typing just "make" will compile XC; typing "make install" will strip out
- its symbol table, place the program in INSDIR, and make it "suid uucp". This
- is necessary if it is going to suspend or restart "getty" on a dial-in/dial-
- out port.
-
- The "xc.nro" file is 'nroff' source for a manual page which describes the
- command-line options, the various commands once you're running XC, script
- language, file transfers, and the price of milk in Soviet Georgia in 1986.
- This file MUST pass through 'tbl' and 'col', e.g.,
- "tbl xc.nro | nroff -man | col > /usr/man/cat.L/xc.L".
-
- The Makefile also has targets for 'man' and 'catman', which can automatically
- format and install "xc.nro" for you. There are a few choices you must make
- for directories, extensions, and the use of "compress" or "pack".
-
- Some distribution files that you might adapt to your own purposes:
-
- .exrc - sets tabstops and shiftwidth to 4, which is necessary
- properly view every file in the XC distribution.
- Also includes some map settings useful for handling
- captures of CompuServe Forum messages.
-
- .xc - sample startup script
-
- .phonelist - sample dialing directory data file
-
- .callhq - sample script for calling a Unix/Xenix system
-
- .c24 - sample script for calling Compuserve
-
- .uni - sample script for calling CompuServe and going to
- the UnixForum
-
- .autocis - sample script to call CompuServe, get any waiting
- Mail into a capture file, then visit the PRACTICE
- and the UNIX Fora in turn, uploading any prepared
- messages, capturing all new messages into separate
- files, then hanging up.
-
-
- X C R E V I S I O N H I S T O R Y
-
- Version 3.0b Radley 08 Jul 1991
- Elminated mklow/mkhigh in favor of tolower/toupper
- Shortened inter-line delay in script transmittal
-
- Version 3.0a Radley 29 Jun 1991
- Bugs re DIDO ports logic
- Spelling errors in xc.nro
- Added Buck-type CIS macros to .exrc
-
- Version 3.0 Radley 06 Jun 1991
- Program name XC replace XCMALT, by Jean-Pierre Radley
-
- Ditched nap() in favor of times()
- Cleaned up error handling in xcscrpt.c
- Used NULLS and NULLF where appropriate
- Used same crc table for xmodem and B+ (Mike Barton)
- Increased size of f[] in xcdial.c (Tom Cattrall)
- Introduced XC_PATH (Dan Everhart)
- Won't mistake a directory for a script (clue from Bob Stockler)
- Added "hangup" script keyword (Dan Everhart)
- Forced 8N1 setting on opening port (clue from John James & Russ Ranshaw)
- Cleaned up manual page
- Included 38400 speed
- Deleted ioctl(TCFLSH) from s_exit() (David Kindred)
- Fixed spurious return to dialing directory after B_Transfer (David Kindred)
- Fixed auto toggle after dialing without a script (clue from Roger Chaplin)
- Use carat-char for a ctrl-char in waitfor as well as in transmit
- Added MY_ESC-Q to quit XC from terminal mode (clue from Bill Hobson)
-
-
- X C M A L T R E V I S I O N H I S T O R Y
-
-
- Version 2.9 Radley 2 Sep 1990
- Fixed error messages and file opening in xcb+.c when permission denied.
-
- Version 2.8 Radley 1 Sep 1990
- Fixed interrupt handling when dialing from phonelist (clue from Jim Asman)
- Merged xcparse.c into xcscrpt.c
- Fixed backspace handling in getline()
- Used getline() inside man_dial()
- Did away with using /dev/tty
- For cron: do not bother with TERM if !isatty()
- Fixed page counting in dial directory routines (clue from Mike Squires)
- Changed Msg[80] to Msg[SM_BUFF] (clue from Dave Cardinal )
- Fixed a bad tgetstr() call (clue from Per Bilse)
-
- Version 2.7 Radley 12 June 1990
- Merge install.doc into xcmalt.h and README
- Change xcmalt.doc to nroff source
- Add cr_add flag to insert [or not] CRs after NLs in B+ uploads
-
- Version 2.6.1 Betz, Cattrall, Roberts, Scothorne, Radley 13 May 90
- Use separate rxbuf and kbbuf for port/keyboard input (Tom Cattrall)
- Stretched some sleep and nap delays (Doug Scothorne)
- Removed '/' from INSDIR definition in Makefile (Tom Betz)
- Fixed bug in while/do/call script/done logic (clue from Tom Roberts)
- Removed dd_done variable
- Fixed terminal(todir) logic
-
- Version 2.6 Radley 29 April 1990
- Reinstated SCO 2.2 ungetty calls
- Deleted crc setting, xmodem now always done with CRC
- Added auto flag, automatically start capture on entering terminal mode
- Used tputs() for screen control strings.
-
- Version 2.5 George Pontis & Jean-Pierre Radley 19 April 1990
- Use ioctl.h only for the T6000
- Fixed calls to nap() for BSD
- Fixed statbuf() declaration bug in xcport.c
- Included mklow()/mkhigh() as frontends to tolower()/toupper()
- Included NOSHELL option
- Exits mopen() if no port specified
-
- Version 2.4 Radley 31 Mar 1990
- Made all identifiers unique in first seven characters.
- Replaced incorrect references to "baud" and "baud-rate" by
- "bps" and "bits/second"
-
- Version 2.3 Radley 19 Feb 1990
- B-Plus replaces Quick-B
- Reinstated xclog code
- No mungmode variable; overwriting of a file interactively confirmed.
- No term variable; all transfers return to Terminal mode.
- Added timer.c, to calibrate the built-in nap() code.
-
- Version 2.2 Radley 05 Jan 1990
- Removed XCLUDE termio setting, which locked port on first fopen()
- Change setuid to be uid of 'uucp'
- Fixed set/get/uid routines
- Revised menu display
- Removed xclog code from xccisb.c
- Changed many TCSETAW ioctl calls to TCSETA
-
- Version 2.1 Radley 12 Dec 1989
- Revised all inverse video displays
- Took out more unnecessary routines
- Permitted operation from 'cron' or 'at'
- Fixed some of the interrupt routines
- Removed PUT_TAKE manifest, code for put/take now always included
- Fixed some of the mopen() routines.
- Did away with DRIBBLE, use nap() instead
-
- Version 2.0 Radley 9 Aug 1989
- Added openfile routine (credit to George Pontis)
- Added LIBDIR (credit to George Pontis)
- Used setbuf on local tty (credit to George Pontis)
- Eliminated fflush() calls
- Fixed put and take code
- Deleted SCO 2.2 ungetty stuff
-
- Version 1.0 ...all in or about, oh, say, 1988.
- CD-independent modem opening added by Fred Buck/J-P Radley
- Broken shell-escape mechanism fixed by Fred Buck
- Tandy 6000 LCKfile support added by Fred Buck
- Flexible LCKfile support added by Steve Manes
- Same, for SCO 2.2, added by J-P Radley
- Fullscreen dialing directory added by Steve Manes
- Fullscreen dialing directory tuned by Fred Buck/J-P Radley
- Shell-escape ignore-SIGINT bug fixed by Fred Buck
- Command-mode ignore-xon/xoff bug fixed by Fred Buck
- Script parsing greatly extended by Fred Buck
- "BYE" sequence to modem on exit added by Fred Buck
-
- Program named XCMALT instead of XCOMM, by Fred Buck
-
-
- X C O M M R E V I S I O N H I S T O R Y
-
-
- Version 2.2 larry gensch 14 Dec 87 Major code restructure
- Reduced program and command options
- Added SET command for setting various parameters
- Added HANGUP command for disconnecting modem
- Modified xccisb.c code to support CIS "Quick B" Protocol
- Added xcscrpt.c code for processing script files
- Added SCRIPT= parameter to phonebook processing (auto-logon scripts)
- Added CIS parameter for CIS <ENQ> auto transfers
- Added NL parameter for newline translation
- Added HANGUP command from terminal mode
- Added SCRIPT command from terminal mode
-
- Version 2.1b larry gensch 11 Nov 87 Bug Fix release
- (no bugs in the code, just some portability fixes)
- Changed "sigset" in xccisb to "signal"
- Removed #include <setjmp.h> from xcxmdm
-
- Version 2.1a larry gensch 28 Oct 87 General Update
- Added CIS "B" Protocol (c, ct commands)
- Added BAUD= & BITS= parameters to phonelist file.
- Switched some command letters
- Revised command line parsing to use getopt()
-
- Version 2.0 larry gensch 19 Oct 87 Revisions for System V.3
- Changed <sgtty> references to <termio> (modified ioctl(2) calls)
- Changed terminal mode function keys to <ESC> sequences; added
- getconchr()
-
- Version 1.1 Eric E Coe 21 Jul 85
- Autodial for Hayes-compatible modem.
- General rearranging of the code
-
- Version 1.0 Eric E Coe 12 Apr 85
- Program created
-
-
- ===================================
-
-
- Note: in the original XCOMM file "install.doc", Larry Gensch gave his
- various mail addresses for users to reach him about bug reports, upgrade
- requests, and the like. But Larry doesn't support (or in fact have anything
- to do with) XCMALT, except that XCMALT is based on XCOMM 2.2, so there's no
- point in including this information here.
- Fred Buck, who made the major changes from XCOMM to XCMALT, passed away in
- early 1989.
- Jean-Pierre Radley has since been shepherding the program as it evolved from
- XCMALT to XC.
-
- Gripes, bugs, and comments accepted by:
- Jean-Pierre Radley
- jpr@jpr.com
- 72160.1341@compuserve.com
-