XADM: An Access Violation Occurs in Exchange 2000 Components That Are Generated in DSAccess.dll

This article was previously published under Q323523
This article has been archived. It is offered "as is" and will no longer be updated.
SYMPTOMS
An access violation may occur in ~CDNEntry (the destructor for the CDNEntry class object). This access violation may occur in the information store, the Simple Mail Transfer Protocol (SMTP) service (Inetinfo.exe or Exsmtp.dll), the system attendant (MAD), or Windows Management Services.
CAUSE
This problem may occur if a handle is corrupted. This corruption occurs if a directory object is returned to the Exchange services, and that directory object has an access control list (ACL) (ntSecurityDescriptor) and three other variable attributes that combine to equal exactly 32,768 bytes.

User objects that are smaller than 32 kilobytes (KB) are cached and disposed of correctly. User objects with attributes that equal more than 32 KB are not cached. Therefore, in both of these cases, handles are not corrupted.

If a handle is corrupted, a pointer is dereferenced to a NULL value. Exchange 2000 tries to free that memory at that location. Because that memory is not allocated, and the address that the pointer points to is not valid, the process generates an unhandled exception of type 0xC0000005 (Access Violation).
RESOLUTION
To resolve this problem, obtain the latest service pack for Microsoft Exchange 2000 Server. For additional information, click the following article number to view the article in theMicrosoft Knowledge Base:
301378 XGEN: How to Obtain the Latest Exchange 2000 Server Service Pack
Component: Information store, MAD, EXMGMT

The English version of this fix has the file attributes (or later) that are listed in the following table. The dates and times for these files are listed in coordinated universal time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time tool in Control Panel.

File nameVersion
Ccmproxy.dll6.0.5771.10
Davex.dll6.0.5771.10
Drviis.dll6.0.5771.10
Dsaccess.dll6.0.5771.10
Dscmsg.dll6.0.5771.10
Excdo.dll6.0.5771.10
Eximap4.dll6.0.5771.10
Exmgmt.exe6.0.5771.10
Exnntp.dll6.0.5771.10
Exoledb.dll6.0.5771.10
Expop3.dll6.0.5771.10
Exproto.dll6.0.5771.10
Exprox.dll6.0.5771.10
Exres.dll6.0.5771.10
Exsmtp.dll6.0.5771.10
Exsp.dll6.0.5771.10
Exwmi.dll6.0.5771.10
Febecfg.dll6.0.5771.10
Iisif.dll6.0.5771.10
Iisproto.dll6.0.5771.10
Imap4be.dll6.0.5771.10
Imap4evt.dll6.0.5771.10
Imap4fe.dll6.0.5771.10
Imap4svc.dll6.0.5771.10
Inproxy.dll6.0.5771.10
Jcb.dll6.0.5771.10
Mad.exe6.0.5771.10
Madmsg.dll6.0.5771.10
Mdbmsg.dll6.0.5771.10
Mdbsz.dll6.0.5771.10
Msgtrack.dll6.0.5771.10
Nntpex.dll6.0.5771.10
Pcproxy.dll6.0.5771.10
Phatcat.dll6.0.5771.10
Pop3be.dll6.0.5771.10
Pop3evt.dll6.0.5771.10
Pop3fe.dll6.0.5771.10
Pop3svc.dll6.0.5771.10
Protomsg.dll6.0.5771.10
Store.exe6.0.5771.10
X400prox.dll6.0.5771.10

STATUS
Microsoft has confirmed that this is a problem in Microsoft Exchange 2000 Server. This problem was first corrected in Microsoft Exchange 2000 Server Service Pack 3.
MORE INFORMATION
Although Microsoft does not discourage you from using large ACLs, note that in an Exchange 2000 organization, you can obtain significant performance improvements if you keep your user ACLs smaller than approximately 30 KB. Exchange 2000 does not cache user attributes that are larger than 32 KB. If users are not cached, Exchange 2000 has to retrieve those users from Active Directory more frequently. Therefore, those users generate more network traffic and put a heavier load on your domain controllers. The Exchange 2000 server has to wait for the Lightweight Directory Access Protocol (LDAP) call to return from the domain controller for every directory query. This causes Exchange Server performance to be less than optimal.
ACL
Properties

Article ID: 323523 - Last Review: 10/26/2013 17:12:45 - Revision: 3.2

  • Microsoft Exchange 2000 Server Service Pack 2
  • Microsoft Exchange Server 2000 Service Pack 1
  • kbnosurvey kbarchive kbbug kbexchange2000presp3fix kbexchange2000sp3fix kbfix KB323523
Feedback