OSSL Enabling Functions

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
 
(19 intermediate revisions by 8 users not shown)
Line 1: Line 1:
Here is a '''Modified [XEngine]''' Section for your OpenSim.ini<br>This is <u>effective FROM OpenSim 0.7.1 Dev a7acb65-r/14142 (interface version 6)</u>&nbsp; October-21-2010 and is Subject to Change
+
{{#if:{{{1|}}}|{{Languages|{{{1|}}}}}|{{Languages}}}}
  
! Not all Functions may be available in previous versions / revisions of OpenSim.  
+
Several OSSL functions can only be execute by some users.<br>
 +
This is controled in file bin/config-include/OsslEnable.ini<br>
 +
Please consult [[OsslEnable.ini]] file for more information<br>
  
! New Functions may become available and some functions may be deprecated in the future.  
+
<div style="background-color:#FFA0A0; padding:10px; padding-bottom:5px; border: 1px #FF544F solid">
 +
'''Following is now Outdated.'''
 +
</div>
  
! Look at OWNER UUID for certain functions to prevent Potential Harmfull uses!
+
This is <u>effective FROM OpenSimulator DEV 08 OpenSim-r25920</u> and is subject to change.<br>
 +
Please remember the following:<br>
 +
* Not all functions may be available in previous versions / revisions of OpenSimulator.
 +
* New functions may become available and some functions may be deprecated in the future.
 +
* Consider using UUIDs for '''SPECIFIC USERS''' allowing certain functions to prevent potentially harmful uses.
 +
* Use '''PARCEL_GROUP_MEMBER , PARCEL_OWNER , ESTATE_MANAGER , ESTATE_OWNER''' instead of UUID's for Grouping Access.
  
Simply Replace the [XEngine] Section in your OpenSim.ini and adjust according to your needs  
+
Simply replace the [XEngine] section in your OpenSim.ini and adjust according to your needs. '''NOTE ! The Allow_functions are commented out to prevent accidental use.'''
  
'''Special Security Note''':&nbsp; The functions as shown within the example below have Values Set to "sane" values with moderatly acceptable Threat Levels.&nbsp; Set According to your Comfort Level and what you&nbsp;determine to be an acceptable levels of Risk Potential.  
+
'''Special Security Note:''' The functions as shown within the example below have values set to "sane" values with moderately acceptable threat levels. Set according to your comfort level and what you determine to be an acceptable level of risk potential. See the page about [[Threat level]]s for an explanation of the various options that you have for enabling certain functions.  
  
<br><source lang="ini">[XEngine]
+
<source lang="ini">
;# {Enabled} {} {Enable the XEngine scripting engine?} {true false} true
+
[XEngine]
;; Enable this engine in this OpenSim instance
+
    ;# {Enabled} {} {Enable the XEngine scripting engine?} {true false} true
Enabled = true
+
    ;; Enable this engine in this OpenSimulator instance
 +
    Enabled = true
  
;; How many threads to keep alive even if nothing is happening
+
    ;; How many threads to keep alive even if nothing is happening
; MinThreads = 2
+
    ;MinThreads = 2
  
;; How many threads to start at maximum load
+
    ;; How many threads to start at maximum load
; MaxThreads = 100
+
    ;MaxThreads = 100
  
;; Time a thread must be idle (in seconds) before it dies
+
    ;; Time a thread must be idle (in seconds) before it dies
; IdleTimeout = 60
+
    ;IdleTimeout = 60
  
;# {Priority} {Enabled:true} {Priority for script engine threads?} {Lowest BelowNormal Normal AboveNormal Highest} BelowNormal
+
    ;# {Priority} {Enabled:true} {Priority for script engine threads?} {Lowest BelowNormal Normal AboveNormal Highest} BelowNormal
;; Thread priority ("Lowest", "BelowNormal", "Normal", "AboveNormal",
+
    ;; Thread priority ("Lowest", "BelowNormal", "Normal", "AboveNormal",
;; "Highest")
+
    ;; "Highest")
; Priority = "BelowNormal"
+
    ;Priority = "BelowNormal"
  
;; Maximum number of events to queue for a script (excluding timers)
+
    ;; Maximum number of events to queue for a script (excluding timers)
; MaxScriptEventQueue = 300
+
    ;MaxScriptEventQueue = 300
  
;; Stack size per thread created
+
    ;; Stack size per thread created
; ThreadStackSize = 262144
+
    ;ThreadStackSize = 262144
  
;; Set this to true (the default) to load each script into a separate
+
    ;# {DeleteScriptsOnStartup} {} {Delete previously compiled script DLLs on startup?} (true false) true
;; AppDomain. Setting this to false will load all script assemblies into the
+
    ;; Controls whether previously compiled scripts DLLs are deleted on sim restart. If you set this to false
;; current AppDomain, which will reduce the per-script overhead at the
+
    ;; then startup will be considerably faster since scripts won't need to be recompiled. However, then it becomes your responsibility to delete the
;; expense of reduced security and the inability to garbage collect the
+
    ;; compiled scripts if you're recompiling OpenSimulator from source code and internal interfaces used
;; script assemblies
+
    ;; by scripts have changed.
; AppDomainLoading = false ;; OSG Set this to false
+
    ; DeleteScriptsOnStartup = true
AppDomainLoading = true
+
  
;# {DefaultCompileLanguage} {Enabled:true} {Default script language?} {lsl vb cs} lsl
+
    ;; Set this to true (the default) to load each script into a separate
;; Default language for scripts
+
    ;; AppDomain. Setting this to false will load all script assemblies into the
; DefaultCompileLanguage = "lsl"
+
    ;; current AppDomain, which will reduce the per-script overhead at the
 +
    ;; expense of reduced security and the inability to garbage collect the
 +
    ;; script assemblies
 +
    ; AppDomainLoading = true
  
;# {AllowedCompilers} {Enabled:true} {Languages to allow (comma separated)?} {} lsl
+
    ;# {DefaultCompileLanguage} {Enabled:true} {Default script language?} {lsl vb cs} lsl
;; List of allowed languages (lsl,vb,cs)
+
    ;; Default language for scripts
;; AllowedCompilers=lsl,cs,js,vb.
+
    ; DefaultCompileLanguage = "lsl"
;; *warning*, non lsl languages have access to static methods such as
+
;; System.IO.File. Enable at your own risk.
+
; AllowedCompilers = "lsl"
+
  
;; Compile debug info (line numbers) into the script assemblies
+
    ;# {AllowedCompilers} {Enabled:true} {Languages to allow (comma separated)?} {} lsl
  ; CompileWithDebugInformation = true
+
    ;; List of allowed languages (lsl,vb,cs)
 +
    ;; AllowedCompilers=lsl,cs,js,vb.
 +
    ;; *warning*, non lsl languages have access to static methods such as
 +
    ;; System.IO.File. Enable at your own risk.
 +
    ; AllowedCompilers = "lsl"
  
;; Allow the user of mod* functions. This allows a script to pass messages
+
    ;; Compile debug info (line numbers) into the script assemblies
;; to a region module via the modSendCommand() function
+
    ; CompileWithDebugInformation = true
;; Default is false
+
; AllowMODFunctions = false
+
  
;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
+
    ;; Allow the user of mod* functions. This allows a script to pass messages
; Allow the user of LightShare functions
+
    ;; to a region module via the modSendCommand() function
  AllowLightShareFunctions = true
+
    ;; Default is false
 +
    ; AllowMODFunctions = false
  
;; Time a script can spend in an event handler before it is interrupted
+
    ;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
; EventLimit = 30
+
    ;; Allow the use of os* functions (some are dangerous)
 +
    AllowOSFunctions = true
  
;; If a script overruns it's event limit, kill the script?
+
    ;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
; KillTimedOutScripts = false
+
    ; Allow the user of LightShare functions
 +
    AllowLightShareFunctions = true
  
;; Sets the multiplier for the scripting delays
+
    ;# {OSFunctionThreatLevel} {Enabled:true AllowOSFunctions:true} {OSFunction threat level? (DANGEROUS!)} {None VeryLow Low Moderate High VeryHigh Severe} VeryLow
; ScriptDelayFactor = 1.0
+
    ;; Threat level to allow, one of None, VeryLow, Low, Moderate, High,
 +
    ;; VeryHigh, Severe
 +
    OSFunctionThreatLevel = VeryLow
  
;; The factor the 10 m distances llimits are multiplied by
+
    ;; OS Functions enable/disable
; ScriptDistanceLimitFactor = 1.0
+
    ;; For each function, you can add one line, as shown
;;
+
    ;; The default for all functions allows them if below threat level
;; ==== OSSL FUNCTION BLOCK ====
+
;; More Info @ http://opensimulator.org/wiki/OSSL_Implemented
+
;; OSSL Functions as defined on October-21-2010 OpenSim 0.7.1 Dev a7acb65-r/14142 (interface version 6)
+
;;
+
;# {OSFunctionThreatLevel} {Enabled:true AllowOSFunctions:true} {OSFunction threat level? (DANGEROUS!)} {None VeryLow Low Moderate High VeryHigh Severe} VeryLow
+
;; *** Threat level to allow, one of None, VeryLow, Low, Moderate, High,
+
;; VeryHigh, Severe
+
OSFunctionThreatLevel = Low
+
;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
+
;; Allow the use of os* functions (some are dangerous)
+
AllowOSFunctions = true
+
;;
+
;; The default for all functions allows them if below the threat level as defined above
+
;; If a Higher Threat Level Function is set to TRUE This will operate OVER the above define default level
+
;;
+
;; = true allows the use of the function unconditionally
+
;; = false completely disallows regardless
+
;; = UUID allows that Individual Avatar Access to osFunction
+
;; UUID,UUID,UUID would allow the 3 different avatars to access function
+
;;
+
;; *** Threat-Level=None
+
Allow_osDrawEllipse = true
+
Allow_osDrawFilledPolygon = true
+
Allow_osDrawPolygon = true
+
Allow_osDrawFilledRectangle = true
+
Allow_osDrawImage = true
+
Allow_osDrawLine = true
+
Allow_osDrawLine = true
+
Allow_osDrawRectangle = true
+
Allow_osDrawText = true
+
Allow_osGetAgents = true
+
Allow_osGetAvatarList = true
+
Allow_osGetCurrentSunHour = true
+
Allow_osGetMapTexture = true
+
Allow_osList2Double = true
+
Allow_osMovePen = true
+
Allow_osParseJSON = true
+
Allow_osSetFontName = true
+
Allow_osSetFontSize = true
+
Allow_osSetPenCap = true
+
Allow_osSetPenColour = true
+
Allow_osSetPenSize = true
+
Allow_osSunGetParam = true
+
Allow_osSunSetParam = true
+
Allow_osTerrainGetHeight = true
+
Allow_osWindActiveModelPluginName = true
+
;; *** Threat-Level=Nuisance
+
Allow_osSetEstateSunSettings = false
+
Allow_osSetRegionSunSettings = false
+
;; *** Threat-Level=VeryLow
+
Allow_osGetDrawStringSize = true
+
Allow_osSetDynamicTextureData = true
+
Allow_osSetDynamicTextureDataBlend = true
+
Allow_osSetDynamicTextureDataBlendFace = true
+
Allow_osSetDynamicTextureURL = true
+
Allow_osSetDynamicTextureURLBlend = true
+
Allow_osSetDynamicTextureURLBlendFace = true
+
Allow_osSetParcelMediaURL = false
+
Allow_osSetParcelSIPAddress = false
+
Allow_osSetPrimFloatOnWater = true
+
Allow_osTerrainFlush = false
+
;; Allow_osWindParamGet = true ;; Not Available at this time
+
;; Allow_osWindParamSet = true ;; Not Available at this time
+
;; *** Threat-Level=Low
+
Allow_osAvatarName2Key = true
+
Allow_osFormatString = true
+
Allow_osKey2Name = true
+
Allow_osLoadedCreationDate = false
+
Allow_osLoadedCreationID = false
+
Allow_osLoadedCreationTime = false
+
Allow_osMessageObject = true
+
;; *** Threat-Level=Moderate
+
Allow_osGetGridLoginURI = true
+
Allow_osGetGridName = true
+
Allow_osGetGridNick = true
+
Allow_osGetRegionStats = true
+
Allow_osGetSimulatorMemory = true
+
Allow_osSetSpeed = true
+
;; *** Threat-Level=High Recomended to use UUID for those set as false
+
Allow_osCauseDamage = false
+
Allow_osCauseHealing = false
+
Allow_osGetAgentIP = false
+
Allow_osGetLinkPrimitiveParams = true
+
Allow_osGetPrimitiveParams = true
+
Allow_osSetPrimitiveParams = true
+
Allow_osGetRegionMapTexture = true
+
Allow_osGetScriptEngineName = false
+
Allow_osMakeNotecard = false
+
Allow_osMatchString = true
+
Allow_osNpcCreate = false
+
Allow_osNpcMoveTo = false
+
Allow_osNpcRemove = false
+
Allow_osNpcSay = false
+
Allow_osParcelJoin = false
+
Allow_osParcelSetDetails = false
+
Allow_osParcelSubdivide = false
+
Allow_osRegionRestart = false
+
Allow_osSetProjectionParams = false
+
Allow_osSetRegionWaterHeight = false
+
Allow_osSetStateEvents = false
+
Allow_osTeleportAgent = false
+
Allow_osTerrainSetHeight = false
+
Allow_osGetSimulatorVersion = true
+
;; *** Threat-Level=VeryHigh Recomended to use UUID for those set as false
+
Allow_osAvatarPlayAnimation = false
+
Allow_osAvatarStopAnimation = false
+
Allow_osGetNotecard = false
+
Allow_osGetNotecardLine = false
+
Allow_osGetNumberOfNotecardLines = false
+
Allow_osRegionNotice = false
+
Allow_osSetRot = false
+
;; *** Threat-Level=Severe Recomended to use UUID for those set as false
+
Allow_osConsoleCommand = false
+
Allow_osKickAvatar = false
+
;;
+
;; ==== END OF OSSL FUNCTION BLOCK ====
+
;; Maximum length of notecard line read
+
;; Increasing this to large values potentially opens
+
;; up the system to malicious scripters
+
;; NotecardLineReadCharsMax = 255
+
  
;; Sensor settings
+
    ;; true allows the use of the function unconditionally
; SensorMaxRange = 96.0
+
    ; Allow_osSetRegionWaterHeight = true
; SensorMaxResults = 16
+
   
 +
    ;; false disables the function completely
 +
    ; Allow_osSetRegionWaterHeight = false
 +
   
 +
    ;; Comma separated list of UUIDS allows the function for that list of UUIDS
 +
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb
 +
   
 +
    ;; Comma separated list of owner classes that allow the function for a particular class of owners. Choices are
 +
    ;; - PARCEL_GROUP_MEMBER: allow if objectgroup is the same group as the parcel
 +
    ;; - PARCEL_OWNER: allow if the objectowner is parcelowner
 +
    ;; - ESTATE_MANAGER: allow if the object owner is a estate manager
 +
    ;; - ESTATE_OWNER: allow if objectowner is estateowner
 +
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb, PARCEL_OWNER, ESTATE_OWNER>, ...
  
;; Disable underground movement of prims (default true); set to
+
    ;; You can also use script creators as the uuid
;; false to allow script controlled underground positioning of
+
    ; Creators_osSetRegionWaterHeight = <uuid>, ...
;; prims
+
; DisableUndergroundMovement = true</source><br>
+
  
<br>
+
    ;; If both Allow_ and Creators_ are given, effective permissions
 +
    ;; are the union of the two.
  
<br>--[[User:WhiteStar|WhiteStar]] 17:07, 21 October 2010 (UTC)
+
    ;; Time a script can spend in an event handler before it is interrupted
 +
    ; EventLimit = 30
  
= See Also  =
+
    ;; If a script overruns it's event limit, kill the script?
 +
    ; KillTimedOutScripts = false
  
*[[LSL Status|LSL/OSSL Status Page]]
+
    ;; Sets the multiplier for the scripting delays
*LSL
+
    ; ScriptDelayFactor = 1.0
**[[LSL Status/Types|LSL Types Status Page]]
+
 
**[[LSL Status/Events|LSL Events Status Page]]
+
    ;; The factor the 10 m distances llimits are multiplied by
**[[LSL Status/Functions|LSL Functions Status Page]]
+
    ; ScriptDistanceLimitFactor = 1.0
**[[LSL Status/functions/summary|LSL Functions Status Summary]]
+
 
**[[LSL Known Issues|LSL Known Issues]]  
+
    ;; Maximum length of notecard line read
**[[Kan-Ed Tests|Kan-Ed Tests]]
+
    ;; Increasing this to large values potentially opens
*OSSL  
+
    ;; up the system to malicious scripters
**[[OSSL Status/Types|OSSL Types Status Page]]  
+
    ; NotecardLineReadCharsMax = 255
**[[OSSL Status/Events|OSSL Events Status Page]]  
+
 
**[[OSSL Proposals|OSSL Proposed Functions]]  
+
    ;; Sensor settings
**[[OSSL Implemented|OSSL Implemented Functions]]  
+
    ; SensorMaxRange = 96.0
**[[OSSL Standards|OSSL Standards]]
+
    ; SensorMaxResults = 16
*[[Technical Reference|Technical Reference Page]]
+
 
 +
    ;; Disable underground movement of prims (default true); set to
 +
    ;; false to allow script controlled underground positioning of
 +
    ;; prims
 +
    ; DisableUndergroundMovement = true
 +
 
 +
    ;; Path to script engine assemblies
 +
    ;; Default is ./bin/ScriptEngines
 +
    ; ScriptEnginesPath = "ScriptEngines"
 +
   
 +
    ;; ========== OSSL FUNCTION BLOCK ==========
 +
    ;; OS FUNCTIONS as of 8:23 AM February-01-12 
 +
    ;; Extracted from OpenSimulator DEV 0.7.3 OpenSim-003bd9f-r/17959
 +
    ;;
 +
    ;; ADJUST as needed or desired
 +
    ;; ========================================
 +
    ;;
 +
    ;; *** Threat-Level=None
 +
    ;Allow_osDrawEllipse = true
 +
    ;Allow_osDrawFilledPolygon = true
 +
    ;Allow_osDrawFilledRectangle = true
 +
    ;Allow_osDrawImage = true
 +
    ;Allow_osDrawLine = true
 +
    ;Allow_osDrawPolygon = true
 +
    ;Allow_osDrawRectangle = true
 +
    ;Allow_osDrawText = true
 +
    ;Allow_osGetAgents = true
 +
    ;Allow_osGetAvatarList = true
 +
    ;Allow_osGetCurrentSunHour = true
 +
    ;Allow_osGetHealth = true
 +
    ;Allow_osGetInventoryDesc = true
 +
    ;Allow_osGetMapTexture = true
 +
    ;Allow_osGetRezzingObject = true
 +
    ;Allow_osGetSunParam = true
 +
    ;Allow_osGetTerrainHeight = true
 +
    ;Allow_osIsNpc = true
 +
    ;Allow_osList2Double = true
 +
    ;Allow_osMax = true
 +
    ;Allow_osMin = true
 +
    ;Allow_osMovePen = true
 +
    ;Allow_osNpcGetOwner = true
 +
    ;Allow_osParseJSON = true
 +
    ;Allow_osParseJSONNew = true
 +
    ;Allow_osSetFontName = true
 +
    ;Allow_osSetFontSize = true
 +
    ;Allow_osSetPenCap = true
 +
    ;Allow_osSetPenColor = true
 +
    ;Allow_osSetPenColour = true
 +
    ;Allow_osSetPenSize = true
 +
    ;Allow_osSetSunParam = true
 +
    ;Allow_osTeleportOwner = true
 +
    ;Allow_osWindActiveModelPluginName = true
 +
    ;;
 +
    ;; *** Threat-Level=Nuisance
 +
    ;Allow_osSetEstateSunSettings = false
 +
    ;Allow_osSetRegionSunSettings = false
 +
    ;;
 +
    ;; *** Threat-Level=VeryLow
 +
    ;Allow_osGetDrawStringSize = true
 +
    ;Allow_osGetWindParam = true
 +
    ;Allow_osNpcStopMoveToTarget = true
 +
    ;Allow_osReplaceString = true
 +
    ;Allow_osSetDynamicTextureData = true
 +
    ;Allow_osSetDynamicTextureDataBlend = true
 +
    ;Allow_osSetDynamicTextureDataBlendFace = true
 +
    ;Allow_osSetDynamicTextureURL = true
 +
    ;Allow_osSetDynamicTextureURLBlend = true
 +
    ;Allow_osSetDynamicTextureURLBlendFace = true
 +
    ;Allow_osSetParcelMediaURL = true
 +
    ;Allow_osSetParcelSIPAddress = true
 +
    ;Allow_osSetPrimFloatOnWater = true
 +
    ;Allow_osSetWindParam = true
 +
    ;Allow_osTerrainFlush = true
 +
    ;Allow_osUnixTimeToTimestamp = true
 +
    ;;   
 +
    ;; *** Threat-Level=Low
 +
    ;Allow_osAvatarName2Key = true
 +
    ;Allow_osFormatString = true
 +
    ;Allow_osKey2Name = true
 +
    ;Allow_osListenRegex = true
 +
    ;Allow_osLoadedCreationDate = true
 +
    ;Allow_osLoadedCreationID = true
 +
    ;Allow_osLoadedCreationTime = true
 +
    ;Allow_osMessageObject = true
 +
    ;Allow_osRegexIsMatch = true
 +
    ;;   
 +
    ;; *** Threat-Level=Moderate
 +
    ;Allow_osDropAttachment = true
 +
    ;Allow_osDropAttachmentAt = true
 +
    ;Allow_osGetGridCustom = true
 +
    ;Allow_osGetGridCustom = true
 +
    ;Allow_osGetGridGatekeeperURI = true
 +
    ;Allow_osGetGridHomeURI = true
 +
    ;Allow_osGetGridLoginURI = true
 +
    ;Allow_osGetGridName = true
 +
    ;Allow_osGetGridNick = true
 +
    ;Allow_osGetRegionStats = true
 +
    ;Allow_osGetSimulatorMemory = true
 +
    ;Allow_osSetSpeed = true
 +
    ;;   
 +
    ;; *** Threat-Level=High
 +
   
 +
    ;Allow_osCauseDamage = false
 +
    ;Allow_osCauseHealing = false
 +
    ;Allow_osForceDropAttachment = false
 +
    ;Allow_osForceDropAttachmentAt = false
 +
    ;Allow_osGetAgentIP = false
 +
    ;Allow_osGetLinkPrimitiveParams = false
 +
    ;Allow_osGetPhysicsEngineType = false
 +
    ;Allow_osGetPrimitiveParams = false
 +
    ;Allow_osGetRegionMapTexture = false
 +
    ;Allow_osGetScriptEngineName = false
 +
    ;Allow_osGetSimulatorVersion = false
 +
    ;Allow_osMakeNotecard = false
 +
    ;Allow_osMatchString = false
 +
    ;Allow_osNpcCreate = false
 +
    ;Allow_osNpcGetPos = false
 +
    ;Allow_osNpcGetRot = false
 +
    ;Allow_osNpcLoadAppearance = false
 +
    ;Allow_osNpcMoveTo = false
 +
    ;Allow_osNpcMoveToTarget = false
 +
    ;Allow_osNpcPlayAnimation = false
 +
    ;Allow_osNpcRemove = false
 +
    ;Allow_osNpcSaveAppearance = false
 +
    ;Allow_osNpcSay = false
 +
    ;Allow_osNpcSetRot = false
 +
    ;Allow_osNpcShout = false
 +
    ;Allow_osNpcSit = false
 +
    ;Allow_osNpcStand = false
 +
    ;Allow_osNpcStopAnimation = false
 +
    ;Allow_osNpcTouch = false
 +
    ;Allow_osNpcWhisper = false
 +
    ;Allow_osOwnerSaveAppearance = false
 +
    ;Allow_osParcelJoin = false
 +
    ;Allow_osParcelSubdivide = false
 +
    ;Allow_osRegionRestart = false
 +
    ;Allow_osSetContentType = false
 +
    ;Allow_osSetParcelDetails = false
 +
    ;Allow_osSetPrimitiveParams = false
 +
    ;Allow_osSetProjectionParams = false
 +
    ;Allow_osSetRegionWaterHeight = false
 +
    ;Allow_osSetStateEvents = false
 +
    ;Allow_osSetTerrainHeight = false
 +
    ;;   
 +
    ;; *** Threat-Level=VeryHigh
 +
    ;Allow_osAgentSaveAppearance = false 
 +
    ;Allow_osAvatarPlayAnimation = false
 +
    ;Allow_osAvatarStopAnimation = false
 +
    ;Allow_osGetNotecard = false
 +
    ;Allow_osGetNotecardLine = false
 +
    ;Allow_osGetNumberOfNotecardLines = false
 +
    ;Allow_osRegionNotice = false
 +
    ;Allow_osSetRot = false   
 +
    ;Allow_osSetParcelDetails = false
 +
    ;;   
 +
    ;; *** Threat-Level=Severe
 +
    ;Allow_osConsoleCommand = false
 +
    ;Allow_osKickAvatar = false
 +
    ;Allow_osTeleportAgent = false
 +
 
 +
</source>
 +
 
 +
--[[User:WhiteStar|WhiteStar]] 07:50, 1 February 2012 (PST)
 +
 
 +
= See Also =
 +
 
 +
* [[LSL Status|LSL/OSSL Status Page]]  
 +
* OSSL  
 +
** [[OSSL Status/Types|OSSL Types Status Page]]  
 +
** [[OSSL Status/Events|OSSL Events Status Page]]  
 +
** [[OSSL Proposals|OSSL Proposed Functions]]  
 +
** [[OSSL Implemented|OSSL Implemented Functions]]  
 +
** [[OSSL Standards]]
  
 
[[Category:Configuration]]
 
[[Category:Configuration]]
 +
[[Category:OSSL]]
 +
[[Category:Scripting]]

Latest revision as of 13:02, 15 October 2019

Several OSSL functions can only be execute by some users.
This is controled in file bin/config-include/OsslEnable.ini
Please consult OsslEnable.ini file for more information

Following is now Outdated.

This is effective FROM OpenSimulator DEV 08 OpenSim-r25920 and is subject to change.
Please remember the following:

  • Not all functions may be available in previous versions / revisions of OpenSimulator.
  • New functions may become available and some functions may be deprecated in the future.
  • Consider using UUIDs for SPECIFIC USERS allowing certain functions to prevent potentially harmful uses.
  • Use PARCEL_GROUP_MEMBER , PARCEL_OWNER , ESTATE_MANAGER , ESTATE_OWNER instead of UUID's for Grouping Access.

Simply replace the [XEngine] section in your OpenSim.ini and adjust according to your needs. NOTE ! The Allow_functions are commented out to prevent accidental use.

Special Security Note: The functions as shown within the example below have values set to "sane" values with moderately acceptable threat levels. Set according to your comfort level and what you determine to be an acceptable level of risk potential. See the page about Threat levels for an explanation of the various options that you have for enabling certain functions.

[XEngine]
    ;# {Enabled} {} {Enable the XEngine scripting engine?} {true false} true
    ;; Enable this engine in this OpenSimulator instance
    Enabled = true
 
    ;; How many threads to keep alive even if nothing is happening
    ;MinThreads = 2
 
    ;; How many threads to start at maximum load
    ;MaxThreads = 100
 
    ;; Time a thread must be idle (in seconds) before it dies
    ;IdleTimeout = 60
 
    ;# {Priority} {Enabled:true} {Priority for script engine threads?} {Lowest BelowNormal Normal AboveNormal Highest} BelowNormal
    ;; Thread priority ("Lowest", "BelowNormal", "Normal", "AboveNormal",
    ;; "Highest")
    ;Priority = "BelowNormal"
 
    ;; Maximum number of events to queue for a script (excluding timers)
    ;MaxScriptEventQueue = 300
 
    ;; Stack size per thread created
    ;ThreadStackSize = 262144
 
    ;# {DeleteScriptsOnStartup} {} {Delete previously compiled script DLLs on startup?} (true false) true
    ;; Controls whether previously compiled scripts DLLs are deleted on sim restart. If you set this to false
    ;; then startup will be considerably faster since scripts won't need to be recompiled. However, then it becomes your responsibility to delete the
    ;; compiled scripts if you're recompiling OpenSimulator from source code and internal interfaces used
    ;; by scripts have changed.
    ; DeleteScriptsOnStartup = true
 
    ;; Set this to true (the default) to load each script into a separate
    ;; AppDomain. Setting this to false will load all script assemblies into the
    ;; current AppDomain, which will reduce the per-script overhead at the
    ;; expense of reduced security and the inability to garbage collect the
    ;; script assemblies
    ; AppDomainLoading = true
 
    ;# {DefaultCompileLanguage} {Enabled:true} {Default script language?} {lsl vb cs} lsl
    ;; Default language for scripts
    ; DefaultCompileLanguage = "lsl"
 
    ;# {AllowedCompilers} {Enabled:true} {Languages to allow (comma separated)?} {} lsl
    ;; List of allowed languages (lsl,vb,cs)
    ;; AllowedCompilers=lsl,cs,js,vb.
    ;; *warning*, non lsl languages have access to static methods such as
    ;; System.IO.File.  Enable at your own risk.
    ; AllowedCompilers = "lsl"
 
    ;; Compile debug info (line numbers) into the script assemblies
    ; CompileWithDebugInformation = true
 
    ;; Allow the user of mod* functions.  This allows a script to pass messages
    ;; to a region module via the modSendCommand() function
    ;; Default is false
    ; AllowMODFunctions = false
 
    ;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
    ;; Allow the use of os* functions (some are dangerous)
    AllowOSFunctions = true
 
    ;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
    ; Allow the user of LightShare functions
    AllowLightShareFunctions = true
 
    ;# {OSFunctionThreatLevel} {Enabled:true AllowOSFunctions:true} {OSFunction threat level? (DANGEROUS!)} {None VeryLow Low Moderate High VeryHigh Severe} VeryLow
    ;; Threat level to allow, one of None, VeryLow, Low, Moderate, High,
    ;; VeryHigh, Severe
    OSFunctionThreatLevel = VeryLow
 
    ;; OS Functions enable/disable
    ;; For each function, you can add one line, as shown
    ;; The default for all functions allows them if below threat level
 
    ;; true allows the use of the function unconditionally
    ; Allow_osSetRegionWaterHeight = true
 
    ;; false disables the function completely
    ; Allow_osSetRegionWaterHeight = false
 
    ;; Comma separated list of UUIDS allows the function for that list of UUIDS
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb
 
    ;; Comma separated list of owner classes that allow the function for a particular class of owners. Choices are
    ;; - PARCEL_GROUP_MEMBER: allow if objectgroup is the same group as the parcel
    ;; - PARCEL_OWNER: allow if the objectowner is parcelowner
    ;; - ESTATE_MANAGER: allow if the object owner is a estate manager
    ;; - ESTATE_OWNER: allow if objectowner is estateowner
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb, PARCEL_OWNER, ESTATE_OWNER>, ...
 
    ;; You can also use script creators as the uuid
    ; Creators_osSetRegionWaterHeight = <uuid>, ...
 
    ;; If both Allow_ and Creators_ are given, effective permissions
    ;; are the union of the two.
 
    ;; Time a script can spend in an event handler before it is interrupted
    ; EventLimit = 30
 
    ;; If a script overruns it's event limit, kill the script?
    ; KillTimedOutScripts = false
 
    ;; Sets the multiplier for the scripting delays
    ; ScriptDelayFactor = 1.0
 
    ;; The factor the 10 m distances llimits are multiplied by
    ; ScriptDistanceLimitFactor = 1.0
 
    ;; Maximum length of notecard line read
    ;; Increasing this to large values potentially opens
    ;; up the system to malicious scripters
    ; NotecardLineReadCharsMax = 255
 
    ;; Sensor settings
    ; SensorMaxRange = 96.0
    ; SensorMaxResults = 16
 
    ;; Disable underground movement of prims (default true); set to
    ;; false to allow script controlled underground positioning of
    ;; prims
    ; DisableUndergroundMovement = true
 
    ;; Path to script engine assemblies
    ;; Default is ./bin/ScriptEngines
    ; ScriptEnginesPath = "ScriptEngines"
 
    ;; ========== OSSL FUNCTION BLOCK ==========
    ;; OS FUNCTIONS as of 8:23 AM February-01-12  
    ;; Extracted from OpenSimulator DEV 0.7.3 OpenSim-003bd9f-r/17959
    ;; 
    ;; ADJUST as needed or desired 
    ;; ========================================
    ;;
    ;; *** Threat-Level=None 
    ;Allow_osDrawEllipse = true
    ;Allow_osDrawFilledPolygon = true
    ;Allow_osDrawFilledRectangle = true
    ;Allow_osDrawImage = true
    ;Allow_osDrawLine = true
    ;Allow_osDrawPolygon = true
    ;Allow_osDrawRectangle = true
    ;Allow_osDrawText = true
    ;Allow_osGetAgents = true
    ;Allow_osGetAvatarList = true
    ;Allow_osGetCurrentSunHour = true
    ;Allow_osGetHealth = true
    ;Allow_osGetInventoryDesc = true 
    ;Allow_osGetMapTexture = true
    ;Allow_osGetRezzingObject = true
    ;Allow_osGetSunParam = true
    ;Allow_osGetTerrainHeight = true
    ;Allow_osIsNpc = true
    ;Allow_osList2Double = true
    ;Allow_osMax = true
    ;Allow_osMin = true
    ;Allow_osMovePen = true
    ;Allow_osNpcGetOwner = true
    ;Allow_osParseJSON = true
    ;Allow_osParseJSONNew = true
    ;Allow_osSetFontName = true
    ;Allow_osSetFontSize = true
    ;Allow_osSetPenCap = true
    ;Allow_osSetPenColor = true
    ;Allow_osSetPenColour = true
    ;Allow_osSetPenSize = true
    ;Allow_osSetSunParam = true
    ;Allow_osTeleportOwner = true
    ;Allow_osWindActiveModelPluginName = true
    ;;
    ;; *** Threat-Level=Nuisance
    ;Allow_osSetEstateSunSettings = false
    ;Allow_osSetRegionSunSettings = false
    ;;
    ;; *** Threat-Level=VeryLow
    ;Allow_osGetDrawStringSize = true
    ;Allow_osGetWindParam = true
    ;Allow_osNpcStopMoveToTarget = true
    ;Allow_osReplaceString = true
    ;Allow_osSetDynamicTextureData = true
    ;Allow_osSetDynamicTextureDataBlend = true
    ;Allow_osSetDynamicTextureDataBlendFace = true
    ;Allow_osSetDynamicTextureURL = true
    ;Allow_osSetDynamicTextureURLBlend = true
    ;Allow_osSetDynamicTextureURLBlendFace = true
    ;Allow_osSetParcelMediaURL = true
    ;Allow_osSetParcelSIPAddress = true
    ;Allow_osSetPrimFloatOnWater = true
    ;Allow_osSetWindParam = true
    ;Allow_osTerrainFlush = true
    ;Allow_osUnixTimeToTimestamp = true
    ;;    
    ;; *** Threat-Level=Low
    ;Allow_osAvatarName2Key = true
    ;Allow_osFormatString = true
    ;Allow_osKey2Name = true
    ;Allow_osListenRegex = true
    ;Allow_osLoadedCreationDate = true
    ;Allow_osLoadedCreationID = true
    ;Allow_osLoadedCreationTime = true
    ;Allow_osMessageObject = true
    ;Allow_osRegexIsMatch = true
    ;;    
    ;; *** Threat-Level=Moderate
    ;Allow_osDropAttachment = true
    ;Allow_osDropAttachmentAt = true
    ;Allow_osGetGridCustom = true
    ;Allow_osGetGridCustom = true
    ;Allow_osGetGridGatekeeperURI = true
    ;Allow_osGetGridHomeURI = true
    ;Allow_osGetGridLoginURI = true
    ;Allow_osGetGridName = true
    ;Allow_osGetGridNick = true
    ;Allow_osGetRegionStats = true
    ;Allow_osGetSimulatorMemory = true
    ;Allow_osSetSpeed = true
    ;;    
    ;; *** Threat-Level=High
 
    ;Allow_osCauseDamage = false
    ;Allow_osCauseHealing = false
    ;Allow_osForceDropAttachment = false
    ;Allow_osForceDropAttachmentAt = false
    ;Allow_osGetAgentIP = false
    ;Allow_osGetLinkPrimitiveParams = false
    ;Allow_osGetPhysicsEngineType = false
    ;Allow_osGetPrimitiveParams = false
    ;Allow_osGetRegionMapTexture = false
    ;Allow_osGetScriptEngineName = false
    ;Allow_osGetSimulatorVersion = false
    ;Allow_osMakeNotecard = false
    ;Allow_osMatchString = false
    ;Allow_osNpcCreate = false
    ;Allow_osNpcGetPos = false
    ;Allow_osNpcGetRot = false
    ;Allow_osNpcLoadAppearance = false
    ;Allow_osNpcMoveTo = false
    ;Allow_osNpcMoveToTarget = false
    ;Allow_osNpcPlayAnimation = false
    ;Allow_osNpcRemove = false
    ;Allow_osNpcSaveAppearance = false
    ;Allow_osNpcSay = false
    ;Allow_osNpcSetRot = false
    ;Allow_osNpcShout = false
    ;Allow_osNpcSit = false
    ;Allow_osNpcStand = false
    ;Allow_osNpcStopAnimation = false
    ;Allow_osNpcTouch = false
    ;Allow_osNpcWhisper = false
    ;Allow_osOwnerSaveAppearance = false
    ;Allow_osParcelJoin = false
    ;Allow_osParcelSubdivide = false
    ;Allow_osRegionRestart = false
    ;Allow_osSetContentType = false
    ;Allow_osSetParcelDetails = false
    ;Allow_osSetPrimitiveParams = false
    ;Allow_osSetProjectionParams = false
    ;Allow_osSetRegionWaterHeight = false
    ;Allow_osSetStateEvents = false
    ;Allow_osSetTerrainHeight = false
    ;;    
    ;; *** Threat-Level=VeryHigh
    ;Allow_osAgentSaveAppearance = false   
    ;Allow_osAvatarPlayAnimation = false
    ;Allow_osAvatarStopAnimation = false
    ;Allow_osGetNotecard = false
    ;Allow_osGetNotecardLine = false
    ;Allow_osGetNumberOfNotecardLines = false
    ;Allow_osRegionNotice = false
    ;Allow_osSetRot = false    
    ;Allow_osSetParcelDetails = false
    ;;    
    ;; *** Threat-Level=Severe
    ;Allow_osConsoleCommand = false
    ;Allow_osKickAvatar = false
    ;Allow_osTeleportAgent = false

--WhiteStar 07:50, 1 February 2012 (PST)

[edit] See Also

Personal tools
General
About This Wiki