DCOM IStream::Write() Corrupts Data with No Error Return (269874)



The information in this article applies to:

  • Microsoft Windows Millennium Edition
  • Microsoft Windows 98 Second Edition
  • Microsoft Windows 98
  • Microsoft Windows 95
  • Microsoft Distributed Component Object Model (DCOM) 1.2

This article was previously published under Q269874

SYMPTOMS

When you use the Component Object Model (COM) IStream::Write method, data can be corrupted and return no error message if the following conditions are met:
  • The underlying TCP connection times out and is disconnected.
  • The OSF_CCONNECTION object in use recovers the connection, and resends the current data buffer.
Under these conditions, the last 40 bytes of all unacknowledged TCP packets on the original socket may become corrupted.

CAUSE

This problem exists in the Remote Procedure Call (RPC) run-time DLL (Rpcrt4.dll), which does not properly preserve submitted data blocks for possible retransmission.

RESOLUTION

A supported hotfix is now available from Microsoft, but it is only intended to correct the problem that this article describes. Apply it only to systems that are experiencing this specific problem.

To resolve this problem, contact Microsoft Product Support Services to obtain the hotfix. For a complete list of Microsoft Product Support Services telephone numbers and information about support costs, visit the following Microsoft Web site:Note In special cases, charges that are ordinarily incurred for support calls may be canceled if a Microsoft Support Professional determines that a specific update will resolve your problem. The usual support costs will apply to additional support questions and issues that do not qualify for the specific update in question.

The English version of this fix should have the following file attributes or later:
   Date        Time    Version      Size     File name 
   ----------------------------------------------------
   09/25/2000  11:48p  4.71.3336.0  329,488  Rpcrt4.dll
				

Note that the Windows 95 package also updates the Dcomcnfg.exe and Ciscnfg.exe utilities (these are from Dcom95cfg.exe, which is integral to the update package).

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

For additional information about related IStream methods, click the article number below to view the article in the Microsoft Knowledge Base:

271626 DCOM IStream::Read() Blocks on Connection Time Out

For additional information about Windows 95 hotfixes, click the article number below to view the article in the Microsoft Knowledge Base:

161020 Implementing Windows 95 Updates

For additional information about Windows 98 and Windows 98 Second Edition hotfixes, click the article number below to view the article in the Microsoft Knowledge Base:

206071 General Information on Windows 98 and SE Hotfixes

For additional information about Windows Me hotfixes, click the article number below to view the article in the Microsoft Knowledge Base:

295413 General Information About Windows Millennium Edition Hotfixes


Modification Type:MinorLast Reviewed:10/18/2005
Keywords:kbHotfixServer kbQFE kbprb kbQFE KB269874