aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/cmd_flags.c
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/cmd_flags.c')
-rw-r--r--cmd/cmd_flags.c44
1 files changed, 44 insertions, 0 deletions
diff --git a/cmd/cmd_flags.c b/cmd/cmd_flags.c
new file mode 100644
index 0000000..0c4a8bd
--- /dev/null
+++ b/cmd/cmd_flags.c
@@ -0,0 +1,44 @@
+#include "buf.h"
+#include "core.h"
+
+#include "libcmd/cmd.h"
+#include "libcmd/cmd_parse.h"
+
+extern file_t *g_file;
+extern buf_t *g_buf;
+extern int g_flags;
+
+int c_flags( cmd_arg_t *arg )
+{
+ int argc = arg->argc;
+ char **argv = arg->argv;
+
+ if ( argc == 0 )
+ {
+ printf("FLAGS: 0x%08x\n", g_flags );
+ return 0;
+ }
+
+ if ( argc > 1 )
+ {
+ printf("Only one argument needed\n");
+ return -1;
+ }
+
+ if ( strncmp(argv[0],"R",2) == 0 )
+ {
+ g_flags = FD_RO;
+ } else if ( strncmp(argv[0],"W",2) == 0 )
+ {
+ g_flags = FD_WO;
+ } else if ( strncmp(argv[0],"RW",3) == 0 )
+ {
+ g_flags = FD_RW;
+ } else
+ {
+ printf("Unknown mode. Suported R/W/RW\n");
+ return -1;
+ }
+
+ return 0;
+} \ No newline at end of file