diff options
author | mingchen | 2008-07-25 02:30:07 +0000 |
---|---|---|
committer | mingchen | 2008-07-25 02:30:07 +0000 |
commit | f2742fb6043c6b7332afd026d77a29b25369934c (patch) | |
tree | 895f906ba9db30b27117e6f0d7af40e063204e8e /OpenSim/Region/Environment/Modules/Framework/InterfaceCommander | |
parent | llApplyImpulse now accepts any non-zero integer as not FALSE (diff) | |
download | opensim-SC_OLD-f2742fb6043c6b7332afd026d77a29b25369934c.zip opensim-SC_OLD-f2742fb6043c6b7332afd026d77a29b25369934c.tar.gz opensim-SC_OLD-f2742fb6043c6b7332afd026d77a29b25369934c.tar.bz2 opensim-SC_OLD-f2742fb6043c6b7332afd026d77a29b25369934c.tar.xz |
*Added CommandIntentions that is used to describe a console commands hazard. HAZARDOUS if it modifies the simulator, NON_HAZARDOUS if it does a command that doesn't modify the simulator but does a background command such as a forced backup, and STATISTICAL if it returns debug or more information.
*This is useful for implementing a protection system from unwanted script execution or for application modules needing to know what a command does.
Diffstat (limited to 'OpenSim/Region/Environment/Modules/Framework/InterfaceCommander')
-rw-r--r-- | OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/Commander.cs | 9 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/CommanderTestModule.cs | 2 |
2 files changed, 9 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/Commander.cs b/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/Commander.cs index 84487e8..82f18a1 100644 --- a/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/Commander.cs +++ b/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/Commander.cs | |||
@@ -47,12 +47,14 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander | |||
47 | private Action<object[]> m_command; | 47 | private Action<object[]> m_command; |
48 | private string m_help; | 48 | private string m_help; |
49 | private string m_name; | 49 | private string m_name; |
50 | private CommandIntentions m_intentions; //A permission type system could implement this and know what a command intends on doing. | ||
50 | 51 | ||
51 | public Command(string name, Action<Object[]> command, string help) | 52 | public Command(string name, CommandIntentions intention, Action<Object[]> command, string help) |
52 | { | 53 | { |
53 | m_name = name; | 54 | m_name = name; |
54 | m_command = command; | 55 | m_command = command; |
55 | m_help = help; | 56 | m_help = help; |
57 | m_intentions = intention; | ||
56 | } | 58 | } |
57 | 59 | ||
58 | #region ICommand Members | 60 | #region ICommand Members |
@@ -67,6 +69,11 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander | |||
67 | get { return m_name; } | 69 | get { return m_name; } |
68 | } | 70 | } |
69 | 71 | ||
72 | public CommandIntentions Intentions | ||
73 | { | ||
74 | get { return m_intentions; } | ||
75 | } | ||
76 | |||
70 | public string Help | 77 | public string Help |
71 | { | 78 | { |
72 | get { return m_help; } | 79 | get { return m_help; } |
diff --git a/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/CommanderTestModule.cs b/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/CommanderTestModule.cs index 8d1371c..c569240 100644 --- a/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/CommanderTestModule.cs +++ b/OpenSim/Region/Environment/Modules/Framework/InterfaceCommander/CommanderTestModule.cs | |||
@@ -56,7 +56,7 @@ namespace OpenSim.Region.Environment.Modules.Framework.InterfaceCommander | |||
56 | 56 | ||
57 | public void PostInitialise() | 57 | public void PostInitialise() |
58 | { | 58 | { |
59 | Command testCommand = new Command("hello", InterfaceHelloWorld, "Says a simple debugging test string"); | 59 | Command testCommand = new Command("hello", CommandIntentions.COMMAND_STATISTICAL, InterfaceHelloWorld, "Says a simple debugging test string"); |
60 | testCommand.AddArgument("world", "Write world here", "string"); | 60 | testCommand.AddArgument("world", "Write world here", "string"); |
61 | 61 | ||
62 | m_commander.RegisterCommand("hello", testCommand); | 62 | m_commander.RegisterCommand("hello", testCommand); |