SSL 程序报告错误的最大缓冲区大小

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

300562
本文已归档。它按“原样”提供,并且不再更新。
症状
安全套接字层 (SSL) 实现 (Schannel.dll) 报告的不正确的缓冲区大小的程序,如下面的代码片段中所述:
SecPkgContext_StreamSizes MySPCSS;if ( SEC_E_OK == QueryContextAttributes(	phContext,	SECPKG_ATTR_STREAM_SIZES,	(PVOID)&MySPCSS) ){	// MySPCSS.cbMaximumMessage is 16379, instead of 16384}				
例如,如果 Pine IMAP 客户端将消息发送到 Microsoft Exchange Server 计算机,将问题出现就好像它是 IMAP 函数来将已发送的邮件仅添加到已发送邮件文件夹中。邮件获取到 Microsoft Outlook Express 或 $ Netscape Messenger 客户端不会有问题。

当您使用 SSL,或如果邮件是大于 16,000 个字节,会出现问题。如果它是超出限制,并且您正在使用 SSL 它适用于 Outlook Express 和 $ Netscape Messenger 客户端。当您从 Pine 客户端发送时,它可以处理在使用服务器而不是 Exchange Server 计算机时。
原因
SSL 实现 (Schannel.dll) 传回给程序的最大缓冲区大小不正确。问题在于该 Schannel.dll 的最大邮件大小为 16,384 的 SSL 规范小于 5 个字节。
解决方案
若要解决此问题,获得最新的 service pack,对于 Windows 2000。有关更多的信息请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
260910如何获取最新的 Windows 2000 服务软件包
此修复程序的英文版应具有以下文件属性或更高版本:
   Date         Time   Version      Size     File name   ---------------------------------------------------------------   27-Aug-2001  13:12  5.0.2195.42  355,088  Advapi32.dll   27-Aug-2001  13:12  5.0.2195.41  135,440  Dnsapi.dll   27-Aug-2001  13:12  5.0.2195.36   94,992  Dnsrslvr.dll   27-Aug-2001  13:13  5.0.2195.42  525,072  Instlsa5.dll   27-Aug-2001  13:13  5.1.2195.0   163,600  Instsch5.dll   27-Aug-2001  13:12  5.0.2195.41  143,120  Kdcsvc.dll   07-Aug-2001  13:03  5.0.2195.40  197,392  Kerberos.dll   26-Jun-2001  22:16  5.0.2195.37   69,456  Ksecdd.sys   24-Aug-2001  00:26  5.0.2195.42  507,152  Lsasrv.dll   24-Aug-2001  00:26  5.0.2195.42   33,552  Lsass.exe   27-Aug-2001  13:12  5.0.2195.41  306,448  Netapi32.dll   27-Aug-2001  13:12  5.0.2195.41  358,160  Netlogon.dll   27-Aug-2001  13:12  5.0.2195.42  910,096  Ntdsa.dll   27-Aug-2001  13:12  5.0.2195.42  386,320  Samsrv.dll   27-Aug-2001  13:12  5.0.2195.41  128,784  Scecli.dll   27-Aug-2001  13:12  5.0.2195.36  299,792  Scesrv.dll   27-Aug-2001  13:03  5.1.2195.0   145,680  Schannel.dll   27-Aug-2001  13:12  5.0.2195.40   48,400  W32time.dll   01-Aug-2001  23:44  5.0.2195.40   56,592  W32tm.exe   24-Aug-2001  00:26  5.0.2195.42  507,152  Lsasrv.dll   [56bit]   27-Aug-2001  13:03  5.1.2195.0   146,192  Schannel.dll [56bit]				

状态
Microsoft 已经确认这是在本文开头列出的 Microsoft 产品中的问题。Windows 2000 Service Pack 3 中,第一次已得到纠正此问题。
更多信息
此修补程序可能副作用是该程序的发送缓冲区也增加了。这意味着使用 Schannel.dll 文件该 progrmas 可能开始发送变大一些比它们是在您应用此修补程序之前的数据包。与但尚未应用此修补程序的计算机进行通信的过程中,这可能会导致互操作性问题。

有关如何一次安装 Windows 2000 和 Windows 2000 修补程序的其他信息请单击下面文章编号,以查看 Microsoft 知识库中相应的文章:
249149安装 Microsoft Windows 2000 和 Windows 2000 程序修补程序

警告: 本文已自动翻译

属性

文章 ID:300562 - 上次审阅时间:10/24/2013 06:52:45 - 修订版本: 2.3

  • Microsoft Windows 2000 Server SP1
  • Microsoft Windows 2000 Advanced Server SP1
  • Microsoft Windows 2000 Professional SP1
  • Microsoft Windows NT Server 4.0 Standard Edition
  • Microsoft Windows NT Workstation 4.0 开发员版
  • kbnosurvey kbarchive kbmt kbhotfixserver kbqfe kbbug kbenv kbfix kbsecurity kbwin2000presp3fix kbwin2000sp3fix KB300562 KbMtzh
反馈