home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / c-kermit / ck61a13.txt < prev    next >
Text File  |  2020-01-01  |  13KB  |  251 lines

  1. To: wermit-l@wkuvx1.wku.edu
  2. Subject: C-Kermit 6.1 Alpha.13
  3.  
  4. This is to announce C-Kermit 6.1 Alpha.13.  Still a closed Alpha, like last
  5. time.  Mainly just bug fixes to Alpha.12, with a few minor additions.  As
  6. usual, several new people have been added to the mailing list (see notes at
  7. end about how to find out what happened in previous Alphas).
  8.  
  9. (I am purposely not skipping over the number 13, since it is bad luck to be
  10. superstitious...)
  11.  
  12. KERMIT + KERBEROS = KERMEROS (*) ???
  13.  
  14. C-Kermit is now set up to support Kerberos V, and in fact it has been built
  15. successfully on Linux with the Cygnus Kerberos V libraries, and can be used
  16. for making authenticated connections (see the new "linux+krb" makefile entry).
  17. It can even get tickets itself, and it has a whole new repertoire of commands
  18. and variables for dealing with Kerberos, which, by the way, all work just fine
  19. in Kermit 95, with both Kerberos IV and V (in the forthcoming 1.1.16 version).
  20.  
  21. But (there's always a but...) C-Kermit can't handle encryption yet (even
  22. though K95 handles it very nicely).  Why?  Because the UNIX C-Kermit CONNECT
  23. module, ckucon.c, runs in two forks; once the forks split off, the two copies
  24. of the Kerberos modules can't see each other any more, and since they rely on
  25. shared variables, matters deteriorate rather rapidly (immediately).
  26.  
  27. What about VMS?  Since VMS C-Kermit runs in a single process and address
  28. space, I think Kerberos support could be added to VMS rather easily if there
  29. are Kerberos libraries available for it that use the same APIs as the ones we
  30. are using for Windows and UNIX.  But let's get UNIX going first.
  31.  
  32. More about Kerberos in the kerberos.txt file.  And those of you not in the
  33. USA or Canada, remember the US government is picky about letting this stuff
  34. cross the border...
  35.  
  36. PROGRAMMING CONTEST
  37.  
  38. Anybody who is interested in having an authenticating and encrypting
  39. Kerberized C-Kermit (e.g. for secure scripted file transfers) is invited to
  40. help out with the following task, which is totally unrelated to Kerberos
  41. itself.  This invitation is extended not because we are incapable of doing the
  42. work ourselves, but because we can never quite seem to get around to it due to
  43. the urgency of so many other items.  The task is:
  44.  
  45.   Convert ckucon.c to run in a single address space.
  46.  
  47. A little background...  ckucon.c uses forks because this is the only mechanism
  48. portable across all UNIX versions for accomplishing simultaneous console and
  49. communications i/o.  Some UNIX versions don't support select(), others do but
  50. only if a BSD sockets library is installed, and yet others do only for TCP
  51. connections but not on serial connections.  And threads... well, even though
  52. we were using them happily in TOPS-20 over 20 years ago, they still haven't
  53. quite caught on or settled down in UNIX.
  54.  
  55. Since Kerberos connections occur only over TCP/IP, it should be safe to assume
  56. the presence of select() (although how one calls it is another matter -- see,
  57. e.g., all the #ifdefs in ckutio.c).  So ckucon.c can be reconstructed on the
  58. model of BSD Telnet.  This might also make UNIX CONNECT sessions more snappy
  59. in general, obviating the need for the atrocities between the two forks when
  60. the echoing state changes, or autodownload or APCs are detected, etc.
  61.  
  62. (Unfortunately, we still need a version of ckucon.c that uses threads rather
  63. than select(), because select() doesn't work on the BeBox, and neither do
  64. forks.  But I think we'll need a separate CONNECT module for BeBox anyway, and
  65. I'm afraid any attempts to base portable code on threads is ill-advised.)
  66.  
  67. First prize (well, there isn't really a prize -- "no good deed goes
  68. unpunished") (**) goes to whoever can create a ckucon.c module that supports
  69. both the dual-fork model (as now) and the select() model (since separate UNIX
  70. CONNECT modules will cause giant maintenance headaches) and that keeps all the
  71. features of the current module while remaining at least as efficient as it is
  72. now -- pay heed to the many tricks that are used to avoid single-character i/o
  73. in *each* direction.
  74.  
  75. And remember that the Kermit definition of "portable" is probably a lot more
  76. restrictive than yours; see the section on portability in the ckcplm.doc file.
  77.  
  78. (*)  The fierce three-headed amphibian of Greek mythology.
  79. (**) (I think Dorothy Parker said this first.)  Maybe a nice set of Kermit
  80.      books?  Is that punishment enough?
  81.  
  82. GENERAL CHANGES SINCE ALPHA.12 (20 Jan 1998):
  83.  
  84.  . Added: \fsplit(string,&array) to put words of string into given array.
  85.  . Added: \ferrstring(n) returns system error message for code n (UNIX & VMS).
  86.  . Added: Function-call diagnostics.
  87.  . Added: SET TCP REVERSE-DNS-LOOKUP { ON, OFF }.
  88.  . Fixed: Missing error messages from command-line option syntax errors.
  89.  . Fixed: Nonfunctional CPS display in 2nd and subsequent files in file group.
  90.  . Fixed: Spurious second "." added to incoming filenames starting with ".".
  91.  . Fixed: Various problems with array initializers.
  92.  . Changed: FAST macro to use cautious rather than minimal prefixing.
  93.  . Uncoupled: Dialing directory lookup messages from SET DIAL DISPLAY ON.
  94.  . Increased: Command buffer sizes in BIGBUFOK builds.
  95.  
  96. Brief highlights:
  97.  
  98. \fsplit() makes it simple to break up and parse strings received during script
  99. execution or from a file; this is merely a generalization of \fword(), added
  100. in the previous Alpha.
  101.  
  102. \ferrstring() can be used with \v(errno) and, on VMS (see below), with
  103. \v(pexitstatus) (where processes exit with regular VMS error codes).
  104.  
  105. Functions now, for the first time, issue informative messages when they are
  106. called incorrectly, or encounter an execution error, and (optionally) cause
  107. the command that contains the function call to fail.  Diagnostics can be
  108. turned on and off.
  109.  
  110. UNIX-SPECIFIC CHANGES
  111.  
  112.  . Added: SET FLOW RTS/CTS for IRIX 5.3 and later (needs testing).
  113.  . Added: New IRIX makefile entry: irix63.
  114.  . Added: New AIX makefile entries: aix41, aix42, aix43.
  115.  . Added: -pipe to Linux makefile entry.
  116.  . Added: +DA1.0 to all HP-UX 10.00 and higher makefile entries.
  117.  . Fixed: HP-UX 5.21 file-transfer statistics reporting.
  118.  . Strengthened: Precautions against IRIX Telnet server bug when sending files.
  119.  
  120. Open UNIX issues:
  121.  . Compilation failures on SunSoft Interactive Unix 4.1.
  122.  . Reportedly uid/gid switching does not work right on NeXTSTEP 3.3.
  123.  . C-Kermit not building on FreeBSD 2.2.5 because "_xstr" undefined.
  124.  . Still no C-Kermit 6.1 version for the BeBox or Plan 9.
  125.  
  126. There have been several (incoherent) reports that C-Kermit 6.0 hangs in AIX
  127. 4.2, or actually hangs AIX 4.2 itself, or hangs its ports, but I have not yet
  128. been able to obtain clarifications or further details.  Other reports indicate
  129. that C-Kermit 6.0, when built from source code using the rs6aix41c entry on an
  130. AIX 4.2 or 4.3 system, works just fine.  Still others verify that the three
  131. different C-Kermit 6.0 AIX 4.x binaries that we have at our FTP site and on
  132. our CDROM work just fine.  It's a mystery.
  133.  
  134. VMS-SPECIFIC CHANGES
  135.  
  136.  . Enabled: \v(errno) and \v(errstring) for VMS to show last VMS error.
  137.  . Enabled: \v(pexitstat) for VMS.
  138.  . Fixed: Detection of subprocess failure via IF FAIL.
  139.  . Fixed: Spurious character in terminal screen when modem hangs up.
  140.  . Fixed: Some message stomping during dialing.
  141.  
  142. Open VMS issues:
  143.  . I don't have access to Alpha VMS 6.x any more, can't make binaries, sorry.
  144.  . Inability to transfer certain types of files that Kermit-32 can transfer.
  145.  . Inability to create or CD to a directory when the directory specification
  146.    includes a DECnet node.
  147.  
  148. WHERE TO FIND IT
  149.  
  150. C-Kermit 6.1.193 Alpha.13 is in the kermit/test tree at the Kermit ftp site,
  151. along with early drafts of all the update documentation, etc:
  152.  
  153.  ftp://kermit.columbia.edu/kermit/test/tar/
  154.    cku193src.tar.Z   Source code (UNIX and VMS), tar, UNIX compress
  155.    cku193src.tar.gz  Source code (UNIX and VMS), tar, gzipped
  156.    cku193txt.tar.Z   Other text files, tar, UNIX compress
  157.    cku193txt.tar.gz  Other text files, tar, gzipped
  158.  
  159.  ftp://kermit.columbia.edu/kermit/test/text/
  160.    Individual source and text files for UNIX, VMS, OS-9,
  161.    AOS/VS, Stratus VOS, etc etc.
  162.  
  163.  Among the interesting text files:
  164.    ckermit2.upd    -- Detailed documentation of new features since 6.0.
  165.    ckaaaa.hlp      -- Overview of files, file naming conventions, etc.
  166.    ckc193.upd      -- Program edit history since 6.0.
  167.    ckuins.doc      -- UNIX installation instructions.
  168.    ckvins.doc      -- VMS installation instructions.
  169.    ckvker.bwr      -- VMS C-Kermit "beware file" (hints and tips).
  170.    ckuker.bwr      -- UNIX C-Kermit beware file.
  171.    ckcplm.doc      -- Program logic manual, API definition, etc.
  172.    ckccfg.doc      -- Program configuration options.
  173.    alpha*.txt      -- Announcements of each Alpha test.
  174.    kerberos.txt    -- Preliminary documentation of Kerberos features.
  175.  
  176. INDIVIDUAL ALPHA.13 BINARIES:
  177.  
  178. The binaries marked with (+) are Alpha.13, transferred using itself to the
  179. Kermit ftp site; the others are earlier 6.1 Alphas (built at sites I can't
  180. reach any more or that have since been upgraded to newer OS versions, etc):
  181.  
  182.  ftp://kermit.columbia.edu/kermit/test/bin/
  183.  + ckdker-aosvsii.pr:           DG MV 2500 AOS/VS-II 2.20.73
  184.  + ckuker.aix41                 IBM RS/6000 AIX 4.1
  185.  + ckuker.bsd44-hp9000_300      HP-9000/300 4.4BSD-Lite
  186.    ckuker.bsdi2-2.1             PC, BSDI 2.1
  187.    ckuker.bsdi2-3.0             PC, BSDI 3.0
  188.  + ckuker.bsdi2-3.1             PC, BSDI 3.1
  189.  + ckuker.du32                  DEC Alpha Digital UNIX 3.2
  190.  + ckuker.du40                  DEC Alpha Digital UNIX 4.0
  191.  + ckuker.hpux500wintcp         HP-9000/550 HP-UX 5.21 + TWG-TCP/IP 1.2
  192.  + ckuker.hpux80-hp9000_385     HP-9000/385 HP-UX 8.00 (no curses, no opt.)
  193.  + ckuker.hpux80c-hp9000_385    HP-9000/385 HP-UX 8.00 (not optimized)
  194.  + ckuker.hpux90-hp9000_712     HP-9000/712 HP-UX 9.05 (not optimized)
  195.  + ckuker.hpux90o700-hp9000_712 HP-9000/712 HP-UX 9.05 (optimized)
  196.  + ckuker.hpux100-10.20         HP-9000/715/33 HP-UX 10.20 (not optimized)
  197.  + ckuker.hpux100o-10.20        HP-9000/715/33 HP-UX 10.20 (optimized)
  198.  + ckuker.irix53                SGI IRIX 5.3
  199.  + ckuker.irix62                SGI IRIX 6.2
  200.  + ckuker.irix63                SGI IRIX 6.3
  201.  + ckuker.linux-1.2.13-i386     PC, Red Hat Linux 1.2.13
  202.  + ckuker.next-3.1-mc68040      NeXT 68040 NeXTSTEP 3.1
  203.  + ckuker.next33-3.3-mc68040    NeXT 68040 NeXTSTEP 3.3
  204.  + ckuker.qnx16                 QNX 4.24 16-bit
  205.  + ckuker.qnx32                 QNX 4.24 32-bit
  206.  + ckuker.sco32v504net          PC, SCO OpenServer 5.0.4
  207.  + ckuker.sinix542-5.42-mips    SNI SINIX 5.4.2 MIPS (RM200)
  208.  + ckuker.solaris24-2.4-sparc   Sun Sparc, Solaris 2.4
  209.  + ckuker.solaris2xg-2.4-sparc  Sun Sparc, Solaris 2.4 (made with gcc)
  210.  + ckuker.solaris2x25-2.4-sparc Sun Sparc, Solaris 2.4 + SunLink X.25
  211.  + ckuker.solaris25-2.5.1-sparc Sun Sparc, Solaris 2.5.1
  212.  + ckuker.solaris25g-2.5.1-sparcSun Sparc, Solaris 2.5.1 (made with gcc)
  213.  + ckuker.solaris26-2.6-sparc   Sun Sparc, Solaris 2.6
  214.  + ckuker.sunos41c-4.1.3-sparc  Sun Sparc, SunOS 4.1.3_U1
  215.  + ckuker.ultrix42c-4.3-mips    DECstation 5000, Ultrix 4.3
  216.  + ckuker.unixware2-2.1.1       PC, Unixware 2.1.1
  217.  + ckuker.unixware2-2.1.2       PC, Unixware 2.1.2
  218.    ckvaker-vms62-nonet.exe:     Alpha CPU, VMS 6.2,   no TCP/IP
  219.    ckvaker-vms62-tgv40a.exe:    Alpha CPU, VMS 6.2,   MultiNet 4.0A
  220.  + ckvaker-vms71-nonet.exe:     Alpha CPU, VMS 7.1,   no TCP/IP
  221.  + ckvaker-vms71-tgv40b.exe:    Alpha CPU, VMS 7.1,   MultiNet 4.0B
  222.  + ckvvker-vms55-nonet.exe:     VAX CPU,   VMS 5.5-2, no TCP/IP
  223.  + ckvvker-vms55-ucx20.exe:     VAX CPU,   VMS 5.5-2, UCX 2.0
  224.    ckvvker-vms61-nonet.exe:     VAX CPU,   VMS 6.1,   no TCP/IP
  225.  + ckvvker-vms61-tgv40a.exe:    VAX CPU,   VMS 6.1,   MultiNet 4.0AX
  226.  + ckvvker-vms71-nonet.exe:     VAX CPU,   VMS 7.1,   no TCP/IP
  227.  + ckvvker-vms71-tgv40b.exe:    VAX CPU,   VMS 7.1,   MultiNet 4.0B
  228.  
  229. STANDARD CANNED FINISH:
  230.  
  231. I'd be glad to do more of these myself and spare you the trouble -- for that
  232. I'd need guest IDs on systems or configurations not listed above, to which I
  233. can Telnet from here, and which have the necessary C compilers, header files,
  234. and libraries.
  235.  
  236. C-Kermit 6.1 has not yet been checked out in OS-9, Atari ST, or Macintosh --
  237. volunteers?  (But VOS and Amiga work is in progress.)
  238.  
  239. Thanks to all of you for your help with and comments on this version so far!
  240. Please continue to beat on it and send any bug reports straight to me.
  241.  
  242. If you do succeed in building it on a platform not listed above, please let 
  243. me know the details (machine make & model, OS and version, separate TCP/IP
  244. product, if any, and the size (in bytes) of the resulting executable (for
  245. addition to the table at the end of the ckc193.upd file).  And if you have
  246. trouble, of course, let me know about that too.
  247.  
  248. - Frank
  249.  
  250. P.S. And also let me know if you want off this mailing list.
  251.