You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ro...@apache.org on 2022/04/15 14:56:48 UTC

[cloudstack] branch main updated: kvm: truncate vnc password to 8 chars (#6244)

This is an automated email from the ASF dual-hosted git repository.

rohit pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new aa0197c141 kvm: truncate vnc password to 8 chars (#6244)
aa0197c141 is described below

commit aa0197c1416f696906ec12392107783bc7f7d815
Author: Wei Zhou <we...@apache.org>
AuthorDate: Fri Apr 15 16:56:42 2022 +0200

    kvm: truncate vnc password to 8 chars (#6244)
    
    This PR truncates the vnc password of kvm vms to 8 chars to support latest versions of libvirt.
---
 .../src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java  | 2 +-
 .../cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java    | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java
index 3da0687eff..7c65f7970a 100644
--- a/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java
+++ b/plugins/hypervisors/kvm/src/main/java/com/cloud/hypervisor/kvm/resource/LibvirtVMDef.java
@@ -1764,7 +1764,7 @@ public class LibvirtVMDef {
                 graphicBuilder.append(" listen=''");
             }
             if (_passwd != null) {
-                graphicBuilder.append(" passwd='" + _passwd + "'");
+                graphicBuilder.append(" passwd='" + StringUtils.truncate(_passwd, 8) + "'");
             } else if (_keyMap != null) {
                 graphicBuilder.append(" _keymap='" + _keyMap + "'");
             }
diff --git a/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java b/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
index 03c450b4b9..3606f22296 100644
--- a/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
+++ b/plugins/hypervisors/kvm/src/test/java/com/cloud/hypervisor/kvm/resource/LibvirtComputingResourceTest.java
@@ -60,6 +60,7 @@ import org.apache.cloudstack.utils.linux.CPUStat;
 import org.apache.cloudstack.utils.linux.MemStat;
 import org.apache.cloudstack.utils.qemu.QemuImg.PhysicalDiskFormat;
 import org.apache.commons.lang.SystemUtils;
+import org.apache.commons.lang3.StringUtils;
 import org.joda.time.Duration;
 import org.junit.Assert;
 import org.junit.Before;
@@ -774,7 +775,7 @@ public class LibvirtComputingResourceTest {
         assertXpath(domainDoc, prefix + "/graphics/@type", "vnc");
         assertXpath(domainDoc, prefix + "/graphics/@listen", to.getVncAddr());
         assertXpath(domainDoc, prefix + "/graphics/@autoport", "yes");
-        assertXpath(domainDoc, prefix + "/graphics/@passwd", to.getVncPassword());
+        assertXpath(domainDoc, prefix + "/graphics/@passwd", StringUtils.truncate(to.getVncPassword(), 8));
     }
 
     private void verifySerialDevices(Document domainDoc, String prefix) {