mirror of
https://github.com/opensim/opensim.git
synced 2026-08-09 10:46:00 +08:00
In teleports, pass the source region to the destination (similar to an HTTP referrer)
This commit is contained in:
@@ -142,7 +142,7 @@ namespace OpenSim.Services.Interfaces
|
||||
public string ServerURI
|
||||
{
|
||||
get {
|
||||
if ( m_serverURI != string.Empty ) {
|
||||
if (!String.IsNullOrEmpty(m_serverURI)) {
|
||||
return m_serverURI;
|
||||
} else {
|
||||
if (m_httpPort == 0)
|
||||
@@ -152,7 +152,7 @@ namespace OpenSim.Services.Interfaces
|
||||
}
|
||||
}
|
||||
set {
|
||||
if ( value.EndsWith("/") ) {
|
||||
if (value.EndsWith("/")) {
|
||||
m_serverURI = value;
|
||||
} else {
|
||||
m_serverURI = value + '/';
|
||||
@@ -161,6 +161,16 @@ namespace OpenSim.Services.Interfaces
|
||||
}
|
||||
protected string m_serverURI;
|
||||
|
||||
/// <summary>
|
||||
/// Provides direct access to the 'm_serverURI' field, without returning a generated URL if m_serverURI is missing.
|
||||
/// </summary>
|
||||
public string RawServerURI
|
||||
{
|
||||
get { return m_serverURI; }
|
||||
set { m_serverURI = value; }
|
||||
}
|
||||
|
||||
|
||||
public string RegionName
|
||||
{
|
||||
get { return m_regionName; }
|
||||
|
||||
@@ -52,13 +52,14 @@ namespace OpenSim.Services.Interfaces
|
||||
/// <returns>The region the visitor should enter, or null if no region can be found / is allowed</returns>
|
||||
GridRegion GetHyperlinkRegion(UUID regionID, UUID agentID, string agentHomeURI, out string message);
|
||||
|
||||
bool LoginAgent(AgentCircuitData aCircuit, GridRegion destination, out string reason);
|
||||
bool LoginAgent(GridRegion source, AgentCircuitData aCircuit, GridRegion destination, out string reason);
|
||||
|
||||
}
|
||||
|
||||
public interface IUserAgentService
|
||||
{
|
||||
bool LoginAgentToGrid(AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason);
|
||||
bool LoginAgentToGrid(GridRegion source, AgentCircuitData agent, GridRegion gatekeeper, GridRegion finalDestination, bool fromLogin, out string reason);
|
||||
|
||||
void LogoutAgent(UUID userID, UUID sessionID);
|
||||
|
||||
/// <summary>
|
||||
|
||||
@@ -53,11 +53,13 @@ namespace OpenSim.Services.Interfaces
|
||||
/// <summary>
|
||||
/// Ask the simulator hosting the destination to create an agent on that region.
|
||||
/// </summary>
|
||||
/// <param name="source">The region that the user is coming from. Will be null if the user
|
||||
/// logged-in directly, or arrived from a simulator that doesn't send this parameter.</param>
|
||||
/// <param name="destination"></param>
|
||||
/// <param name="aCircuit"></param>
|
||||
/// <param name="flags"></param>
|
||||
/// <param name="reason">Reason message in the event of a failure.</param>
|
||||
bool CreateAgent(GridRegion destination, AgentCircuitData aCircuit, uint flags, out string reason);
|
||||
bool CreateAgent(GridRegion source, GridRegion destination, AgentCircuitData aCircuit, uint flags, out string reason);
|
||||
|
||||
/// <summary>
|
||||
/// Full child agent update.
|
||||
|
||||
Reference in New Issue
Block a user