From 5e5ca84e312fa375777da7ddd296f82e0b7b5cf4 Mon Sep 17 00:00:00 2001 From: Michal Privoznik Date: Fri, 29 Mar 2013 22:25:13 +0100 Subject: [PATCH] test: Return Libvirt logo as domain screenshot This is just a bare Easter Egg. Whenever a user runs virDomainScreenshot over a domain in test driver, he'll get the Libvirt PNG logo in return. --- docs/Makefile.am | 1 + libvirt.spec.in | 1 + mingw-libvirt.spec.in | 2 ++ src/test/test_driver.c | 24 ++++++++++++++++++++++++ 4 files changed, 28 insertions(+) diff --git a/docs/Makefile.am b/docs/Makefile.am index 75837727ec..137756b11b 100644 --- a/docs/Makefile.am +++ b/docs/Makefile.am @@ -287,6 +287,7 @@ install-data-local: for file in $(devhelphtml) $(devhelppng) $(devhelpcss); do \ $(INSTALL) -m 0644 $(srcdir)/$${file} $(DESTDIR)$(DEVHELP_DIR) ; \ done + $(INSTALL_DATA) $(srcdir)/libvirtLogo.png $(DESTDIR)$(pkgdatadir) uninstall-local: for h in $(apihtml); do rm $(DESTDIR)$(HTML_DIR)/$$h; done diff --git a/libvirt.spec.in b/libvirt.spec.in index 2da055894f..34b3f9c877 100644 --- a/libvirt.spec.in +++ b/libvirt.spec.in @@ -1941,6 +1941,7 @@ fi %{_datadir}/libvirt/schemas/storagevol.rng %{_datadir}/libvirt/cpu_map.xml +%{_datadir}/libvirt/libvirtLogo.png %if %{with_systemd} %{_unitdir}/libvirt-guests.service diff --git a/mingw-libvirt.spec.in b/mingw-libvirt.spec.in index b27b0ee4b8..9208329a89 100644 --- a/mingw-libvirt.spec.in +++ b/mingw-libvirt.spec.in @@ -221,6 +221,7 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh %{mingw32_datadir}/libvirt/api/libvirt-qemu-api.xml %{mingw32_datadir}/libvirt/cpu_map.xml +%{mingw32_datadir}/libvirt/libvirtLogo.png %{mingw32_datadir}/locale/*/LC_MESSAGES/libvirt.mo @@ -280,6 +281,7 @@ rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh %{mingw64_datadir}/libvirt/api/libvirt-qemu-api.xml %{mingw64_datadir}/libvirt/cpu_map.xml +%{mingw64_datadir}/libvirt/libvirtLogo.png %{mingw64_datadir}/locale/*/LC_MESSAGES/libvirt.mo diff --git a/src/test/test_driver.c b/src/test/test_driver.c index c5fffb917a..4dbd7758d4 100644 --- a/src/test/test_driver.c +++ b/src/test/test_driver.c @@ -39,11 +39,13 @@ #include "virutil.h" #include "viruuid.h" #include "capabilities.h" +#include "configmake.h" #include "viralloc.h" #include "network_conf.h" #include "interface_conf.h" #include "domain_conf.h" #include "domain_event.h" +#include "fdstream.h" #include "storage_conf.h" #include "node_device_conf.h" #include "virxml.h" @@ -5773,6 +5775,27 @@ cleanup: return ret; } +static char * +testDomainScreenshot(virDomainPtr dom ATTRIBUTE_UNUSED, + virStreamPtr st, + unsigned int screen ATTRIBUTE_UNUSED, + unsigned int flags) +{ + char *ret = NULL; + + virCheckFlags(0, NULL); + + if (!(ret = strdup("image/png"))) { + virReportOOMError(); + return NULL; + } + + if (virFDStreamOpenFile(st, PKGDATADIR "/libvirtLogo.png", 0, 0, O_RDONLY < 0)) + VIR_FREE(ret); + + return ret; +} + static virDriver testDriver = { .no = VIR_DRV_TEST, @@ -5843,6 +5866,7 @@ static virDriver testDriver = { .domainEventDeregisterAny = testDomainEventDeregisterAny, /* 0.8.0 */ .isAlive = testIsAlive, /* 0.9.8 */ .nodeGetCPUMap = testNodeGetCPUMap, /* 1.0.0 */ + .domainScreenshot = testDomainScreenshot, /* 1.0.5 */ }; static virNetworkDriver testNetworkDriver = { -- 2.47.2