aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/cmd_blk.c
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/cmd_blk.c')
-rw-r--r--cmd/cmd_blk.c20
1 files changed, 18 insertions, 2 deletions
diff --git a/cmd/cmd_blk.c b/cmd/cmd_blk.c
index db64f42..e497780 100644
--- a/cmd/cmd_blk.c
+++ b/cmd/cmd_blk.c
@@ -8,10 +8,26 @@ extern file_t *g_file;
extern buf_t *g_buf;
extern int g_flags;
+/*
+ * blk - show block size
+ * blk <num> - set block size
+ */
int c_blk( cmd_arg_t *arg )
{
- printf("FILE BLOCK SIZE %u\n", g_file->blk_size );
- printf("BUFFER BLOCK SIZE %d (MAX %d)\n", g_buf->size, g_buf->buf_size );
+ int argc = arg->argc;
+ char **argv = arg->argv;
+ int *type = arg->type;
+ if ( argc == 0)
+ {
+ printf("FILE BLOCK SIZE %u\n", g_file->blk_size );
+ } else if ( argc == 1 )
+ {
+ if ((type[0] == CMDT_INT) || (type[0] == CMDT_HEX))
+ g_file->blk_size = atoi( argv[0] );
+ } else
+ {
+ return -1;
+ }
return 0;
} \ No newline at end of file