diff options
author | Kitto Flora | 2010-08-04 21:08:14 +0000 |
---|---|---|
committer | Kitto Flora | 2010-08-04 21:08:14 +0000 |
commit | 0871d20adbe1800655b8a7e9d16f71090bbf5c87 (patch) | |
tree | 83a3e62f4aad08af9d98f7de880f2942b45c498c /OpenSim/Services | |
parent | Fixes fresh hollowed prim collision shape. (diff) | |
parent | Send attachment updates only to the owner if it's a HUD (diff) | |
download | opensim-SC-0871d20adbe1800655b8a7e9d16f71090bbf5c87.zip opensim-SC-0871d20adbe1800655b8a7e9d16f71090bbf5c87.tar.gz opensim-SC-0871d20adbe1800655b8a7e9d16f71090bbf5c87.tar.bz2 opensim-SC-0871d20adbe1800655b8a7e9d16f71090bbf5c87.tar.xz |
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Services/GridService/GridService.cs | 3 | ||||
-rw-r--r-- | OpenSim/Services/HypergridService/GatekeeperService.cs | 103 | ||||
-rw-r--r-- | OpenSim/Services/HypergridService/UserAgentService.cs | 16 |
3 files changed, 65 insertions, 57 deletions
diff --git a/OpenSim/Services/GridService/GridService.cs b/OpenSim/Services/GridService/GridService.cs index f49d86d..ebaed42 100644 --- a/OpenSim/Services/GridService/GridService.cs +++ b/OpenSim/Services/GridService/GridService.cs | |||
@@ -124,7 +124,7 @@ namespace OpenSim.Services.GridService | |||
124 | { | 124 | { |
125 | // Regions reserved for the null key cannot be taken. | 125 | // Regions reserved for the null key cannot be taken. |
126 | if ((string)region.Data["PrincipalID"] == UUID.Zero.ToString()) | 126 | if ((string)region.Data["PrincipalID"] == UUID.Zero.ToString()) |
127 | return "Region location us reserved"; | 127 | return "Region location is reserved"; |
128 | 128 | ||
129 | // Treat it as an auth request | 129 | // Treat it as an auth request |
130 | // | 130 | // |
@@ -210,6 +210,7 @@ namespace OpenSim.Services.GridService | |||
210 | { | 210 | { |
211 | int newFlags = 0; | 211 | int newFlags = 0; |
212 | string regionName = rdata.RegionName.Trim().Replace(' ', '_'); | 212 | string regionName = rdata.RegionName.Trim().Replace(' ', '_'); |
213 | newFlags = ParseFlags(newFlags, gridConfig.GetString("DefaultRegionFlags", String.Empty)); | ||
213 | newFlags = ParseFlags(newFlags, gridConfig.GetString("Region_" + regionName, String.Empty)); | 214 | newFlags = ParseFlags(newFlags, gridConfig.GetString("Region_" + regionName, String.Empty)); |
214 | newFlags = ParseFlags(newFlags, gridConfig.GetString("Region_" + rdata.RegionID.ToString(), String.Empty)); | 215 | newFlags = ParseFlags(newFlags, gridConfig.GetString("Region_" + rdata.RegionID.ToString(), String.Empty)); |
215 | rdata.Data["flags"] = newFlags.ToString(); | 216 | rdata.Data["flags"] = newFlags.ToString(); |
diff --git a/OpenSim/Services/HypergridService/GatekeeperService.cs b/OpenSim/Services/HypergridService/GatekeeperService.cs index c5cfe75..3fc9327 100644 --- a/OpenSim/Services/HypergridService/GatekeeperService.cs +++ b/OpenSim/Services/HypergridService/GatekeeperService.cs | |||
@@ -49,61 +49,64 @@ namespace OpenSim.Services.HypergridService | |||
49 | LogManager.GetLogger( | 49 | LogManager.GetLogger( |
50 | MethodBase.GetCurrentMethod().DeclaringType); | 50 | MethodBase.GetCurrentMethod().DeclaringType); |
51 | 51 | ||
52 | IGridService m_GridService; | 52 | private static bool m_Initialized = false; |
53 | IPresenceService m_PresenceService; | ||
54 | IUserAccountService m_UserAccountService; | ||
55 | IUserAgentService m_UserAgentService; | ||
56 | ISimulationService m_SimulationService; | ||
57 | 53 | ||
58 | string m_AuthDll; | 54 | private static IGridService m_GridService; |
55 | private static IPresenceService m_PresenceService; | ||
56 | private static IUserAccountService m_UserAccountService; | ||
57 | private static IUserAgentService m_UserAgentService; | ||
58 | private static ISimulationService m_SimulationService; | ||
59 | 59 | ||
60 | UUID m_ScopeID; | 60 | private static UUID m_ScopeID; |
61 | bool m_AllowTeleportsToAnyRegion; | 61 | private static bool m_AllowTeleportsToAnyRegion; |
62 | string m_ExternalName; | 62 | private static string m_ExternalName; |
63 | GridRegion m_DefaultGatewayRegion; | 63 | private static GridRegion m_DefaultGatewayRegion; |
64 | 64 | ||
65 | public GatekeeperService(IConfigSource config, ISimulationService simService) | 65 | public GatekeeperService(IConfigSource config, ISimulationService simService) |
66 | { | 66 | { |
67 | IConfig serverConfig = config.Configs["GatekeeperService"]; | 67 | if (!m_Initialized) |
68 | if (serverConfig == null) | 68 | { |
69 | throw new Exception(String.Format("No section GatekeeperService in config file")); | 69 | m_Initialized = true; |
70 | 70 | ||
71 | string accountService = serverConfig.GetString("UserAccountService", String.Empty); | 71 | IConfig serverConfig = config.Configs["GatekeeperService"]; |
72 | string homeUsersService = serverConfig.GetString("HomeUsersSecurityService", string.Empty); | 72 | if (serverConfig == null) |
73 | string gridService = serverConfig.GetString("GridService", String.Empty); | 73 | throw new Exception(String.Format("No section GatekeeperService in config file")); |
74 | string presenceService = serverConfig.GetString("PresenceService", String.Empty); | 74 | |
75 | string simulationService = serverConfig.GetString("SimulationService", String.Empty); | 75 | string accountService = serverConfig.GetString("UserAccountService", String.Empty); |
76 | 76 | string homeUsersService = serverConfig.GetString("HomeUsersSecurityService", string.Empty); | |
77 | //m_AuthDll = serverConfig.GetString("AuthenticationService", String.Empty); | 77 | string gridService = serverConfig.GetString("GridService", String.Empty); |
78 | 78 | string presenceService = serverConfig.GetString("PresenceService", String.Empty); | |
79 | // These 3 are mandatory, the others aren't | 79 | string simulationService = serverConfig.GetString("SimulationService", String.Empty); |
80 | if (gridService == string.Empty || presenceService == string.Empty || m_AuthDll == string.Empty) | 80 | |
81 | throw new Exception("Incomplete specifications, Gatekeeper Service cannot function."); | 81 | // These 3 are mandatory, the others aren't |
82 | 82 | if (gridService == string.Empty || presenceService == string.Empty) | |
83 | string scope = serverConfig.GetString("ScopeID", UUID.Zero.ToString()); | 83 | throw new Exception("Incomplete specifications, Gatekeeper Service cannot function."); |
84 | UUID.TryParse(scope, out m_ScopeID); | 84 | |
85 | //m_WelcomeMessage = serverConfig.GetString("WelcomeMessage", "Welcome to OpenSim!"); | 85 | string scope = serverConfig.GetString("ScopeID", UUID.Zero.ToString()); |
86 | m_AllowTeleportsToAnyRegion = serverConfig.GetBoolean("AllowTeleportsToAnyRegion", true); | 86 | UUID.TryParse(scope, out m_ScopeID); |
87 | m_ExternalName = serverConfig.GetString("ExternalName", string.Empty); | 87 | //m_WelcomeMessage = serverConfig.GetString("WelcomeMessage", "Welcome to OpenSim!"); |
88 | 88 | m_AllowTeleportsToAnyRegion = serverConfig.GetBoolean("AllowTeleportsToAnyRegion", true); | |
89 | Object[] args = new Object[] { config }; | 89 | m_ExternalName = serverConfig.GetString("ExternalName", string.Empty); |
90 | m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); | 90 | |
91 | m_PresenceService = ServerUtils.LoadPlugin<IPresenceService>(presenceService, args); | 91 | Object[] args = new Object[] { config }; |
92 | 92 | m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); | |
93 | if (accountService != string.Empty) | 93 | m_PresenceService = ServerUtils.LoadPlugin<IPresenceService>(presenceService, args); |
94 | m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); | 94 | |
95 | if (homeUsersService != string.Empty) | 95 | if (accountService != string.Empty) |
96 | m_UserAgentService = ServerUtils.LoadPlugin<IUserAgentService>(homeUsersService, args); | 96 | m_UserAccountService = ServerUtils.LoadPlugin<IUserAccountService>(accountService, args); |
97 | 97 | if (homeUsersService != string.Empty) | |
98 | if (simService != null) | 98 | m_UserAgentService = ServerUtils.LoadPlugin<IUserAgentService>(homeUsersService, args); |
99 | m_SimulationService = simService; | 99 | |
100 | else if (simulationService != string.Empty) | 100 | if (simService != null) |
101 | m_SimulationService = ServerUtils.LoadPlugin<ISimulationService>(simulationService, args); | 101 | m_SimulationService = simService; |
102 | 102 | else if (simulationService != string.Empty) | |
103 | if (m_GridService == null || m_PresenceService == null || m_SimulationService == null) | 103 | m_SimulationService = ServerUtils.LoadPlugin<ISimulationService>(simulationService, args); |
104 | throw new Exception("Unable to load a required plugin, Gatekeeper Service cannot function."); | 104 | |
105 | 105 | if (m_GridService == null || m_PresenceService == null || m_SimulationService == null) | |
106 | m_log.Debug("[GATEKEEPER SERVICE]: Starting..."); | 106 | throw new Exception("Unable to load a required plugin, Gatekeeper Service cannot function."); |
107 | |||
108 | m_log.Debug("[GATEKEEPER SERVICE]: Starting..."); | ||
109 | } | ||
107 | } | 110 | } |
108 | 111 | ||
109 | public GatekeeperService(IConfigSource config) | 112 | public GatekeeperService(IConfigSource config) |
diff --git a/OpenSim/Services/HypergridService/UserAgentService.cs b/OpenSim/Services/HypergridService/UserAgentService.cs index aec82e8..4bee4b5 100644 --- a/OpenSim/Services/HypergridService/UserAgentService.cs +++ b/OpenSim/Services/HypergridService/UserAgentService.cs | |||
@@ -61,7 +61,8 @@ namespace OpenSim.Services.HypergridService | |||
61 | 61 | ||
62 | protected static IGridUserService m_GridUserService; | 62 | protected static IGridUserService m_GridUserService; |
63 | protected static IGridService m_GridService; | 63 | protected static IGridService m_GridService; |
64 | protected static GatekeeperServiceConnector m_GatekeeperConnector; | 64 | //protected static GatekeeperServiceConnector m_GatekeeperConnector; |
65 | protected static IGatekeeperService m_GatekeeperService; | ||
65 | 66 | ||
66 | protected static bool m_BypassClientVerification; | 67 | protected static bool m_BypassClientVerification; |
67 | 68 | ||
@@ -69,6 +70,8 @@ namespace OpenSim.Services.HypergridService | |||
69 | { | 70 | { |
70 | if (!m_Initialized) | 71 | if (!m_Initialized) |
71 | { | 72 | { |
73 | m_Initialized = true; | ||
74 | |||
72 | m_log.DebugFormat("[HOME USERS SECURITY]: Starting..."); | 75 | m_log.DebugFormat("[HOME USERS SECURITY]: Starting..."); |
73 | 76 | ||
74 | IConfig serverConfig = config.Configs["UserAgentService"]; | 77 | IConfig serverConfig = config.Configs["UserAgentService"]; |
@@ -77,18 +80,18 @@ namespace OpenSim.Services.HypergridService | |||
77 | 80 | ||
78 | string gridService = serverConfig.GetString("GridService", String.Empty); | 81 | string gridService = serverConfig.GetString("GridService", String.Empty); |
79 | string gridUserService = serverConfig.GetString("GridUserService", String.Empty); | 82 | string gridUserService = serverConfig.GetString("GridUserService", String.Empty); |
83 | string gatekeeperService = serverConfig.GetString("GatekeeperService", String.Empty); | ||
80 | 84 | ||
81 | m_BypassClientVerification = serverConfig.GetBoolean("BypassClientVerification", false); | 85 | m_BypassClientVerification = serverConfig.GetBoolean("BypassClientVerification", false); |
82 | 86 | ||
83 | if (gridService == string.Empty || gridUserService == string.Empty) | 87 | if (gridService == string.Empty || gridUserService == string.Empty || gatekeeperService == string.Empty) |
84 | throw new Exception(String.Format("Incomplete specifications, UserAgent Service cannot function.")); | 88 | throw new Exception(String.Format("Incomplete specifications, UserAgent Service cannot function.")); |
85 | 89 | ||
86 | Object[] args = new Object[] { config }; | 90 | Object[] args = new Object[] { config }; |
87 | m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); | 91 | m_GridService = ServerUtils.LoadPlugin<IGridService>(gridService, args); |
88 | m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); | 92 | m_GridUserService = ServerUtils.LoadPlugin<IGridUserService>(gridUserService, args); |
89 | m_GatekeeperConnector = new GatekeeperServiceConnector(); | 93 | //m_GatekeeperConnector = new GatekeeperServiceConnector(); |
90 | 94 | m_GatekeeperService = ServerUtils.LoadPlugin<IGatekeeperService>(gatekeeperService, args); | |
91 | m_Initialized = true; | ||
92 | } | 95 | } |
93 | } | 96 | } |
94 | 97 | ||
@@ -135,7 +138,8 @@ namespace OpenSim.Services.HypergridService | |||
135 | agentCircuit.ServiceSessionID = "http://" + region.ExternalHostName + ":" + region.HttpPort + ";" + UUID.Random(); | 138 | agentCircuit.ServiceSessionID = "http://" + region.ExternalHostName + ":" + region.HttpPort + ";" + UUID.Random(); |
136 | TravelingAgentInfo old = UpdateTravelInfo(agentCircuit, region); | 139 | TravelingAgentInfo old = UpdateTravelInfo(agentCircuit, region); |
137 | 140 | ||
138 | bool success = m_GatekeeperConnector.CreateAgent(region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out reason); | 141 | //bool success = m_GatekeeperConnector.CreateAgent(region, agentCircuit, (uint)Constants.TeleportFlags.ViaLogin, out reason); |
142 | bool success = m_GatekeeperService.LoginAgent(agentCircuit, finalDestination, out reason); | ||
139 | 143 | ||
140 | if (!success) | 144 | if (!success) |
141 | { | 145 | { |