Skip to content

Commit d9eb9c8

Browse files
committed
oxdisco: recognize /mail/config-v1.1.xml URI
References: GXF-1889
1 parent 7badd49 commit d9eb9c8

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

exch/oxdisco.cpp

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,6 +199,8 @@ BOOL OxdiscoPlugin::preproc(int ctx_id)
199199
return TRUE;
200200
if (strncasecmp(uri, "/.well-known/autoconfig/mail/config-v1.1.xml", 44) == 0 && brkp(uri[44]))
201201
return TRUE;
202+
if (strncasecmp(uri, "/mail/config-v1.1.xml", 21) == 0 && brkp(uri[21]))
203+
return TRUE;
202204
if (strncasecmp(uri, "/autodiscover/autodiscover.json", 31) == 0 && brkp(uri[31]))
203205
return TRUE;
204206
return false;
@@ -302,6 +304,11 @@ http_status OxdiscoPlugin::proc(int ctx_id, const void *content, uint64_t len) t
302304
return resp_autocfg(ctx_id, auth_info.username);
303305
auto username = extract_qparam(&uri[45], "emailaddress");
304306
return resp_autocfg(ctx_id, username.c_str());
307+
} else if (strncasecmp(uri, "/mail/config-v1.1.xml", 21) == 0 && brkp(uri[21])) {
308+
if (uri[21] == '/' || uri[21] == '\0')
309+
return resp_autocfg(ctx_id, auth_info.username);
310+
auto username = extract_qparam(&uri[22], "emailaddress");
311+
return resp_autocfg(ctx_id, username.c_str());
305312
} else if (strncasecmp(uri, "/autodiscover/autodiscover.json", 31) == 0 && brkp(uri[31])) {
306313
return resp_json(ctx_id, uri);
307314
}

0 commit comments

Comments
 (0)