From a1c7ebbf7a3eeac296965420f8fc63d8c9972ed8 Mon Sep 17 00:00:00 2001 From: Anton Todorov Date: Mon, 20 Oct 2025 19:24:02 +0300 Subject: [PATCH] B #7307: add disk serial attribute on disk hotplug allowed character are the alphanumeric, dot, dash and underscore to avoid possible shell escapes --- src/mad/sh/scripts_common.sh | 4 +++- src/vmm_mad/remotes/kvm/attach_disk | 4 ++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/mad/sh/scripts_common.sh b/src/mad/sh/scripts_common.sh index a393f189d0..f86cfc45ba 100644 --- a/src/mad/sh/scripts_common.sh +++ b/src/mad/sh/scripts_common.sh @@ -976,7 +976,8 @@ function get_disk_information { $DISK_XPATH/WRITE_IOPS_SEC_MAX_LENGTH \ $DISK_XPATH/SIZE_IOPS_SEC \ $DISK_XPATH/VIRTIO_BLK_QUEUES \ - $DISK_XPATH/IOTHREAD ) + $DISK_XPATH/IOTHREAD \ + $DISK_XPATH/SERIAL ) VMID="${XPATH_ELEMENTS[j++]}" VCPU="${XPATH_ELEMENTS[j++]:-1}" @@ -1025,6 +1026,7 @@ function get_disk_information { SIZE_IOPS_SEC="${XPATH_ELEMENTS[j++]}" VIRTIO_BLK_QUEUES="${XPATH_ELEMENTS[j++]}" IOTHREAD="${XPATH_ELEMENTS[j++]}" + DISK_SERIAL="${XPATH_ELEMENTS[j++]}" TYPE=$(echo "$TYPE"|tr A-Z a-z) READONLY=$(echo "$READONLY"|tr A-Z a-z) diff --git a/src/vmm_mad/remotes/kvm/attach_disk b/src/vmm_mad/remotes/kvm/attach_disk index 5c7a746e61..e0b491b7b1 100755 --- a/src/vmm_mad/remotes/kvm/attach_disk +++ b/src/vmm_mad/remotes/kvm/attach_disk @@ -169,6 +169,10 @@ if [ -z "${DISK_TARGET##sd*}" ]; then fi fi +if [[ -n "${DISK_SERIAL}" ]]; then + XML+="${DISK_SERIAL//[^0-9a-zA-Z-._]/}" +fi + XML+="" # device attach