home *** CD-ROM | disk | FTP | other *** search
/ Network Support Encyclopedia 96-1 / novell-nsepro-1996-1-cd2.iso / download / netware / strtl3.exe / STRTL3.TXT
Text File  |  1994-08-01  |  13KB  |  375 lines

  1.  
  2.               NOVELL TECHNICAL INFORMATION DOCUMENT
  3.  
  4. TITLE:              STREAMS, TLI, SPXS, IPXS NLM Update
  5. DOCUMENT ID:        TID014113
  6. DOCUMENT REVISION:  C
  7. DATE:               01AUG94
  8. ALERT STATUS:       Yellow
  9. INFORMATION TYPE:   Symptom Solution
  10. README FOR:         STRTL3.EXE
  11.  
  12. NOVELL PRODUCT and VERSION:
  13. NetWare 3.11
  14. NetWare 3.12
  15. NetWare 4.01
  16. NetWare SFT III 3.11
  17. NetWare Asynchronous Communication Services (NACS) 3.0
  18. NetWare for SAA 1.2
  19. NetWare for SAA 1.3
  20.  
  21. ABSTRACT:
  22.  
  23. STRTL3.EXE contains all the fixed and patches found in STRTL1.EXE and
  24. STRTL2.EXE plus some new fixes and patches to handle all SPX, TLI, and STREAMS
  25. communication and server problems.  Symptom solution information for the
  26. current patches and a history of previous patches are included in this
  27. document.
  28.  
  29. ------------------------------------------------------------------------------
  30. DISCLAIMER
  31. THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL.  NOVELL
  32. MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION.  HOWEVER, THE
  33. INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY.  NOVELL
  34. MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION.
  35. ------------------------------------------------------------------------------
  36. ____________________________________
  37. SYMPTOM
  38.  
  39. The system hangs.
  40.  
  41. SYMPTOM
  42.  
  43. When both ends try to send disconnect request, race conditions occur.
  44.  
  45. SOLUTION
  46.  
  47. Apply the new SPXS.NLM.
  48.  
  49. ____________________________________
  50. SYMPTOM
  51.  
  52. After SPX terminated a connection, the following abend message was displayed:
  53.  
  54. MESSAGE
  55.  
  56.      MS Engine was handed an ECB it did not own
  57.  
  58. CAUSE
  59.  
  60. A race condition and error exit path existed.
  61.  
  62. SOLUTION
  63.  
  64. Make sure the terminate ack was being returned to the LSL through IPX, rather
  65. than being posted to the application socket.
  66.  
  67. Apply SPXFIX2.NLM and SPXSFT1.NLM files included in this document.
  68.  
  69. ____________________________________
  70. SYMPTOM
  71.  
  72. When SPX was terminating a connection, it was failing with an 0xEC rather than
  73. 0xED status.
  74.  
  75. SOLUTION
  76.  
  77. Make sure the state check to toss data packets coming into a terminating
  78. connection did not toss the ACK.
  79.  
  80. Apply the SPXSFT2.NLM.
  81.  
  82. ____________________________________
  83. SYMPTOM
  84.  
  85. SPX ignored a terminate ACK.
  86.  
  87. CAUSE
  88.  
  89. A problem was introduced in SPXDDFIX 1.0.
  90.  
  91. SOLUTION
  92.  
  93. Apply SPXDDFIX.NLM 2.0.
  94.  
  95. SPXDDFIX.NLM 2.0 correctly handles the terminate acknowledgement packet.
  96.  
  97. ____________________________________
  98. SYMPTOM
  99.  
  100. If the session did not exist, SPX failed to interpret terminate ACKs as system
  101. packets.
  102.  
  103. CAUSE
  104.  
  105. When an application errors out because the session does not exist, SPX posts
  106. the system buffer to the socket rather than returning it to the Link Support
  107. Layer (LSL).
  108.  
  109. SOLUTION
  110.  
  111. Apply the SPXNSFIX.NLM and SPXNSSFT.NLM.
  112.  
  113. Solution Specifics:
  114.  
  115. The SPXNSFIX.NLM for NetWare 4.01, 3.12, and 3.11 and SPXNSSFT.NLM fix the way
  116. that SPX handles the Terminate Acknowledgement packets on sessions that do not
  117. exist.
  118.  
  119. ____________________________________________________________
  120.  
  121. Self-Extracting File Name:  STRTL3.EXE     Revision:  C
  122.  
  123. Files Included     Size     Date      Time
  124.  
  125. \
  126.   STRTL3.TXT         (This File)
  127. \3.1X\
  128.      TLI.NLM      12474   09-14-93   10:43a
  129.     IPXS.NLM       8149   08-10-93    7:53a
  130.     SPXS.NLM      24238   05-17-94    9:58a
  131.  STREAMS.NLM      53566   07-20-93    4:19p
  132. \3.1X\3.11\
  133.   XMDFIX.NLM       1546   02-24-94    8:30a
  134.  SPXFIX2.NLM       1727   11-23-93    9:26a
  135. PATCHMAN.NLM       9632   02-04-93   10:38a
  136. SPXDDFIX.NLM       1151   03-10-94    9:44a
  137. SPXFSFIX.NLM       1155   08-20-93    2:16p
  138. SPXLISFX.NLM       1016   08-20-93    2:22p
  139. SPXMSFIX.NLM        988   02-14-94   10:02a
  140. SPXNSFIX.NLM       1047   05-26-94    8:56a
  141. \3.1X\3.12\
  142.    PM312.NLM       9221   03-24-94   11:06a
  143.  SPXFIX2.NLM       1035   11-23-93    9:13a
  144. SPXCONFG.NLM       4162   07-02-93    9:40a
  145. SPXDDFIX.NLM       1148   03-10-94    9:48a
  146. SPXNSFIX.NLM       1044   05-26-94    8:45a
  147. \3.1X\SFTIII.311\
  148.   MSSHIM.NLM       1524   11-09-93    8:11a  needed for loadind spxs.nlm on ms
  149. engine
  150.  PM311IO.NLM       8335   02-04-94    8:53a  needed for io engine patches.
  151.  SPXSFT1.NLM       3003   11-23-93    9:31a
  152.  SPXSFT2.NLM       3115   06-22-94    8:27a
  153. SPXNSSFT.NLM       2266   05-26-94    9:15a
  154. \4.01\
  155.      TLI.NLM      24795   09-14-93   10:17a
  156.     IPXS.NLM      10363   08-23-93    8:13a
  157.     SPXS.NLM      34630   03-02-94    1:20p
  158.    PM401.NLM       8113   02-03-94    1:09a
  159.  SPXFIX2.NLM       1023   11-23-93    8:52a
  160.  STREAMS.NLM      63201   09-14-93   10:12a
  161. NCPIDFIX.NLM       1837   01-18-94    4:22p
  162. SPXDDFIX.NLM       1112   03-10-94    9:45a
  163. SPXNSFIX.NLM       1060   05-26-94    8:29a
  164.  
  165.  
  166. Installation Instructions:
  167.  
  168. 1.  Make a backup copy of each of these NLMs you are currently running.
  169.  
  170. 2.  Copy the new NLMs into the appropriate directories.
  171.  
  172. 3.  The appropriate Patch Manager must be loaded before the patches are
  173. loaded: PATCHMAN.NLM for NetWare 3.11, PM312 for NetWare 3.12, PM401 for
  174. NetWare 4.01, MSSHIM.NLM, and PM311IO.NLM for NetWare SFT III 3.11.
  175.  
  176. 4.  Load the patches.
  177.  
  178. 5.  In a NetWare 3.11 environment, make sure to replace the SPXFIX1 patch with
  179. the SPXFIX2 patch.
  180.  
  181. Patch History:
  182.  
  183. ==================================================
  184. STRTL2.EXE:
  185.  
  186. ==============================
  187. XMDFIX.NLM
  188. This patch corrects a problem with utilities that use the SPX protocol to
  189. maintain communication with the server.  Typically, the client will lose the
  190. connection to the server and the following message will be displayed:
  191.  
  192. MESSAGE
  193.  
  194.      No more response buffers available
  195.  
  196. This patch also resolves a problem with lost connections never timing out,
  197. because of infinite transmit retries.
  198.  
  199. The most common occurrence is with a remote printer (RPRINTER.EXE) losing its
  200. connection to the print server (PSERVER.NLM); however, this problem may also
  201. occur with other utilities.  The connection is lost when a call to
  202. SPXSendSequencedPacket() resets a session retransmit count that causes it to
  203. fail to abort the connection when the connection is broken in one direction
  204. and maintained in another.
  205.  
  206. ==============================
  207. OTHER ISSUES
  208.  
  209. SPXLISFX.NLM
  210. This patch resolves an extremely poor performance problem for various backup
  211. software or any SPX program that is using a limited amount of receive buffers.
  212. You should use the new SPXLISFX.NLM and SPXS.NLM together.
  213.  
  214. ==============================
  215. NetWare 3.11 and NetWare 3.12 Files (These modules will run on either.)
  216. ____________________________
  217. STREAMS  NLM
  218.  
  219. This is the standard 3.12 release module.
  220. ____________________________
  221. TLI      NLM
  222.  
  223. This patch resolves some internal state checks that caused a Transport Level
  224. Interface (TLI) application to stop functioning.
  225. ____________________________
  226. SPXS     NLM
  227.  
  228. This patch resolves a buffer management problem that caused memory to be lost,
  229. thus increasing the memory allocated by STREAMS in the short-term memory pool.
  230.  
  231. This patch also ensures that the SPX connection has the correct watchdog flag
  232. set that tracks the connection to detect when it fails.
  233. ____________________________
  234. IPXS     NLM
  235.  
  236. This patch allows various applications to send larger packets.
  237.  
  238. ==============================
  239. NetWare 3.11 Files
  240. ____________________________
  241. XMDFIX   NLM
  242.  
  243. If SPX was retransmitting a packet and a new Event Control Block (ECB) was
  244. handed to SPX to transmit, the retransmit code was reset to the maximum limit,
  245. thus causing retransmissions to occur possibly indefinitely.
  246. ____________________________
  247. SPXFIX2  NLM
  248.  
  249. If SPX sent a terminate request (DataStream type 0xfe) when the ACK
  250. (ACKnowledgement code) came back (DataStream type 0xff), the request was
  251. placed in a receive Event Control Block (ECB) posted by the application. 
  252. However, the code did not release this ECB after it was finished and the ECB
  253. was lost.  SPXFIX1 attempted to rectify this problem; however, it also
  254. affected the incoming terminate requests that caused ECBs to get posted twice
  255. to the socket receive list, which caused the ECB to get linked to itself.
  256. ____________________________
  257. SPXFSFIX NLM
  258.  
  259. This patch is a session table bounds check that ensures an invalid session ID
  260. in a packet from the wire will not cause problems.
  261. ____________________________
  262. SPXLISFX NLM
  263.  
  264. This patch fixes a problem with the SPXListenForConnectedPacket function that
  265. was not informing the connection partner when the window was reopened after
  266. being closed.  This problem causes terrible performance problems because the
  267. window would not open again until a WatchDog packet was generated about 3
  268. seconds later.
  269. ____________________________
  270. SPXDDFIX.NLM
  271.  
  272. This patch fixes a problem with the way SPX handles retried connect requests. 
  273. If the connection had already transitioned into SESSION_TERMINATED when the
  274. retry came in, the retry was treated as a new connection request.
  275.  
  276. This patch also fixes a problem where SPX was still acknowledging data packets
  277. that arrived after SPXTerminateConnection was called.  This could lead to
  278. incorrect handling of the data by the application, leaving both endpoints with
  279. different information about the state and completeness of the data.
  280.  
  281. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  282. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  283. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  284.  
  285. ==============================
  286. NetWare 3.12 Files
  287. ____________________________
  288. SPXDDFIX.NLM
  289.  
  290. This patch fixes a problem with the way SPX handles retried connect requests. 
  291. If the connection had already transitioned into SESSION_TERMINATED when the
  292. retry came in, the retry was treated as a new connection request.
  293.  
  294. This patch also fixes a problem where SPX was still acknowledging data packets
  295. that arrived after SPXTerminateConnection was called.  This could lead to
  296. incorrect handling of the data by the application that left both endpoints
  297. with different information about the state and completeness of the data.
  298.  
  299. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  300. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  301. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  302.  
  303. ==============================
  304. NetWare 4.01 Files
  305. ____________________________
  306. STREAMS  NLM
  307. This patch solves the following problems:
  308.  
  309. ■  Some internal timing conditions that caused protocol stacks to stop
  310. functioning.
  311.  
  312. ■  A CLIB relationship problem.  If a new CLIB was loaded without STREAMS
  313. being reloaded, then STREAMS somtimes called the wrong address, which would
  314. probably cause an abend.
  315.  
  316. ■ A NetWare SAA 1.3 problem.  With this patch applied, all Comm Server modules
  317. can unload properly when the csdown command is issued.
  318. ____________________________
  319. TLI      NLM
  320. This patch resolved some internal state checks problems that caused a TLI
  321. application to stop functioning.
  322. ____________________________
  323. IPXS     NLM
  324.  
  325. This patch resolved a problem that caused "System Packet Receive Buffers" to
  326. be lost.
  327.  
  328. This patch also resolved a problem that will now allow various applications to
  329. send larger packets.
  330. ____________________________
  331. SPXS     NLM
  332.  
  333. This patch fixes the following problems:
  334. ■  A lost ECBs problem that occurs when NetWare closes a session and ACKs are
  335. waiting for a send ESR to complete.
  336. ■  Watchdog handling by the session not yet accepted.
  337. ■  Logical size table lookup problems that occur when the initial size was the
  338. "odd ball" (not matching any of the table sizes).
  339. ■  Releasing mp (T_CONN_REQ) after acknowledged while in the "old" SPX mode.
  340. ■  User defined and set data stream-type problems.
  341. ■  Disconnect problems (NetWare retries if discon is the response to conn ind
  342. and not timing out on snddis.)
  343. ■  If the system packet that was sent after the connection request ACK packet
  344. (session accept packet) has been destined to the "old" SPX then was
  345. ACKnowledged by the piggybacked ACK, SPX freed this implicit ACK (data packet)
  346. and treated it as regular ACK.
  347.  
  348. ==============================
  349. NetWare 4.01
  350. ____________________________
  351. SPXDDFIX.NLM
  352.  
  353. This patch fixes a problem with the way SPX handles retried connect requests. 
  354. If the connection had already transitioned into SESSION_TERMINATED when the
  355. retry came in, the retry was treated as a new connection request.
  356.  
  357. This patch also fixes a problem where SPX was still acknowledging data packets
  358. that arrived after SPXTerminateConnection was called.  This could lead to
  359. incorrect handling of the data by the application, which left both endpoints
  360. with different information about the state and completeness of the data.
  361.  
  362. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  363. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  364. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  365.  
  366. ----------------------------------------------------------------
  367. Any trademarks referenced in this document are the property of their
  368. respective owners.  Consult your product manuals for complete trademark
  369. information.
  370. ----------------------------------------------------------------
  371.  
  372.  
  373.  
  374.  
  375.