Article ID: 191625
Article Last Modified on 10/28/2006
APPLIES TO
- Microsoft SNA Server 3.0 Service Pack 4
- Microsoft SNA Server 4.0
- Microsoft SNA Server 3.0 Service Pack 2
- Microsoft SNA Server 3.0 Service Pack 3
- Microsoft SNA Server 4.0 Service Pack 1
- Microsoft SNA Server 4.0
This article was previously published under Q191625
SYMPTOMS
The TN3270 server included with SNA Server may incorrectly reject a valid BIND with an IBM Sense Code of 0821. The SNA Server computer logs the following event in the Windows NT Application Event Log when this occurs:
Event ID: 21 Source: SNA Server Description: (1124) Negative Response Sent on Connection <connection name> (SENSE = 821).
This was reported by a customer who was using a TN3287 session to access an LU1 print session on the mainframe.
CAUSE
The TN3270 server checks incoming BINDs to verify certain BIND parameters. One of the validity checks done is to see whether Byte 7 (Common LU Protocols) of the BIND is set to x'80'. If this byte is set to any other value, the TN3270 server rejects it with IBM Sense Code 0821, which indicates invalid session parameters.
In the reported instance of this problem, the LU1 BIND from the mainframe had Byte 7 set to x'88', therefore it was being rejected.
RESOLUTION
SNA Server 3.0
To resolve this problem, obtain the latest service pack for SNA Server version 3.0. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:
184307 How to Obtain the Latest SNA Server Version 3.0 Service Pack
SNA Server 4.0
This problem was corrected in the latest SNA Server version 4.0 U.S. Service Pack. For information on obtaining this Service Pack, query on the following word in the Microsoft Knowledge Base (without the spaces):
S E R V P A C K
WORKAROUND
This problem can be resolved by changing the BIND such that Byte 7 is set to x'80'. Byte 7 of the BIND (Common LU Protocols) is set by the second byte of the COMPROT parameter of the Log Mode Table (MODEENT) being used by the LU on the mainframe. A normal COMPROT value for an LU1 (SCS) printer is x'3080'. In the reported case, COMPROT was set to x'7088' which resulted in Byte 7 of the BIND being set to x'88'.
STATUS
Microsoft has confirmed that this is a problem in SNA Server versions 3.0,3.0 SP1, 3.0 SP2, 3.0 SP3, 4.0, and 4.0 SP1. This problem was first corrected in SNA Server 3.0 Service Pack 4.
MORE INFORMATION
The TN3270 server only needs to check the first four bits of Byte 7 in the BIND. The hotfix changes the BIND checking mechanism so that only the first four bits of Byte 7 are checked. The last four bits of this Byte are then ignored.
The following is a sample LU1 BIND that the TN3270 server rejects unless the hotfix is applied:
DLC 04160000->01020101 DLC DATA DLC DAF:03 OAF:01 ODAI:off Exp. DLC BIND RQD SC FI BC EC DR1 DLC DLC ---- Header at address 01454140, 1 elements ---- DLC 09020100 00012D00 030104CF 0100E600 <......-.......W.> DLC DLC ---- Element at address 0194B6D8, start 10, end 49 ---- DLC 6B800031 010303B1 90708800 0185C780 <k..1.....ph..eG.> DLC 00010000 01E10000 00000000 000008C3 <...............C> DLC D6D4D7D3 C5E3F600 <OMPLET6.>
Byte 7 of this BIND (where Byte 0 is x'31') is set to x'88'.
Please refer to the following for more information on the format of the BIND as well as the 0821 Sense Code:
- IBM SNA Formats Guide (GA27-3136)
Keywords: kbbug kbfix KB191625