aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs18
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs6
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs5
3 files changed, 28 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 09fcf50..e245684 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -140,12 +140,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
140 internal float m_ScriptDistanceFactor = 1.0f; 140 internal float m_ScriptDistanceFactor = 1.0f;
141 internal Dictionary<string, FunctionPerms > m_FunctionPerms = new Dictionary<string, FunctionPerms >(); 141 internal Dictionary<string, FunctionPerms > m_FunctionPerms = new Dictionary<string, FunctionPerms >();
142 142
143 protected IUrlModule m_UrlModule = null;
144
143 public void Initialize(IScriptEngine ScriptEngine, SceneObjectPart host, TaskInventoryItem item) 145 public void Initialize(IScriptEngine ScriptEngine, SceneObjectPart host, TaskInventoryItem item)
144 { 146 {
145 m_ScriptEngine = ScriptEngine; 147 m_ScriptEngine = ScriptEngine;
146 m_host = host; 148 m_host = host;
147 m_item = item; 149 m_item = item;
148 150
151 m_UrlModule = m_ScriptEngine.World.RequestModuleInterface<IUrlModule>();
152
149 if (m_ScriptEngine.Config.GetBoolean("AllowOSFunctions", false)) 153 if (m_ScriptEngine.Config.GetBoolean("AllowOSFunctions", false))
150 m_OSFunctionsEnabled = true; 154 m_OSFunctionsEnabled = true;
151 155
@@ -3358,5 +3362,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
3358 3362
3359 return new LSL_Key(m_host.ParentGroup.FromPartID.ToString()); 3363 return new LSL_Key(m_host.ParentGroup.FromPartID.ToString());
3360 } 3364 }
3361 } 3365
3366 /// <summary>
3367 /// Sets the response type for an HTTP request/response
3368 /// </summary>
3369 /// <returns></returns>
3370 public void osSetContentType(LSL_Key id, string type)
3371 {
3372 CheckThreatLevel(ThreatLevel.High,"osSetResponseType");
3373 if (m_UrlModule != null)
3374 m_UrlModule.HttpContentType(new UUID(id),type);
3375 }
3376
3377 }
3362} \ No newline at end of file 3378} \ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
index ce1845c..06729ab 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
@@ -365,5 +365,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
365 /// </summary> 365 /// </summary>
366 /// <returns>Rezzing object key or NULL_KEY if rezzed by agent or otherwise unknown.</returns> 366 /// <returns>Rezzing object key or NULL_KEY if rezzed by agent or otherwise unknown.</returns>
367 LSL_Key osGetRezzingObject(); 367 LSL_Key osGetRezzingObject();
368
369 /// <summary>
370 /// Sets the response type for an HTTP request/response
371 /// </summary>
372 /// <returns></returns>
373 void osSetContentType(LSL_Key id, string type);
368 } 374 }
369} 375}
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
index e9131e4..ba1ade2 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
@@ -955,5 +955,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
955 { 955 {
956 return m_OSSL_Functions.osGetRezzingObject(); 956 return m_OSSL_Functions.osGetRezzingObject();
957 } 957 }
958
959 public void osSetContentType(LSL_Key id, string type)
960 {
961 m_OSSL_Functions.osSetContentType(id,type);
962 }
958 } 963 }
959} 964}