aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/LLLoginService
diff options
context:
space:
mode:
authorBlueWall2012-02-22 16:36:28 -0500
committerBlueWall2012-02-22 16:36:28 -0500
commit165ae251ec132da30dc58513101e4ec438df8d2f (patch)
treed386b1c837aca876a7573a9297f95758a8714cf8 /OpenSim/Services/LLLoginService
parentAdd web profile url setting to ini (diff)
downloadopensim-SC-165ae251ec132da30dc58513101e4ec438df8d2f.zip
opensim-SC-165ae251ec132da30dc58513101e4ec438df8d2f.tar.gz
opensim-SC-165ae251ec132da30dc58513101e4ec438df8d2f.tar.bz2
opensim-SC-165ae251ec132da30dc58513101e4ec438df8d2f.tar.xz
V3 Support
The V3 webapps need SSO capability and use OpenID. We need to send both our OpenID server url and a token for the user in the login response.
Diffstat (limited to 'OpenSim/Services/LLLoginService')
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginResponse.cs20
-rw-r--r--OpenSim/Services/LLLoginService/LLLoginService.cs4
2 files changed, 22 insertions, 2 deletions
diff --git a/OpenSim/Services/LLLoginService/LLLoginResponse.cs b/OpenSim/Services/LLLoginService/LLLoginResponse.cs
index b6f6d31..844c5ae 100644
--- a/OpenSim/Services/LLLoginService/LLLoginResponse.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginResponse.cs
@@ -171,6 +171,9 @@ namespace OpenSim.Services.LLLoginService
171 // Web Profiles 171 // Web Profiles
172 private string profileURL; 172 private string profileURL;
173 173
174 // OpenID
175 private string openIDURL;
176
174 private string searchURL; 177 private string searchURL;
175 178
176 // Error Flags 179 // Error Flags
@@ -223,7 +226,7 @@ namespace OpenSim.Services.LLLoginService
223 public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo, 226 public LLLoginResponse(UserAccount account, AgentCircuitData aCircuit, GridUserInfo pinfo,
224 GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService, 227 GridRegion destination, List<InventoryFolderBase> invSkel, FriendInfo[] friendsList, ILibraryService libService,
225 string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message, 228 string where, string startlocation, Vector3 position, Vector3 lookAt, List<InventoryItemBase> gestures, string message,
226 GridRegion home, IPEndPoint clientIP, string mapTileURL, string profileURL, string searchURL, string currency) 229 GridRegion home, IPEndPoint clientIP, string mapTileURL, string profileURL, string openIDURL, string searchURL, string currency)
227 : this() 230 : this()
228 { 231 {
229 FillOutInventoryData(invSkel, libService); 232 FillOutInventoryData(invSkel, libService);
@@ -241,6 +244,7 @@ namespace OpenSim.Services.LLLoginService
241 StartLocation = where; 244 StartLocation = where;
242 MapTileURL = mapTileURL; 245 MapTileURL = mapTileURL;
243 ProfileURL = profileURL; 246 ProfileURL = profileURL;
247 OpenIDURL = openIDURL;
244 248
245 SearchURL = searchURL; 249 SearchURL = searchURL;
246 Currency = currency; 250 Currency = currency;
@@ -390,6 +394,7 @@ namespace OpenSim.Services.LLLoginService
390 initialOutfit.Add(InitialOutfitHash); 394 initialOutfit.Add(InitialOutfitHash);
391 mapTileURL = String.Empty; 395 mapTileURL = String.Empty;
392 profileURL = String.Empty; 396 profileURL = String.Empty;
397 openIDURL = String.Empty;
393 searchURL = String.Empty; 398 searchURL = String.Empty;
394 399
395 currency = String.Empty; 400 currency = String.Empty;
@@ -465,6 +470,10 @@ namespace OpenSim.Services.LLLoginService
465 if (profileURL != String.Empty) 470 if (profileURL != String.Empty)
466 responseData["profile-server-url"] = profileURL; 471 responseData["profile-server-url"] = profileURL;
467 472
473 // We need to send an openid_token back in the response too
474 if (openIDURL != String.Empty)
475 responseData["openid_url"] = openIDURL;
476
468 if (m_buddyList != null) 477 if (m_buddyList != null)
469 { 478 {
470 responseData["buddy-list"] = m_buddyList.ToArray(); 479 responseData["buddy-list"] = m_buddyList.ToArray();
@@ -573,6 +582,9 @@ namespace OpenSim.Services.LLLoginService
573 if (profileURL != String.Empty) 582 if (profileURL != String.Empty)
574 map["profile-server-url"] = OSD.FromString(profileURL); 583 map["profile-server-url"] = OSD.FromString(profileURL);
575 584
585 if (openIDURL != String.Empty)
586 map["openid_url"] = OSD.FromString(openIDURL);
587
576 if (searchURL != String.Empty) 588 if (searchURL != String.Empty)
577 map["search"] = OSD.FromString(searchURL); 589 map["search"] = OSD.FromString(searchURL);
578 590
@@ -951,6 +963,12 @@ namespace OpenSim.Services.LLLoginService
951 set { profileURL = value; } 963 set { profileURL = value; }
952 } 964 }
953 965
966 public string OpenIDURL
967 {
968 get { return openIDURL; }
969 set { openIDURL = value; }
970 }
971
954 public string SearchURL 972 public string SearchURL
955 { 973 {
956 get { return searchURL; } 974 get { return searchURL; }
diff --git a/OpenSim/Services/LLLoginService/LLLoginService.cs b/OpenSim/Services/LLLoginService/LLLoginService.cs
index 02e62c8..f7b38d4 100644
--- a/OpenSim/Services/LLLoginService/LLLoginService.cs
+++ b/OpenSim/Services/LLLoginService/LLLoginService.cs
@@ -75,6 +75,7 @@ namespace OpenSim.Services.LLLoginService
75 protected bool m_AllowRemoteSetLoginLevel; 75 protected bool m_AllowRemoteSetLoginLevel;
76 protected string m_MapTileURL; 76 protected string m_MapTileURL;
77 protected string m_ProfileURL; 77 protected string m_ProfileURL;
78 protected string m_OpenIDURL;
78 protected string m_SearchURL; 79 protected string m_SearchURL;
79 protected string m_Currency; 80 protected string m_Currency;
80 81
@@ -110,6 +111,7 @@ namespace OpenSim.Services.LLLoginService
110 m_GatekeeperURL = m_LoginServerConfig.GetString("GatekeeperURI", string.Empty); 111 m_GatekeeperURL = m_LoginServerConfig.GetString("GatekeeperURI", string.Empty);
111 m_MapTileURL = m_LoginServerConfig.GetString("MapTileURL", string.Empty); 112 m_MapTileURL = m_LoginServerConfig.GetString("MapTileURL", string.Empty);
112 m_ProfileURL = m_LoginServerConfig.GetString("ProfileServerURL", string.Empty); 113 m_ProfileURL = m_LoginServerConfig.GetString("ProfileServerURL", string.Empty);
114 m_OpenIDURL = m_LoginServerConfig.GetString("OpenIDServerURL", String.Empty);
113 m_SearchURL = m_LoginServerConfig.GetString("SearchURL", string.Empty); 115 m_SearchURL = m_LoginServerConfig.GetString("SearchURL", string.Empty);
114 m_Currency = m_LoginServerConfig.GetString("Currency", string.Empty); 116 m_Currency = m_LoginServerConfig.GetString("Currency", string.Empty);
115 117
@@ -415,7 +417,7 @@ namespace OpenSim.Services.LLLoginService
415 // Finally, fill out the response and return it 417 // Finally, fill out the response and return it
416 // 418 //
417 LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService, 419 LLLoginResponse response = new LLLoginResponse(account, aCircuit, guinfo, destination, inventorySkel, friendsList, m_LibraryService,
418 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, m_MapTileURL, m_ProfileURL, m_SearchURL, m_Currency); 420 where, startLocation, position, lookAt, gestures, m_WelcomeMessage, home, clientIP, m_MapTileURL, m_ProfileURL, m_OpenIDURL, m_SearchURL, m_Currency);
419 421
420 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client."); 422 m_log.DebugFormat("[LLOGIN SERVICE]: All clear. Sending login response to client.");
421 return response; 423 return response;