From e3fe7d89b6094bfef42f42329e15631f684f0748 Mon Sep 17 00:00:00 2001 From: Paul Selkirk Date: Thu, 21 Jul 2016 16:32:43 -0400 Subject: Use a fresh port of libcli, which retains more of the original API. --- projects/hsm/mgmt-keystore.c | 56 ++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 31 deletions(-) (limited to 'projects/hsm/mgmt-keystore.c') diff --git a/projects/hsm/mgmt-keystore.c b/projects/hsm/mgmt-keystore.c index 0471430..c7e20b0 100644 --- a/projects/hsm/mgmt-keystore.c +++ b/projects/hsm/mgmt-keystore.c @@ -40,7 +40,6 @@ #include "stm-uart.h" #include "mgmt-cli.h" -#include "mgmt-show.h" #undef HAL_OK #define LIBHAL_OK HAL_OK @@ -54,7 +53,7 @@ #include -int cmd_keystore_set_pin(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_set_pin(struct cli_def *cli, const char *command, char *argv[], int argc) { const hal_ks_keydb_t *db; hal_user_t user; @@ -92,7 +91,7 @@ int cmd_keystore_set_pin(struct cli_def *cli, const char *command, char *argv[], return CLI_OK; } -int cmd_keystore_clear_pin(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_clear_pin(struct cli_def *cli, const char *command, char *argv[], int argc) { const hal_ks_keydb_t *db; hal_user_t user; @@ -130,7 +129,7 @@ int cmd_keystore_clear_pin(struct cli_def *cli, const char *command, char *argv[ return CLI_OK; } -int cmd_keystore_set_pin_iterations(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_set_pin_iterations(struct cli_def *cli, const char *command, char *argv[], int argc) { hal_error_t status; hal_client_handle_t client = { -1 }; @@ -151,7 +150,7 @@ int cmd_keystore_set_pin_iterations(struct cli_def *cli, const char *command, ch } #if 0 -int cmd_keystore_set_key(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_set_key(struct cli_def *cli, const char *command, char *argv[], int argc) { hal_error_t status; int hint = 0; @@ -208,7 +207,7 @@ static int key_by_index(struct cli_def *cli, char *str, const uint8_t **name, si return CLI_ERROR; } -int cmd_keystore_delete_key(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_delete_key(struct cli_def *cli, const char *command, char *argv[], int argc) { hal_error_t status; int hint = 0; @@ -251,7 +250,7 @@ int cmd_keystore_delete_key(struct cli_def *cli, const char *command, char *argv return CLI_OK; } -int cmd_keystore_rename_key(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_rename_key(struct cli_def *cli, const char *command, char *argv[], int argc) { hal_error_t status; int hint = 0; @@ -294,7 +293,7 @@ int cmd_keystore_rename_key(struct cli_def *cli, const char *command, char *argv return CLI_OK; } -int cmd_keystore_show_keys(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_show_keys(struct cli_def *cli, const char *command, char *argv[], int argc) { const hal_ks_keydb_t *db; char *type; @@ -369,7 +368,7 @@ int cmd_keystore_show_keys(struct cli_def *cli, const char *command, char *argv[ return CLI_OK; } -int cmd_keystore_erase(struct cli_def *cli, const char *command, char *argv[], int argc) +static int cmd_keystore_erase(struct cli_def *cli, const char *command, char *argv[], int argc) { int status; @@ -393,42 +392,37 @@ int cmd_keystore_erase(struct cli_def *cli, const char *command, char *argv[], i void configure_cli_keystore(struct cli_def *cli) { - /* keystore */ - cli_command_root(keystore); - /* keystore set */ - cli_command_branch(keystore, set); - /* keystore clear */ - cli_command_branch(keystore, clear); - /* keystore delete */ - cli_command_branch(keystore, delete); - /* keystore rename */ - cli_command_branch(keystore, rename); - /* keystore show */ - cli_command_branch(keystore, show); + struct cli_command *c = cli_register_command(cli, NULL, "keystore", NULL, 0, 0, NULL); + + struct cli_command *c_show = cli_register_command(cli, c, "show", NULL, 0, 0, NULL); + struct cli_command *c_set = cli_register_command(cli, c, "set", NULL, 0, 0, NULL); + struct cli_command *c_clear = cli_register_command(cli, c, "clear", NULL, 0, 0, NULL); + struct cli_command *c_delete = cli_register_command(cli, c, "delete", NULL, 0, 0, NULL); + struct cli_command *c_rename = cli_register_command(cli, c, "rename", NULL, 0, 0, NULL); + + /* keystore show keys */ + cli_register_command(cli, c_show, "keys", cmd_keystore_show_keys, 0, 0, "Show what PINs and keys are in the keystore"); /* keystore set pin */ - cli_command_node(keystore_set, pin, "Set either 'wheel', 'user' or 'so' PIN"); + struct cli_command *c_set_pin = cli_register_command(cli, c_set, "pin", cmd_keystore_set_pin, 0, 0, "Set either 'wheel', 'user' or 'so' PIN"); /* keystore set pin iterations */ - cli_command_node(keystore_set_pin, iterations, "Set PBKDF2 iterations for PINs"); + cli_register_command(cli, c_set_pin, "iterations", cmd_keystore_set_pin_iterations, 0, 0, "Set PBKDF2 iterations for PINs"); /* keystore clear pin */ - cli_command_node(keystore_clear, pin, "Clear either 'wheel', 'user' or 'so' PIN"); - - /* keystore show keys */ - cli_command_node(keystore_show, keys, "Show what PINs and keys are in the keystore"); + cli_register_command(cli, c_clear, "pin", cmd_keystore_clear_pin, 0, 0, "Clear either 'wheel', 'user' or 'so' PIN"); #if 0 /* keystore set key */ - cli_command_node(keystore_set, key, "Set a key"); + cli_register_command(cli, c_set, "key", cmd_keystore_set_key, 0, 0, "Set a key"); #endif /* keystore rename key */ - cli_command_node(keystore_rename, key, "Rename a key"); + cli_register_command(cli, c_rename, "key", cmd_keystore_rename_key, 0, 0, "Rename a key"); /* keystore delete key */ - cli_command_node(keystore_delete, key, "Delete a key"); + cli_register_command(cli, c_delete, "key", cmd_keystore_delete_key, 0, 0, "Delete a key"); /* keystore erase */ - cli_command_node(keystore, erase, "Erase the whole keystore"); + cli_register_command(cli, c, "erase", cmd_keystore_erase, 0, 0, "Erase the whole keystore"); } -- cgit v1.2.3