home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1992 March / Source_Code_CD-ROM_Walnut_Creek_March_1992.iso / usenet / altsrcs / 3 / 3594 / README < prev    next >
Encoding:
Text File  |  1991-07-11  |  10.7 KB  |  271 lines

  1. XC README, patchlevel 3.0 JPRadley 6 Jun 91
  2. This file (and every other one in the distribution) uses 4-character tabstops.
  3. The supplied .exrc file sets ts=4 and sw=4, for vi's purposes.
  4.  
  5.  
  6.     B A C K G R O U N D
  7.  
  8. Once upon a time (in 1985 or so), a fellow named Eric Coe wrote a Unix dialout
  9. telecommunications program called XCOMM.  This program was substantially
  10. upgraded and improved by another fellow named Larry Gensch, who brought XCOMM
  11. up to Version 2.2.  Version 2.2 included a simple script language, 128-byte
  12. Xmodem and Compuserve Quick-B file-transfer protocols, and some other stuff.
  13. Fred Buck then changed the program name to XCMALT, which it maintained until
  14. June 1991, when Jean-Pierre Radley renamed it XC.
  15.  
  16. XC is a massive expansion and modification of XCOMM 2.2.  Many bugs in
  17. XCOMM 2.2 have been fixed, and many advertised features that didn't work in
  18. XCOMM 2.2 do work in XC.  Also, XC includes a fullscreen dialing
  19. directory; a totally rewritten and much more powerful script language
  20. allowing, among other things, remote execution of shell commands and
  21. unattended protocol-controlled file transfer (provided that your system also
  22. has Chuck Forsberg's "rz/sz" Xmodem/Ymodem/Zmodem program, available free for
  23. the download from many sources), a flexible variable mechanism, including 
  24. access to shell environment variables, and more; BREAK-signal capability; the
  25. capability to upload a file in ASCII from within a script; and miscellaneous
  26. cosmetic changes.
  27.  
  28. But while XC incorporates much of Larry Gensch's work, it's not supported
  29. by Larry Gensch.  The changes from XCOMM 2.2 are the product of Steve Manes,
  30. who installed uucp LCKfile support and special compile-time tuning for SCO
  31. Xenix, and who wrote the fullscreen dialing directory; Fred Buck, who rewrote
  32. the script language, performed various bugfixes and alterations, and installed
  33. special compile-time tuning for the Tandy 6000; and Jean-Pierre Radley, who
  34. installed the B+ Protocol, used more termcap features, and is now the
  35. "caretaker" of XC.
  36.  
  37.  
  38.     I N S T A L L A T I O N
  39.  
  40. Edit xc.h. There are various definitions that have to be set according
  41. to your flavor of Unix, your preference for default directories, and other
  42. user-definable items. LOCKDIR in xcport.c might also need to change.
  43.  
  44. Choose the proper flags for your case in the Makefile. Change the definition
  45. of INSDIR, which is the directory where you wish XC to reside.
  46. Typing just "make" will compile XC; typing "make install" will strip out
  47. its symbol table, place the program in INSDIR, and make it "suid uucp". This
  48. is necessary if it is going to suspend or restart "getty" on a dial-in/dial-
  49. out port.
  50.  
  51. The "xc.nro" file is 'nroff' source for a manual page which describes the
  52. command-line options, the various commands once you're running XC, script
  53. language, file transfers, and the price of milk in Soviet Georgia in 1986.
  54. This file MUST pass through 'tbl' and 'col', e.g.,
  55.     "tbl xc.nro | nroff -man | col > /usr/man/cat.L/xc.L".
  56.  
  57. The Makefile also has targets for 'man' and 'catman', which can automatically
  58. format and install "xc.nro" for you. There are a few choices you must make
  59. for directories, extensions, and the use of "compress" or "pack".
  60.  
  61. Some distribution files that you might adapt to your own purposes:
  62.  
  63.     .exrc        - sets tabstops and shiftwidth to 4, which is necessary
  64.                   properly view every file in the XC distribution.
  65.                   Also includes some map settings useful for handling
  66.                   captures of CompuServe Forum messages.
  67.  
  68.     .xc            - sample startup script
  69.  
  70.     .phonelist    - sample dialing directory data file
  71.  
  72.     .callhq        - sample script for calling a Unix/Xenix system
  73.  
  74.     .c24        - sample script for calling Compuserve
  75.  
  76.     .uni        - sample script for calling CompuServe and going to
  77.                   the UnixForum
  78.  
  79.     .autocis    - sample script to call CompuServe, get any waiting
  80.                   Mail into a capture file, then visit the PRACTICE
  81.                   and the UNIX Fora in turn, uploading any prepared
  82.                   messages, capturing all new messages into separate
  83.                   files, then hanging up.
  84.  
  85.  
  86.     X C    R E V I S I O N    H I S T O R Y
  87.  
  88. Version 3.0b Radley  08 Jul 1991
  89.     Elminated mklow/mkhigh in favor of tolower/toupper
  90.     Shortened inter-line delay in script transmittal
  91.  
  92. Version 3.0a Radley  29 Jun 1991
  93.     Bugs re DIDO ports logic
  94.     Spelling errors in xc.nro
  95.     Added Buck-type CIS macros to .exrc
  96.  
  97. Version 3.0 Radley    06 Jun 1991
  98.     Program name XC replace XCMALT, by Jean-Pierre Radley
  99.  
  100.     Ditched nap() in favor of times()
  101.     Cleaned up error handling in xcscrpt.c
  102.     Used NULLS and NULLF where appropriate
  103.     Used same crc table for xmodem and B+ (Mike Barton)
  104.     Increased size of f[] in xcdial.c (Tom Cattrall)
  105.     Introduced XC_PATH (Dan Everhart)
  106.     Won't mistake a directory for a script (clue from Bob Stockler)
  107.     Added "hangup" script keyword (Dan Everhart)
  108.     Forced 8N1 setting on opening port (clue from John James & Russ Ranshaw)
  109.     Cleaned up manual page
  110.     Included 38400 speed
  111.     Deleted ioctl(TCFLSH) from s_exit() (David Kindred)
  112.     Fixed spurious return to dialing directory after B_Transfer (David Kindred)
  113.     Fixed auto toggle after dialing without a script (clue from Roger Chaplin)
  114.     Use carat-char for a ctrl-char in waitfor as well as in transmit
  115.     Added MY_ESC-Q to quit XC from terminal mode (clue from Bill Hobson)
  116.  
  117.  
  118.     X C M A L T    R E V I S I O N    H I S T O R Y
  119.  
  120.  
  121. Version 2.9 Radley    2 Sep 1990
  122.     Fixed error messages and file opening in xcb+.c when permission denied.
  123.  
  124. Version 2.8 Radley  1 Sep 1990
  125.     Fixed interrupt handling when dialing from phonelist (clue from Jim Asman)
  126.     Merged xcparse.c into xcscrpt.c
  127.     Fixed backspace handling in getline()
  128.     Used getline() inside man_dial()
  129.     Did away with using /dev/tty
  130.     For cron: do not bother with TERM if !isatty()
  131.     Fixed page counting in dial directory routines (clue from Mike Squires)
  132.     Changed Msg[80] to Msg[SM_BUFF] (clue from Dave Cardinal )
  133.     Fixed a bad tgetstr() call (clue from Per Bilse)
  134.  
  135. Version 2.7 Radley  12 June 1990
  136.     Merge install.doc into xcmalt.h and README
  137.     Change xcmalt.doc to nroff source
  138.     Add cr_add flag to insert [or not] CRs after NLs in B+ uploads
  139.  
  140. Version 2.6.1 Betz, Cattrall, Roberts, Scothorne, Radley  13 May 90
  141.     Use separate rxbuf and kbbuf for port/keyboard input (Tom Cattrall)
  142.     Stretched some sleep and nap delays (Doug Scothorne)
  143.     Removed '/' from INSDIR definition in Makefile (Tom Betz)
  144.     Fixed bug in while/do/call script/done logic (clue from Tom Roberts)
  145.     Removed dd_done variable
  146.     Fixed terminal(todir) logic
  147.  
  148. Version 2.6 Radley  29 April 1990
  149.     Reinstated SCO 2.2 ungetty calls
  150.     Deleted crc setting, xmodem now always done with CRC
  151.     Added auto flag, automatically start capture on entering terminal mode
  152.     Used tputs() for screen control strings.
  153.  
  154. Version 2.5 George Pontis & Jean-Pierre Radley  19 April 1990
  155.     Use ioctl.h only for the T6000
  156.     Fixed calls to nap() for BSD
  157.     Fixed statbuf() declaration bug in xcport.c
  158.     Included mklow()/mkhigh() as frontends to tolower()/toupper()
  159.     Included NOSHELL option
  160.     Exits mopen() if no port specified
  161.  
  162. Version 2.4 Radley    31 Mar 1990
  163.     Made all identifiers unique in first seven characters.
  164.     Replaced incorrect references to "baud" and "baud-rate" by
  165.       "bps" and "bits/second"
  166.  
  167. Version 2.3 Radley  19 Feb 1990
  168.     B-Plus replaces Quick-B
  169.     Reinstated xclog code
  170.     No mungmode variable; overwriting of a file interactively confirmed.
  171.     No term variable; all transfers return to Terminal mode.
  172.     Added timer.c, to calibrate the built-in nap() code.
  173.  
  174. Version 2.2    Radley    05 Jan 1990
  175.     Removed XCLUDE termio setting, which locked port on first fopen()
  176.     Change setuid to be uid of 'uucp'
  177.     Fixed set/get/uid routines
  178.     Revised menu display
  179.     Removed xclog code from xccisb.c
  180.     Changed many TCSETAW ioctl calls to TCSETA
  181.  
  182. Version 2.1    Radley    12 Dec 1989
  183.     Revised all inverse video displays
  184.     Took out more unnecessary routines
  185.     Permitted operation from 'cron' or 'at'
  186.     Fixed some of the interrupt routines
  187.     Removed PUT_TAKE manifest, code for put/take now always included
  188.     Fixed some of the mopen() routines.
  189.     Did away with DRIBBLE, use nap() instead
  190.  
  191. Version 2.0    Radley    9 Aug 1989
  192.     Added openfile routine (credit to George Pontis)
  193.     Added LIBDIR (credit to George Pontis)
  194.     Used setbuf on local tty (credit to George Pontis)
  195.     Eliminated fflush() calls
  196.     Fixed put and take code
  197.     Deleted SCO 2.2 ungetty stuff
  198.  
  199. Version 1.0 ...all in or about, oh, say, 1988.
  200.     CD-independent modem opening added by Fred Buck/J-P Radley
  201.     Broken shell-escape mechanism fixed by Fred Buck
  202.     Tandy 6000 LCKfile support added by Fred Buck
  203.     Flexible LCKfile support added by Steve Manes
  204.     Same, for SCO 2.2, added by J-P Radley
  205.     Fullscreen dialing directory added by Steve Manes
  206.     Fullscreen dialing directory tuned by Fred Buck/J-P Radley
  207.     Shell-escape ignore-SIGINT bug fixed by Fred Buck
  208.     Command-mode ignore-xon/xoff bug fixed by Fred Buck
  209.     Script parsing greatly extended by Fred Buck
  210.     "BYE" sequence to modem on exit added by Fred Buck
  211.  
  212.     Program named XCMALT instead of XCOMM, by Fred Buck
  213.  
  214.  
  215.     X C O M M    R E V I S I O N    H I S T O R Y
  216.  
  217.  
  218. Version 2.2    larry gensch    14 Dec 87    Major code restructure
  219.     Reduced program and command options
  220.     Added SET command for setting various parameters
  221.     Added HANGUP command for disconnecting modem
  222.     Modified xccisb.c code to support CIS "Quick B" Protocol
  223.     Added xcscrpt.c code for processing script files
  224.     Added SCRIPT= parameter to phonebook processing (auto-logon scripts)
  225.     Added CIS parameter for CIS <ENQ> auto transfers
  226.     Added NL parameter for newline translation
  227.     Added HANGUP command from terminal mode
  228.     Added SCRIPT command from terminal mode
  229.  
  230. Version 2.1b    larry gensch    11 Nov 87    Bug Fix release
  231.     (no bugs in the code, just some portability fixes)
  232.     Changed "sigset" in xccisb to "signal"
  233.     Removed #include <setjmp.h> from xcxmdm
  234.  
  235. Version 2.1a    larry gensch    28 Oct 87    General Update
  236.     Added CIS "B" Protocol (c, ct commands)
  237.     Added BAUD= & BITS= parameters to phonelist file.
  238.     Switched some command letters
  239.     Revised command line parsing to use getopt()
  240.  
  241. Version 2.0    larry gensch    19 Oct 87    Revisions for System V.3
  242.     Changed <sgtty> references to <termio> (modified ioctl(2) calls)
  243.     Changed terminal mode function keys to <ESC> sequences; added
  244.         getconchr()
  245.  
  246. Version 1.1    Eric E Coe    21 Jul 85
  247.     Autodial for Hayes-compatible modem.
  248.     General rearranging of the code
  249.  
  250. Version 1.0    Eric E Coe    12 Apr 85
  251.     Program created
  252.  
  253.  
  254. ===================================
  255.  
  256.  
  257. Note: in the original XCOMM file "install.doc", Larry Gensch gave his
  258. various mail addresses for users to reach him about bug reports, upgrade
  259. requests, and the like.  But Larry doesn't support (or in fact have anything
  260. to do with) XCMALT, except that XCMALT is based on XCOMM 2.2, so there's no
  261. point in including this information here.
  262. Fred Buck, who made the major changes from XCOMM to XCMALT, passed away in
  263. early 1989.
  264. Jean-Pierre Radley has since been shepherding the program as it evolved from
  265. XCMALT to XC.
  266.  
  267. Gripes, bugs, and comments accepted by:
  268.     Jean-Pierre Radley
  269.        jpr@jpr.com
  270.        72160.1341@compuserve.com
  271.