autodiscover(4gx)

Name
Autodiscover HTTP Service Protocol handler (AutoDiscover responder)

Description
Autodiscover clients can locate the Autodiscover server for a given domain example.com by attempting to resolve the _autodiscover._tcp.example.com IN SRV record from DNS, and otherwise fall back to autodiscover.example.com.

To force using a particular Autodiscover server, such as when Gromox is run in a development environment with a fake domain, c:\windows\system32\drivers\etc\hosts can be populated with a static entry for autodiscover.example.com to get that particular scenario working.

An Autodiscover client would make a "POST /Autodiscover/Autodiscover.xml" request to the autodiscover server that was determined moments ago. The mailbox credentials are presented using HTTP authentication.

The Autodiscover response contains a HTTP server (generally the HTTP home server) and the designated choice for protocol framing. A client uses this to set up the EMSMDB MAPI service within a MAPI profile. Because the HTTP home server is then known, Autodiscover is not used again when making a connection to the message store service. However, the Address Book always issues Autodiscover requests. (In other words, removing the DNS entry for the Autodiscover server after a profile is set up would break the address book, but not the message store.)

Configuration directives
The normal config file location is /etc/gromox/autodiscover.cfg. (For backwards compatibility, if autodiscover.cfg is not present, the module will read part of autodiscover.ini.)

oxdisco_advertise_mh
    This setting controls whether the AutoDiscover response should include a EXHTTP Protocol section. Possible values: yes, no, not_old_mso, only_new_mso. The latter two values can be used to finely control emission in case of clients other than Outlook.
    Default: yes

oxdisco_advertise_rpch
    This setting controls whether the AutoDiscover response should include EXCH/EXPR Protocol sections. Possible values: yes, no, only_old_mso, not_new_mso. The latter two values can be used to finely control emission in case of clients other than Outlook.
    Default: yes

oxdisco_pretty_response
    A debugging knob to make the module emit indented XML responses.
    Default: no

oxdisco_request_logging
    Log AutoDiscover requests. This is independent of http.cfg:http_debug, and setting both would log requests twice.
    Default: no

oxdisco_response_logging
    Log AutoDiscover responses. This is independent of http.cfg:http_debug, and setting both would log responses twice.
    Default: no

oxdisco_validate_scndrequest
    When OL opens a non-default store (store of another user) or a public store, it may also make an AutoDiscover inquiry for the extra store. This setting controls whether the server-side AutoDiscover module should perform a permission check on non-default stores and possibly reject returning connection details. (Inquiry of public stores are always permitted.)
    Default: yes

x500_org_name
    Default: (unspecified)

Outlook notes
When Outlook is active, it is possible to Ctrl-MouseBtn3 (right click) on the status tray icon to call up a context menu, from which "Test Email Autoconfiguration..." can be selected to debug AutoDiscover requests and responses from the Windows side.

Normative references

•   MS-OXDISCO: Autodiscover HTTP Service Protocol

•   MS-OXDSCLI: Autodiscover Publishing and Lookup Protocol

See also
gromox(7)