From e509efdbcf1c36f717459569e65d625ea5b7c7a2 Mon Sep 17 00:00:00 2001 From: Jakub Adam Date: Mon, 16 Jan 2012 10:57:03 +0100 Subject: [PATCH] Use correct DLX URI based on client's location Use internal or external URI depending on whether we are connected directly from intranet or using an edge server. --- src/core/sipe-notify.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/core/sipe-notify.c b/src/core/sipe-notify.c index 227ab6bb..2afd871f 100644 --- a/src/core/sipe-notify.c +++ b/src/core/sipe-notify.c @@ -90,13 +90,16 @@ static void sipe_process_provisioning_v2(struct sipe_core_private *sipe_private, /* provisionGroup */ for (node = sipe_xml_child(xn_provision_group_list, "provisionGroup"); node; node = sipe_xml_twin(node)) { if (sipe_strequal("ServerConfiguration", sipe_xml_attribute(node, "name"))) { + const gchar *dlx_uri_str = SIPE_CORE_PRIVATE_FLAG_IS(REMOTE_USER) ? + "dlxExternalUrl" : "dlxInternalUrl"; + g_free(sipe_private->focus_factory_uri); sipe_private->focus_factory_uri = sipe_xml_data(sipe_xml_child(node, "focusFactoryUri")); SIPE_DEBUG_INFO("sipe_process_provisioning_v2: sipe_private->focus_factory_uri=%s", sipe_private->focus_factory_uri ? sipe_private->focus_factory_uri : ""); g_free(sipe_private->dlx_uri); - sipe_private->dlx_uri = sipe_xml_data(sipe_xml_child(node, "dlxExternalUrl")); + sipe_private->dlx_uri = sipe_xml_data(sipe_xml_child(node, dlx_uri_str)); SIPE_DEBUG_INFO("sipe_process_provisioning_v2: sipe_private->dlx_uri=%s", sipe_private->dlx_uri ? sipe_private->dlx_uri : ""); -- 2.11.4.GIT