diff options
author | Kitto Flora | 2011-01-20 06:52:10 +0000 |
---|---|---|
committer | Kitto Flora | 2011-01-20 06:52:10 +0000 |
commit | b92673c1c97b2c0f5d76be7d5093b7611483c5a0 (patch) | |
tree | 71632ad1bb4d79fb401316b723b6439682ea6f45 /OpenSim/Server/Handlers/Simulation | |
parent | Fix drift of static prim. (diff) | |
parent | Merge branch 'master' into careminster-presence-refactor (diff) | |
download | opensim-SC_OLD-b92673c1c97b2c0f5d76be7d5093b7611483c5a0.zip opensim-SC_OLD-b92673c1c97b2c0f5d76be7d5093b7611483c5a0.tar.gz opensim-SC_OLD-b92673c1c97b2c0f5d76be7d5093b7611483c5a0.tar.bz2 opensim-SC_OLD-b92673c1c97b2c0f5d76be7d5093b7611483c5a0.tar.xz |
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Server/Handlers/Simulation')
-rw-r--r-- | OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs index 8aa410b..6d01f80 100644 --- a/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs +++ b/OpenSim/Server/Handlers/Simulation/AgentHandlers.cs | |||
@@ -205,13 +205,22 @@ namespace OpenSim.Server.Handlers.Simulation | |||
205 | 205 | ||
206 | // We're behind a proxy | 206 | // We're behind a proxy |
207 | Hashtable headers = (Hashtable)request["headers"]; | 207 | Hashtable headers = (Hashtable)request["headers"]; |
208 | if (headers.ContainsKey("X-Forwarded-For") && headers["X-Forwarded-For"] != null) | 208 | string xff = "X-Forwarded-For"; |
209 | if (headers.ContainsKey(xff.ToLower())) | ||
210 | xff = xff.ToLower(); | ||
211 | |||
212 | if (!headers.ContainsKey(xff) || headers[xff] == null) | ||
209 | { | 213 | { |
210 | IPEndPoint ep = Util.GetClientIPFromXFF((string)headers["X-Forwarded-For"]); | 214 | m_log.WarnFormat("[AGENT HANDLER]: No XFF header"); |
211 | if (ep != null) | 215 | return Util.GetCallerIP(request); |
212 | return ep.Address.ToString(); | ||
213 | } | 216 | } |
214 | 217 | ||
218 | m_log.DebugFormat("[AGENT HANDLER]: XFF is {0}", headers[xff]); | ||
219 | |||
220 | IPEndPoint ep = Util.GetClientIPFromXFF((string)headers[xff]); | ||
221 | if (ep != null) | ||
222 | return ep.Address.ToString(); | ||
223 | |||
215 | // Oops | 224 | // Oops |
216 | return Util.GetCallerIP(request); | 225 | return Util.GetCallerIP(request); |
217 | } | 226 | } |