2005-03-08 Paul Jakma <paul.jakma@sun.com>
- * command.c: (banner_motd_file_cmd) use XSTRDUP/XFREE
+ * command.c: (banner_motd_file_cmd) use XSTRDUP/XFREE.
+ (cmd_describe_command_real) sign compile warning fix
+ (cmd_complete_command_real) ditto.
+ (config_list_cmd) Don't list hidden or deprecated commands,
+ hiding these from tab completion is still to be done.
+ * command.h: cmd attr enum should start at 1.
* vty.c: (vty_hello) suggestions from Andrew, read by line and
stub out trailling non-printable characters on each line thus
allowing us to specify VTY_NEWLINE to vty_out.
/*
- $Id: command.c,v 1.39 2005/03/08 15:16:57 paul Exp $
+ $Id: command.c,v 1.40 2005/03/08 15:56:42 paul Exp $
Command interpreter routine for virtual terminal [aka TeletYpe]
Copyright (C) 1997, 98, 99 Kunihiro Ishiguro
static vector
cmd_describe_command_real (vector vline, struct vty *vty, int *status)
{
- int i;
+ unsigned int i;
vector cmd_vector;
#define INIT_MATCHVEC_SIZE 10
vector matchvec;
struct cmd_element *cmd_element;
- int index;
+ unsigned int index;
int ret;
enum match_type match;
char *command;
static char **
cmd_complete_command_real (vector vline, struct vty *vty, int *status)
{
- int i;
+ unsigned int i;
vector cmd_vector = vector_copy (cmd_node_vector (cmdvec, vty->node));
#define INIT_MATCHVEC_SIZE 10
vector matchvec;
struct cmd_element *cmd_element;
- int index = vector_max (vline) - 1;
+ unsigned int index = vector_max (vline) - 1;
char **match_str;
struct desc *desc;
vector descvec;
struct cmd_element *cmd;
for (i = 0; i < vector_max (cnode->cmd_vector); i++)
- if ((cmd = vector_slot (cnode->cmd_vector, i)) != NULL)
+ if ((cmd = vector_slot (cnode->cmd_vector, i)) != NULL
+ && !(cmd->attr == CMD_ATTR_DEPRECATED
+ || cmd->attr == CMD_ATTR_HIDDEN))
vty_out (vty, " %s%s", cmd->string,
VTY_NEWLINE);
return CMD_SUCCESS;