diff options
| author | Hani Benhabiles <kroosec@gmail.com> | 2014-05-27 23:39:34 +0100 |
|---|---|---|
| committer | Luiz Capitulino <lcapitulino@redhat.com> | 2014-06-11 10:10:29 -0400 |
| commit | e3bb532cc795a394b74d08c9d5eb1d95bb0e1e86 (patch) | |
| tree | bbcaee68b70bba7d4a20fdd3f23ab9208e92309d | |
| parent | 84007e81814bd1b523eb36b027ef8a84d7f00206 (diff) | |
| download | focaccia-qemu-e3bb532cc795a394b74d08c9d5eb1d95bb0e1e86.tar.gz focaccia-qemu-e3bb532cc795a394b74d08c9d5eb1d95bb0e1e86.zip | |
monitor: Add host_net_add device argument completion
Also fix the parameters documentation. Signed-off-by: Hani Benhabiles <hani@linux.com> Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com> Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
| -rw-r--r-- | hmp-commands.hx | 3 | ||||
| -rw-r--r-- | hmp.h | 1 | ||||
| -rw-r--r-- | monitor.c | 16 |
3 files changed, 19 insertions, 1 deletions
diff --git a/hmp-commands.hx b/hmp-commands.hx index 919af6eaf1..aab9cf59bb 100644 --- a/hmp-commands.hx +++ b/hmp-commands.hx @@ -1209,9 +1209,10 @@ ETEXI { .name = "host_net_add", .args_type = "device:s,opts:s?", - .params = "tap|user|socket|vde|netmap|dump [options]", + .params = "tap|user|socket|vde|netmap|bridge|dump [options]", .help = "add host VLAN client", .mhandler.cmd = net_host_device_add, + .command_completion = host_net_add_completion, }, STEXI diff --git a/hmp.h b/hmp.h index 0c814d07bd..22ee836469 100644 --- a/hmp.h +++ b/hmp.h @@ -109,5 +109,6 @@ void watchdog_action_completion(ReadLineState *rs, int nb_args, const char *str); void migrate_set_capability_completion(ReadLineState *rs, int nb_args, const char *str); +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str); #endif diff --git a/monitor.c b/monitor.c index 709425ddb0..0189bf879c 100644 --- a/monitor.c +++ b/monitor.c @@ -4594,6 +4594,22 @@ void migrate_set_capability_completion(ReadLineState *rs, int nb_args, } } +void host_net_add_completion(ReadLineState *rs, int nb_args, const char *str) +{ + int i; + size_t len; + if (nb_args != 2) { + return; + } + len = strlen(str); + readline_set_completion_index(rs, len); + for (i = 0; host_net_devices[i]; i++) { + if (!strncmp(host_net_devices[i], str, len)) { + readline_add_completion(rs, host_net_devices[i]); + } + } +} + static void monitor_find_completion_by_table(Monitor *mon, const mon_cmd_t *cmd_table, char **args, |