implement help command
This commit is contained in:
parent
be08ca06be
commit
ea71de7c8b
@ -109,17 +109,16 @@ static size_t aos_terminal_write(const char *buf, size_t len)
|
|||||||
if(len == 0) return 0;
|
if(len == 0) return 0;
|
||||||
|
|
||||||
struct aos_rpc *rpc = aos_rpc_get_serial_channel();
|
struct aos_rpc *rpc = aos_rpc_get_serial_channel();
|
||||||
|
if (rpc == NULL) {
|
||||||
|
debug_printf("[aos_terminal_write] RPC NOT YET INITIALIZED: %.*s\n", len, buf);
|
||||||
|
USER_PANIC("Make sure to initialize aos_rpc before barrelfish_libc_glue_init is called.");
|
||||||
|
}
|
||||||
for (int i = 0; i < len; ++i) {
|
for (int i = 0; i < len; ++i) {
|
||||||
err = aos_rpc_serial_putchar(rpc, buf[i]);
|
err = aos_rpc_serial_putchar(rpc, buf[i]);
|
||||||
if (err_is_fail(err)) return err;
|
if (err_is_fail(err)) return err;
|
||||||
}
|
}
|
||||||
|
|
||||||
return SYS_ERR_OK;
|
return SYS_ERR_OK;
|
||||||
// if (rpc == NULL) {
|
|
||||||
// debug_printf("[aos_terminal_write] RPC NOT YET INITIALIZED: %.*s\n", len, buf);
|
|
||||||
// USER_PANIC("Make sure to initialize aos_rpc before barrelfish_libc_glue_init is called.");
|
|
||||||
// }
|
|
||||||
|
|
||||||
// return aos_rpc_serial_write(rpc, buf, len);
|
// return aos_rpc_serial_write(rpc, buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -129,6 +128,10 @@ static size_t aos_terminal_read(char *buf, size_t len)
|
|||||||
if(len == 0) return 0;
|
if(len == 0) return 0;
|
||||||
|
|
||||||
struct aos_rpc *rpc = aos_rpc_get_serial_channel();
|
struct aos_rpc *rpc = aos_rpc_get_serial_channel();
|
||||||
|
if (rpc == NULL) {
|
||||||
|
debug_printf("[aos_terminal_read] RPC NOT YET INITIALIZED: %.*s\n", len, buf);
|
||||||
|
USER_PANIC("Make sure to initialize aos_rpc before barrelfish_libc_glue_init is called.");
|
||||||
|
}
|
||||||
for (int i = 0; i < len; ++i) {
|
for (int i = 0; i < len; ++i) {
|
||||||
char in;
|
char in;
|
||||||
err = aos_rpc_serial_getchar(rpc, &in);
|
err = aos_rpc_serial_getchar(rpc, &in);
|
||||||
@ -137,12 +140,6 @@ static size_t aos_terminal_read(char *buf, size_t len)
|
|||||||
}
|
}
|
||||||
|
|
||||||
return SYS_ERR_OK;
|
return SYS_ERR_OK;
|
||||||
|
|
||||||
// if (rpc == NULL) {
|
|
||||||
// debug_printf("[aos_terminal_read] RPC NOT YET INITIALIZED: %.*s\n", len, buf);
|
|
||||||
// USER_PANIC("Make sure to initialize aos_rpc before barrelfish_libc_glue_init is called.");
|
|
||||||
// }
|
|
||||||
|
|
||||||
// return aos_rpc_serial_read(rpc, buf, len);
|
// return aos_rpc_serial_read(rpc, buf, len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,22 @@ static void parse_cmd_line(char * line, int * argc, char ** argv) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static errval_t shelly_cmd_help(char * line) {
|
||||||
|
errval_t err;
|
||||||
|
err = shelly_write_str("commands implemented:\n\r");
|
||||||
|
if (err_is_fail(err)) return err;
|
||||||
|
err = shelly_write_str("- echo\n\r");
|
||||||
|
if (err_is_fail(err)) return err;
|
||||||
|
err = shelly_write_str("- run\n\r");
|
||||||
|
if (err_is_fail(err)) return err;
|
||||||
|
err = shelly_write_str("- ps\n\r");
|
||||||
|
if (err_is_fail(err)) return err;
|
||||||
|
err = shelly_write_str("- help\n\r");
|
||||||
|
if (err_is_fail(err)) return err;
|
||||||
|
|
||||||
|
return SYS_ERR_OK;
|
||||||
|
}
|
||||||
|
|
||||||
static errval_t shelly_cmd_echo(char * line) {
|
static errval_t shelly_cmd_echo(char * line) {
|
||||||
errval_t err;
|
errval_t err;
|
||||||
err = shelly_write_str(line);
|
err = shelly_write_str(line);
|
||||||
@ -75,6 +91,8 @@ static errval_t handle_shelly_cmd(char* line, size_t len) {
|
|||||||
return shelly_cmd_run(remaining_line);
|
return shelly_cmd_run(remaining_line);
|
||||||
} else if (strcmp(cmd, "ps") == 0) {
|
} else if (strcmp(cmd, "ps") == 0) {
|
||||||
return shelly_cmd_ps(remaining_line);
|
return shelly_cmd_ps(remaining_line);
|
||||||
|
} else if (strcmp(cmd, "help") == 0) {
|
||||||
|
return shelly_cmd_help(remaining_line);
|
||||||
} else {
|
} else {
|
||||||
char buf[256];
|
char buf[256];
|
||||||
snprintf(buf, 256, "unknown command \"%s\"\n\r", cmd);
|
snprintf(buf, 256, "unknown command \"%s\"\n\r", cmd);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user