diff options
Diffstat (limited to 'lib/keychain.c')
-rw-r--r-- | lib/keychain.c | 59 |
1 files changed, 33 insertions, 26 deletions
diff --git a/lib/keychain.c b/lib/keychain.c index 2f8a0b77..a7929751 100644 --- a/lib/keychain.c +++ b/lib/keychain.c @@ -227,18 +227,19 @@ key_delete (struct keychain *keychain, struct key *key) key_free (key); } -DEFUN (key_chain, - key_chain_cmd, - "key chain WORD", - "Authentication key management\n" - "Key-chain management\n" - "Key-chain name\n") +DEFUN_ATTR (key_chain, + key_chain_cmd, + "key chain WORD", + "Authentication key management\n" + "Key-chain management\n" + "Key-chain name\n", + CMD_ATTR_NODE + KEYCHAIN_NODE) { struct keychain *keychain; keychain = keychain_get (argv[0]); vty->index = keychain; - vty_set_node(vty, KEYCHAIN_NODE) ; + vty->node = KEYCHAIN_NODE ; return CMD_SUCCESS; } @@ -266,11 +267,12 @@ DEFUN (no_key_chain, return CMD_SUCCESS; } -DEFUN (key, - key_cmd, - "key <0-2147483647>", - "Configure a key\n" - "Key identifier number\n") +DEFUN_ATTR (key, + key_cmd, + "key <0-2147483647>", + "Configure a key\n" + "Key identifier number\n", + CMD_ATTR_NODE + KEYCHAIN_KEY_NODE) { struct keychain *keychain; struct key *key; @@ -281,17 +283,18 @@ DEFUN (key, VTY_GET_INTEGER ("key identifier", index, argv[0]); key = key_get (keychain, index); vty->index_sub = key; - vty_set_node(vty, KEYCHAIN_KEY_NODE) ; + vty->node = KEYCHAIN_KEY_NODE ; return CMD_SUCCESS; } -DEFUN (no_key, - no_key_cmd, - "no key <0-2147483647>", - NO_STR - "Delete a key\n" - "Key identifier number\n") +DEFUN_ATTR (no_key, + no_key_cmd, + "no key <0-2147483647>", + NO_STR + "Delete a key\n" + "Key identifier number\n", + CMD_ATTR_NODE + KEYCHAIN_NODE) { struct keychain *keychain; struct key *key; @@ -309,7 +312,7 @@ DEFUN (no_key, key_delete (keychain, key); - vty_set_node(vty, KEYCHAIN_NODE) ; + vty->node = KEYCHAIN_NODE ; return CMD_SUCCESS; } @@ -850,16 +853,20 @@ DEFUN (send_lifetime_duration_month_day, static struct cmd_node keychain_node = { - KEYCHAIN_NODE, - "%s(config-keychain)# ", - 1 + .node = KEYCHAIN_NODE, + .prompt ="%s(config-keychain)# ", + + .config_to_vtysh = true }; static struct cmd_node keychain_key_node = { - KEYCHAIN_KEY_NODE, - "%s(config-keychain-key)# ", - 1 + .node = KEYCHAIN_KEY_NODE, + .prompt = "%s(config-keychain-key)# ", + + .parent = KEYCHAIN_NODE, + + .config_to_vtysh = true }; static int |