Merge from master
[l2tpns.git] / cli.c
diff --git a/cli.c b/cli.c
index e5ac57c..876ad06 100644 (file)
--- a/cli.c
+++ b/cli.c
@@ -75,61 +75,61 @@ static char *debug_levels[] = {
 
 #endif
 
 
 #endif
 
-static int cmd_show_session(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_group(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_tunnels(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_users(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_radius(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_version(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_pool(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_run(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_banana(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_plugins(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_throttle(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_write_memory(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_drop_user(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_drop_tunnel(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_drop_session(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_snoop(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_snoop(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_throttle(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_throttle(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_debug(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_debug(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_set(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_load_plugin(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_remove_plugin(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_uptime(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_shutdown(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_reload(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_setforward(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_rmtlnsconf(struct cli_def *cli, char *command, char **argv, int argc);
+static int cmd_show_session(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_group(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_tunnels(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_users(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_radius(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_version(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_pool(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_run(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_banana(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_plugins(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_throttle(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_write_memory(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_drop_user(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_drop_tunnel(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_drop_session(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_snoop(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_snoop(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_throttle(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_throttle(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_debug(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_debug(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_set(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_load_plugin(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_remove_plugin(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_uptime(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_shutdown(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_reload(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_setforward(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_rmtlnsconf(struct cli_def *cli, const char *command, char **argv, int argc);
 
 static int regular_stuff(struct cli_def *cli);
 
 #ifdef STATISTICS
 
 static int regular_stuff(struct cli_def *cli);
 
 #ifdef STATISTICS
-static int cmd_show_counters(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_clear_counters(struct cli_def *cli, char *command, char **argv, int argc);
+static int cmd_show_counters(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_clear_counters(struct cli_def *cli, const char *command, char **argv, int argc);
 #endif /* STATISTICS */
 
 #ifdef BGP
 #define MODE_CONFIG_BGP 8
 #endif /* STATISTICS */
 
 #ifdef BGP
 #define MODE_CONFIG_BGP 8
-static int cmd_router_bgp(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_router_bgp_neighbour(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_router_bgp_no_neighbour(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_bgp(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_suspend_bgp(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_suspend_bgp(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_restart_bgp(struct cli_def *cli, char *command, char **argv, int argc);
+static int cmd_router_bgp(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_router_bgp_neighbour(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_router_bgp_no_neighbour(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_bgp(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_suspend_bgp(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_suspend_bgp(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_restart_bgp(struct cli_def *cli, const char *command, char **argv, int argc);
 #endif /* BGP */
 
 #define MODE_CONFIG_NACL 9
 #endif /* BGP */
 
 #define MODE_CONFIG_NACL 9
-static int cmd_ip_access_list(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_ip_access_list(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_ip_access_list_rule(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_filter(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_no_filter(struct cli_def *cli, char *command, char **argv, int argc);
-static int cmd_show_access_list(struct cli_def *cli, char *command, char **argv, int argc);
+static int cmd_ip_access_list(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_ip_access_list(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_ip_access_list_rule(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_filter(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_no_filter(struct cli_def *cli, const char *command, char **argv, int argc);
+static int cmd_show_access_list(struct cli_def *cli, const char *command, char **argv, int argc);
 
 /* match if b is a substr of a */
 #define MATCH(a,b) (!strncmp((a), (b), strlen(b)))
 
 /* match if b is a substr of a */
 #define MATCH(a,b) (!strncmp((a), (b), strlen(b)))
@@ -357,7 +357,7 @@ void cli_do(int sockfd)
        exit(0);
 }
 
        exit(0);
 }
 
-static void cli_print_log(struct cli_def *cli, char *string)
+static void cli_print_log(struct cli_def *cli, const char *string)
 {
        LOG(3, 0, 0, "%s\n", string);
 }
 {
        LOG(3, 0, 0, "%s\n", string);
 }
@@ -406,7 +406,7 @@ int cli_arg_help(struct cli_def *cli, int cr_ok, char *entry, ...)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_session(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_session(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -585,7 +585,7 @@ static int cmd_show_session(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_tunnels(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_tunnels(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i, x, show_all = 0;
        char *states[] = {
 {
        int i, x, show_all = 0;
        char *states[] = {
@@ -676,7 +676,7 @@ static int cmd_show_tunnels(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_users(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_users(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        char sid[32][8];
        char *sargv[32];
 {
        char sid[32][8];
        char *sargv[32];
@@ -718,7 +718,7 @@ static int cmd_show_users(struct cli_def *cli, char *command, char **argv, int a
 }
 
 #ifdef STATISTICS
 }
 
 #ifdef STATISTICS
-static int cmd_show_counters(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_counters(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -733,7 +733,7 @@ static int cmd_show_counters(struct cli_def *cli, char *command, char **argv, in
                        GET_STAT(tun_tx_bytes),
                        GET_STAT(tun_tx_packets),
                        GET_STAT(tun_tx_errors));
                        GET_STAT(tun_tx_bytes),
                        GET_STAT(tun_tx_packets),
                        GET_STAT(tun_tx_errors));
-       cli_print(cli, "");
+       cli_print(cli, " ");
 
        cli_print(cli, "%-10s %10s %10s %10s %10s", "Tunnel", "Bytes", "Packets", "Errors", "Retries");
        cli_print(cli, "%-10s %10u %10u %10u", "RX",
 
        cli_print(cli, "%-10s %10s %10s %10s %10s", "Tunnel", "Bytes", "Packets", "Errors", "Retries");
        cli_print(cli, "%-10s %10u %10u %10u", "RX",
@@ -745,7 +745,7 @@ static int cmd_show_counters(struct cli_def *cli, char *command, char **argv, in
                        GET_STAT(tunnel_tx_packets),
                        GET_STAT(tunnel_tx_errors),
                        GET_STAT(tunnel_retries));
                        GET_STAT(tunnel_tx_packets),
                        GET_STAT(tunnel_tx_errors),
                        GET_STAT(tunnel_retries));
-       cli_print(cli, "");
+       cli_print(cli, " ");
 
        cli_print(cli, "%-30s%-10s", "Counter", "Value");
        cli_print(cli, "-----------------------------------------");
 
        cli_print(cli, "%-30s%-10s", "Counter", "Value");
        cli_print(cli, "-----------------------------------------");
@@ -811,14 +811,14 @@ static int cmd_show_counters(struct cli_def *cli, char *command, char **argv, in
                char *p = strchr(t, '\n');
                if (p) *p = 0;
 
                char *p = strchr(t, '\n');
                if (p) *p = 0;
 
-               cli_print(cli, "");
+               cli_print(cli, " ");
                cli_print(cli, "Last counter reset %s", t);
        }
 
        return CLI_OK;
 }
 
                cli_print(cli, "Last counter reset %s", t);
        }
 
        return CLI_OK;
 }
 
-static int cmd_clear_counters(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_clear_counters(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -831,7 +831,7 @@ static int cmd_clear_counters(struct cli_def *cli, char *command, char **argv, i
 }
 #endif /* STATISTICS */
 
 }
 #endif /* STATISTICS */
 
-static int cmd_show_version(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_version(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -840,7 +840,7 @@ static int cmd_show_version(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_pool(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_pool(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        int used = 0, free = 0, show_all = 0;
 {
        int i;
        int used = 0, free = 0, show_all = 0;
@@ -902,13 +902,13 @@ static int cmd_show_pool(struct cli_def *cli, char *command, char **argv, int ar
 }
 
 static FILE *save_config_fh = 0;
 }
 
 static FILE *save_config_fh = 0;
-static void print_save_config(struct cli_def *cli, char *string)
+static void print_save_config(struct cli_def *cli, const char *string)
 {
        if (save_config_fh)
                fprintf(save_config_fh, "%s\n", string);
 }
 
 {
        if (save_config_fh)
                fprintf(save_config_fh, "%s\n", string);
 }
 
-static int cmd_write_memory(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_write_memory(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -931,7 +931,7 @@ static int cmd_write_memory(struct cli_def *cli, char *command, char **argv, int
 
 static char const *show_access_list_rule(int extended, ip_filter_rulet *rule);
 
 
 static char const *show_access_list_rule(int extended, ip_filter_rulet *rule);
 
-static int cmd_show_run(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_run(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        char ipv6addr[INET6_ADDRSTRLEN];
 {
        int i;
        char ipv6addr[INET6_ADDRSTRLEN];
@@ -1028,7 +1028,7 @@ static int cmd_show_run(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_radius(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_radius(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i, free = 0, used = 0, show_all = 0;
        char *states[] = {
 {
        int i, free = 0, used = 0, show_all = 0;
        char *states[] = {
@@ -1083,7 +1083,7 @@ static int cmd_show_radius(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_plugins(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_plugins(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1098,7 +1098,7 @@ static int cmd_show_plugins(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_throttle(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_throttle(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1130,7 +1130,7 @@ static int cmd_show_throttle(struct cli_def *cli, char *command, char **argv, in
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_banana(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_banana(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -1153,7 +1153,7 @@ static int cmd_show_banana(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_drop_user(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_drop_user(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        sessionidt s;
 {
        int i;
        sessionidt s;
@@ -1194,7 +1194,7 @@ static int cmd_drop_user(struct cli_def *cli, char *command, char **argv, int ar
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_drop_tunnel(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_drop_tunnel(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        tunnelidt t;
 {
        int i;
        tunnelidt t;
@@ -1244,7 +1244,7 @@ static int cmd_drop_tunnel(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_drop_session(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_drop_session(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        sessionidt s;
 {
        int i;
        sessionidt s;
@@ -1294,7 +1294,7 @@ static int cmd_drop_session(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_snoop(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_snoop(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        in_addr_t ip;
        uint16_t port;
 {
        in_addr_t ip;
        uint16_t port;
@@ -1367,7 +1367,7 @@ static int cmd_snoop(struct cli_def *cli, char *command, char **argv, int argc)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_no_snoop(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_snoop(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        sessionidt s;
 {
        int i;
        sessionidt s;
@@ -1405,7 +1405,7 @@ static int cmd_no_snoop(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_throttle(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_throttle(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int rate_in = 0;
        int rate_out = 0;
 {
        int rate_in = 0;
        int rate_out = 0;
@@ -1533,7 +1533,7 @@ static int cmd_throttle(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_no_throttle(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_throttle(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        sessionidt s;
 {
        int i;
        sessionidt s;
@@ -1578,7 +1578,7 @@ static int cmd_no_throttle(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_debug(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_debug(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1642,7 +1642,7 @@ static int cmd_debug(struct cli_def *cli, char *command, char **argv, int argc)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_no_debug(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_debug(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1688,7 +1688,7 @@ static int cmd_no_debug(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_load_plugin(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_load_plugin(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i, firstfree = 0;
 
 {
        int i, firstfree = 0;
 
@@ -1723,7 +1723,7 @@ static int cmd_load_plugin(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_remove_plugin(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_remove_plugin(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1784,7 +1784,7 @@ static char *duration(time_t secs)
        return buf;
 }
 
        return buf;
 }
 
-static int cmd_uptime(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_uptime(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        FILE *fh;
        char buf[100], *p = buf, *loads[3];
 {
        FILE *fh;
        char buf[100], *p = buf, *loads[3];
@@ -1794,7 +1794,7 @@ static int cmd_uptime(struct cli_def *cli, char *command, char **argv, int argc)
                return CLI_HELP_NO_ARGS;
 
        fh = fopen("/proc/loadavg", "r");
                return CLI_HELP_NO_ARGS;
 
        fh = fopen("/proc/loadavg", "r");
-       fgets(buf, 100, fh);
+       p = fgets(buf, 100, fh);
        fclose(fh);
 
        for (i = 0; i < 3; i++)
        fclose(fh);
 
        for (i = 0; i < 3; i++)
@@ -1820,7 +1820,7 @@ static int cmd_uptime(struct cli_def *cli, char *command, char **argv, int argc)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_set(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_set(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -1949,7 +1949,7 @@ int regular_stuff(struct cli_def *cli)
 }
 
 #ifdef BGP
 }
 
 #ifdef BGP
-static int cmd_router_bgp(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_router_bgp(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int as;
 
 {
        int as;
 
@@ -2015,7 +2015,7 @@ static int find_bgp_neighbour(char const *name)
        return new;
 }
 
        return new;
 }
 
-static int cmd_router_bgp_neighbour(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_router_bgp_neighbour(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        int keepalive;
 {
        int i;
        int keepalive;
@@ -2159,7 +2159,7 @@ static int cmd_router_bgp_neighbour(struct cli_def *cli, char *command, char **a
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_router_bgp_no_neighbour(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_router_bgp_no_neighbour(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -2191,7 +2191,7 @@ static int cmd_router_bgp_no_neighbour(struct cli_def *cli, char *command, char
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_bgp(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_bgp(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        int hdr = 0;
 {
        int i;
        int hdr = 0;
@@ -2223,7 +2223,7 @@ static int cmd_show_bgp(struct cli_def *cli, char *command, char **argv, int arg
 
                if (!hdr++)
                {
 
                if (!hdr++)
                {
-                       cli_print(cli, "");
+                       cli_print(cli, " ");
                        cli_print(cli, "Peer                  AS         Address "
                            "State       Retries Retry in Route Pend    Timers");
                        cli_print(cli, "------------------ ----- --------------- "
                        cli_print(cli, "Peer                  AS         Address "
                            "State       Retries Retry in Route Pend    Timers");
                        cli_print(cli, "------------------ ----- --------------- "
@@ -2246,7 +2246,7 @@ static int cmd_show_bgp(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_suspend_bgp(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_suspend_bgp(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        char *addr;
 {
        int i;
        char *addr;
@@ -2279,7 +2279,7 @@ static int cmd_suspend_bgp(struct cli_def *cli, char *command, char **argv, int
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_no_suspend_bgp(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_suspend_bgp(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        char *addr;
 {
        int i;
        char *addr;
@@ -2313,7 +2313,7 @@ static int cmd_no_suspend_bgp(struct cli_def *cli, char *command, char **argv, i
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_restart_bgp(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_restart_bgp(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        char *addr;
 {
        int i;
        char *addr;
@@ -2441,12 +2441,12 @@ static int access_list(struct cli_def *cli, char **argv, int argc, int add)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_ip_access_list(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_ip_access_list(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        return access_list(cli, argv, argc, 1);
 }
 
 {
        return access_list(cli, argv, argc, 1);
 }
 
-static int cmd_no_ip_access_list(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_ip_access_list(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        return access_list(cli, argv, argc, 0);
 }
 {
        return access_list(cli, argv, argc, 0);
 }
@@ -2532,7 +2532,7 @@ static char const *show_access_list_rule(int extended, ip_filter_rulet *rule)
        return buf;
 }
 
        return buf;
 }
 
-static ip_filter_rulet *access_list_rule_ext(struct cli_def *cli, char *command, char **argv, int argc)
+static ip_filter_rulet *access_list_rule_ext(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        static ip_filter_rulet rule;
        struct in_addr addr;
 {
        static ip_filter_rulet rule;
        struct in_addr addr;
@@ -2767,7 +2767,7 @@ static ip_filter_rulet *access_list_rule_ext(struct cli_def *cli, char *command,
        return &rule;
 }
 
        return &rule;
 }
 
-static ip_filter_rulet *access_list_rule_std(struct cli_def *cli, char *command, char **argv, int argc)
+static ip_filter_rulet *access_list_rule_std(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        static ip_filter_rulet rule;
        struct in_addr addr;
 {
        static ip_filter_rulet rule;
        struct in_addr addr;
@@ -2883,7 +2883,7 @@ static ip_filter_rulet *access_list_rule_std(struct cli_def *cli, char *command,
        return &rule;
 }
 
        return &rule;
 }
 
-static int cmd_ip_access_list_rule(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_ip_access_list_rule(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        ip_filter_rulet *rule = ip_filters[filt].extended
 {
        int i;
        ip_filter_rulet *rule = ip_filters[filt].extended
@@ -2909,7 +2909,7 @@ static int cmd_ip_access_list_rule(struct cli_def *cli, char *command, char **ar
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_filter(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_filter(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        sessionidt s;
        int i;
 {
        sessionidt s;
        int i;
@@ -3005,7 +3005,7 @@ static int cmd_filter(struct cli_def *cli, char *command, char **argv, int argc)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_no_filter(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_no_filter(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        sessionidt s;
 {
        int i;
        sessionidt s;
@@ -3050,7 +3050,7 @@ static int cmd_no_filter(struct cli_def *cli, char *command, char **argv, int ar
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_access_list(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_access_list(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
 
 {
        int i;
 
@@ -3095,7 +3095,7 @@ static int cmd_show_access_list(struct cli_def *cli, char *command, char **argv,
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_shutdown(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_shutdown(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -3104,7 +3104,7 @@ static int cmd_shutdown(struct cli_def *cli, char *command, char **argv, int arg
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_reload(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_reload(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
 {
        if (CLI_HELP_REQUESTED)
                return CLI_HELP_NO_ARGS;
@@ -3113,7 +3113,7 @@ static int cmd_reload(struct cli_def *cli, char *command, char **argv, int argc)
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_group(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_group(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int i;
        groupidt g;
 {
        int i;
        groupidt g;
@@ -3184,7 +3184,7 @@ static int cmd_show_group(struct cli_def *cli, char *command, char **argv, int a
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_setforward(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_setforward(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        int ret;
 
 {
        int ret;
 
@@ -3234,7 +3234,7 @@ static int cmd_setforward(struct cli_def *cli, char *command, char **argv, int a
        return CLI_OK;
 }
 
        return CLI_OK;
 }
 
-static int cmd_show_rmtlnsconf(struct cli_def *cli, char *command, char **argv, int argc)
+static int cmd_show_rmtlnsconf(struct cli_def *cli, const char *command, char **argv, int argc)
 {
        confrlnsidt idrlns;
        char strdisp[1024];
 {
        confrlnsidt idrlns;
        char strdisp[1024];