OsConsoleCommand

From OpenSimulator

(Difference between revisions)
Jump to: navigation, search
m
(Replace script)
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{|  width="100%" style="border: thin solid black"
+
{{osslfunc
| colspan="2" align="center" style=background:orange | '''{{SUBPAGENAME}}'''
+
|threat_level=Severe
|- valign="top"
+
|permissions=false
|'''Threat Level''' || Severe
+
|delay=0
|- valign="top"
+
|function_syntax=integer osConsoleCommand(string command)
|'''Function Syntax''' || <source lang="lsl">
+
|ossl_example=<source lang="lsl">
osConsoleCommand(string command)  
+
//
</source>
+
// osConsoleCommand Script Exemple
|- valign="top"
+
// Author: djphil
|'''Example(s)||<source lang="lsl">
+
//
 +
 
 +
integer switch;
 +
 
 
default
 
default
 
{
 
{
  touch_start(integer num_detected)
+
    state_entry()
  {
+
    {
    osConsoleCommand("login disable");
+
        llSay(PUBLIC_CHANNEL, "Touch to see osConsoleCommand usage.");
    llSay(0, "Logins are disabled");
+
    }
  }
+
   
 +
    touch_start(integer number)
 +
    {
 +
        string command = "login disable";
 +
 
 +
        if (switch = !switch)
 +
        {
 +
            command = "login enable";
 +
        }
 +
 
 +
        integer result = osConsoleCommand(command);
 +
 
 +
        if (result == TRUE)
 +
        {
 +
            llSay(PUBLIC_CHANNEL, "Command \"" + command + "\" executed with success ...");
 +
        }
 +
 
 +
        else
 +
        {
 +
            llSay(PUBLIC_CHANNEL, "Command \"" + command + "\" executed without success ...");
 +
        }
 +
    }
 
}
 
}
 
</source>
 
</source>
 
This would issue a Login Disable command on the console to prevent logins.
 
This would issue a Login Disable command on the console to prevent logins.
|}
+
|description=This function allows an LSL script to directly execute a command to opensim's console.  Even if the function is available, only administrators/gods can successfully execute it.
  
This function allows an LSL script to directly execute a command to opensim's console.  
+
In addition, one can further restrict this function to only certain administrators/gods. See [[Threat level]] for more information on how to do this.
  
There are no security checks, so it can do anything a user with access to the command console could do, such as changing the avatar passwords, deleting sims, changing the terrain, and just about everything else.  
+
If the script owner does have the necessary permissions to call this function, then they can do anything someone with direct access to the command console could do, such as changing the avatar passwords, deleting sims, changing the terrain, etc.
  
 
This command represents the highest security threat of any OSSL function, giving it a threat level of ''Severe''.  
 
This command represents the highest security threat of any OSSL function, giving it a threat level of ''Severe''.  
  
 
Do not use or allow this function unless you are absolutely sure of what you're doing!  
 
Do not use or allow this function unless you are absolutely sure of what you're doing!  
 
+
|
It is advisable to allow the use of this function for particular users only. See [[Threat level]] for more information on how to do this.
+
}}
 
+
[[Category:OSSL Functions]]
+

Latest revision as of 17:00, 5 December 2020

integer osConsoleCommand(string command)
This function allows an LSL script to directly execute a command to opensim's console. Even if the function is available, only administrators/gods can successfully execute it.

In addition, one can further restrict this function to only certain administrators/gods. See Threat level for more information on how to do this.

If the script owner does have the necessary permissions to call this function, then they can do anything someone with direct access to the command console could do, such as changing the avatar passwords, deleting sims, changing the terrain, etc.

This command represents the highest security threat of any OSSL function, giving it a threat level of Severe.

Do not use or allow this function unless you are absolutely sure of what you're doing!

Threat Level Severe
Permissions Use of this function is always disabled by default
Extra Delay 0 seconds
Example(s)
//
// osConsoleCommand Script Exemple
// Author: djphil
//
 
integer switch;
 
default
{
    state_entry()
    {
        llSay(PUBLIC_CHANNEL, "Touch to see osConsoleCommand usage.");
    }
 
    touch_start(integer number)
    {
        string command = "login disable";
 
        if (switch = !switch)
        {
            command = "login enable";
        }
 
        integer result = osConsoleCommand(command);
 
        if (result == TRUE)
        {
            llSay(PUBLIC_CHANNEL, "Command \"" + command + "\" executed with success ...");
        }
 
        else
        {
            llSay(PUBLIC_CHANNEL, "Command \"" + command + "\" executed without success ...");
        }
    }
}

This would issue a Login Disable command on the console to prevent logins.

Personal tools
General
About This Wiki