libvirt/tools
Lin Ma 8a4343a436 vsh: Fix completion error in case of multiple mac addresses
We know that the bash completer automatically handle colon by preceding
it with an escape character backslash.
While our bash autompletion file vsh completes multiple items, In case
there're multiple items which have same prefix and the content of completion
items contain colon(say mac address), The vsh needs to correctly hands
the backslash which are added by bash completer, Otherwise the completion
won't be successful. This patch fixes this problem.

e.g.:

 # virsh domiflist --domain VM
 Interface   Type      Source    Model    MAC
-------------------------------------------------------------
 vnet0       network   default   virtio   52:54:00:fb:7b:f5
 vnet1       bridge    br0       virtio   52:54:00:80:1b:21

Before:
 # virsh detach-interface --domain VM --mac <TAB>
 # virsh detach-interface --domain VM --mac 52\:54\:00\:<TAB><TAB>

After:
 # virsh detach-interface --domain VM --mac <TAB>
 # virsh detach-interface --domain VM --mac 52\:54\:00\:<TAB><TAB>
 52:54:00:80:1b:21  52:54:00:fb:7b:f5
 # virsh detach-interface --domain VM --mac 52\:54\:00\:

Signed-off-by: Lin Ma <lma@suse.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2020-11-10 18:34:18 +01:00
..
bash-completion vsh: Fix completion error in case of multiple mac addresses 2020-11-10 18:34:18 +01:00
nss lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
wireshark wireshark: Fix missing bool_t on macOS 2020-10-07 19:17:53 +02:00
libvirt_recover_xattrs.sh security_util: Remove stale XATTRs 2019-08-22 17:05:17 +02:00
libvirt_win_icon_16x16.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_32x32.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_48x48.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt_win_icon_64x64.ico Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
libvirt-guests.service.in build: don't hardcode /etc in the config related files 2019-08-09 14:06:31 +01:00
libvirt-guests.sh.in libvirt-guests: Sync time for autostarted guests 2020-11-04 12:18:05 +01:00
libvirt-guests.sysconf systemd: Tweak existing sysconf files 2020-04-03 11:50:35 +02:00
meson.build meson: Use @BASENAME@ more 2020-09-01 13:22:24 +02:00
virsh_win_icon.rc Move virsh into tools/ directory 2009-09-21 14:41:45 +01:00
virsh-backup.c virsh: limit completion of backup-{begin, dumpxml} to active domains 2020-09-14 15:52:40 +02:00
virsh-backup.h backup: Implement virsh support for backup 2019-12-10 12:41:56 +01:00
virsh-checkpoint.c Fix name prefix of VIR_DOMAIN_CHECKPOINT_REDEFINE_VALIDATE 2020-11-09 16:29:06 +00:00
virsh-checkpoint.h backup: Implement virsh support for checkpoints 2019-07-26 16:48:58 -05:00
virsh-completer-checkpoint.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-checkpoint.h tools: Separate checkpoint related completers into a file 2019-08-09 09:18:19 +02:00
virsh-completer-domain.c virsh: Add serial/parallel device name completion to console command 2020-11-10 18:34:04 +01:00
virsh-completer-domain.h virsh: Add serial/parallel device name completion to console command 2020-11-10 18:34:04 +01:00
virsh-completer-host.c virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-completer-host.h virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-completer-interface.c virsh: Add interface mac completion to iface-name command 2020-11-10 18:34:11 +01:00
virsh-completer-interface.h virsh: Add interface mac completion to iface-name command 2020-11-10 18:34:11 +01:00
virsh-completer-network.c virsh: do not return bool in virshNetworkPortUUIDCompleter 2020-09-23 13:26:35 +02:00
virsh-completer-network.h virsh: Add network uuid completion to network-name command 2020-09-14 15:52:40 +02:00
virsh-completer-nodedev.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-nodedev.h tools: Separate nodedev related completers into a file 2019-08-09 09:10:08 +02:00
virsh-completer-nwfilter.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-nwfilter.h tools: Separate nwfilter related completers into a file 2019-08-09 09:15:36 +02:00
virsh-completer-pool.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-pool.h virsh: Introduce virshPoolTypeCompleter 2019-08-09 09:20:13 +02:00
virsh-completer-secret.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-secret.h tools: Separate secret related completers into a file 2019-08-09 09:16:28 +02:00
virsh-completer-snapshot.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-snapshot.h tools: Separate snapshot related completers into a file 2019-08-09 09:17:06 +02:00
virsh-completer-volume.c virsh-completer: use g_new0 instead of VIR_ALLOC_N 2020-09-15 13:46:11 +02:00
virsh-completer-volume.h tools: Separate storage volume related completers into a file 2019-08-09 09:07:02 +02:00
virsh-completer.c tools: fix misc spelling errors reported by codespell 2020-10-05 10:28:45 +01:00
virsh-completer.h virsh-completer: Drop needless #include 2019-08-09 09:18:54 +02:00
virsh-console.c use g_ascii_toupper instead of c_toupper from gnulib 2019-12-10 13:49:24 +01:00
virsh-console.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-domain-monitor.c virsh: Allow listing just domain IDs 2020-11-09 11:28:23 +01:00
virsh-domain-monitor.h virsh: Fix virshDomainInterfaceSourceCompleter 2020-01-07 16:12:55 +01:00
virsh-domain.c virsh: Add serial/parallel device name completion to console command 2020-11-10 18:34:04 +01:00
virsh-domain.h virsh: Expose virDomainGetHostnameFlags 2020-01-16 09:02:35 +01:00
virsh-edit.c Use G_GNUC_FALLTHROUGH instead of ATTRIBUTE_FALLTHROUGH 2019-10-15 16:14:19 +02:00
virsh-host.c virsh: Add logical CPU IDs completion for nodecpustats command 2020-11-10 18:34:02 +01:00
virsh-host.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-interface.c virsh: Add interface name completion to iface-mac command 2020-11-10 18:34:16 +01:00
virsh-interface.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-network.c virsh: network-port: remove pointless comment 2020-10-06 09:01:46 +02:00
virsh-network.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-nodedev.c Include vdpa devices in node device list 2020-10-26 02:39:29 -04:00
virsh-nodedev.h tools: s/Nodedev/NodeDevice/ 2019-08-09 09:03:53 +02:00
virsh-nwfilter.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-nwfilter.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-pool.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-pool.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh-secret.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-secret.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-snapshot.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-snapshot.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virsh-util.c virsh: virshStreamSourceSkip: remove unused 'off' 2020-09-24 11:19:06 +02:00
virsh-util.h virsh: Track if vol-upload or vol-download work over a block device 2020-08-24 13:32:53 +02:00
virsh-volume.c virsh: use g_new0 instead of vsh[CM]alloc 2020-10-06 09:01:46 +02:00
virsh-volume.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virsh.c build: eliminate useless WITH_VIRTUALPORT check 2020-10-01 14:02:34 -04:00
virsh.h tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virt-admin-completer.c tools: use g_new0 instead of VIR_ALLOC* 2020-10-01 12:34:13 +02:00
virt-admin-completer.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-admin.c vsh: Introduce wrapper for add_history() 2020-09-03 16:25:43 +02:00
virt-admin.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-bhyve.c virt-host-validate-bhyve.c: Reintroduce @ret to virHostValidateBhyve() 2020-05-05 14:45:58 +02:00
virt-host-validate-bhyve.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-common.c change DIR* int g_autoptr(DIR) where appropriate 2020-11-02 22:01:36 -05:00
virt-host-validate-common.h tools: Secure guest check for AMD in virt-host-validate 2020-06-16 09:43:44 +02:00
virt-host-validate-lxc.c virt-host-validate: require freezer for LXC 2018-10-05 15:53:29 +02:00
virt-host-validate-lxc.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate-qemu.c tools: remove unnecessary includes 2020-08-03 15:30:40 +02:00
virt-host-validate-qemu.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
virt-host-validate.c lib: Prefer WITH_* prefix for #if conditionals 2020-09-02 10:28:10 +02:00
virt-login-shell-helper.c Fix incorrect g_new0 conversions 2020-10-06 14:26:43 +02:00
virt-login-shell.c build: generate configmake.h in root directory 2020-01-29 14:51:39 +00:00
virt-login-shell.conf virt-login-shell: add ability to auto-detect shell from container 2016-06-10 11:03:02 +01:00
virt-pki-validate.in tools: Fix permissions for virt-pki-validate.in 2019-07-01 17:20:32 +02:00
virt-sanlock-cleanup.in build: Extract pod from source files 2016-04-25 15:40:43 +02:00
virt-xml-validate.in tools: fix XML validator detection of network port XML schema 2019-09-12 16:06:57 +01:00
vsh-table.c tools: use g_new0 instead of VIR_ALLOC* 2020-10-01 12:34:13 +02:00
vsh-table.h tools: use #pragma once in headers 2019-06-19 17:12:34 +02:00
vsh.c virsh: delete vsh[CM]alloc 2020-10-06 09:01:46 +02:00
vsh.h virsh: delete vsh[CM]alloc 2020-10-06 09:01:46 +02:00