summaryrefslogtreecommitdiff
path: root/shell/rtems_shell.ads
diff options
context:
space:
mode:
Diffstat (limited to 'shell/rtems_shell.ads')
-rw-r--r--shell/rtems_shell.ads43
1 files changed, 43 insertions, 0 deletions
diff --git a/shell/rtems_shell.ads b/shell/rtems_shell.ads
new file mode 100644
index 0000000..8f7b5d6
--- /dev/null
+++ b/shell/rtems_shell.ads
@@ -0,0 +1,43 @@
+--
+-- $Id$
+--
+
+with Interfaces.C; use Interfaces.C;
+with Interfaces.C.Strings; use Interfaces.C.Strings;
+with Interfaces.C.Pointers;
+
+package RTEMS_Shell is
+
+ type Argument_Array is array (ptrdiff_t range <>) of aliased chars_ptr;
+
+ package Argument_Vector_Package is
+ new Pointers (Index => ptrdiff_t,
+ Element => chars_ptr,
+ Element_Array => Argument_Array,
+ Default_Terminator => Null_Ptr);
+
+ subtype Argument_Count_Type is ptrdiff_t;
+ subtype Argument_Vector_Type is Argument_Vector_Package.Pointer;
+
+ type Command_Function_Type is access function (ArgC : Argument_Count_Type;
+ ArgV : Argument_Vector_Type) return int;
+ pragma Convention (C, Command_Function_Type);
+
+ procedure RTEMS_Shell_Add_Command(Name : chars_ptr; Category : chars_ptr;
+ Help : chars_ptr; Command_Function : Command_Function_Type);
+ pragma Import (C, RTEMS_Shell_Add_Command, "rtems_shell_add_cmd");
+
+ type Prompt_Function_Type is access function return chars_ptr;
+ pragma Convention (C, Prompt_Function_Type);
+
+ procedure Set_RTEMS_Shell_Prompt_Function(
+ Prompt_Function : Prompt_Function_Type);
+ pragma Import (C, Set_RTEMS_Shell_Prompt_Function, "set_prompt_function");
+
+ procedure Invoke_RTEMS_Shell;
+ pragma Import (C, Invoke_RTEMS_Shell, "invoke_rtems_shell");
+
+ procedure Initialize_Telnet_Daemon;
+ pragma Import (C, Initialize_Telnet_Daemon, "init_telnet_daemon");
+
+end RTEMS_Shell;