diff options
Diffstat (limited to 'cmd/cmd_flags.c')
-rw-r--r-- | cmd/cmd_flags.c | 44 |
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 |