]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: add 'rdp' capability if qemu-rdp is available
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Sun, 16 Mar 2025 08:18:39 +0000 (12:18 +0400)
committerMartin Kletzander <mkletzan@redhat.com>
Tue, 18 Mar 2025 13:15:56 +0000 (14:15 +0100)
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Martin Kletzander <mkletzan@redhat.com>
59 files changed:
src/qemu/qemu_capabilities.c
src/qemu/qemu_capabilities.h
src/qemu/qemu_rdp.c
src/qemu/qemu_rdp.h
src/qemu/qemu_validate.c
tests/domaincapsdata/qemu_10.0.0-q35.x86_64+amdsev.xml
tests/domaincapsdata/qemu_10.0.0-q35.x86_64.xml
tests/domaincapsdata/qemu_10.0.0-tcg.x86_64+amdsev.xml
tests/domaincapsdata/qemu_10.0.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_10.0.0.s390x.xml
tests/domaincapsdata/qemu_10.0.0.x86_64+amdsev.xml
tests/domaincapsdata/qemu_10.0.0.x86_64.xml
tests/domaincapsdata/qemu_7.0.0-q35.x86_64.xml
tests/domaincapsdata/qemu_7.0.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_7.0.0.x86_64.xml
tests/domaincapsdata/qemu_7.1.0-q35.x86_64.xml
tests/domaincapsdata/qemu_7.1.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_7.1.0.x86_64.xml
tests/domaincapsdata/qemu_7.2.0-hvf.x86_64+hvf.xml
tests/domaincapsdata/qemu_7.2.0-q35.x86_64.xml
tests/domaincapsdata/qemu_7.2.0-tcg.x86_64+hvf.xml
tests/domaincapsdata/qemu_7.2.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_7.2.0.ppc.xml
tests/domaincapsdata/qemu_7.2.0.x86_64.xml
tests/domaincapsdata/qemu_8.0.0-q35.x86_64.xml
tests/domaincapsdata/qemu_8.0.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_8.0.0.x86_64.xml
tests/domaincapsdata/qemu_8.1.0-q35.x86_64.xml
tests/domaincapsdata/qemu_8.1.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_8.1.0.s390x.xml
tests/domaincapsdata/qemu_8.1.0.x86_64.xml
tests/domaincapsdata/qemu_8.2.0-q35.x86_64.xml
tests/domaincapsdata/qemu_8.2.0-tcg-virt.loongarch64.xml
tests/domaincapsdata/qemu_8.2.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_8.2.0-virt.aarch64.xml
tests/domaincapsdata/qemu_8.2.0-virt.loongarch64.xml
tests/domaincapsdata/qemu_8.2.0.aarch64.xml
tests/domaincapsdata/qemu_8.2.0.armv7l.xml
tests/domaincapsdata/qemu_8.2.0.s390x.xml
tests/domaincapsdata/qemu_8.2.0.x86_64.xml
tests/domaincapsdata/qemu_9.0.0-q35.x86_64.xml
tests/domaincapsdata/qemu_9.0.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_9.0.0.sparc.xml
tests/domaincapsdata/qemu_9.0.0.x86_64.xml
tests/domaincapsdata/qemu_9.1.0-q35.x86_64.xml
tests/domaincapsdata/qemu_9.1.0-tcg-virt.riscv64.xml
tests/domaincapsdata/qemu_9.1.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_9.1.0-virt.riscv64.xml
tests/domaincapsdata/qemu_9.1.0.s390x.xml
tests/domaincapsdata/qemu_9.1.0.x86_64.xml
tests/domaincapsdata/qemu_9.2.0-hvf.aarch64+hvf.xml
tests/domaincapsdata/qemu_9.2.0-q35.x86_64+amdsev.xml
tests/domaincapsdata/qemu_9.2.0-q35.x86_64.xml
tests/domaincapsdata/qemu_9.2.0-tcg.x86_64+amdsev.xml
tests/domaincapsdata/qemu_9.2.0-tcg.x86_64.xml
tests/domaincapsdata/qemu_9.2.0.s390x.xml
tests/domaincapsdata/qemu_9.2.0.x86_64+amdsev.xml
tests/domaincapsdata/qemu_9.2.0.x86_64.xml
tests/testutilsqemu.c

index ca99e61896be0faec053c98a4e24024484a6af3c..2c137bb6630b4b8d0db71d5e3ade881406b02b0c 100644 (file)
@@ -6475,7 +6475,8 @@ virQEMUCapsFillDomainDeviceDiskCaps(virQEMUCaps *qemuCaps,
 
 
 void
-virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps *qemuCaps,
+virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUDriverConfig *cfg,
+                                        virQEMUCaps *qemuCaps,
                                         virDomainCapsDeviceGraphics *dev)
 {
     dev->supported = VIR_TRISTATE_BOOL_YES;
@@ -6489,8 +6490,14 @@ virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps *qemuCaps,
         VIR_DOMAIN_CAPS_ENUM_SET(dev->type, VIR_DOMAIN_GRAPHICS_TYPE_SPICE);
     if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_EGL_HEADLESS))
         VIR_DOMAIN_CAPS_ENUM_SET(dev->type, VIR_DOMAIN_GRAPHICS_TYPE_EGL_HEADLESS);
-    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS))
-        VIR_DOMAIN_CAPS_ENUM_SET(dev->type, VIR_DOMAIN_GRAPHICS_TYPE_DBUS);
+    if (virQEMUCapsGet(qemuCaps, QEMU_CAPS_DISPLAY_DBUS)) {
+        VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
+                                 VIR_DOMAIN_GRAPHICS_TYPE_DBUS);
+        if (qemuRdpAvailable(cfg->qemuRdpName)) {
+            VIR_DOMAIN_CAPS_ENUM_SET(dev->type,
+                                     VIR_DOMAIN_GRAPHICS_TYPE_RDP);
+        }
+    }
 }
 
 
@@ -6974,7 +6981,7 @@ virQEMUCapsFillDomainCaps(virQEMUDriverConfig *cfg,
     virQEMUCapsFillDomainCPUCaps(qemuCaps, hostarch, domCaps);
     virQEMUCapsFillDomainMemoryBackingCaps(qemuCaps, memoryBacking);
     virQEMUCapsFillDomainDeviceDiskCaps(qemuCaps, domCaps->machine, disk);
-    virQEMUCapsFillDomainDeviceGraphicsCaps(qemuCaps, graphics);
+    virQEMUCapsFillDomainDeviceGraphicsCaps(cfg, qemuCaps, graphics);
     virQEMUCapsFillDomainDeviceVideoCaps(qemuCaps, video);
     virQEMUCapsFillDomainDeviceHostdevCaps(qemuCaps, hostdev);
     virQEMUCapsFillDomainDeviceRNGCaps(qemuCaps, rng);
index 733b84029d7795b8a79d5eecf7211164b48de47d..df63fe51aea11c099e0505b16c6d5da3eb15fee8 100644 (file)
@@ -876,7 +876,8 @@ int virQEMUCapsFillDomainCaps(virQEMUDriverConfig *cfg,
 void virQEMUCapsFillDomainMemoryBackingCaps(virQEMUCaps *qemuCaps,
                                             virDomainCapsMemoryBacking *memoryBacking);
 
-void virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUCaps *qemuCaps,
+void virQEMUCapsFillDomainDeviceGraphicsCaps(virQEMUDriverConfig *cfg,
+                                             virQEMUCaps *qemuCaps,
                                              virDomainCapsDeviceGraphics *dev);
 
 void virQEMUCapsFillDomainDeviceVideoCaps(virQEMUCaps *qemuCaps,
index 97eb772abbbc97ea16064ab8db50e75d74e63097..984795d59992ba6ae5515cfc155d76d168f6bf43 100644 (file)
@@ -411,3 +411,14 @@ qemuRdpSetCredentials(virDomainObj *vm,
                               "SetCredentials",
                               args);
 }
+
+
+bool
+qemuRdpAvailable(const char *helper)
+{
+    g_autoptr(qemuRdp) rdp = NULL;
+
+    rdp = qemuRdpNewForHelper(helper);
+
+    return rdp && qemuRdpHasFeature(rdp, QEMU_RDP_FEATURE_DBUS_ADDRESS);
+}
index 6af90b06d2c42bc6ae57af29edd405903b7beb2b..2485a49de4ed89a6f396c5bf5728905e274422c2 100644 (file)
@@ -42,6 +42,8 @@ struct _qemuRdp {
     guint leaving_id;
 };
 
+bool qemuRdpAvailable(const char *helper);
+
 qemuRdp *qemuRdpNew(void);
 
 qemuRdp *qemuRdpNewForHelper(const char *helper);
index 89dee51526689d83efb2100969423c7ae26131cc..19af0f02099b1e9ebe6f4ef0a627d9004a70f31c 100644 (file)
@@ -4513,9 +4513,10 @@ qemuValidateDomainDeviceDefGraphics(const virDomainGraphicsDef *graphics,
                                     virQEMUDriver *driver,
                                     virQEMUCaps *qemuCaps)
 {
+    g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver);
     virDomainCapsDeviceGraphics graphicsCaps = { 0 };
 
-    virQEMUCapsFillDomainDeviceGraphicsCaps(qemuCaps, &graphicsCaps);
+    virQEMUCapsFillDomainDeviceGraphicsCaps(cfg, qemuCaps, &graphicsCaps);
 
     if (!VIR_DOMAIN_CAPS_ENUM_IS_SET(graphicsCaps.type, graphics->type)) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
index d000e4296e2367dd488e1997f356f696ea0ff52b..b7fa8daa15aff57246cf5332b9bf320985d0328a 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 73cb50e7b6b07892faaa33935de856921d1068e4..e1ff01a7a89a59d3560a3f14301adb70f3383630 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 7d7e77cace3e4b658d276e9a5a7ed8c217c63c8b..d8a6fe8354d199e52e15cbeafb7072122713c494 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 9a7d39c1f86464d5ed7ad28f5b497b6a886c22c9..3ce5c0c412b4aeabc30b1e99473b251bc9dd787b 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 4af3c7ec53902a0235682cd05ec609f4b60fbf3d..d66240307ec44e67e010c811cf9582ce091d0235 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index fb06905b86605b6dc8ef895d6d23afd1e7588caa..1f852adfae8bb133cb4ddef14758333fe8faf383 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c06b9d1c5150ca47eedf5e55c36a55c3ce88ad65..66c4dfed9f50d86102e9345fc1345b3b911f67b2 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 2c5129453eec56f6eb43877ae7de7d5967bf912f..8fa50785b7ee6926e1913930ede3bf6d1db5973a 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index d4a567f5c6f5c1dc488df3ecaf29e758ce91ebd9..2686989d64a569396daf0a21436a163efa70c497 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 6fa08af994f3e126d66a6f30a0f6cd1174e83423..6ab377445299c32c1e8fd893d4db8209978b6d88 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 8bed31ad2262325cfef55a5b39d916dba9346786..75565c44955e9529bf77b1b8ccd8636d881108fb 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index cb7fd8811b67163d7f7feabdbbc517f4c0119cd1..4e44dbaf659bc92266dc9ad32cb48dc55a291445 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index a0f8b13f720561a31078f2065f370334085588c8..898b081df0c055dfd8359ee7043762e8de2a34cf 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index ce2e4f9f3735f3907967a4d9945953c1444bed17..0fbbc8118c85a35763ef31acd6c76a8fbc9176a7 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index f9d27024fc88f1b97bdeda58ce0f44c361fb46ef..cfbe7e5dd11b07beaf6a1e40ced5041ad3c8e990 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c7728ac4543e3c6dbe5d7afba90dd775f1b71d27..805a636ec6c28c5fe1e1523e85fbeb2b72b4a481 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c7728ac4543e3c6dbe5d7afba90dd775f1b71d27..805a636ec6c28c5fe1e1523e85fbeb2b72b4a481 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c6ef37b1afad13d247e2c958b9b1f7e826cef0a2..21dbe730c5c152dd3eb5b986de9993d717b28957 100644 (file)
@@ -65,6 +65,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index f0d9493353a6fe7b0c3562b97ea5032edc1600b8..2b402f59c80d386b4010dcf45a80f65d480b044d 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index b8c376cb14de6337c115cb9b83a370553c2c5b8f..c1f7b96465eb1dc1bb2a8f5f17cf70c0445d94b2 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index d3c9830a1a011f5d231f2d8b661b97693f9c7f76..4d8d4c77021b3424616ae8863dce79c0a98396ba 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index e8df30ae0781ba935560ff7739831998defd1811..7db506386cdd7d9bd1377e45f41dee8033a447c5 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index e80e175376e100c8351ee5434cac87235660467d..4c9b674c1ed2630e6e5ebdde02ab735e64e10726 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 62ffabb3e20c8f0e66d1792dc3b7ee371cfd956c..52f0d339bb6c13511e624fe482ade6864f9042c6 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 2ca3b1d2ae20dfd6212667e241124f2a6b945952..be8bb702453c1bcb9617df3b7b1b9a3f35a40a21 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index 4117d926cb0082b902a6941d59e3cb9a49c9b180..8389909b747f17e5ae9a67ed9df253571b96c713 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index dfa88bcf960319935f9633a8c45d8720e71ae6a8..dcb46e06ea6a636b74d4eea1dd636a246a0a46d6 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c9f01904cdc0774b72fc553616d54e3dff1a60f6..18979cf280fa61f0410811eec386c44d7273bf0b 100644 (file)
@@ -72,6 +72,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>dbus</value>
       </enum>
index 327cad253e5d2cad136878aede9b0592f3c8ca89..fae61e89552267578083b9120b0302eeccb95681 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 224c61916896190d51459fbc0d2e3543df17011a..ce17865e24f0a2c05eb74eb26595bc756ed0c673 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index ed3637eaec0ab37a59f7cd47dddf6135ae6dbd3d..8f4ebbc107b7be291fcf0f92d4a1d0104ef41f91 100644 (file)
@@ -76,6 +76,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>dbus</value>
       </enum>
index 224c61916896190d51459fbc0d2e3543df17011a..ce17865e24f0a2c05eb74eb26595bc756ed0c673 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index 7182dca796f2f22f2adb6113ae1b027dcffac661..ee653c0c492729f409395a6047222c1709008b65 100644 (file)
@@ -69,6 +69,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 57ac07c1532f91085c255f0f9da0e69e6dde2755..78f91736d665e8ff15fe7d0d3bd5619976541997 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index f8dbb717f11a57552311161d6b165fefcc038125..97b3795b5a80871815f944f797264642ad5747c8 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index c5a653f57b0b13cc17b7b87eb49eda0d56bad2fa..d55bc239a95520a9811cdeb4c6d388ff1a826542 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 30876c5fefd0811deca14ec936e08d58a639328c..48300b14f58b5e59c0d19c8c09212caa59eb10d8 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index e48cdd0ae5879bd3c460a05ea92f0a823d2f26a9..c7862f58426f94ce125fe5521b23e3c55be49da7 100644 (file)
@@ -60,6 +60,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 6c141e1cb96cd5cf142c70ba2303fc5e4bdda6b5..52f01a7cfc226e2c9ccde6952a1fc90489b6544f 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 9445d999b51fb552d4531c88a0e4045680a5423b..5449244329dde3ed9ed454ce888a924a669cac18 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index b4327bf8783bf999dbc7157d67600fc78356855d..b236ecbac4dd11f12419d19a63e4eb1fc3e83676 100644 (file)
@@ -82,6 +82,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 61d92550c1358a3438f15523949ad9db0fd4930c..927a5a6d3609e8fe50d1fb18336576c34f5547ef 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 73e5ba1bc3760eed898578a4683a0622df8a718f..1399b980fd39156dacb8604be9f1c5f4a7d16800 100644 (file)
@@ -71,6 +71,7 @@
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index be46cfe6ba438900f1c65168d3a39805963a7808..b73e0d0688296d63fdb013bacd58c9a52fee7262 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index 5e87efe5e815b2278bc4ab4a7f551bf290774b13..dc2521135c36a8471352d6c3a5d030c8b62a3c5c 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 644a0ef44ad7beeba353ee368d25dce01ed7969e..b8615a09867b034871fbb6a57d3fcee89abfe970 100644 (file)
     <graphics supported='yes'>
       <enum name='type'>
         <value>vnc</value>
+        <value>rdp</value>
         <value>dbus</value>
       </enum>
     </graphics>
index 11a8cd0b97b3a8a25f478bb8972a4653c24b8849..62c61b9de5f7e5ba007bea1f47e5f776cb493748 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 98c522f0fc5165890b250c00ce9c79218e16176f..49f5e64bfaa7fcf2561b59e07a55f92ddf678c55 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index f7668e911e08d011ae342602b65a79d0576b0730..265680b197f10c72d7554b8fbd3384c1f3de5889 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 7ccdc11412336dbf906e66eaca1f0c75b5ddf609..884228db728454061adb46c8b67aa5b382060996 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index e13809bc639aed04586e1fb0743b8a8e6c9d6c3a..605a3af5c7ae9bdd1523e1d95890d79cd5e88667 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>egl-headless</value>
         <value>dbus</value>
       </enum>
index d1143ad68f8a77c55a33ef874e709e1f2c2a667a..ee82f2905ba9bd264bc9d865c8c5bf40a5996c59 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 0b5162781e908dcf98a52a2d431cef7761e317e3..d587c1316a34b9e4b1406fe831d466ccf908c4e5 100644 (file)
       <enum name='type'>
         <value>sdl</value>
         <value>vnc</value>
+        <value>rdp</value>
         <value>spice</value>
         <value>egl-headless</value>
         <value>dbus</value>
index 66c05d7b46dea1d50937442af5c1964227b34871..ecd761dff0fd1d2ef2895f6a7d57393d0ec0b434 100644 (file)
@@ -52,6 +52,12 @@ bool virTPMHasSwtpm(void)
 }
 
 
+/* Enough to tell capabilities code that qemu-rdp is usable */
+bool qemuRdpAvailable(const char *helper G_GNUC_UNUSED)
+{
+    return true;
+}
+
 
 bool
 virTPMSwtpmSetupCapsGet(virTPMSwtpmSetupFeature cap)