remove end slash from most URLs we send to viewers
							parent
							
								
									c1d69018bd
								
							
						
					
					
						commit
						aafc6579a1
					
				|  | @ -429,7 +429,7 @@ namespace OpenSim.Framework.Console | |||
|             } | ||||
| 
 | ||||
|             // This call is a CAP. The URL is the authentication. | ||||
|             string uri = "/ReadResponses/" + sessionID.ToString() + "/"; | ||||
|             string uri = "/ReadResponses/" + sessionID.ToString(); | ||||
| 
 | ||||
|             m_Server.AddPollServiceHTTPHandler(new PollServiceEventArgs(null, uri, HasEvents, GetEvents, NoEvents, null, sessionID,25000)); // 25 secs timeout | ||||
| 
 | ||||
|  |  | |||
|  | @ -672,10 +672,7 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
|                     return; | ||||
|                 } | ||||
| 
 | ||||
|                 // workaround for Lumiya and others that append a extra / | ||||
|                 int len = path.Length - 1; | ||||
|                 if (len > 1 && path[len] == '/' && path[len - 1] == '/') | ||||
|                     path = path.Substring(0, len); | ||||
|                 path = Util.TrimEndSlash(path); | ||||
| 
 | ||||
|                 if (TryGetSimpleStreamHandler(path, out ISimpleStreamHandler hdr)) | ||||
|                 { | ||||
|  |  | |||
|  | @ -2451,7 +2451,27 @@ namespace OpenSim.Framework | |||
|             return found.ToArray(); | ||||
|         } | ||||
| 
 | ||||
|         public static string ServerURI(string uri) | ||||
|         [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)] | ||||
|         public static string AppendEndSlash(string path) | ||||
|         { | ||||
|             int len = path.Length; | ||||
|             --len; | ||||
|             if (len > 0 && path[len] != '/') | ||||
|                 return path + '/'; | ||||
|             return path; | ||||
|         } | ||||
| 
 | ||||
|         [System.Runtime.CompilerServices.MethodImpl(System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining)] | ||||
|         public static string TrimEndSlash(string path) | ||||
|         { | ||||
|             int len = path.Length; | ||||
|             --len; | ||||
|             if (len > 0 && path[len] == '/') | ||||
|                 return path.Substring(0, len); | ||||
|             return path; | ||||
|         } | ||||
| 
 | ||||
|         public static string ServerURIasIP(string uri) | ||||
|         { | ||||
|             if (uri == string.Empty) | ||||
|                 return string.Empty; | ||||
|  |  | |||
|  | @ -120,7 +120,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|                 // m_log.DebugFormat("[AVATAR PICKER SEARCH]: /CAPS/{0} in region {1}", capID, m_scene.RegionInfo.RegionName); | ||||
|                 if(m_People != null) | ||||
|                     caps.RegisterSimpleHandler("AvatarPickerSearch", | ||||
|                         new SimpleStreamHandler("/" + UUID.Random() + "/", ProcessRequest)); | ||||
|                         new SimpleStreamHandler("/" + UUID.Random(), ProcessRequest)); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|  |  | |||
|  | @ -237,7 +237,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|         public void RegisterHandlers() | ||||
|         { | ||||
|             // this path is also defined elsewhere so keeping it | ||||
|             string seedcapsBase = "/CAPS/" + m_HostCapsObj.CapsObjectPath + "0000/"; | ||||
|             string seedcapsBase = "/CAPS/" + m_HostCapsObj.CapsObjectPath + "0000"; | ||||
| 
 | ||||
|             m_HostCapsObj.RegisterSimpleHandler("SEED", new SimpleStreamHandler(seedcapsBase, SeedCapRequest)); | ||||
|             // m_log.DebugFormat( | ||||
|  | @ -342,7 +342,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|                 if (m_UserManager != null) | ||||
|                 { | ||||
|                     m_HostCapsObj.RegisterSimpleHandler("GetDisplayNames", | ||||
|                         new SimpleStreamHandler(GetNewCapPath() +"/", GetDisplayNames)); | ||||
|                         new SimpleStreamHandler(GetNewCapPath(), GetDisplayNames)); | ||||
|                 } | ||||
|             } | ||||
|             catch (Exception e) | ||||
|  |  | |||
|  | @ -128,7 +128,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|         public void RegisterCaps(UUID agentID, Caps caps) | ||||
|         { | ||||
|             caps.RegisterSimpleHandler("EstateAccess", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random() + "/", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random(), | ||||
|                 delegate(IOSHttpRequest request, IOSHttpResponse response) | ||||
|                 { | ||||
|                     ProcessRequest(request, response, agentID); | ||||
|  |  | |||
|  | @ -393,7 +393,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
| 
 | ||||
|             if (m_GetTextureURL == "localhost") | ||||
|             { | ||||
|                 string capUrl = "/CAPS/" + UUID.Random() + "/"; | ||||
|                 string capUrl = "/" + UUID.Random(); | ||||
| 
 | ||||
|                 // Register this as a poll service | ||||
|                 PollServiceAssetEventArgs args = new PollServiceAssetEventArgs(capUrl, agentID, m_scene); | ||||
|  | @ -415,7 +415,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|             //GetMesh | ||||
|             if (m_GetMeshURL == "localhost") | ||||
|             { | ||||
|                 string capUrl = "/CAPS/" + UUID.Random() + "/"; | ||||
|                 string capUrl = "/" + UUID.Random(); | ||||
| 
 | ||||
|                 PollServiceAssetEventArgs args = new PollServiceAssetEventArgs(capUrl, agentID, m_scene); | ||||
|                 //args.Type = PollServiceEventArgs.EventType.Mesh; | ||||
|  | @ -433,7 +433,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|             //GetMesh2 | ||||
|             if (m_GetMesh2URL == "localhost") | ||||
|             { | ||||
|                 string capUrl = "/CAPS/" + UUID.Random() + "/"; | ||||
|                 string capUrl = "/" + UUID.Random(); | ||||
| 
 | ||||
|                 PollServiceAssetEventArgs args = new PollServiceAssetEventArgs(capUrl, agentID, m_scene); | ||||
|                 //args.Type = PollServiceEventArgs.EventType.Mesh2; | ||||
|  | @ -452,7 +452,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|             //ViewerAsset | ||||
|             if (m_GetAssetURL == "localhost") | ||||
|             { | ||||
|                 string capUrl = "/CAPS/" + UUID.Random() + "/"; | ||||
|                 string capUrl = "/" + UUID.Random(); | ||||
| 
 | ||||
|                 PollServiceAssetEventArgs args = new PollServiceAssetEventArgs(capUrl, agentID, m_scene); | ||||
|                 //args.Type = PollServiceEventArgs.EventType.Asset; | ||||
|  |  | |||
|  | @ -216,7 +216,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|         public void RegisterCaps(UUID agentID, Caps caps) | ||||
|         { | ||||
|             caps.RegisterSimpleHandler("SimulatorFeatures", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random() + "/", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random(), | ||||
|                     delegate (IOSHttpRequest request, IOSHttpResponse response) | ||||
|                     { | ||||
|                         HandleSimulatorFeaturesRequest(request, response, agentID); | ||||
|  | @ -225,7 +225,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|             if (m_doScriptSyntax && m_scriptSyntaxID != UUID.Zero && m_scriptSyntaxXML != null) | ||||
|             { | ||||
|                 caps.RegisterSimpleHandler("LSLSyntax", | ||||
|                     new SimpleStreamHandler("/" + UUID.Random() + "/", HandleSyntaxRequest)); | ||||
|                     new SimpleStreamHandler("/" + UUID.Random(), HandleSyntaxRequest)); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|  |  | |||
|  | @ -380,7 +380,7 @@ namespace OpenSim.Region.ClientStack.Linden | |||
|             // handled by the simulator | ||||
|             else if (url == "localhost") | ||||
|             { | ||||
|                 capUrl = "/CAPS/" + UUID.Random() + "/"; | ||||
|                 capUrl = "/" + UUID.Random(); | ||||
| 
 | ||||
|                 // Register this as a poll service | ||||
|                 PollServiceInventoryEventArgs args = new PollServiceInventoryEventArgs(this, capUrl, agentID); | ||||
|  |  | |||
|  | @ -257,7 +257,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp | |||
| 
 | ||||
|                 m_UrlMap[url] = urlData; | ||||
| 
 | ||||
|                 string uri = "/lslhttp/" + urlcode.ToString() + "/"; | ||||
|                 string uri = "/lslhttp/" + urlcode.ToString(); | ||||
| 
 | ||||
|                 PollServiceEventArgs args | ||||
|                     = new PollServiceEventArgs(HttpRequestHandler, uri, HasEvents, GetEvents, NoEvents, Drop, urlcode, 25000); | ||||
|  | @ -315,7 +315,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp | |||
| 
 | ||||
|                 m_UrlMap[url] = urlData; | ||||
| 
 | ||||
|                 string uri = "/lslhttps/" + urlcode.ToString() + "/"; | ||||
|                 string uri = "/lslhttps/" + urlcode.ToString(); | ||||
| 
 | ||||
|                 PollServiceEventArgs args | ||||
|                     = new PollServiceEventArgs(HttpRequestHandler, uri, HasEvents, GetEvents, NoEvents, Drop, urlcode, 25000); | ||||
|  |  | |||
|  | @ -111,13 +111,13 @@ namespace OpenSim.Region.CoreModules.World.Media.Moap | |||
| 
 | ||||
| 
 | ||||
|             caps.RegisterSimpleHandler("ObjectMedia", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random() + "/", delegate (IOSHttpRequest httpRequest, IOSHttpResponse httpResponse) | ||||
|                 new SimpleStreamHandler("/" + UUID.Random(), delegate (IOSHttpRequest httpRequest, IOSHttpResponse httpResponse) | ||||
|                 { | ||||
|                     HandleObjectMediaMessage(httpRequest, httpResponse, agentID); | ||||
|                 })); | ||||
| 
 | ||||
|             caps.RegisterSimpleHandler("ObjectMediaNavigate", | ||||
|                 new SimpleStreamHandler("/" + UUID.Random() + "/", delegate (IOSHttpRequest httpRequest, IOSHttpResponse httpResponse) | ||||
|                 new SimpleStreamHandler("/" + UUID.Random(), delegate (IOSHttpRequest httpRequest, IOSHttpResponse httpResponse) | ||||
|                 { | ||||
|                     HandleObjectMediaNavigateMessage(httpRequest, httpResponse, agentID); | ||||
|                 })); | ||||
|  |  | |||
|  | @ -130,8 +130,8 @@ namespace OpenSim.Region.UserStatistics | |||
|             // End Own reports section | ||||
|             //// | ||||
| 
 | ||||
|             MainServer.Instance.AddHTTPHandler("/SStats/", HandleStatsRequest); | ||||
|             MainServer.Instance.AddHTTPHandler("/CAPS/VS/", HandleUnknownCAPSRequest); | ||||
|             MainServer.Instance.AddHTTPHandler("/SStats", HandleStatsRequest); | ||||
|             MainServer.Instance.AddHTTPHandler("/VS", HandleUnknownCAPSRequest); | ||||
|         } | ||||
| 
 | ||||
|         public virtual void AddRegion(Scene scene) | ||||
|  | @ -340,7 +340,7 @@ namespace OpenSim.Region.UserStatistics | |||
|         { | ||||
| //            m_log.DebugFormat("[WEB STATS MODULE]: OnRegisterCaps: agentID {0} caps {1}", agentID, caps); | ||||
| 
 | ||||
|             string capsPath = "/CAPS/VS/" + UUID.Random(); | ||||
|             string capsPath = "/" + UUID.Random(); | ||||
|             caps.RegisterHandler( | ||||
|                 "ViewerStats", | ||||
|                 new RestStreamHandler( | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 UbitUmarov
						UbitUmarov