ActiveSync on OS 11.2.6

Started a ActiveSync session:

#1: Header received:

X-MS-PolicyKey = "0"
Accept-Language = "de-de"
User-Agent = "Apple-iPhone8C4/1504.100"
Accept = "*/"
Connection = "close"
Content-Length = "0"
Accept-Encoding = "br, gzip, deflate"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "OPTIONS /sync.php/Microsoft-Server-ActiveSync HTTP/1.1"
Authorization = "Basic *"

#1 Header send:

Response = "HTTP/1.1 200 OK"
Cache-Control = "private"
Accept-Charset = "UTF-8"
Allow = "OPTIONS, POST"
Public = "OPTIONS, POST"
Server = "sync*gw server"
MS-Server-ActiveSync = "7.07.51"
MS-ASProtocolVersions = "2.5,12.0,12.1,14.0,14.1,16.0,16.1"
MS-ASProtocolCommands = "Sync,GetAttachment,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients"

#2 Header received:

Connection = "close"
User-Agent = "Apple-iPhone8C4/1504.100"
Content-Length = "110"
Content-Type = "application/vnd.ms-sync.wbxml"
Accept-Encoding = "br, gzip, deflate"
Accept-Language = "de-de"
X-MS-PolicyKey = "0"
MS-ASProtocolVersion = "16.1"
Accept = "*/"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "POST /sync.php/Microsoft-Server-ActiveSync?User=t1@***.de&DeviceId=O8S9UD4DOH0SLEPOQC5AJ9AE3C&DeviceType=iPhone&Cmd=Settings HTTP/1.1"
Authorization = "Basic *"

#2 Body received:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:AirSync PUBLIC "-//ActiveSync//DTD AirSync//EN" "">
<Settings CHARSET="UTF-8" xml-ns="activesync:Settings">
  <UserInformation>
    <Get/>
  </UserInformation>
  <DeviceInformation>
    <Set>
      <Model>iPhone8C4</Model>
      <OS>iOS 11.2.6 15D100</OS>
      <UserAgent>iOS/11.2.6 (15D100) dataaccessd/1.0</UserAgent>
      <FriendlyName>iPhone SE</FriendlyName>
      <OSLanguage>de-DE</OSLanguage>
    </Set>
  </DeviceInformation>
</Settings>

#2 Header send:

Response = "HTTP/1.1 200 OK"
Cache-Control = "private"
Accept-Charset = "UTF-8"
Connection = "Keep-Alive"
Content-Type = "application/vnd.ms-sync.wbxml; charset=UTF-8"
Content-Length = "61"
MS-Server-ActiveSync = "7.07.51"
Date = "Sun, 01 Apr 2018 08:13:46 GMT"

#2 Body send:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:AirSync PUBLIC "-//ActiveSync//DTD AirSync//EN" "">
<Settings CHARSET="UTF-8" xml-ns="activesync:Settings">
  <Status>1</Status>
  <!-- Success. -->  
  <DeviceInformation>
    <Status>1</Status>
    <!-- Success. -->
  </DeviceInformation>
  <UserInformation>
    <Status>1</Status>
    <!-- Success. -->
    <Get>
      <Accounts>
        <Account>
          <AccountName>t1@***.de</AccountName>
          <UserDisplayName>t1@***.de</UserDisplayName>
        </Account>
      </Accounts>
    </Get>
  </UserInformation>
</Settings>

#3 Header received:

Connection = "close"
User-Agent = "Apple-iPhone8C4/1504.100"
Content-Length = "20"
Content-Type = "application/vnd.ms-sync.wbxml"
Accept-Encoding = "br, gzip, deflate"
Accept-Language = "de-de"
X-MS-PolicyKey = "0"
MS-ASProtocolVersion = "16.1"
Accept = "*/"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "POST /sync.php/Microsoft-Server-ActiveSync?User=t1@***.de&DeviceId=O8S9UD4DOH0SLEPOQC5AJ9AE3C&DeviceType=iPhone&Cmd=Settings HTTP/1.1"
Authorization = "Basic *"

#3 Body received:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:AirSync PUBLIC "-//ActiveSync//DTD AirSync//EN" "">
<Settings CHARSET="UTF-8" xml-ns="activesync:Settings">
  <Oof>
    <Get>
      <BodyType>TEXT</BodyType>
    </Get>
  </Oof>
</Settings>

#3 Header send:

Response = "HTTP/1.1 200 OK"
Cache-Control = "private"
Accept-Charset = "UTF-8"
Connection = "Keep-Alive"
Content-Type = "application/vnd.ms-sync.wbxml; charset=UTF-8"
Content-Length = "22"
MS-Server-ActiveSync = "7.07.51"
Date = "Sun, 01 Apr 2018 08:13:47 GMT"

#3 Body send:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:AirSync PUBLIC "-//ActiveSync//DTD AirSync//EN" "">
<Settings CHARSET="UTF-8" xml-ns="activesync:Settings">
  <Status>1</Status>
  <Oof>
    <Get>
      <OofState>0</OofState>
      <!-- Oof is disabled -->
    </Get>
  </Oof>
  <!-- Success. -->
</Settings>

#4 Header received:

Connection = "close"
User-Agent = "Apple-iPhone8C4/1504.100"
Content-Length = "13"
Content-Type = "application/vnd.ms-sync.wbxml"
Accept-Encoding = "br, gzip, deflate"
Accept-Language = "de-de"
X-MS-PolicyKey = "0"
MS-ASProtocolVersion = "16.1"
Accept = "*/"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "POST /sync.php/Microsoft-Server-ActiveSync?User=t1@***.de&DeviceId=O8S9UD4DOH0SLEPOQC5AJ9AE3C&DeviceType=iPhone&Cmd=FolderSync HTTP/1.1"
Authorization = "Basic *"

#4 Body received:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:FolderHierarchy PUBLIC "-//ActiveSync//DTD FolderHierarchy//EN" "">
<FolderSync CHARSET="UTF-8" xml-ns="activesync:FolderHierarchy">
  <SyncKey>0</SyncKey>
</FolderSync>

#4 Header send:

Response = "HTTP/1.1 200 OK"
Cache-Control = "private"
Accept-Charset = "UTF-8"
Connection = "Keep-Alive"
Content-Type = "application/vnd.ms-sync.wbxml; charset=UTF-8"
Content-Length = "70"
MS-Server-ActiveSync = "7.07.51"
Date = "Sun, 01 Apr 2018 08:13:49 GMT"

#4 Body send:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:FolderHierarchy PUBLIC "-//ActiveSync//DTD FolderHierarchy//EN" "">
<FolderSync CHARSET="UTF-8" xml-ns="activesync:FolderHierarchy">
  <Status>1</Status>
  <!-- Success. -->
  <SyncKey>1</SyncKey>
  <Changes>
    <Count>1</Count>
    <Add>
      <ServerId>A1</ServerId>
      <ParentId>0</ParentId>
      <DisplayName>Persönliches Adressbuch</DisplayName>
      <Type>9</Type>
      <!-- Default Contacts folder -->
    </Add>
  </Changes>
</FolderSync>

#5 Header received:

X-MS-PolicyKey = "0"
Accept-Language = "de-de"
User-Agent = "Apple-iPhone8C4/1504.100"
Accept = "*/"
Connection = "close"
Content-Length = "0"
Accept-Encoding = "br, gzip, deflate"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "OPTIONS /sync.php/Microsoft-Server-ActiveSync HTTP/1.1"
Authorization = "Basic *="

#5 Header send:

Response = "HTTP/1.1 200 OK"
Cache-Control = "private"
Accept-Charset = "UTF-8"
Allow = "OPTIONS, POST"
Public = "OPTIONS, POST"
Server = "sync*gw server"
MS-Server-ActiveSync = "7.07.51"
MS-ASProtocolVersions = "2.5,12.0,12.1,14.0,14.1,16.0,16.1"
MS-ASProtocolCommands = "Sync,GetAttachment,FolderSync,FolderCreate,FolderDelete,FolderUpdate,MoveItems,GetItemEstimate,Search,Settings,Ping,ItemOperations,Provision,ResolveRecipients"

#6 Header received:

Connection = "close"
User-Agent = "Apple-iPhone8C4/1504.100"
Content-Length = "13"
Content-Type = "application/vnd.ms-sync.wbxml"
Accept-Encoding = "br, gzip, deflate"
Accept-Language = "de-de"
X-MS-PolicyKey = "0"
MS-ASProtocolVersion = "16.1"
Accept = "*/"
Host = "mail.***.de"
User = "\t1@***.de"
Password = "*"
Query = "POST /sync.php/Microsoft-Server-ActiveSync?User=t1@***.de&DeviceId=O8S9UD4DOH0SLEPOQC5AJ9AE3C&DeviceType=iPhone&Cmd=FolderSync HTTP/1.1"
Authorization = "Basic *"

#6 Body received:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE activesync:FolderHierarchy PUBLIC "-//ActiveSync//DTD FolderHierarchy//EN" "">
<FolderSync CHARSET="UTF-8" xml-ns="activesync:FolderHierarchy">
  <SyncKey>0</SyncKey>
</FolderSync>


Synchronization ends up with looping between #6 and #4.


#6 is not according to ActiveSync protocoll: Android and other software client then sends - as expected - a <Sync> request for folder...


Does anybody know what is wrong??

Replies

Same for IOS 11.3.


Is this the wrong forum?

Is this the wrong forum?

Yes. Apple Developer Forums is here to help folks with code-level questions about the APIs in our platform SDKs, and your question is about iOS’s on-the-wire implementation of a standard network protocol.

I didn’t respond earlier because I’m not entirely sure where to redirect you. You might have some luck asking this question over in Apple Support Communities, run by Apple Support, and specifically the in Business and Education topic areas, where you’re more likely to find folks with ActiveSync experience.

Regardless, if you think that iOS is doing the wrong thing here you should definitely file a bug explaining your issue.

Share and Enjoy

Quinn “The Eskimo!”
Apple Developer Relations, Developer Technical Support, Core OS/Hardware

let myEmail = "eskimo" + "1" + "@apple.com"