summaryrefslogtreecommitdiff
path: root/src/goabackend/goamsgraphprovider.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/goabackend/goamsgraphprovider.c')
-rw-r--r--src/goabackend/goamsgraphprovider.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/goabackend/goamsgraphprovider.c b/src/goabackend/goamsgraphprovider.c
index 6eebb7eb..d0a70f37 100644
--- a/src/goabackend/goamsgraphprovider.c
+++ b/src/goabackend/goamsgraphprovider.c
@@ -229,8 +229,9 @@ get_identity_sync (GoaOAuth2Provider *oauth2_provider,
}
id = json_node_get_string (json_member);
- // Prefer "mail" then "displayName" for "PresentationIdentity", failing if neither is available
- json_member = json_object_get_member (json_object, "mail");
+ // Prefer "userPrincipalName" then "mail", failing if neither is available, since Gvfs requires
+ // a user and host for the GMountSpec
+ json_member = json_object_get_member (json_object, "userPrincipalName");
if (json_member != NULL && json_node_get_value_type (json_member) == G_TYPE_STRING)
{
presentation_identity = json_node_get_string (json_member);
@@ -238,14 +239,15 @@ get_identity_sync (GoaOAuth2Provider *oauth2_provider,
if (presentation_identity == NULL)
{
- json_member = json_object_get_member (json_object, "displayName");
+ json_member = json_object_get_member (json_object, "mail");
if (json_member != NULL && json_node_get_value_type (json_member) == G_TYPE_STRING)
{
presentation_identity = json_node_get_string (json_member);
}
else
{
- g_debug ("%s(): expected \"mail\" or \"displayName\" field holding a string", G_STRFUNC);
+ g_debug ("%s(): expected \"userPrincipalName\" or \"mail\" field holding a string",
+ G_STRFUNC);
g_set_error (error,
GOA_ERROR,
GOA_ERROR_FAILED,