home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / ibm370 / iktker.bwr < prev    next >
Text File  |  2020-01-01  |  39KB  |  671 lines

  1. TSO Kermit 4.3.x "Beware File" - Known Bugs, Problems, Limitations.
  2.  
  3. As of: 13:35  Wednesday, 2000 Sep 27
  4.  
  5. This file contains (A) instructions for applying Kermit updates, (B) a
  6. list of unresolved problems, (C) a list of problems with work-arounds or
  7. optional fixes, and (D) a list of resolved problems.
  8.  
  9. NOTE: entries will sometimes be entered under (D) even though the needed
  10. updates have not been released in IKTKER.UPD.  Please check the date of
  11. the UPD and NUP files to see if they have been changed before requesting
  12. new copies.
  13.  
  14. Bug reports may be sent to John Chandler <JCHBN@CUVMB.CC.COLUMBIA.EDU>.
  15.  
  16. Kermit-370 carries an "edit" number in addition to the version and
  17. release numbers.  The three numbers together are printed out in the
  18. assembly listing and displayed by Kermit at startup time.  Be sure to
  19. include all three numbers (e.g., 4.3.0) along with any error reports.
  20.  
  21. A) Update instructions .................................................
  22.  
  23. Many updates have been received since Kermit-TSO 4.2 was released.  All
  24. updates prior to 93/9/30 have been removed from IKTKER.UPD and applied
  25. to the sources in the process of creating 4.3.  If your source does not
  26. include the line defining &KVRSN to be 4.3, you should obtain an all-new
  27. source distribution from Columbia.  Any updates created later than your
  28. source should be applied before you make the executable module.  In
  29. general, updates received at Columbia will not be applied to the source
  30. files in the TSO Kermit distribution until and unless "major" bugs are
  31. uncovered, and then all accumulated updates will be applied at once.
  32. The description of each problem and a pointer to its solution will
  33. always be included in IKTKER.BWR (the present file), but the updates
  34. themselves are to be found in IKTKER.UPD.
  35.  
  36. The procedure to update your copy of TSO Kermit is as follows:
  37.  
  38. 1) Obtain the latest version of IKTKER.UPD, which contains all the
  39.    updates as a composite file punctuated by comment lines introducing
  40.    each update's name and briefly describing its purpose.  Please note
  41.    that some modes of file transport have a side effect of either
  42.    doubling or removing any periods in the first column -- if your copy
  43.    of IKTKER.UPD has records beginning with "/", then all instances of
  44.    "/" in column 1 should be changed to "./", and all records with "@"
  45.    in column 63 (introducing an update code normally found starting at
  46.    column 64) should be moved over to make room for a "." in column 1.
  47.    Similarly, any instances of ".." in columns 1-2 should be changed to
  48.    just ".".  A related problem can affect the sources by leaving a
  49.    blank in column 80.  That can happen via the loss of a "." in column
  50.    1 (in which case the sequence number will be shifted into columns
  51.    72-79) or via automated efforts to preserve the "." (in which case
  52.    the sequence number will be truncated).  The repair consists of
  53.    inserting the missing "." in column 1 or "0" in column 80.
  54.  
  55. 2) Determine the date of your sources.  If you obtained the source from
  56.    Columbia, the date is the value of the &KDATE variable symbol in the
  57.    source itself, i.e., the release date of the current base version.
  58.    If you received the source distribution from a secondary supplier,
  59.    you will need to examine the code to determine the most recent update
  60.    applied.  Just sort the combined source by columns 67-71; the last
  61.    line will be labeled with the last-applied update.
  62.  
  63. 3) If your sources are "pure" Columbia 4.3, go on to step 4.  Otherwise,
  64.    you must take care to avoid applying updates that are already in the
  65.    source.  If it is inconvenient to obtain "pure" sources, you must go
  66.    through the list of updates at the beginning of IKTKER.UPD and remove
  67.    the entries for updates already included in (i.e., older than) your
  68.    sources.  Each line of the list begins with "./ *" plus an update
  69.    code in the form xxyyddd (the yyddd is just the date of the update --
  70.    the list is arranged chronologically).  Also, go through and discard
  71.    those updates from the file.  Each update begins with a second copy
  72.    of the line from the list and goes to the next such line.  The
  73.    updates are also in chronological order.
  74.  
  75. 4) Extract any desired optional updates from IKTKER.BWR (this file) and
  76.    group them together with any local modifications specific to your
  77.    site.  NOTE: all updates in this file are indented one column to
  78.    avoid all the transmission problems mentioned above in step 1.  Be
  79.    sure to shift everything over when you extract the updates.
  80.  
  81. 5) Apply the updates to your composite source by running GUPI.  There is
  82.    a batch job in IKTKER.INS for installing Kermit from scratch, and the
  83.    same job can be rerun as new updates become available.  Simply omit
  84.    job steps CNVASM through GUPLNK in subsequent runs.  Note: Kermit
  85.    uses the STATUS macro, which is sometimes found in SYS1.AMODGEN,
  86.    instead of SYS1.MACLIB.  Further note: be sure the macro libraries
  87.    you use are compatible with the assembler -- at some installations,
  88.    there is apparently a mismatch, such that the GETLINE macro has a
  89.    definition with an "invalid" parameter name.  Also, the GETLINE and
  90.    STAX macros supplied with MVS/XA have been "modernized" to the extent
  91.    that they cannot be used with the VS assembler.  Further still, the
  92.    GTSIZE macro is mangled at some sites and may require APAR OY22935.
  93.  
  94.    If you prefer, GUPI can be run interactively as a command processor.
  95.    In that case, the updated source would still have to be assembled.
  96.    In any case, you should not discard the original source because the
  97.    updating process is simplest if you always start from the same base
  98.    source.
  99.  
  100.    NOTE: step 5 requires that you have version 1.1 or later of GUPI,
  101.    which in turn means that your sources must be no older than 88/9/15.
  102.  
  103. ------------------------------------------------------------------------
  104. B) Unresolved problems .................................................
  105.  
  106. ---------------- 88/3/9 ------------------------------------------------
  107. An ABEND within a TSO command called from Kermit propagates back to the
  108. TMP, which then displays a READY message.  Typing a carriage return will
  109. resume Kermit operation.
  110.  
  111. ---------------- 89/1/20 -----------------------------------------------
  112. Now that Kermit-370 supports multiple-filespec SEND, it is possible for
  113. a single SEND subcommand to specify overlapping wildcard filespecs.
  114. Only the CMS variant keeps track and makes sure that it doesn't send the
  115. same file twice within one send invocation.  The others, including TSO
  116. Kermit-370, may send the same file again, and it is left to the user to
  117. prevent filename-collision problems on the receiving end.
  118.  
  119. ---------------- 90/5/8 ------------------------------------------------
  120. With a few exceptions, CONTROLLER will be set automatically when Kermit
  121. is invoked.  See file IK0AAA.HLP in the Kermit distribution for a list
  122. of front ends that have been reported to allow Kermit file transfers
  123. and another list of reported failures.  In those lists, CONTROLLER type
  124. VTAMTTY is omitted -- that being a peculiarity of TSO Kermit and the
  125. same as TTY, but needed when connected through TSO/VTAM if it does *not*
  126. have the IKTWTX1 exit.
  127.  
  128. ---------------- 91/8/16 -----------------------------------------------
  129. The type-out interception mechanism for server mode works only for
  130. "normal" line-oriented output, not for fullscreen applications.  Indeed,
  131. since there is no mechanism provided for feeding subcommands to a
  132. program on the mainframe through the Kermit server, only one-shot, non-
  133. interactive commands should be issued via REMOTE HOST.
  134.  
  135. ------------------------------------------------------------------------
  136. C) Problems with workarounds or optional fixes .........................
  137.  
  138. If it becomes necessary to diagnose problems by turning DEBUG on, there
  139. may be trouble in handling the resulting KER.LOG dataset with certain
  140. tools, since the log is allocated with an LRECL equal to the largest
  141. allowed packet size.  In practice, though, diagnostics can usually be
  142. done with short packets, so that the dataset can be copied with a
  143. truncated LRECL (e.g., 84).  Even if long packets are present, it may
  144. be possible to truncate the records without losing the important
  145. details.
  146.  
  147. ---------------- 88/3/9 ------------------------------------------------
  148. The REMOTE COPY function of a Kermit-TSO server and the TYPE subcommand
  149. both require the TSO data utilities package available from IBM and other
  150. vendors.  The necessary commands are COPY and LIST, respectively.  If
  151. your system doesn't have them, it should be possible to create your own.
  152. For example, you can write CLIST's to reside in your CLIST library.
  153.  
  154. ---------------- 88/3/9 ------------------------------------------------
  155. While CLISTs may be invoked under Kermit, if they are called from within
  156. a TAKE file, they are not then executed until Kermit returns to command
  157. level.  This means that a CLIST invoked from the system KERMINI file
  158. would execute after the user KERMINI.  If such a CLIST is necessary, it
  159. would be advisable to comment out the first BAL 9,LUPTIN in USNTRF (to
  160. suppress the direct execution of the user KERMINI) and to add code to
  161. the end of the CLIST to execute the user KERMINI (if any).
  162.  
  163. ---------------- 88/7/18 -----------------------------------------------
  164. On some systems, TTY lines connected via VTAM are unable to carry long
  165. packets outbound because of the insertion of CRLF's every 130 bytes.
  166. When that is the case, it may be possible to circumvent the problem by
  167. applying the following update to the Kermit source (although the IBM
  168. documentation states that setting the line size to a value greater than
  169. 255 has unpredictable consequences).
  170.  
  171.  ./ * SC88200 - Correct line length problem
  172.  ./ R 05728000          $ 5728000 1                             ->4.3<-
  173.  STMSTY  STSIZE SIZE=1920     Set up linesize                   @SC88200
  174.  
  175. ---------------- 89/2/27 -----------------------------------------------
  176. The code for detecting the difference between SERIES1- and GRAPHICS-type
  177. terminal controllers may cause peculiar error messages at session
  178. startup, particularly if you wish to run Kermit on an IBM 3270-type
  179. terminal.  Normally, Kermit can recover from these error conditions, but
  180. some configurations and/or versions of VTAM may hang the terminal
  181. session instead.  For example, there may be an error message IKT00405I
  182. SCREEN ERASURE CAUSED BY ERROR RECOVERY from VTAM that never goes away.
  183. In that case, there are several possible cures.  First is the simple
  184. expedient of pressing PA1 to clear the error condition.  If that doesn't
  185. help at your site, you may find that logging onto the host via Netview's
  186. TAF component makes the error message appear only once.  If you cannot
  187. persuade VTAM to be more sensible, you might want to bypass the code
  188. (especially if you don't have any GRAPHICS-type terminals).  The code is
  189. governed by a set of switches which can be tailored to your needs:
  190.  
  191.  STCQBIT  EQU   X'01'         WSF Query is always allowed
  192.  STCQNS1  EQU   X'02'         WSF Q implies *not* SERIES1
  193.  STCS1    EQU   X'04'         Always assume SERIES1
  194.  STCNOS1  EQU   X'08'         Always assume *not* SERIES1
  195.  STCNORD  EQU   X'10'         Asynch READ MOD is forbidden
  196.  
  197. The standard flag value on TSO is STCQNS1; if you wish to force the code
  198. to select SERIES1, you should change that to STCS1, as in the following:
  199.  
  200.  ./ * SC9131X - Customize controller type selection
  201.  ./ R 01062000          $ 1062000 100                  11/21/91 ->4.3<-
  202.  &CONOPTS SETC  'STCS1'       SETCON options                    @SC9131X
  203.  
  204. Alternatively, if you have *only* GRAPHICS-type controllers, you could
  205. change it to STCNOS1.
  206.  
  207. ---------------- 89/5/19 -----------------------------------------------
  208. A mode of operation favored by some ISPF users is to keep files in one
  209. PDS, rather than scattered among a variety of PDS's and sequential
  210. files.  In that mode of operation, Kermit TAKE files may not have a file
  211. extension of TAKE or KERMINI, but the user KERMINI file, in particular,
  212. must have a proper file extension in order to be recognized by Kermit
  213. at startup.  For example, if each user had a PDS called ISPF.TEXT, and
  214. the user's KERMINI were expected to be member KERMINI of that PDS, the
  215. following update would make Kermit-TSO look in the right place (and also
  216. allow other TAKE files to be kept in ISPF.TEXT).
  217.  
  218.  ./ * SC89139 - Alternate location for init file
  219.  ./ R 01020000          $ 1020000 200                  05/19/89 ->4.3<-
  220.  USRTAKE  DC    C'ISPF.TEXT(KERMINI)' Init file                 @SC89139
  221.  ./ I 05141000          $ 5141010 10                   05/19/89 ->4.3<-
  222.           CLC   =C'.TEXT',3(1) Or is is .TEXT?                  @SC89139
  223.           BE    RTRN0         That's ok too                     @SC89139
  224.  
  225. ---------------- 89/9/27 -----------------------------------------------
  226. Kermit-TSO will recover data sets migrated using DFHSM, but not those
  227. archived by the ABR software.  As a result, if the KERMINI files are no
  228. longer on-line, Kermit will simply miss them.  The following update will
  229. cause data sets to be recovered as needed, provided Kermit has not
  230. already entered protocol mode.
  231.  
  232.  ./ * SC89270 - Recover ABR-migrated data sets.
  233.  ./ D 06023500 06024000                                09/27/89 ->4.3<-
  234.  
  235. ---------------- 90/3/1 ------------------------------------------------
  236. On some systems, the leading DSN qualifier SYS1 is restricted, so that
  237. the system-wide Kermit INIT file cannot be cataloged as expected by
  238. Kermit-TSO.  In such cases, the following update (or something similar)
  239. can be used to substitute the prefix of your choice.
  240.  
  241.  ./ * SC90060 - Alternate prefix for global init file
  242.  ./ R 01018500          $ 1018500 100                  03/01/90 ->4.3<-
  243.  SYSTAKE  DC    C'''SYS2'                                       @SC90060
  244.  
  245. ---------------- 90/4/15 -----------------------------------------------
  246. Some micro Kermits may garble the date/time stamp transmitted with files
  247. downloaded from TSO because there is only a date and not a time.  As a
  248. matter of fact, some files have times as well (at sites with a system
  249. update that maintains a "modification date"), but many do not.  This
  250. problem has been reported for some versions of ProComm, but MS-Kermit
  251. from Columbia is OK.  There are two workarounds: switch micro Kermits or
  252. issue SET ATTR DATE OFF to TSO Kermit.
  253.  
  254. ---------------- 90/5/11 -----------------------------------------------
  255. If you feel it is too dangerous to allow a remote Kermit to issue a
  256. wildcard DELETE command to TSO Kermit, you can disable that feature via
  257. the following update.  The effect is to treat any asterisk in a REMOTE
  258. KERMIT DELETE command as a number sign.  Beware if you ever use a bare
  259. number sign as a DSN qualifier.
  260.  
  261.  ./ * SC90131 - Disable wildcard delete
  262.  ./ D 05128000 05128500                                05/11/90 ->4.3<-
  263.  
  264. ---------------- 90/7/5 ------------------------------------------------
  265. Kermit-370 now honors the file type specification (binary or text) given
  266. by a sending Kermit in an Attribute packet.  Old procedures for sending
  267. binary files may therefore not work properly anymore.  To return to the
  268. old mode of operation, issue the subcommand SET ATTR TYPE OFF.  To live
  269. with the new mode, be sure to issue the SET FILE TYPE to both sending
  270. and receiving Kermits (to be safe).
  271.  
  272. ---------------- 90/7/30------------------------------------------------
  273. When the file type is TEXT and the recfm is F, Kermit-370 strips off
  274. trailing blanks from each record before sending a file.  In order to
  275. keep trailing blanks in a downloaded file, you can convert it to RECFM
  276. V in TSO before sending it, e.g., by using COPY with the RECFM VB
  277. option.  This is true of versions from 4.1 onward.
  278.  
  279. ---------------- 90/8/22 -----------------------------------------------
  280. If, for some reason, the other Kermit insists on pretending ASCII bytes
  281. all have the 8th bit set, Kermit-370 will not detect the intended CRLF
  282. separators between lines.  The result of uploading from such a Kermit is
  283. a (text) file with only one record.  If the other Kermit cannot be
  284. fixed, the following update will make Kermit-370 treat ASCII 8D and 8A
  285. the same as 0D and 0A, as long as the ATOE table does so.
  286.  
  287.  ./ * SC90151 - Forgive 7-bit ASCII files with 8th bit on
  288.  ./ I 02490500          $ 2490700 200                  08/03/90 16:06:46
  289.  ISW78    DC    X'7F'         Start with 7-bit ASCII            @SC90151
  290.  ./ I 02713500          $ 2713700 200                  08/03/90 16:06:46
  291.  SW78     DS    X'7F'         Switch for 7-bit/8-bit ASCII      @SC90151
  292.  ./ I 03347500          $ 3347700 200                  08/03/90 ->4.3<-
  293.           KCALL TBLCRLF       Note current treatment            @SC90151
  294.  ./ I 03350500          $ 3350700 200                  08/03/90 ->4.3<-
  295.           KCALL TBLCRLF       Note current treatment            @SC90151
  296.  ./ I 04016000          $ 4016200 200                  08/03/90 ->4.3<-
  297.           KCALL TBLCRLF       Reset 7-bit/8-bit mask for CRLF   @SC90151
  298.  ./ I 04063000          $ 4063040 40                   08/03/90 ->4.3<-
  299.  *
  300.  * Entry: nothing special                                       @SC90151
  301.  * Exit:  SW78 set up correctly                                 @SC90151
  302.  TBLCRLF  ENTER ALT                                             @SC90151
  303.           MVI   SW78,255      Assume 8-bit codes                @SC90151
  304.           CLC   ATOE+ALF(1),ATOE+ALF+128                        @SC90151
  305.           BNE   RTRN0                                           @SC90151
  306.           CLC   ATOE+CR(1),ATOE+CR+128                          @SC90151
  307.           BNE   RTRN0                                           @SC90151
  308.           MVI   SW78,127      No, 7-bit codes                   @SC90151
  309.           B     RTRN0                                           @SC90151
  310.  ./ I 08391000          $ 8391200 200                  08/03/90 ->4.3<-
  311.           NC    CUR,SW78      If 7-bit ASCII, ignore 8th bit    @SC90151
  312.  
  313. ---------------- 91/1/4 ------------------------------------------------
  314. There may be problems with timing that can be avoided by removing the
  315. capability to timeout from the mainframe side as in the following
  316. optional update.  This update is part of the official release of Kermit
  317. for ROSCOE and, in that environment, avoids multiprocessing abends.
  318.  
  319.  ./ * SC91004 - ROSCOE IDENTIFY problem and FULLSCREEN timeouts (TSO)
  320.  ./ D 01027500 01032000                                01/31/91 ->4.3<-
  321.  ./ R 05529000 05538000 $ 5529000 1000                 01/31/91 ->4.3<-
  322.           L     0,4(,1)       Size of TGET buffer               @SC92030
  323.           L     1,0(,1)       Adr of buffer to putin            @NW86330
  324.           TGET  (1),(0),ASIS                                    @NW86330
  325.           LTR   15,15                                           @NW86330
  326.           BZ    TRMRET        Ok                                @SC91004
  327.           C     15,F12                                          @NW86330
  328.           BE    TRMRET        Ok                                @SC92030
  329.           CH    15,=H'24'                                       @SC92030
  330.           BNE   RTRNM1        Signal I/O error                  @SC91004
  331.  TRMRET   ST    1,KTGETT+4    Store length read                 @SC92030
  332.  ./ D 05541500 05544500                                01/31/91 ->4.3<-
  333.  ./ D 05549000 05560500                                01/31/91 ->4.3<-
  334.  ./ D 05744500 05749000                                01/31/91 ->4.3<-
  335.  ./ D 05768500                                         04/11/91 ->4.3<-
  336.  
  337. ---------------- 91/9/18 -----------------------------------------------
  338. There is a report of IKT00405I errors (see optional update SC9131X) in
  339. situations that have nothing to do with unexpected controller types.
  340. For example, the screen erasure error may occur in interactive mode if a
  341. Kermit subcommand is entered on the last line of the screen.  Pressing
  342. PA1 appears to clear the error condition.
  343.  
  344. ---------------- 91/11/21 ----------------------------------------------
  345. In order to change the default Kanji encoding from IBM-style to another,
  346. add one of the following updates.
  347.  
  348.  ./ * SC9132X - Change Kanji default
  349.  ./ R 01416000          $ 1416000 10                   11/21/91 ->4.3<-
  350.  &KNJDEF  SETC  'HITACHI' Default Kanji                         @SC9132X
  351.  
  352.  ./ * SC9132X - Change Kanji default
  353.  ./ R 01416000          $ 1416000 10                   11/21/91 ->4.3<-
  354.  &KNJDEF  SETC  'FUJITSU' Default Kanji                         @SC9132X
  355.  
  356. ---------------- 92/4/10 -----------------------------------------------
  357. The minimum size of strings to be subjected to run-length encoding may
  358. need to be changed to two to make the new FULLSCREEN mode work on
  359. certain protocol converters, such as the MICOM 7400, which convert three
  360. successive blanks into cursor motion commands (or even two!).  The
  361. following update accomplishes that.
  362.  
  363.  ./ * SC92101 - Encode multiple blanks
  364.  ./ I 08296500          $ 8296550 50                   04/10/92 ->4.3<-
  365.           CLI   0(8),ABL      Is it a blank?                    @SC92101
  366.           BNE   ENCRP1        No, use normal criterion          @SC92101
  367.           C     14,F2                                           @SC92101
  368.           BNL   ENCRP2        Always encode multiple blanks     @SC92101
  369.  ENCRP1   DS    0H                                              @SC92101
  370.  ./ I 08297500          $ 8297700 200                  04/10/92 ->4.3<-
  371.  ENCRP2   DS    0H                                              @SC92101
  372.  
  373. ---------------- 92/10/18 ----------------------------------------------
  374. When Kanji characters are first selected, the default for the single-
  375. byte character set is CP290 (hard-coded in Kermit-370).  That can be
  376. changed, however:
  377.  
  378.  ./ * SC92252 - Make CP281 the default SBCS with KANJI
  379.  ./ R 04118000          $ 4118000 100                  10/18/91 ->4.3<-
  380.  TBVJP    DC    CL(LALF)'CP281',CL(LALF)'CP500',CL(LALF)'CP290' @SC92252
  381.  
  382. ---------------- 93/1/21 -----------------------------------------------
  383. Kermit-370 in FULLSCREEN mode can be at the mercy of clever efforts
  384. toward screen "optimization" by the protocol converter.  One possible
  385. symptom is the suppression of the last outbound packet in a transfer if
  386. the screen is cleared just afterwards.  This may happen after an upload
  387. or upon leaving server mode.  To avoid this possibility, Kermit-370 can
  388. simply wait a few seconds to give the protocol converter less excuse for
  389. suppressing the last packet.  The following update uses four seconds,
  390. but the optimum time may be more or less, depending on the system.
  391.  
  392.  ./ * SC93021 - Try to prevent end effect in FULLSCREEN mode
  393.  ./ I 08780000          $ 8780000 80                   01/22/93 ->4.3<-
  394.           CLI   TRMTP,C'F'                                      @SC93021
  395.           BNE   INTINICN      Go if not FULLSCREEN              @SC93021
  396.           LA    0,4           Wait four seconds to synchronize  @SC93021
  397.           KCALL SUPFNC,9                                        @SC93021
  398.  INTINICN DS    0H                                              @SC93021
  399.  
  400. ---------------- 93/4/15 -----------------------------------------------
  401. Kermit-TSO now has to face three different linemode environments: the
  402. original non-VTAM line (now seldom seen), normal VTAM LU1 lines, and a
  403. new class of SNA 3770-type lines.  Kermit automatically handles the
  404. first two types by adopting the proper terminal I/O method to get the
  405. necessary control characters out.  These are reflected in the TTY and
  406. VTAMTTY settings for CONTROLLER in Kermit.  Unfortunately, vanilla VTAM
  407. does not let any control characters out for the third type (except,
  408. possibly, BEL).  Therefore, Kermit can work only when VTAM has been
  409. equipped with one of two exit routines, IKTRTX1 or IKTWTX1.  If the
  410. latter is installed (and many sites have it), VTAMTTY is not needed at
  411. all, and TTY will serve for all three types of linemode sessions.  The
  412. following update disables the automatic selection of VTAMTTY.
  413.  
  414.  ./ * SC93105 - Disable VTAMTTY selection: IKTWTX1 installed (TSO)
  415.  ./ D 05732500                                                  ->4.3<-
  416.  
  417. Alternatively, either with or without IKTWTX1, VTAM will permit control
  418. characters through the third class of lines when the IKTRTX1 exit is
  419. installed.  Apparently, the widely used version of IKTWTX1 distributed
  420. by the SAS Institute will work when simply renamed IKTRTX1.  Also, the
  421. following code will serve.
  422.  
  423. IKTRTX1  CSECT
  424.          USING *,15
  425.          TM    9(1),X'30'    CHECK TPUT OPTION
  426.          BNM   RTRN0         NOT CONTROL - ALLOW EDITING
  427.          TM    9(1),X'20'
  428.          BZ    RTRN0         NOT CONTROL
  429.          LA    15,4          CONTROL - NO EDITING
  430.          BR    14
  431. RTRN0    SR    15,15
  432.          BR    14
  433.          END
  434.  
  435. ---------------- 93/9/20 -----------------------------------------------
  436. When issuing the STOP command to get out of Kermit protocol mode, it may
  437. be necessary to hit the CLEAR EOL (not the CLEAR) key so that Kermit-370
  438. will recognize the command.  In general, if the word "stop" is echoed to
  439. the screen as you type it, and if there is already stuff on that same
  440. line, that previous stuff will be sent to the host when you hit ENTER.
  441. To prevent that, you must clear it without causing an interrupt, i.e.,
  442. without using the CLEAR key.
  443.  
  444. ---------------- 94/6/15 -----------------------------------------------
  445. Since the introduction of Kermit-370 for TSO, it has been a true
  446. Command Processor, reading its subcommands from the stack.  However,
  447. the original TSO Kermit read directly from the terminal.  Any site with
  448. Kermit applications requiring that Kermit not gobble up the stack, if
  449. any, can install the following update (thanks to Axel Skough).
  450. Alternatively, such applications can stack a QUIT before invoking Kermit
  451. with command-line arguments.
  452.  
  453.  ./ * SS94137 - preserve stacked commands for 1.0-compatibility (TSO)
  454.  ./ I 05430000          $ 5430100 100                  05/17/94 12:00:00
  455.           BZ    RTRN0         Do not "eat" beyond substack      @SS94137
  456.           ICM   0,3,0(1)      Check length                      @SS94137
  457.           BZ    RTRN0         Respect barrier element           @SS94137
  458.  ./ R 05438000          $ 5438000 100                  05/17/94 12:00:00
  459.                 SUBSTACK=YES,MF=(E,IOPLAREA)                    @SS94137
  460.  ./ R 05530000          $ 5530000 100                  05/17/94 12:00:00
  461.                 SUBSTACK=YES,MF=(E,IOPLAREA)                    @SS94137
  462.  ./ I 05744000          $ 5744100 100                  05/17/94 12:00:00
  463.           LA    0,APGPB       Adr of GTPB                       @SS94137
  464.           ST    0,IOPLIOPB-IOPL+IOPLAREA                        @SS94137
  465.           STACK MF=(E,IOPLAREA),PARM=STK0 Set up barrier        @SS94137
  466.  ./ I 05768000          $ 5768100 100                  05/17/94 12:00:00
  467.           LA    0,APGPB       Adr of GTPB                       @SS94137
  468.           ST    0,IOPLIOPB-IOPL+IOPLAREA                        @SS94137
  469.           STACK MF=(E,IOPLAREA),PARM=STK1 Delete barrier        @SS94137
  470.  ./ I 05778000          $ 5778100 100                  05/17/94 12:00:00
  471.  STK0     STACK MF=L,BARRIER=*        Set up barrier            @SS94137
  472.  STK1     STACK MF=L,DELETE=BARRIER   Remove barrier            @SS94137
  473.  
  474. ---------------- 95/11/2 -----------------------------------------------
  475. Kermit-TSO looks for the personal INIT file under the name KERMINI,
  476. which normally is found under the top-level qualifier of the userid.
  477. However, if you run Kermit after issuing a PROFILE NOPREFIX or set a
  478. prefix other than the userid, Kermit will look wherever the prefix
  479. indicates.  Such behavior is perhaps not ideal, but it is enshrined by
  480. long tradition.  Kermit initializes its own PREFIX to whatever the user
  481. profile has.  Here is an optional update that should force Kermit to
  482. look only under the userid:
  483.  
  484.  ./ * SC95306 - Use 'userid.KERMINI' for private init file (TSO)
  485.  ./ I 00994500          $ 994600 100                   11/02/95 00:04:35
  486.  USRTAKE  DS    C'''xuserid.KERMINI''' INIT file                @SC95306
  487.  LUSRT    DS    H                                               @SC95306
  488.  ./ D 01020000 01020500                                11/02/95 00:04:35
  489.  ./ R 01077000          $ 1077000 100                  11/02/95 00:04:35
  490.   MNOTE '---        IKJCPPL, IKJECT, IKJGTPB, IKJIOPL,'         @SC95306
  491.   MNOTE '---        IKJPSCB, IKJUPT,'                           @SC95306
  492.  ./ I 01081500          $ 1081700 200                  11/02/95 00:04:35
  493.           IKJPSCB ,                                             @SC95306
  494.  ./ R 03006000          $ 3006000 100                  11/02/95 00:04:35
  495.           LH    1,LUSRT       Length of name                    @SC95306
  496.  ./ I 05709500          $ 5709550 50                   11/02/95 00:04:10
  497.           L     2,CPPLPSCB    Get ptr to PSCB                   @SC95306
  498.           USING PSCB,2                                          @SC95306
  499.           XR    3,3                                             @SC95306
  500.           IC    3,PSCBUSRL    Get length of userid              @SC95306
  501.           MVI   USRTAKE,C''''                                   @SC95306
  502.           MVC   USRTAKE+1(7),PSCBUSER Move userid               @SC95306
  503.           LA    4,USRTAKE+1(3) Advance over userid              @SC95306
  504.           MVC   0(L'DKERMINI,4),DKERMINI                        @SC95306
  505.           LA    3,1+L'DKERMINI(,3)                              @SC95306
  506.           STH   3,LUSRT       Length of string                  @SC95306
  507.  
  508. ------------------------------------------------------------------------
  509. D) Resolved problems ...................................................
  510.  
  511. ---------------- 90/5/8 ------------------------------------------------
  512. A commonly reported "problem" is that Kermit-TSO objects to a send
  513. packet size greater than 94, and users wonder how to turn on long-packet
  514. protocol for downloads.  The answer is that the the maximum packet size
  515. in Kermit protocol is always dictated by the receiving Kermit -- ALWAYS.
  516. NOTHING YOU CAN SAY TO A SENDING KERMIT WILL EVER MAKE IT SEND PACKETS
  517. LONGER THAN THE RECEIVING KERMIT ASKS FOR.  Conversely, Kermit-TSO will
  518. always use packets as long as possible unless frequent transmission
  519. errors indicate a noisy communication line.  The only purpose for the
  520. send packet-size parameter in Kermit-TSO is to set the default, in case
  521. the receiving Kermit is badly crippled (in which case, long packets are
  522. entirely out of the question anyway), or to control "raw" downloads
  523. (those without Kermit protocol and parameter negotiation).
  524.  
  525. ---------------- 90/6/22 -----------------------------------------------
  526. Kermit-370 supports file transfers through the IBM 3174 AEA with level 2
  527. microcode in configuration B.  The support is restricted to terminal
  528. types defined in the 3174 to have ASCII Graphics capability.  That
  529. capability is available by default only for VT241 and Tektronix 4205
  530. terminals, but user-defined terminal types are also possible.  Also, the
  531. Graphics capability is allowed only for lines defined without associated
  532. Host Addressible Printers.  Kermit-370 now automatically detects the B2
  533. AEA and sets CONTROLLER accordingly (to AEA if Graphics is allowed, to
  534. NONE if not).  However, if the 3174 is owned by VTAM, and the connection
  535. is made with a logmode that forbids the Read Partition Query (such as
  536. M2SDLCNQ), Kermit cannot detect the AEA and will default to CONTROLLER
  537. GRAPHICS (and, incidentally, cannot transfer files even with CONTROLLER
  538. set to AEA by hand).  M2SDLCQ is known to allow correct operation, but
  539. other logmodes have not been tested.  Since the 3174 supports full 8-bit
  540. communication, it may be useful to configure the ports for 8-bit data
  541. and to set both SEND and RECEIVE PARITY to NONE in Kermit-370.  The fix:
  542. SC90173.  Note: B2 microcode became available from IBM in May 1990.  B3
  543. followed soon afterward, and it supports file transfer the same way as
  544. B2.
  545.  
  546. ---------------- 94/3/15 -----------------------------------------------
  547. Kermit-370 now sends an explicit NAK packet when it receives a bad data
  548. packet, instead of resending the previous ACK (which is nominally the
  549. same thing in Kermit protocol).  This way, there are no needless
  550. timeouts when dealing with a zealous sliding-windows Kermit.  The fix:
  551. SC94074 in IKTKER.UPD.
  552.  
  553. ---------------- 94/6/23 -----------------------------------------------
  554. Kermit-370 honors a new protocol feature known as "WHATAMI".  Thus, when
  555. Kermit-370 is in server mode, the user can issue a SET FILE TYPE to the
  556. local Kermit and have it take effect in the server as well.  The local
  557. Kermit obviously must also support WHATAMI.  The fix: SC94174 in
  558. IKTKER.UPD.  See also the note in section (C) dated 90/7/5.
  559.  
  560. ---------------- 94/6/30 -----------------------------------------------
  561. Kermit-370 honors the new level-1 restart/recovery mode.  When a
  562. similarly equipped Kermit is at the other end, an interrupted binary
  563. transfer can be resumed where it left off by issuing a RESEND instead of
  564. a SEND (same syntax).  Attributes must be enabled at both ends of the
  565. transfer, and the sender must be set to binary (V-BINARY and D-BINARY
  566. are also acceptable).  If the file in question is already fully received
  567. at the other end, RESEND does nothing; if the file is not even partially
  568. received, RESEND behaves just like SEND.  In order to insure that the
  569. partial file is not erased when a transfer aborts, it is helpful to
  570. issue a SET INCOMPLETE KEEP to the receiving Kermit.  Kermit-370 now
  571. also supports the UPDATE option of FILE COLLISION.  With that option, a
  572. received file is rejected (on grounds of "date") if the transmitted time
  573. stamp is no later than that of an existing file of the same name.  The
  574. fix: SC94181 in IKTKER.UPD.
  575.  
  576. ---------------- 94/9/3 ------------------------------------------------
  577. Kermit-370 gives more accurate transfer statistics after uploads in
  578. server mode.  Formerly, the time used in figuring transfer rates
  579. included any waiting time after the transfer completed but before the
  580. next inter-Kermit communication (result: understimated efficiency).
  581. The fix: SC94245 in IKTKER.UPD.
  582.  
  583. ---------------- 95/1/23 -----------------------------------------------
  584. Kermit-370 misbehaved when doing a RESEND of a file that was already
  585. entirely received on the target system.  If the length matched exactly
  586. that of the file to be sent, the whole thing would be sent again and
  587. appended.  That is now corrected.  Also, Kermit-370 now has the APC
  588. subcommand for sending Kermit commands to the micro while in connect
  589. mode.  The fix: SC95023 in IKTKER.UPD.
  590.  
  591. ---------------- 95/2/1 ------------------------------------------------
  592. Kermit-370 objected to receiving a RESEND of a file too large to fit on
  593. disk without removing the portion already received.  It now takes into
  594. account the fact that that portion will not be duplicated.
  595. The fix: SC95032 in IKTKER.UPD.
  596.  
  597. ---------------- 95/2/2 ------------------------------------------------
  598. Kermit-370 is now at level 4.3.1.
  599.  
  600. ---------------- 95/2/28 -----------------------------------------------
  601. Kermit-370 now uses the newly-transmitted time tag for a file that is
  602. resumed after an abortive transfer.  The fix: SC95059 in IKTKER.UPD.
  603.  
  604. ---------------- 95/4/18 -----------------------------------------------
  605. Kermit-370 no longer treats an error-free file transfer as an "error"
  606. for the purpose of deciding whether to halt execution of a TAKE file.
  607. The fix: SC95108 in IKTKER.UPD.
  608.  
  609. ---------------- 95/6/23 -----------------------------------------------
  610. Kermit-370 now supports the REGET subcommand, which works like GET, but
  611. makes the server do a RESEND of the requested file.  The fix: SC95174 in
  612. IKTKER.UPD.
  613.  
  614. ---------------- 95/10/10 ----------------------------------------------
  615. Kermit-TSO has been unable to set the working "directory" to a PDS ever
  616. since support was added for GDG's.  The fix: SC95283 in IKTKER.UPD.
  617.  
  618. ---------------- 96/5/1 ------------------------------------------------
  619. Kermit-370 now suppresses the "doubled" transmission of a file that can
  620. sometimes occur on a flaky connection.  (This was a problem introduced
  621. in the process of avoiding unnecessary time-outs on flaky lines.) The
  622. fix: SC96122 in IKTKER.UPD.
  623.  
  624. ---------------- 96/5/30 -----------------------------------------------
  625. Kermit-370 now announces its system type to the other Kermit before a
  626. transfer.  This meshes with new versions of the various micro Kermits
  627. that expect that information and will display it to the transfer screen.
  628. The fix: SC96151 in IKTKER.UPD.
  629.  
  630. ---------------- 96/6/6 ------------------------------------------------
  631. Kermit-370 has been modified to take advantage of another recent upgrade
  632. to micro Kermits -- it will be possible to issue a SEND or GET to the
  633. mainframe Kermit, and the micro will automatically pop from terminal
  634. emulation into transfer mode and then revert to emulation as soon as the
  635. transfer is done.  The fix: SC96158 in IKTKER.UPD.
  636.  
  637. ---------------- 96/6/13 -----------------------------------------------
  638. Kermit-TSO has been updated to comply with the conventions for time tags
  639. beyond 1999.  Kermit-TSO still makes no attempt to set the creation date
  640. of a received data set to match the date received along with the file.
  641. The fix: SC96165 in IKTKER.UPD.
  642.  
  643. ---------------- 97/1/28 -----------------------------------------------
  644. Kermit-370 was failing to clear the "Kermit command error" status upon
  645. execution of the VERSION and ECHO subcommands.  It now clears that
  646. status condition to "No errors" after all subcommands, as described in
  647. the documentation.  The fix: SC97028 in IKTKER.UPD.
  648.  
  649. ---------------- 97/6/13 -----------------------------------------------
  650. Kermit-370 is now at level 4.3.2.
  651.  
  652. ---------------- 97/7/23 -----------------------------------------------
  653. The installation batch job promises to work regardless of the DCB
  654. parameters of the source files, but that was not quite true.  Two files
  655. had to be FB/80 to assemble properly.  The batch job has now been
  656. changed to remove that restriction.
  657.  
  658. ---------------- 99/2/12 -----------------------------------------------
  659. When downloading some PDS members, such as load modules and certain
  660. other non-ISPF files, Kermit-TSO is now more insistent on transmitting
  661. the PDS MOD date, if any, instead of the creation date, as the time tag.
  662. The fix: SC99043 in IKTKER.UPD.
  663.  
  664. Kermit-TSO is now at level 4.3.3.
  665.  
  666. ---------------- 99/3/11 -----------------------------------------------
  667. TSO sessions would sometimes hang while doing a Kermit transfer.  The
  668. problem lies in VTAM 4.4.1.  The fix: PTF UW49973 from IBM.
  669.  
  670. ------------------------------------------------------------------------
  671.