aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/World/Media
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2010-07-13 23:58:19 +0100
committerJustin Clark-Casey (justincc)2010-07-26 23:34:21 +0100
commitee6cd884c9732b492675e043fe318ffcdfecc45d (patch)
treece3343d85b54bb04a5182a4cd65355988075ad68 /OpenSim/Region/CoreModules/World/Media
parentfactor out soon to be common media permissions check code (diff)
downloadopensim-SC_OLD-ee6cd884c9732b492675e043fe318ffcdfecc45d.zip
opensim-SC_OLD-ee6cd884c9732b492675e043fe318ffcdfecc45d.tar.gz
opensim-SC_OLD-ee6cd884c9732b492675e043fe318ffcdfecc45d.tar.bz2
opensim-SC_OLD-ee6cd884c9732b492675e043fe318ffcdfecc45d.tar.xz
implement serverside checks for media texture navigation in order to stop naughty clients
Diffstat (limited to 'OpenSim/Region/CoreModules/World/Media')
-rw-r--r--OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs20
1 files changed, 14 insertions, 6 deletions
diff --git a/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs b/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
index d7aede9..09786ec 100644
--- a/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
+++ b/OpenSim/Region/CoreModules/World/Media/Moap/MoapModule.cs
@@ -245,12 +245,12 @@ namespace OpenSim.Region.CoreModules.Media.Moap
245 245
246 m_log.DebugFormat("[MOAP]: Received {0} media entries for prim {1}", omu.FaceMedia.Length, primId); 246 m_log.DebugFormat("[MOAP]: Received {0} media entries for prim {1}", omu.FaceMedia.Length, primId);
247 247
248 for (int i = 0; i < omu.FaceMedia.Length; i++) 248// for (int i = 0; i < omu.FaceMedia.Length; i++)
249 { 249// {
250 MediaEntry me = omu.FaceMedia[i]; 250// MediaEntry me = omu.FaceMedia[i];
251 string v = (null == me ? "null": OSDParser.SerializeLLSDXmlString(me.GetOSD())); 251// string v = (null == me ? "null": OSDParser.SerializeLLSDXmlString(me.GetOSD()));
252 m_log.DebugFormat("[MOAP]: Face {0} [{1}]", i, v); 252// m_log.DebugFormat("[MOAP]: Face {0} [{1}]", i, v);
253 } 253// }
254 254
255 if (omu.FaceMedia.Length > part.GetNumberOfSides()) 255 if (omu.FaceMedia.Length > part.GetNumberOfSides())
256 { 256 {
@@ -322,6 +322,14 @@ namespace OpenSim.Region.CoreModules.Media.Moap
322 return string.Empty; 322 return string.Empty;
323 } 323 }
324 324
325 UUID agentId = default(UUID);
326
327 lock (m_omuCapUsers)
328 agentId = m_omuCapUsers[path];
329
330 if (!m_scene.Permissions.CanInteractWithPrimMedia(agentId, part.UUID, omn.Face))
331 return string.Empty;
332
325 m_log.DebugFormat( 333 m_log.DebugFormat(
326 "[MOAP]: Updating media entry for face {0} on prim {1} {2} to {3}", 334 "[MOAP]: Updating media entry for face {0} on prim {1} {2} to {3}",
327 omn.Face, part.Name, part.UUID, omn.URL); 335 omn.Face, part.Name, part.UUID, omn.URL);