[Tickets #11639] Re: ActiveSync :: Extend the Autodiscover feature to return also valid answers to MS Outlook queries
bugs at horde.org
bugs at horde.org
Thu Nov 15 12:00:07 UTC 2012
BITTE NICHT AUF DIESE NACHRICHT ANTWORTEN. NACHRICHTEN AN DIESE
E-MAIL-ADRESSE WERDEN NICHT GELESEN.
Ticket-URL: http://bugs.horde.org/ticket/11639
------------------------------------------------------------------------------
Ticket | 11639
Aktualisiert Von | torben at dannhauer.info
Zusammenfassung | ActiveSync :: Extend the Autodiscover feature to return
| also valid answers to MS Outlook queries
Warteschlange | Horde Framework Packages
Version | Git develop
Typ | Enhancement
Status | Feedback
Priorität | 1. Low
Milestone |
Patch | 1
Zuständige | Michael Rubinsky
------------------------------------------------------------------------------
torben at dannhauer.info (2012-11-15 12:00) hat geschrieben:
>>> Implemented.
>>>
>>> Anyway you can test the current Git code in your setup?
>>
>> That was fast!
>> Of course I will test, but it may take some days, I'm not sure I can
>> squeeze it in today. I'll give you feedback till end of week at
>> latest.
>> Torben
>
> Two question rise while reading the code:
> - What is the intent of Audodiscover.php lines 130:135 ?
> - How are the params of the outlook autodiscover set? Only via the
> hook or also via the actviesync configuration tab ? Just curious...
>
> Torben
>
Now I got the reason why it is not working:
around line 130, you test the responseschema to be empty.
This is not correct: for every autodiscover query the accetable
response schema is delivered. Thus this variable should always be set,
otherwise our parsing of the request is wrong.
Indeed, as I tested with outlook 2010 and also with the Microsoft
"Remote Connectivity Analyzer" ( Connectivity Tests for Microsoft
Office Outlook ), I discovered that with the RCA, the response schema
is empty, because the string has different positions in Outlook and in
RCA. This was new for me and was not adressed yet.
In my opinion we have to apply two changes to Autodiscover.php to get
it working:
1. refactor line 130:135 to avoid
"!empty($properties['response_schema'])" - which should never be
emtpy.. As I said, I have no clue about the reason of this if-clause
at lines 130:135
2. Make the repsonse schema more robust. It is not sufficient to
extract values at certain place, but we have to parse for
ACCEPTABLERESPONSESCHEMA to get the right value.
Please find below the request data send by RCA and by Outlook to get
an idea how to fetch the response schema. this depub output is done by
print:r() and thus represents the array structure
------------------------
values send by RCA:
[0] => Array
(
[tag] => AUTODISCOVER
[type] => open
[level] => 1
[attributes] => Array
(
[XMLNS:XSD] => http://www.w3.org/2001/XMLSchema
[XMLNS:XSI] => http://www.w3.org/2001/XMLSchema-instance
[XMLNS] =>
http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006
)
[value] =>
)
[1] => Array
(
[tag] => REQUEST
[type] => open
[level] => 2
[value] =>
)
[2] => Array
(
[tag] => EMAILADDRESS
[type] => complete
[level] => 3
[value] => test2013 at dannhauer.de
)
[3] => Array
(
[tag] => REQUEST
[value] =>
[type] => cdata
[level] => 2
)
[4] => Array
(
[tag] => ACCEPTABLERESPONSESCHEMA
[type] => complete
[level] => 3
[value] =>
http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a
)
[5] => Array
(
[tag] => REQUEST
[value] =>
[type] => cdata
[level] => 2
)
[6] => Array
(
[tag] => REQUEST
[type] => close
[level] => 2
)
[7] => Array
(
[tag] => AUTODISCOVER
[value] =>
[type] => cdata
[level] => 1
)
[8] => Array
(
[tag] => AUTODISCOVER
[type] => close
[level] => 1
)
---------------------
values send by Outlook:
[0] => Array
(
[tag] => AUTODISCOVER
[type] => open
[level] => 1
[attributes] => Array
(
[XMLNS] =>
http://schemas.microsoft.com/exchange/autodiscover/outlook/requestschema/2006
)
)
[1] => Array
(
[tag] => REQUEST
[type] => open
[level] => 2
)
[2] => Array
(
[tag] => EMAILADDRESS
[type] => complete
[level] => 3
[value] => test2013 at dannhauer.de
)
[3] => Array
(
[tag] => ACCEPTABLERESPONSESCHEMA
[type] => complete
[level] => 3
[value] =>
http://schemas.microsoft.com/exchange/autodiscover/outlook/responseschema/2006a
)
[4] => Array
(
[tag] => REQUEST
[type] => close
[level] => 2
)
[5] => Array
(
[tag] => AUTODISCOVER
[type] => close
[level] => 1
)
Thanks Torben
More information about the bugs
mailing list