Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

You cannot synchronize an Exchange mailbox after you update an Apple iOS device to iOS 7.0


View products that this article applies to.

Symptoms

Consider the following scenario:
  • A user has a mailbox that is hosted on Microsoft Exchange Server 2010 or Microsoft Exchange Server 2013.
  • The user updates an Apple iOS device to iOS 7.0.
  • The user tries to synchronize their iOS 7.0-based device with their Exchange Server mailbox.
In this scenario, the user cannot synchronize their iOS 7.0-based device with the mailbox that is hosted on Exchange Server. Additionally, the following event is logged in the Application log on the Exchange Server 2010 computer or Exchange Server 2013 computer that has the Client Access role:

ID: 4999
Level: Error
Source: MSExchange Common
Message: Watson report about to be sent for process id: <process ID>, with parameters: E12, <build type>, <application version>, AirSync, M.Exchange.Compliance, M.E.S.C.MessageDigestForNonCryptographicPurposes.HashCore, System.ArgumentOutOfRangeException, <callstackHash>, <assembly version>.

Also, an error message that resembles the following is logged in the Exchange ActiveSync log.

Note This Status 110 error for the Provision command may appear many times if the iOS 7.0-based device repeatedly sends the Provision command after a server exception is returned. In testing, some iOS devices sent the Provision command more than 2,000 times, even after continual failure.

AssemblyVersion :
14.02.0328.009

Identifier :
4D7D0057

RequestHeader :
POST /Microsoft-Server-ActiveSync/default.eas?User=johndoe&DeviceId=ApplDMPGH8DWDFJ3&DeviceType=iPad&Cmd=Provision HTTP/1.1
Connection: keep-alive
Content-Length: 136
Content-Type: application/vnd.ms-sync.wbxml
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-us
Authorization: ********
Cookie: Cookie=R3437444435
Host: contosocas.com
User-Agent: Apple-iPad2C2/1101.465
MS-ASProtocolVersion: 14.1

RequestBody :
<?xml version="1.0" encoding="utf-8" ?>
<Provision xmlns="Provision:">
<DeviceInformation xmlns="Settings:">
<Set>
<Model>iPad2C2</Model>
<UserAgent>iOS/7.0 (11A465) dataaccessd/1.0</UserAgent>
<OS>iOS 7.0 11A465</OS>
<OSLanguage>en</OSLanguage>
<FriendlyName>Black iPad 2</FriendlyName>
</Set>

</DeviceInformation>
<Policies>
<Policy>
<PolicyType>MS-EAS-Provisioning-WBXML</PolicyType>
</Policy>
</Policies>
</Provision>

Command_WorkerThread_Exception :
--- Exception start ---
Exception type: System.ArgumentOutOfRangeException
Exception message: Non-negative number required.
Parameter name: count
Exception level: 0
Exception stack trace: at System.Buffer.BlockCopy(Array src, Int32 srcOffset, Array dst, Int32 dstOffset, Int32 count)
at Microsoft.Exchange.Security.Compliance.MessageDigestForNonCryptographicPurposes.HashCore(Byte[] array, Int32 ibStart, Int32 cbSize)
at System.Security.Cryptography.HashAlgorithm.ComputeHash(Byte[] buffer)
at Microsoft.Exchange.Configuration.SQM.SmsSqmDataPointHelper.Generate64BitUserID(String legacyDN)
at Microsoft.Exchange.Configuration.SQM.SmsSqmDataPointHelper.AddDeviceInfoReceivedDataPoint(SmsSqmSession instance, ADObjectId id, String legacyDN, String deviceType, String versionString)

at Microsoft.Exchange.AirSync.DeviceInformationSetting.ProcessSet(XmlNode setNode)
at Microsoft.Exchange.AirSync.DeviceInformationSetting.Execute()
at Microsoft.Exchange.AirSync.ProvisionCommand.ProcessDeviceInformationSettings(XmlNode response)
at Microsoft.Exchange.AirSync.ProvisionCommand.ExecuteCommand()
at Microsoft.Exchange.AirSync.Command.WorkerThread()
--- Exception end ---

AccessState :
Allowed
AccessStateReason :
Global

ResponseHeader :
HTTP/1.1 200 OK

ResponseBody :
<?xml version="1.0" encoding="utf-8" ?>
<Provision xmlns="Provision:">
<Status>110</Status>
</Provision>

↑ Back to the top


Cause

This issue occurs because multiple threads of ActiveSync and W3wp.exe try to access a protected object at the same time. This puts the object into a bad state.

↑ Back to the top


Resolution

Exchange Server 2013
To resolve this issue in Exchange Server 2013, install the update that is described in the following article in the Microsoft Knowledge Base:
2859928 Description of Cumulative Update 2 for Exchange Server 2013
Exchange Server 2010
To resolve this issue in Exchange Server 2010, install the update rollup that is described in the following article in the Microsoft Knowledge Base:
2866475 Description of Update Rollup 2 for Exchange Server 2010 SP3

↑ Back to the top


Status

The issue in which an iOS 7.0 device sends many Provision commands after an error is returned is under investigation by Apple. We will update this article when additional information is available.

↑ Back to the top


More Information

The Troubleshoot ActiveSync with Exchange Server guided walkthrough helps troubleshoot the following issues:

  • Unable to create a profile on the device
  • Unable to connect to the server
  • Mail issues
  • Calendaring issues
  • Delays on device/CAS performance

↑ Back to the top


Keywords: kbsurveynew, kbtshoot, kbexpertiseinter, kbgwt, kb

↑ Back to the top

Article Info
Article ID : 2851708
Revision : 1
Created on : 1/7/2017
Published on : 2/18/2014
Exists online : False
Views : 151