forked from pool/libvirt
This commit is contained in:
parent
6ba690802b
commit
4a6373529e
10
clone.patch
10
clone.patch
@ -2,7 +2,7 @@ Index: src/lxc_container.c
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- src/lxc_container.c.orig
|
--- src/lxc_container.c.orig
|
||||||
+++ src/lxc_container.c
|
+++ src/lxc_container.c
|
||||||
@@ -603,6 +603,9 @@ int lxcContainerStart(virDomainDefPtr de
|
@@ -617,6 +617,9 @@ int lxcContainerStart(virDomainDefPtr de
|
||||||
lxc_child_argv_t args = { def, nveths, veths, control, ttyPath };
|
lxc_child_argv_t args = { def, nveths, veths, control, ttyPath };
|
||||||
|
|
||||||
/* allocate a stack for the container */
|
/* allocate a stack for the container */
|
||||||
@ -10,9 +10,9 @@ Index: src/lxc_container.c
|
|||||||
+ stacksize *= 2;
|
+ stacksize *= 2;
|
||||||
+#endif
|
+#endif
|
||||||
if (VIR_ALLOC_N(stack, stacksize) < 0) {
|
if (VIR_ALLOC_N(stack, stacksize) < 0) {
|
||||||
lxcError(NULL, NULL, VIR_ERR_NO_MEMORY, NULL);
|
virReportOOMError(NULL);
|
||||||
return -1;
|
return -1;
|
||||||
@@ -614,7 +617,11 @@ int lxcContainerStart(virDomainDefPtr de
|
@@ -628,7 +631,11 @@ int lxcContainerStart(virDomainDefPtr de
|
||||||
if (def->nets != NULL)
|
if (def->nets != NULL)
|
||||||
flags |= CLONE_NEWNET;
|
flags |= CLONE_NEWNET;
|
||||||
|
|
||||||
@ -24,7 +24,7 @@ Index: src/lxc_container.c
|
|||||||
VIR_FREE(stack);
|
VIR_FREE(stack);
|
||||||
DEBUG("clone() returned, %d", pid);
|
DEBUG("clone() returned, %d", pid);
|
||||||
|
|
||||||
@@ -640,18 +647,26 @@ int lxcContainerAvailable(int features)
|
@@ -654,18 +661,26 @@ int lxcContainerAvailable(int features)
|
||||||
char *childStack;
|
char *childStack;
|
||||||
char *stack;
|
char *stack;
|
||||||
int childStatus;
|
int childStatus;
|
||||||
@ -52,4 +52,4 @@ Index: src/lxc_container.c
|
|||||||
+#endif
|
+#endif
|
||||||
VIR_FREE(stack);
|
VIR_FREE(stack);
|
||||||
if (cpid < 0) {
|
if (cpid < 0) {
|
||||||
DEBUG("clone call returned %s, container support is not enabled",
|
char ebuf[1024];
|
||||||
|
@ -1,152 +0,0 @@
|
|||||||
diff --git a/src/libvirt.c b/src/libvirt.c
|
|
||||||
--- a/src/libvirt.c
|
|
||||||
+++ b/src/libvirt.c
|
|
||||||
@@ -2296,6 +2296,16 @@ virDomainMigrate (virDomainPtr domain,
|
|
||||||
conn = domain->conn; /* Source connection. */
|
|
||||||
if (!VIR_IS_CONNECT (dconn)) {
|
|
||||||
virLibConnError (conn, VIR_ERR_INVALID_CONN, __FUNCTION__);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (domain->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibDomainError(domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
+ if (dconn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ /* NB, delibrately report error against source object, not dest here */
|
|
||||||
+ virLibDomainError(domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -2426,6 +2436,11 @@ virDomainMigratePrepare (virConnectPtr d
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (dconn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibConnError(dconn, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (dconn->driver->domainMigratePrepare)
|
|
||||||
return dconn->driver->domainMigratePrepare (dconn, cookie, cookielen,
|
|
||||||
uri_in, uri_out,
|
|
||||||
@@ -2457,6 +2472,11 @@ virDomainMigratePerform (virDomainPtr do
|
|
||||||
}
|
|
||||||
conn = domain->conn;
|
|
||||||
|
|
||||||
+ if (domain->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibDomainError(domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (conn->driver->domainMigratePerform)
|
|
||||||
return conn->driver->domainMigratePerform (domain, cookie, cookielen,
|
|
||||||
uri,
|
|
||||||
@@ -2482,6 +2502,11 @@ virDomainMigrateFinish (virConnectPtr dc
|
|
||||||
|
|
||||||
if (!VIR_IS_CONNECT (dconn)) {
|
|
||||||
virLibConnError (NULL, VIR_ERR_INVALID_CONN, __FUNCTION__);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ if (dconn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibConnError(dconn, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
@@ -2517,6 +2542,11 @@ virDomainMigratePrepare2 (virConnectPtr
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (dconn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibConnError(dconn, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return -1;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (dconn->driver->domainMigratePrepare2)
|
|
||||||
return dconn->driver->domainMigratePrepare2 (dconn, cookie, cookielen,
|
|
||||||
uri_in, uri_out,
|
|
||||||
@@ -2547,6 +2577,11 @@ virDomainMigrateFinish2 (virConnectPtr d
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (dconn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibConnError(dconn, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (dconn->driver->domainMigrateFinish2)
|
|
||||||
return dconn->driver->domainMigrateFinish2 (dconn, dname,
|
|
||||||
cookie, cookielen,
|
|
||||||
@@ -2905,6 +2940,11 @@ virDomainBlockPeek (virDomainPtr dom,
|
|
||||||
}
|
|
||||||
conn = dom->conn;
|
|
||||||
|
|
||||||
+ if (dom->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibDomainError(dom, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return (-1);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (!path) {
|
|
||||||
virLibDomainError (dom, VIR_ERR_INVALID_ARG,
|
|
||||||
_("path is NULL"));
|
|
||||||
@@ -2980,6 +3020,11 @@ virDomainMemoryPeek (virDomainPtr dom,
|
|
||||||
}
|
|
||||||
conn = dom->conn;
|
|
||||||
|
|
||||||
+ if (dom->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibDomainError(dom, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return (-1);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
/* Flags must be VIR_MEMORY_VIRTUAL at the moment.
|
|
||||||
*
|
|
||||||
* Note on access to physical memory: A VIR_MEMORY_PHYSICAL flag is
|
|
||||||
@@ -3246,6 +3291,11 @@ virDomainSetAutostart(virDomainPtr domai
|
|
||||||
}
|
|
||||||
|
|
||||||
conn = domain->conn;
|
|
||||||
+
|
|
||||||
+ if (domain->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibDomainError(domain, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return (-1);
|
|
||||||
+ }
|
|
||||||
|
|
||||||
if (conn->driver->domainSetAutostart)
|
|
||||||
return conn->driver->domainSetAutostart (domain, autostart);
|
|
||||||
@@ -4197,6 +4247,11 @@ virNetworkSetAutostart(virNetworkPtr net
|
|
||||||
return (-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (network->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibNetworkError(network, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return (-1);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
conn = network->conn;
|
|
||||||
|
|
||||||
if (conn->networkDriver && conn->networkDriver->networkSetAutostart)
|
|
||||||
@@ -4395,6 +4450,11 @@ virConnectFindStoragePoolSources(virConn
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibConnError(conn, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return NULL;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
if (conn->storageDriver && conn->storageDriver->findPoolSources)
|
|
||||||
return conn->storageDriver->findPoolSources(conn, type, srcSpec, flags);
|
|
||||||
|
|
||||||
@@ -5068,6 +5128,11 @@ virStoragePoolSetAutostart(virStoragePoo
|
|
||||||
return (-1);
|
|
||||||
}
|
|
||||||
|
|
||||||
+ if (pool->conn->flags & VIR_CONNECT_RO) {
|
|
||||||
+ virLibStoragePoolError(pool, VIR_ERR_OPERATION_DENIED, __FUNCTION__);
|
|
||||||
+ return (-1);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
conn = pool->conn;
|
|
||||||
|
|
||||||
if (conn->storageDriver && conn->storageDriver->poolSetAutostart)
|
|
@ -1,31 +1,21 @@
|
|||||||
Index: libvirt-0.5.1/src/xend_internal.c
|
Index: libvirt-0.6.2/src/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xend_internal.c
|
--- libvirt-0.6.2.orig/src/xend_internal.c
|
||||||
+++ libvirt-0.5.1/src/xend_internal.c
|
+++ libvirt-0.6.2/src/xend_internal.c
|
||||||
@@ -5465,11 +5465,16 @@ virDomainXMLDevID(virDomainPtr domain,
|
@@ -5829,7 +5829,7 @@ virDomainXMLDevID(virDomainPtr domain,
|
||||||
char *xref;
|
|
||||||
|
|
||||||
if (dev->type == VIR_DOMAIN_DEVICE_DISK) {
|
|
||||||
- strcpy(class, "vbd");
|
|
||||||
if (dev->data.disk->dst == NULL)
|
|
||||||
return -1;
|
return -1;
|
||||||
+
|
xenUnifiedLock(priv);
|
||||||
+ if (dev->data.disk->driverName &&
|
|
||||||
+ (strcasecmp(dev->data.disk->driverName, "tap") == 0))
|
|
||||||
+ strcpy(class, "tap");
|
|
||||||
+ else
|
|
||||||
+ strcpy(class, "vbd");
|
|
||||||
xref = xenStoreDomainGetDiskID(domain->conn, domain->id,
|
xref = xenStoreDomainGetDiskID(domain->conn, domain->id,
|
||||||
- dev->data.disk->dst);
|
- dev->data.disk->dst);
|
||||||
+ dev->data.disk->dst, class);
|
+ dev->data.disk->dst, class);
|
||||||
|
xenUnifiedUnlock(priv);
|
||||||
if (xref == NULL)
|
if (xref == NULL)
|
||||||
return -1;
|
return -1;
|
||||||
|
Index: libvirt-0.6.2/src/xs_internal.c
|
||||||
Index: libvirt-0.5.1/src/xs_internal.c
|
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xs_internal.c
|
--- libvirt-0.6.2.orig/src/xs_internal.c
|
||||||
+++ libvirt-0.5.1/src/xs_internal.c
|
+++ libvirt-0.6.2/src/xs_internal.c
|
||||||
@@ -917,7 +917,8 @@ xenStoreDomainGetNetworkID(virConnectPtr
|
@@ -966,7 +966,8 @@ xenStoreDomainGetNetworkID(virConnectPtr
|
||||||
* freed by the caller.
|
* freed by the caller.
|
||||||
*/
|
*/
|
||||||
char *
|
char *
|
||||||
@ -35,7 +25,7 @@ Index: libvirt-0.5.1/src/xs_internal.c
|
|||||||
char dir[80], path[128], **list = NULL, *val = NULL;
|
char dir[80], path[128], **list = NULL, *val = NULL;
|
||||||
unsigned int devlen, len, i, num;
|
unsigned int devlen, len, i, num;
|
||||||
char *ret = NULL;
|
char *ret = NULL;
|
||||||
@@ -935,7 +936,7 @@ xenStoreDomainGetDiskID(virConnectPtr co
|
@@ -984,7 +985,7 @@ xenStoreDomainGetDiskID(virConnectPtr co
|
||||||
if (devlen <= 0)
|
if (devlen <= 0)
|
||||||
return (NULL);
|
return (NULL);
|
||||||
|
|
||||||
@ -44,11 +34,11 @@ Index: libvirt-0.5.1/src/xs_internal.c
|
|||||||
list = xs_directory(priv->xshandle, 0, dir, &num);
|
list = xs_directory(priv->xshandle, 0, dir, &num);
|
||||||
if (list != NULL) {
|
if (list != NULL) {
|
||||||
for (i = 0; i < num; i++) {
|
for (i = 0; i < num; i++) {
|
||||||
Index: libvirt-0.5.1/src/xs_internal.h
|
Index: libvirt-0.6.2/src/xs_internal.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xs_internal.h
|
--- libvirt-0.6.2.orig/src/xs_internal.h
|
||||||
+++ libvirt-0.5.1/src/xs_internal.h
|
+++ libvirt-0.6.2/src/xs_internal.h
|
||||||
@@ -48,7 +48,8 @@ char * xenStoreDomainGetNetworkID(virCo
|
@@ -49,7 +49,8 @@ char * xenStoreDomainGetNetworkID(virCo
|
||||||
const char *mac);
|
const char *mac);
|
||||||
char * xenStoreDomainGetDiskID(virConnectPtr conn,
|
char * xenStoreDomainGetDiskID(virConnectPtr conn,
|
||||||
int id,
|
int id,
|
||||||
|
@ -1,14 +0,0 @@
|
|||||||
Index: libvirt-0.4.6/docs/devhelp/Makefile.am
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-0.4.6.orig/docs/devhelp/Makefile.am
|
|
||||||
+++ libvirt-0.4.6/docs/devhelp/Makefile.am
|
|
||||||
@@ -1,7 +1,8 @@
|
|
||||||
DEVHELP_DIR=$(datadir)/gtk-doc/html/libvirt
|
|
||||||
HTML_FILES=index.html general.html $(HTML_MODULES)
|
|
||||||
HTML_MODULES= \
|
|
||||||
- libvirt-libvirt.html
|
|
||||||
+ libvirt-libvirt.html \
|
|
||||||
+ libvirt-virterror.html
|
|
||||||
|
|
||||||
EXTRA_FORMAT= \
|
|
||||||
home.png \
|
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:cc6fc1909f40667bd32574a11f4052160ed94620b79f3d5db5541f25a12429ee
|
|
||||||
size 3778088
|
|
3
libvirt-0.6.2.tar.bz2
Normal file
3
libvirt-0.6.2.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:15297915384d7f9cab9b21ca7fe9c301e1574a686c4927c69ffc7e65f148e7a5
|
||||||
|
size 4144248
|
@ -1,3 +1,29 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Apr 24 14:26:39 MDT 2009 - jfehlig@novell.com
|
||||||
|
|
||||||
|
- Removed unnecessary call to fillup_and_insserv macro in
|
||||||
|
%post scriptlet
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Apr 22 17:33:01 MDT 2009 - jfehlig@novell.com
|
||||||
|
|
||||||
|
- Updated to version 0.6.2
|
||||||
|
- support SASL auth for VNC server
|
||||||
|
- memory ballooning in QEMU
|
||||||
|
- SCSI HBA storage pool support
|
||||||
|
- PCI passthrough in Xen driver
|
||||||
|
- new APIs for Node device detach reattach and reset
|
||||||
|
- sVirt mandatory access control support
|
||||||
|
- thread safety of the API and event handling
|
||||||
|
- allow QEmu domains to survive daemon restart
|
||||||
|
- extended logging capabilities
|
||||||
|
- support copy-on-write storage volumes
|
||||||
|
- support of storage cache control options for QEMU/KVM
|
||||||
|
- Improvements from lnussel@suse.de
|
||||||
|
- add %jobs macro again
|
||||||
|
- package default qemu network and augeas config files again
|
||||||
|
- don't start libvirtd by default (bnc#496838)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Apr 20 17:01:38 CEST 2009 - crrodriguez@suse.de
|
Mon Apr 20 17:01:38 CEST 2009 - crrodriguez@suse.de
|
||||||
|
|
||||||
|
98
libvirt.spec
98
libvirt.spec
@ -1,5 +1,5 @@
|
|||||||
#
|
#
|
||||||
# spec file for package libvirt (Version 0.5.1)
|
# spec file for package libvirt (Version 0.6.2)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
@ -51,8 +51,8 @@ Url: http://libvirt.org/
|
|||||||
License: LGPL v2.1 or later
|
License: LGPL v2.1 or later
|
||||||
Group: Development/Libraries/C and C++
|
Group: Development/Libraries/C and C++
|
||||||
AutoReqProv: yes
|
AutoReqProv: yes
|
||||||
Version: 0.5.1
|
Version: 0.6.2
|
||||||
Release: 3
|
Release: 1
|
||||||
Summary: A C toolkit to interract with the virtualization capabilities of Linux
|
Summary: A C toolkit to interract with the virtualization capabilities of Linux
|
||||||
Requires: readline
|
Requires: readline
|
||||||
Requires: ncurses
|
Requires: ncurses
|
||||||
@ -63,6 +63,7 @@ Requires: lvm2
|
|||||||
Requires: parted
|
Requires: parted
|
||||||
#Requires: /usr/bin/qemu-img
|
#Requires: /usr/bin/qemu-img
|
||||||
Recommends: cyrus-sasl-digestmd5
|
Recommends: cyrus-sasl-digestmd5
|
||||||
|
Recommends: logrotate
|
||||||
Requires: dnsmasq
|
Requires: dnsmasq
|
||||||
Requires: PolicyKit >= 0.6
|
Requires: PolicyKit >= 0.6
|
||||||
Requires: socat
|
Requires: socat
|
||||||
@ -79,10 +80,8 @@ Patch4: vnc-port.patch
|
|||||||
Patch5: xen-pv-cdrom.patch
|
Patch5: xen-pv-cdrom.patch
|
||||||
Patch6: detach-disk.patch
|
Patch6: detach-disk.patch
|
||||||
Patch7: migrate-params.patch
|
Patch7: migrate-params.patch
|
||||||
Patch8: cve-2008-5086.patch
|
Patch8: suse-network.patch
|
||||||
Patch9: devhelp.patch
|
Patch9: snapshots.patch
|
||||||
Patch10: suse-network.patch
|
|
||||||
Patch11: snapshots.patch
|
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -176,16 +175,14 @@ Authors:
|
|||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p1
|
%patch0 -p1
|
||||||
%patch1 -p1
|
%patch1 -p1
|
||||||
%patch2 -p1
|
#%patch2 -p1
|
||||||
%patch3
|
%patch3
|
||||||
%patch4 -p1
|
#%patch4 -p1
|
||||||
%patch5 -p1
|
%patch5 -p1
|
||||||
%patch6 -p1
|
%patch6 -p1
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
%patch9 -p1
|
%patch9 -p1
|
||||||
%patch10 -p1
|
|
||||||
%patch11 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if ! %{with_xen}
|
%if ! %{with_xen}
|
||||||
@ -199,7 +196,8 @@ Authors:
|
|||||||
%endif
|
%endif
|
||||||
autoreconf -f -i
|
autoreconf -f -i
|
||||||
export CFLAGS="$RPM_OPT_FLAGS"
|
export CFLAGS="$RPM_OPT_FLAGS"
|
||||||
%configure --disable-static --with-pic %{?_without_xen} \
|
%configure --disable-static --with-pic \
|
||||||
|
%{?_without_xen} \
|
||||||
%{?_without_lxc} \
|
%{?_without_lxc} \
|
||||||
%{?_with_selinux} \
|
%{?_with_selinux} \
|
||||||
--libexecdir=%{_libdir}/%{name} \
|
--libexecdir=%{_libdir}/%{name} \
|
||||||
@ -209,8 +207,10 @@ export CFLAGS="$RPM_OPT_FLAGS"
|
|||||||
ac_cv_path_DNSMASQ=/usr/sbin/dnsmasq \
|
ac_cv_path_DNSMASQ=/usr/sbin/dnsmasq \
|
||||||
ac_cv_path_QEMU_IMG=/usr/bin/qemu-img-xen \
|
ac_cv_path_QEMU_IMG=/usr/bin/qemu-img-xen \
|
||||||
ac_cv_path_ISCSIADM=/sbin/iscsiadm \
|
ac_cv_path_ISCSIADM=/sbin/iscsiadm \
|
||||||
|
ac_cv_path_MODPROBE=/sbin/modprobe \
|
||||||
|
ac_cv_path_UDEVADM=/sbin/udevadm \
|
||||||
ac_cv_path_SHOWMOUNT=/usr/sbin/showmount
|
ac_cv_path_SHOWMOUNT=/usr/sbin/showmount
|
||||||
make DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name}
|
make %{?jobs:-j%jobs} DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name}
|
||||||
|
|
||||||
%install
|
%install
|
||||||
%makeinstall DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name}
|
%makeinstall DOCS_DIR=%{_docdir}/%{name}-python EXAMPLE_DIR=%{_docdir}/%{name}-python/examples HTML_DIR=%{_docdir}/%{name}
|
||||||
@ -218,14 +218,8 @@ cp -a AUTHORS ChangeLog COPYING NEWS README TODO $RPM_BUILD_ROOT%{_docdir}/%{nam
|
|||||||
cd docs ; cp -a *.html $RPM_BUILD_ROOT%{_docdir}/%{name} ; cp -a *.png $RPM_BUILD_ROOT%{_docdir}/%{name} ; cd ..
|
cd docs ; cp -a *.html $RPM_BUILD_ROOT%{_docdir}/%{name} ; cp -a *.png $RPM_BUILD_ROOT%{_docdir}/%{name} ; cd ..
|
||||||
# remove currently unsupported locale(s)
|
# remove currently unsupported locale(s)
|
||||||
rm -rf $RPM_BUILD_ROOT/usr/share/locale/sr@latin
|
rm -rf $RPM_BUILD_ROOT/usr/share/locale/sr@latin
|
||||||
# for now, do not install the default network definition
|
# don't autostart the default network
|
||||||
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/default.xml
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
|
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu/networks/autostart/default.xml
|
||||||
# do not package augeas config files for now
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd.aug
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/libvirtd_qemu.aug
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd.aug
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_datadir}/augeas/lenses/tests/test_libvirtd_qemu.aug
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/libvirt
|
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/run/libvirt
|
||||||
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/libvirt
|
mkdir -p $RPM_BUILD_ROOT/%{_localstatedir}/lib/libvirt
|
||||||
rm $RPM_BUILD_ROOT%{_docdir}/%{name}/{*.c,examples.x*}
|
rm $RPM_BUILD_ROOT%{_docdir}/%{name}/{*.c,examples.x*}
|
||||||
@ -255,9 +249,7 @@ ln -s /etc/init.d/libvirtd $RPM_BUILD_ROOT/usr/sbin/rclibvirtd
|
|||||||
%clean
|
%clean
|
||||||
rm -rf $RPM_BUILD_ROOT
|
rm -rf $RPM_BUILD_ROOT
|
||||||
|
|
||||||
%post
|
%post -p /sbin/ldconfig
|
||||||
/sbin/ldconfig
|
|
||||||
%{fillup_and_insserv -f -y libvirtd}
|
|
||||||
|
|
||||||
%preun
|
%preun
|
||||||
%stop_on_removal libvirtd
|
%stop_on_removal libvirtd
|
||||||
@ -287,6 +279,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/
|
||||||
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
%dir %attr(0700, root, root) %{_sysconfdir}/libvirt/qemu/networks/autostart
|
||||||
|
%config %{_sysconfdir}/libvirt/qemu/networks/default.xml
|
||||||
|
%config %{_sysconfdir}/logrotate.d/libvirtd
|
||||||
%dir /%{_localstatedir}/run/libvirt/
|
%dir /%{_localstatedir}/run/libvirt/
|
||||||
%dir /%{_localstatedir}/lib/libvirt/
|
%dir /%{_localstatedir}/lib/libvirt/
|
||||||
%config /etc/init.d/libvirtd
|
%config /etc/init.d/libvirtd
|
||||||
@ -297,6 +291,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%if 0%{?suse_version} > 1030
|
%if 0%{?suse_version} > 1030
|
||||||
%{_datadir}/PolicyKit/policy/org.libvirt.unix.policy
|
%{_datadir}/PolicyKit/policy/org.libvirt.unix.policy
|
||||||
%endif
|
%endif
|
||||||
|
%{_datadir}/libvirt
|
||||||
|
%{_datadir}/augeas
|
||||||
|
|
||||||
%files devel
|
%files devel
|
||||||
%defattr(-, root, root)
|
%defattr(-, root, root)
|
||||||
@ -319,12 +315,32 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%{py_sitedir}/libvirtmod*
|
%{py_sitedir}/libvirtmod*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Apr 24 2009 jfehlig@novell.com
|
||||||
|
- Removed unnecessary call to fillup_and_insserv macro in
|
||||||
|
%%post scriptlet
|
||||||
|
* Wed Apr 22 2009 jfehlig@novell.com
|
||||||
|
- Updated to version 0.6.2
|
||||||
|
- support SASL auth for VNC server
|
||||||
|
- memory ballooning in QEMU
|
||||||
|
- SCSI HBA storage pool support
|
||||||
|
- PCI passthrough in Xen driver
|
||||||
|
- new APIs for Node device detach reattach and reset
|
||||||
|
- sVirt mandatory access control support
|
||||||
|
- thread safety of the API and event handling
|
||||||
|
- allow QEmu domains to survive daemon restart
|
||||||
|
- extended logging capabilities
|
||||||
|
- support copy-on-write storage volumes
|
||||||
|
- support of storage cache control options for QEMU/KVM
|
||||||
|
- Improvements from lnussel@suse.de
|
||||||
|
- add %%jobs macro again
|
||||||
|
- package default qemu network and augeas config files again
|
||||||
|
- don't start libvirtd by default (bnc#496838)
|
||||||
* Mon Apr 20 2009 crrodriguez@suse.de
|
* Mon Apr 20 2009 crrodriguez@suse.de
|
||||||
- use --disable-static instead of just removing static libraries
|
- use --disable-static instead of just removing static libraries
|
||||||
* Sat Jan 31 2009 jfehlig@novell.com
|
* Fri Jan 30 2009 jfehlig@novell.com
|
||||||
- Fix build for architectures not supporting numa
|
- Fix build for architectures not supporting numa
|
||||||
- Forward port suse-network.patch and snapshots.patch
|
- Forward port suse-network.patch and snapshots.patch
|
||||||
* Thu Jan 29 2009 jfehlig@novell.com
|
* Wed Jan 28 2009 jfehlig@novell.com
|
||||||
- Updated to version 0.5.1
|
- Updated to version 0.5.1
|
||||||
- CPU and scheduler support for LXC
|
- CPU and scheduler support for LXC
|
||||||
- SDL display configuration
|
- SDL display configuration
|
||||||
@ -354,19 +370,19 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
* Mon Nov 24 2008 jfehlig@novell.com
|
* Mon Nov 24 2008 jfehlig@novell.com
|
||||||
- Fix connecting/disconnecting ISO via virt-manager
|
- Fix connecting/disconnecting ISO via virt-manager
|
||||||
bnc#446773
|
bnc#446773
|
||||||
* Fri Nov 21 2008 jfehlig@novell.com
|
* Thu Nov 20 2008 jfehlig@novell.com
|
||||||
- Fix detach of Xen tap devices
|
- Fix detach of Xen tap devices
|
||||||
bnc#410644 and bnc#411633
|
bnc#410644 and bnc#411633
|
||||||
* Fri Nov 07 2008 jfehlig@novell.com
|
* Thu Nov 06 2008 jfehlig@novell.com
|
||||||
- Fix handling of iso/cdrom for xen pv domains.
|
- Fix handling of iso/cdrom for xen pv domains.
|
||||||
bnc#437388
|
bnc#437388
|
||||||
* Thu Nov 06 2008 jfehlig@novell.com
|
* Wed Nov 05 2008 jfehlig@novell.com
|
||||||
- Expose networks managed outside of libvirt as read-only.
|
- Expose networks managed outside of libvirt as read-only.
|
||||||
bnc#441633
|
bnc#441633
|
||||||
* Wed Nov 05 2008 jfehlig@novell.com
|
* Wed Nov 05 2008 jfehlig@novell.com
|
||||||
- Fix vnc port assignement in domain XML
|
- Fix vnc port assignement in domain XML
|
||||||
bnc#441625
|
bnc#441625
|
||||||
* Fri Oct 24 2008 jfehlig@novell.com
|
* Thu Oct 23 2008 jfehlig@novell.com
|
||||||
- Add upstream patches to fix ordering problem with setting up
|
- Add upstream patches to fix ordering problem with setting up
|
||||||
cgroup containment on LXC domains.
|
cgroup containment on LXC domains.
|
||||||
bnc#437816
|
bnc#437816
|
||||||
@ -378,9 +394,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
* Mon Oct 06 2008 jfehlig@novell.com
|
* Mon Oct 06 2008 jfehlig@novell.com
|
||||||
- Use xend vs hypercall interface to change max mem setting
|
- Use xend vs hypercall interface to change max mem setting
|
||||||
bnc#431766
|
bnc#431766
|
||||||
* Thu Oct 02 2008 jfehlig@novell.com
|
|
||||||
- Enabled libvirtd listen mode in libvirtd init script.
|
|
||||||
* Wed Oct 01 2008 jfehlig@novell.com
|
* Wed Oct 01 2008 jfehlig@novell.com
|
||||||
|
- Enabled libvirtd listen mode in libvirtd init script.
|
||||||
|
* Tue Sep 30 2008 jfehlig@novell.com
|
||||||
- Updated to version 0.4.6
|
- Updated to version 0.4.6
|
||||||
- avoid a segfault if missing qemu emulator
|
- avoid a segfault if missing qemu emulator
|
||||||
- reading vncdisplay from xend domain
|
- reading vncdisplay from xend domain
|
||||||
@ -406,9 +422,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
* Tue Sep 02 2008 kwolf@suse.de
|
* Tue Sep 02 2008 kwolf@suse.de
|
||||||
- Added snapshot support. Implemented snapshot_create/apply/delete
|
- Added snapshot support. Implemented snapshot_create/apply/delete
|
||||||
for Xen.
|
for Xen.
|
||||||
* Sat Aug 30 2008 jfehlig@novell.com
|
|
||||||
- Fixed bugs in nfs storage pool creation/deletion
|
|
||||||
* Fri Aug 29 2008 jfehlig@novell.com
|
* Fri Aug 29 2008 jfehlig@novell.com
|
||||||
|
- Fixed bugs in nfs storage pool creation/deletion
|
||||||
|
* Thu Aug 28 2008 jfehlig@novell.com
|
||||||
- Fixed bugs in LVM storage pool creation.
|
- Fixed bugs in LVM storage pool creation.
|
||||||
logical-storage-driver.patch submitted upstream
|
logical-storage-driver.patch submitted upstream
|
||||||
* Wed Aug 27 2008 jfehlig@novell.com
|
* Wed Aug 27 2008 jfehlig@novell.com
|
||||||
@ -423,7 +439,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
- Fixed spec file breakage due to SELinux enablement
|
- Fixed spec file breakage due to SELinux enablement
|
||||||
* Fri Aug 22 2008 prusnak@suse.cz
|
* Fri Aug 22 2008 prusnak@suse.cz
|
||||||
- enabled SELinux support [Fate#303662]
|
- enabled SELinux support [Fate#303662]
|
||||||
* Tue Aug 12 2008 jfehlig@novell.com
|
* Mon Aug 11 2008 jfehlig@novell.com
|
||||||
- Cleanup of libvirtd init script
|
- Cleanup of libvirtd init script
|
||||||
- Removed dnsmasq from BuildRequires
|
- Removed dnsmasq from BuildRequires
|
||||||
* Sat Aug 09 2008 jfehlig@novell.com
|
* Sat Aug 09 2008 jfehlig@novell.com
|
||||||
@ -452,7 +468,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
* Thu Apr 10 2008 jfehlig@novell.com
|
* Thu Apr 10 2008 jfehlig@novell.com
|
||||||
- Fix NULL pointer dereference in auth callback. bnc#373180,
|
- Fix NULL pointer dereference in auth callback. bnc#373180,
|
||||||
bnc#354995
|
bnc#354995
|
||||||
* Thu Jan 10 2008 jfehlig@novell.com
|
* Wed Jan 09 2008 jfehlig@novell.com
|
||||||
- Remove Requires of nc package. netcat is the equivalent but it
|
- Remove Requires of nc package. netcat is the equivalent but it
|
||||||
does not support unix domain sockets so no need to require it
|
does not support unix domain sockets so no need to require it
|
||||||
either.
|
either.
|
||||||
@ -477,11 +493,11 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
to be a subtle dependency issue in one of the makefiles which is
|
to be a subtle dependency issue in one of the makefiles which is
|
||||||
causing problems with generation of python bindings when jobs > 1.
|
causing problems with generation of python bindings when jobs > 1.
|
||||||
Bug #329032.
|
Bug #329032.
|
||||||
* Tue Aug 21 2007 jfehlig@novell.com
|
* Mon Aug 20 2007 jfehlig@novell.com
|
||||||
- Added init script for libvirtd. libvirtd is needed to support
|
- Added init script for libvirtd. libvirtd is needed to support
|
||||||
management of qemu/kvm guests. Some Xen networking is handled
|
management of qemu/kvm guests. Some Xen networking is handled
|
||||||
through libvirt as well - bug #298021.
|
through libvirt as well - bug #298021.
|
||||||
* Tue Jul 24 2007 jfehlig@novell.com
|
* Mon Jul 23 2007 jfehlig@novell.com
|
||||||
- Update to libvirt-0.3.0
|
- Update to libvirt-0.3.0
|
||||||
- Secure Remote support
|
- Secure Remote support
|
||||||
- Documentation: remote support, description of the URI connection
|
- Documentation: remote support, description of the URI connection
|
||||||
@ -522,14 +538,14 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
- Fixed docdir destination.
|
- Fixed docdir destination.
|
||||||
- Build with CFLAGS.
|
- Build with CFLAGS.
|
||||||
- Spec file cleanup.
|
- Spec file cleanup.
|
||||||
* Wed Feb 21 2007 jfehlig@novell.com
|
* Tue Feb 20 2007 jfehlig@novell.com
|
||||||
- Removed usr/lib/libvirt_proxy setuid binary from package. Fixes
|
- Removed usr/lib/libvirt_proxy setuid binary from package. Fixes
|
||||||
bug #246610.
|
bug #246610.
|
||||||
* Sat Feb 17 2007 jfehlig@novell.com
|
* Fri Feb 16 2007 jfehlig@novell.com
|
||||||
- Updated to latest release. Many of the issues seen in virt-manager
|
- Updated to latest release. Many of the issues seen in virt-manager
|
||||||
have been caused by bugs / missing functionality in libvirt. This
|
have been caused by bugs / missing functionality in libvirt. This
|
||||||
upate provides a better basis for virt-manager.
|
upate provides a better basis for virt-manager.
|
||||||
* Thu Jan 11 2007 jfehlig@novell.com
|
* Wed Jan 10 2007 jfehlig@novell.com
|
||||||
- Updated to latest release, version 0.1.10. Submitting to SLES10 SP1
|
- Updated to latest release, version 0.1.10. Submitting to SLES10 SP1
|
||||||
to provide base functionality for FATE feature 301181.
|
to provide base functionality for FATE feature 301181.
|
||||||
- more localizations
|
- more localizations
|
||||||
@ -541,7 +557,7 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
- support graphic framebuffer for Xen paravirt (Daniel Berrange)
|
- support graphic framebuffer for Xen paravirt (Daniel Berrange)
|
||||||
- VNC listen IP range support (Daniel Berrange)
|
- VNC listen IP range support (Daniel Berrange)
|
||||||
- support for default Xen config files and inactive domains of 3.0.4 (Daniel Berrange)
|
- support for default Xen config files and inactive domains of 3.0.4 (Daniel Berrange)
|
||||||
* Sat Dec 09 2006 jfehlig@novell.com
|
* Fri Dec 08 2006 jfehlig@novell.com
|
||||||
- Updated to latest release, version 0.1.9.
|
- Updated to latest release, version 0.1.9.
|
||||||
- python bindings: release interpeter lock when calling C (Daniel Berrange)
|
- python bindings: release interpeter lock when calling C (Daniel Berrange)
|
||||||
- don't raise HTTP error when looking informations for a domain
|
- don't raise HTTP error when looking informations for a domain
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
Index: libvirt-0.5.1/qemud/libvirtd.conf
|
Index: libvirt-0.6.2/qemud/libvirtd.conf
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/qemud/libvirtd.conf
|
--- libvirt-0.6.2.orig/qemud/libvirtd.conf
|
||||||
+++ libvirt-0.5.1/qemud/libvirtd.conf
|
+++ libvirt-0.6.2/qemud/libvirtd.conf
|
||||||
@@ -18,8 +18,8 @@
|
@@ -18,8 +18,8 @@
|
||||||
# It is necessary to setup a CA and issue server certificates before
|
# It is necessary to setup a CA and issue server certificates before
|
||||||
# using this capability.
|
# using this capability.
|
||||||
@ -28,12 +28,12 @@ Index: libvirt-0.5.1/qemud/libvirtd.conf
|
|||||||
|
|
||||||
# Override the default mDNS advertizement name. This must be
|
# Override the default mDNS advertizement name. This must be
|
||||||
# unique on the immediate broadcast network.
|
# unique on the immediate broadcast network.
|
||||||
Index: libvirt-0.5.1/qemud/qemud.c
|
Index: libvirt-0.6.2/qemud/qemud.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/qemud/qemud.c
|
--- libvirt-0.6.2.orig/qemud/qemud.c
|
||||||
+++ libvirt-0.5.1/qemud/qemud.c
|
+++ libvirt-0.6.2/qemud/qemud.c
|
||||||
@@ -92,7 +92,7 @@ static int sigwrite = -1; /* Signa
|
@@ -132,7 +132,7 @@ static char *log_filters = NULL;
|
||||||
static int ipsock = 0; /* -l Listen for TCP/IP */
|
static char *log_outputs = NULL;
|
||||||
|
|
||||||
/* Defaults for configuration file elements */
|
/* Defaults for configuration file elements */
|
||||||
-static int listen_tls = 1;
|
-static int listen_tls = 1;
|
||||||
@ -41,7 +41,7 @@ Index: libvirt-0.5.1/qemud/qemud.c
|
|||||||
static int listen_tcp = 0;
|
static int listen_tcp = 0;
|
||||||
static char *listen_addr = (char *) LIBVIRTD_LISTEN_ADDR;
|
static char *listen_addr = (char *) LIBVIRTD_LISTEN_ADDR;
|
||||||
static char *tls_port = (char *) LIBVIRTD_TLS_PORT;
|
static char *tls_port = (char *) LIBVIRTD_TLS_PORT;
|
||||||
@@ -116,7 +116,7 @@ static int auth_tcp = REMOTE_AUTH_NONE;
|
@@ -154,7 +154,7 @@ static int auth_tcp = REMOTE_AUTH_NONE;
|
||||||
#endif
|
#endif
|
||||||
static int auth_tls = REMOTE_AUTH_NONE;
|
static int auth_tls = REMOTE_AUTH_NONE;
|
||||||
|
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
Index: libvirt-0.5.1/src/xend_internal.c
|
Index: libvirt-0.6.2/src/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xend_internal.c
|
--- libvirt-0.6.2.orig/src/xend_internal.c
|
||||||
+++ libvirt-0.5.1/src/xend_internal.c
|
+++ libvirt-0.6.2/src/xend_internal.c
|
||||||
@@ -4226,6 +4226,8 @@ xenDaemonDomainMigratePerform (virDomain
|
@@ -4453,6 +4453,8 @@ xenDaemonDomainMigratePerform (virDomain
|
||||||
"live", live,
|
"node", "-1",
|
||||||
"port", port,
|
"ssl", "0",
|
||||||
"resource", "0", /* required, xend ignores it */
|
"resource", "0", /* required, xend ignores it */
|
||||||
+ "node", "-1", /* numa node, xen c/s 17753 */
|
+ "node", "-1", /* numa node, xen c/s 17753 */
|
||||||
+ "ssl", "0", /* ssl migration, xen c/s 17709 */
|
+ "ssl", "0", /* ssl migration, xen c/s 17709 */
|
||||||
|
363
snapshots.patch
363
snapshots.patch
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.5.1/include/libvirt/libvirt.h.in
|
Index: libvirt-0.6.2/include/libvirt/libvirt.h.in
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/include/libvirt/libvirt.h.in
|
--- libvirt-0.6.2.orig/include/libvirt/libvirt.h.in
|
||||||
+++ libvirt-0.5.1/include/libvirt/libvirt.h.in
|
+++ libvirt-0.6.2/include/libvirt/libvirt.h.in
|
||||||
@@ -470,6 +470,21 @@ int virDomainRestore
|
@@ -537,6 +537,21 @@ int virDomainRestore
|
||||||
const char *from);
|
const char *from);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -24,11 +24,11 @@ Index: libvirt-0.5.1/include/libvirt/libvirt.h.in
|
|||||||
* Domain core dump
|
* Domain core dump
|
||||||
*/
|
*/
|
||||||
int virDomainCoreDump (virDomainPtr domain,
|
int virDomainCoreDump (virDomainPtr domain,
|
||||||
Index: libvirt-0.5.1/src/libvirt.c
|
Index: libvirt-0.6.2/src/libvirt.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/libvirt.c
|
--- libvirt-0.6.2.orig/src/libvirt.c
|
||||||
+++ libvirt-0.5.1/src/libvirt.c
|
+++ libvirt-0.6.2/src/libvirt.c
|
||||||
@@ -1777,6 +1777,168 @@ virDomainRestore(virConnectPtr conn, con
|
@@ -2067,6 +2067,168 @@ error:
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -197,10 +197,10 @@ Index: libvirt-0.5.1/src/libvirt.c
|
|||||||
/**
|
/**
|
||||||
* virDomainCoreDump:
|
* virDomainCoreDump:
|
||||||
* @domain: a domain object
|
* @domain: a domain object
|
||||||
Index: libvirt-0.5.1/src/driver.h
|
Index: libvirt-0.6.2/src/driver.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/driver.h
|
--- libvirt-0.6.2.orig/src/driver.h
|
||||||
+++ libvirt-0.5.1/src/driver.h
|
+++ libvirt-0.6.2/src/driver.h
|
||||||
@@ -145,6 +145,21 @@ typedef int
|
@@ -145,6 +145,21 @@ typedef int
|
||||||
(*virDrvDomainRestore) (virConnectPtr conn,
|
(*virDrvDomainRestore) (virConnectPtr conn,
|
||||||
const char *from);
|
const char *from);
|
||||||
@ -223,11 +223,10 @@ Index: libvirt-0.5.1/src/driver.h
|
|||||||
(*virDrvDomainCoreDump) (virDomainPtr domain,
|
(*virDrvDomainCoreDump) (virDomainPtr domain,
|
||||||
const char *to,
|
const char *to,
|
||||||
int flags);
|
int flags);
|
||||||
@@ -387,6 +402,12 @@ struct _virDriver {
|
@@ -408,6 +423,11 @@ struct _virDriver {
|
||||||
virDrvDomainEventDeregister domainEventDeregister;
|
virDrvNodeDeviceDettach nodeDeviceDettach;
|
||||||
virDrvDomainMigratePrepare2 domainMigratePrepare2;
|
virDrvNodeDeviceReAttach nodeDeviceReAttach;
|
||||||
virDrvDomainMigrateFinish2 domainMigrateFinish2;
|
virDrvNodeDeviceReset nodeDeviceReset;
|
||||||
+
|
|
||||||
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
||||||
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
||||||
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
||||||
@ -236,11 +235,11 @@ Index: libvirt-0.5.1/src/driver.h
|
|||||||
};
|
};
|
||||||
|
|
||||||
typedef int
|
typedef int
|
||||||
Index: libvirt-0.5.1/src/xen_unified.c
|
Index: libvirt-0.6.2/src/xen_unified.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xen_unified.c
|
--- libvirt-0.6.2.orig/src/xen_unified.c
|
||||||
+++ libvirt-0.5.1/src/xen_unified.c
|
+++ libvirt-0.6.2/src/xen_unified.c
|
||||||
@@ -924,6 +924,81 @@ xenUnifiedDomainRestore (virConnectPtr c
|
@@ -931,6 +931,81 @@ xenUnifiedDomainRestore (virConnectPtr c
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
@ -322,39 +321,39 @@ Index: libvirt-0.5.1/src/xen_unified.c
|
|||||||
xenUnifiedDomainCoreDump (virDomainPtr dom, const char *to, int flags)
|
xenUnifiedDomainCoreDump (virDomainPtr dom, const char *to, int flags)
|
||||||
{
|
{
|
||||||
GET_PRIVATE(dom->conn);
|
GET_PRIVATE(dom->conn);
|
||||||
@@ -1425,6 +1500,11 @@ static virDriver xenUnifiedDriver = {
|
@@ -1608,6 +1683,11 @@ static virDriver xenUnifiedDriver = {
|
||||||
.domainGetInfo = xenUnifiedDomainGetInfo,
|
xenUnifiedNodeDeviceDettach, /* nodeDeviceDettach */
|
||||||
.domainSave = xenUnifiedDomainSave,
|
xenUnifiedNodeDeviceReAttach, /* nodeDeviceReAttach */
|
||||||
.domainRestore = xenUnifiedDomainRestore,
|
xenUnifiedNodeDeviceReset, /* nodeDeviceReset */
|
||||||
+ .domainSnapshotCreate = xenUnifiedDomainSnapshotCreate,
|
+ xenUnifiedDomainSnapshotCreate,
|
||||||
+ .domainSnapshotApply = xenUnifiedDomainSnapshotApply,
|
+ xenUnifiedDomainSnapshotApply,
|
||||||
+ .domainSnapshotDelete = xenUnifiedDomainSnapshotDelete,
|
+ xenUnifiedDomainSnapshotDelete,
|
||||||
+ .domainNumOfSnapshots = xenUnifiedDomainNumOfSnapshots,
|
+ xenUnifiedDomainNumOfSnapshots,
|
||||||
+ .domainListSnapshots = xenUnifiedDomainListSnapshots,
|
+ xenUnifiedDomainListSnapshots,
|
||||||
.domainCoreDump = xenUnifiedDomainCoreDump,
|
};
|
||||||
.domainSetVcpus = xenUnifiedDomainSetVcpus,
|
|
||||||
.domainPinVcpu = xenUnifiedDomainPinVcpu,
|
/**
|
||||||
Index: libvirt-0.5.1/src/xen_unified.h
|
Index: libvirt-0.6.2/src/xen_unified.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xen_unified.h
|
--- libvirt-0.6.2.orig/src/xen_unified.h
|
||||||
+++ libvirt-0.5.1/src/xen_unified.h
|
+++ libvirt-0.6.2/src/xen_unified.h
|
||||||
@@ -78,6 +78,11 @@ struct xenUnifiedDriver {
|
@@ -95,6 +95,11 @@ struct xenUnifiedDriver {
|
||||||
virDrvDomainGetInfo domainGetInfo;
|
virDrvDomainGetSchedulerType domainGetSchedulerType;
|
||||||
virDrvDomainSave domainSave;
|
virDrvDomainGetSchedulerParameters domainGetSchedulerParameters;
|
||||||
virDrvDomainRestore domainRestore;
|
virDrvDomainSetSchedulerParameters domainSetSchedulerParameters;
|
||||||
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
+ virDrvDomainSnapshotCreate domainSnapshotCreate;
|
||||||
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
+ virDrvDomainSnapshotApply domainSnapshotApply;
|
||||||
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
+ virDrvDomainSnapshotDelete domainSnapshotDelete;
|
||||||
+ virDrvDomainNumOfSnapshots domainNumOfSnapshots;
|
+ virDrvDomainNumOfSnapshots domainNumOfSnapshots;
|
||||||
+ virDrvDomainListSnapshots domainListSnapshots;
|
+ virDrvDomainListSnapshots domainListSnapshots;
|
||||||
virDrvDomainCoreDump domainCoreDump;
|
};
|
||||||
virDrvDomainSetVcpus domainSetVcpus;
|
|
||||||
virDrvDomainPinVcpu domainPinVcpu;
|
typedef struct xenXMConfCache *xenXMConfCachePtr;
|
||||||
Index: libvirt-0.5.1/src/xend_internal.c
|
Index: libvirt-0.6.2/src/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xend_internal.c
|
--- libvirt-0.6.2.orig/src/xend_internal.c
|
||||||
+++ libvirt-0.5.1/src/xend_internal.c
|
+++ libvirt-0.6.2/src/xend_internal.c
|
||||||
@@ -51,6 +51,12 @@
|
@@ -53,6 +53,12 @@
|
||||||
|
|
||||||
#ifndef PROXY
|
#ifndef PROXY
|
||||||
|
|
||||||
@ -367,7 +366,7 @@ Index: libvirt-0.5.1/src/xend_internal.c
|
|||||||
/*
|
/*
|
||||||
* The number of Xen scheduler parameters
|
* The number of Xen scheduler parameters
|
||||||
*/
|
*/
|
||||||
@@ -3024,6 +3030,87 @@ xenDaemonDomainRestore(virConnectPtr con
|
@@ -3233,6 +3239,87 @@ xenDaemonDomainRestore(virConnectPtr con
|
||||||
}
|
}
|
||||||
return xend_op(conn, "", "op", "restore", "file", filename, NULL);
|
return xend_op(conn, "", "op", "restore", "file", filename, NULL);
|
||||||
}
|
}
|
||||||
@ -455,87 +454,87 @@ Index: libvirt-0.5.1/src/xend_internal.c
|
|||||||
#endif /* !PROXY */
|
#endif /* !PROXY */
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -4781,6 +4868,11 @@ struct xenUnifiedDriver xenDaemonDriver
|
@@ -5025,6 +5112,11 @@ struct xenUnifiedDriver xenDaemonDriver
|
||||||
xenDaemonDomainGetInfo, /* domainGetInfo */
|
xenDaemonGetSchedulerType, /* domainGetSchedulerType */
|
||||||
xenDaemonDomainSave, /* domainSave */
|
xenDaemonGetSchedulerParameters, /* domainGetSchedulerParameters */
|
||||||
xenDaemonDomainRestore, /* domainRestore */
|
xenDaemonSetSchedulerParameters, /* domainSetSchedulerParameters */
|
||||||
+ xenDaemonDomainSnapshotCreate, /* domainSnapshotCreate */
|
+ xenDaemonDomainSnapshotCreate, /* domainSnapshotCreate */
|
||||||
+ xenDaemonDomainSnapshotApply, /* domainSnapshotApply */
|
+ xenDaemonDomainSnapshotApply, /* domainSnapshotApply */
|
||||||
+ xenDaemonDomainSnapshotDelete, /* domainSnapshotDelete */
|
+ xenDaemonDomainSnapshotDelete, /* domainSnapshotDelete */
|
||||||
+ xenDaemonDomainNumOfSnapshots, /* domainNumOfSnapshots */
|
+ xenDaemonDomainNumOfSnapshots, /* domainNumOfSnapshots */
|
||||||
+ xenDaemonDomainListSnapshots, /* domainListSnapshots */
|
+ xenDaemonDomainListSnapshots, /* domainListSnapshots */
|
||||||
xenDaemonDomainCoreDump, /* domainCoreDump */
|
};
|
||||||
xenDaemonDomainSetVcpus, /* domainSetVcpus */
|
|
||||||
xenDaemonDomainPinVcpu, /* domainPinVcpu */
|
/************************************************************************
|
||||||
Index: libvirt-0.5.1/src/proxy_internal.c
|
Index: libvirt-0.6.2/src/proxy_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/proxy_internal.c
|
--- libvirt-0.6.2.orig/src/proxy_internal.c
|
||||||
+++ libvirt-0.5.1/src/proxy_internal.c
|
+++ libvirt-0.6.2/src/proxy_internal.c
|
||||||
@@ -68,6 +68,11 @@ struct xenUnifiedDriver xenProxyDriver =
|
@@ -84,6 +84,11 @@ struct xenUnifiedDriver xenProxyDriver =
|
||||||
xenProxyDomainGetInfo, /* domainGetInfo */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainSave */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
NULL, /* domainRestore */
|
NULL, /* domainSetSchedulerParameters */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
+ NULL, /* domainNumOfSnapshots */
|
+ NULL, /* domainNumOfSnapshots */
|
||||||
+ NULL, /* domainListSnapshots */
|
+ NULL, /* domainListSnapshots */
|
||||||
NULL, /* domainCoreDump */
|
};
|
||||||
NULL, /* domainSetVcpus */
|
|
||||||
NULL, /* domainPinVcpu */
|
|
||||||
Index: libvirt-0.5.1/src/xen_internal.c
|
Index: libvirt-0.6.2/src/xen_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xen_internal.c
|
--- libvirt-0.6.2.orig/src/xen_internal.c
|
||||||
+++ libvirt-0.5.1/src/xen_internal.c
|
+++ libvirt-0.6.2/src/xen_internal.c
|
||||||
@@ -699,6 +699,11 @@ struct xenUnifiedDriver xenHypervisorDri
|
@@ -731,6 +731,11 @@ struct xenUnifiedDriver xenHypervisorDri
|
||||||
xenHypervisorGetDomainInfo, /* domainGetInfo */
|
xenHypervisorGetSchedulerType, /* domainGetSchedulerType */
|
||||||
NULL, /* domainSave */
|
xenHypervisorGetSchedulerParameters, /* domainGetSchedulerParameters */
|
||||||
NULL, /* domainRestore */
|
xenHypervisorSetSchedulerParameters, /* domainSetSchedulerParameters */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
+ NULL, /* domainNumOfSnapshots */
|
+ NULL, /* domainNumOfSnapshots */
|
||||||
+ NULL, /* domainListSnapshots */
|
+ NULL, /* domainListSnapshots */
|
||||||
NULL, /* domainCoreDump */
|
};
|
||||||
xenHypervisorSetVcpus, /* domainSetVcpus */
|
#endif /* !PROXY */
|
||||||
xenHypervisorPinVcpu, /* domainPinVcpu */
|
|
||||||
Index: libvirt-0.5.1/src/xm_internal.c
|
Index: libvirt-0.6.2/src/xm_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xm_internal.c
|
--- libvirt-0.6.2.orig/src/xm_internal.c
|
||||||
+++ libvirt-0.5.1/src/xm_internal.c
|
+++ libvirt-0.6.2/src/xm_internal.c
|
||||||
@@ -100,6 +100,11 @@ struct xenUnifiedDriver xenXMDriver = {
|
@@ -116,6 +116,11 @@ struct xenUnifiedDriver xenXMDriver = {
|
||||||
xenXMDomainGetInfo, /* domainGetInfo */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainSave */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
NULL, /* domainRestore */
|
NULL, /* domainSetSchedulerParameters */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
+ NULL, /* domainNumOfSnapshots */
|
+ NULL, /* domainNumOfSnapshots */
|
||||||
+ NULL, /* domainListSnapshots */
|
+ NULL, /* domainListSnapshots */
|
||||||
NULL, /* domainCoreDump */
|
};
|
||||||
xenXMDomainSetVcpus, /* domainSetVcpus */
|
|
||||||
xenXMDomainPinVcpu, /* domainPinVcpu */
|
#define xenXMError(conn, code, fmt...) \
|
||||||
Index: libvirt-0.5.1/src/xs_internal.c
|
Index: libvirt-0.6.2/src/xs_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xs_internal.c
|
--- libvirt-0.6.2.orig/src/xs_internal.c
|
||||||
+++ libvirt-0.5.1/src/xs_internal.c
|
+++ libvirt-0.6.2/src/xs_internal.c
|
||||||
@@ -74,6 +74,11 @@ struct xenUnifiedDriver xenStoreDriver =
|
@@ -83,6 +83,11 @@ struct xenUnifiedDriver xenStoreDriver =
|
||||||
xenStoreGetDomainInfo, /* domainGetInfo */
|
NULL, /* domainGetSchedulerType */
|
||||||
NULL, /* domainSave */
|
NULL, /* domainGetSchedulerParameters */
|
||||||
NULL, /* domainRestore */
|
NULL, /* domainSetSchedulerParameters */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
+ NULL, /* domainNumOfSnapshots */
|
+ NULL, /* domainNumOfSnapshots */
|
||||||
+ NULL, /* domainListSnapshots */
|
+ NULL, /* domainListSnapshots */
|
||||||
NULL, /* domainCoreDump */
|
};
|
||||||
NULL, /* domainSetVcpus */
|
|
||||||
NULL, /* domainPinVcpu */
|
#endif /* ! PROXY */
|
||||||
Index: libvirt-0.5.1/src/virsh.c
|
Index: libvirt-0.6.2/src/virsh.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/virsh.c
|
--- libvirt-0.6.2.orig/src/virsh.c
|
||||||
+++ libvirt-0.5.1/src/virsh.c
|
+++ libvirt-0.6.2/src/virsh.c
|
||||||
@@ -1099,6 +1099,189 @@ cmdSave(vshControl *ctl, const vshCmd *c
|
@@ -1146,6 +1146,189 @@ cmdSave(vshControl *ctl, const vshCmd *c
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -570,7 +569,7 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (!(dom = vshCommandOptDomain(ctl, cmd, "domain", &domain)))
|
+ if (!(dom = vshCommandOptDomain(ctl, cmd, &domain)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (virDomainSnapshotCreate(dom, name) == 0) {
|
+ if (virDomainSnapshotCreate(dom, name) == 0) {
|
||||||
@ -615,7 +614,7 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (!(dom = vshCommandOptDomain(ctl, cmd, "domain", &domain)))
|
+ if (!(dom = vshCommandOptDomain(ctl, cmd, &domain)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (virDomainSnapshotApply(dom, name) == 0) {
|
+ if (virDomainSnapshotApply(dom, name) == 0) {
|
||||||
@ -661,7 +660,7 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
+ if (!(name = vshCommandOptString(cmd, "name", NULL)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (!(dom = vshCommandOptDomain(ctl, cmd, "domain", &domain)))
|
+ if (!(dom = vshCommandOptDomain(ctl, cmd, &domain)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (virDomainSnapshotDelete(dom, name) == 0) {
|
+ if (virDomainSnapshotDelete(dom, name) == 0) {
|
||||||
@ -704,7 +703,7 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
+ if (!vshConnectionUsability(ctl, ctl->conn, TRUE))
|
+ if (!vshConnectionUsability(ctl, ctl->conn, TRUE))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ if (!(dom = vshCommandOptDomain(ctl, cmd, "domain", &domain)))
|
+ if (!(dom = vshCommandOptDomain(ctl, cmd, &domain)))
|
||||||
+ return FALSE;
|
+ return FALSE;
|
||||||
+
|
+
|
||||||
+ // TODO Display snapshot details
|
+ // TODO Display snapshot details
|
||||||
@ -725,7 +724,7 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
/*
|
/*
|
||||||
* "schedinfo" command
|
* "schedinfo" command
|
||||||
*/
|
*/
|
||||||
@@ -5697,6 +5880,12 @@ static const vshCmdDef commands[] = {
|
@@ -5929,6 +6112,12 @@ static const vshCmdDef commands[] = {
|
||||||
{"undefine", cmdUndefine, opts_undefine, info_undefine},
|
{"undefine", cmdUndefine, opts_undefine, info_undefine},
|
||||||
{"uri", cmdURI, NULL, info_uri},
|
{"uri", cmdURI, NULL, info_uri},
|
||||||
|
|
||||||
@ -738,14 +737,14 @@ Index: libvirt-0.5.1/src/virsh.c
|
|||||||
{"vol-create", cmdVolCreate, opts_vol_create, info_vol_create},
|
{"vol-create", cmdVolCreate, opts_vol_create, info_vol_create},
|
||||||
{"vol-create-as", cmdVolCreateAs, opts_vol_create_as, info_vol_create_as},
|
{"vol-create-as", cmdVolCreateAs, opts_vol_create_as, info_vol_create_as},
|
||||||
{"vol-delete", cmdVolDelete, opts_vol_delete, info_vol_delete},
|
{"vol-delete", cmdVolDelete, opts_vol_delete, info_vol_delete},
|
||||||
Index: libvirt-0.5.1/src/lxc_driver.c
|
Index: libvirt-0.6.2/src/lxc_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/lxc_driver.c
|
--- libvirt-0.6.2.orig/src/lxc_driver.c
|
||||||
+++ libvirt-0.5.1/src/lxc_driver.c
|
+++ libvirt-0.6.2/src/lxc_driver.c
|
||||||
@@ -1291,6 +1291,11 @@ static virDriver lxcDriver = {
|
@@ -1471,6 +1471,11 @@ static virDriver lxcDriver = {
|
||||||
NULL, /* domainEventDeregister */
|
NULL, /* nodeDeviceDettach */
|
||||||
NULL, /* domainMigratePrepare2 */
|
NULL, /* nodeDeviceReAttach */
|
||||||
NULL, /* domainMigrateFinish2 */
|
NULL, /* nodeDeviceReset */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -754,14 +753,14 @@ Index: libvirt-0.5.1/src/lxc_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virStateDriver lxcStateDriver = {
|
static virStateDriver lxcStateDriver = {
|
||||||
Index: libvirt-0.5.1/src/openvz_driver.c
|
Index: libvirt-0.6.2/src/openvz_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/openvz_driver.c
|
--- libvirt-0.6.2.orig/src/openvz_driver.c
|
||||||
+++ libvirt-0.5.1/src/openvz_driver.c
|
+++ libvirt-0.6.2/src/openvz_driver.c
|
||||||
@@ -1146,6 +1146,11 @@ static virDriver openvzDriver = {
|
@@ -1372,6 +1372,11 @@ static virDriver openvzDriver = {
|
||||||
NULL, /* domainEventDeregister */
|
NULL, /* nodeDeviceDettach */
|
||||||
NULL, /* domainMigratePrepare2 */
|
NULL, /* nodeDeviceReAttach */
|
||||||
NULL, /* domainMigrateFinish2 */
|
NULL, /* nodeDeviceReset */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -770,14 +769,14 @@ Index: libvirt-0.5.1/src/openvz_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
int openvzRegister(void) {
|
int openvzRegister(void) {
|
||||||
Index: libvirt-0.5.1/src/qemu_driver.c
|
Index: libvirt-0.6.2/src/qemu_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/qemu_driver.c
|
--- libvirt-0.6.2.orig/src/qemu_driver.c
|
||||||
+++ libvirt-0.5.1/src/qemu_driver.c
|
+++ libvirt-0.6.2/src/qemu_driver.c
|
||||||
@@ -3794,6 +3794,11 @@ static virDriver qemuDriver = {
|
@@ -5131,6 +5131,11 @@ static virDriver qemuDriver = {
|
||||||
qemudDomainEventDeregister, /* domainEventDeregister */
|
qemudNodeDeviceDettach, /* nodeDeviceDettach */
|
||||||
qemudDomainMigratePrepare2, /* domainMigratePrepare2 */
|
qemudNodeDeviceReAttach, /* nodeDeviceReAttach */
|
||||||
qemudDomainMigrateFinish2, /* domainMigrateFinish2 */
|
qemudNodeDeviceReset, /* nodeDeviceReset */
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -786,30 +785,14 @@ Index: libvirt-0.5.1/src/qemu_driver.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
Index: libvirt-0.5.1/src/remote_internal.c
|
Index: libvirt-0.6.2/src/test.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/remote_internal.c
|
--- libvirt-0.6.2.orig/src/test.c
|
||||||
+++ libvirt-0.5.1/src/remote_internal.c
|
+++ libvirt-0.6.2/src/test.c
|
||||||
@@ -5391,6 +5391,11 @@ static virDriver driver = {
|
@@ -3532,6 +3532,11 @@ static virDriver testDriver = {
|
||||||
.domainEventDeregister = remoteDomainEventDeregister,
|
NULL, /* nodeDeviceDettach */
|
||||||
.domainMigratePrepare2 = remoteDomainMigratePrepare2,
|
NULL, /* nodeDeviceReAttach */
|
||||||
.domainMigrateFinish2 = remoteDomainMigrateFinish2,
|
NULL, /* nodeDeviceReset */
|
||||||
+ .domainSnapshotCreate = NULL,
|
|
||||||
+ .domainSnapshotApply = NULL,
|
|
||||||
+ .domainSnapshotDelete = NULL,
|
|
||||||
+ .domainNumOfSnapshots = NULL,
|
|
||||||
+ .domainListSnapshots = NULL,
|
|
||||||
};
|
|
||||||
|
|
||||||
static virNetworkDriver network_driver = {
|
|
||||||
Index: libvirt-0.5.1/src/test.c
|
|
||||||
===================================================================
|
|
||||||
--- libvirt-0.5.1.orig/src/test.c
|
|
||||||
+++ libvirt-0.5.1/src/test.c
|
|
||||||
@@ -2255,6 +2255,11 @@ static virDriver testDriver = {
|
|
||||||
NULL, /* domainEventDeregister */
|
|
||||||
NULL, /* domainMigratePrepare2 */
|
|
||||||
NULL, /* domainMigrateFinish2 */
|
|
||||||
+ NULL, /* domainSnapshotCreate */
|
+ NULL, /* domainSnapshotCreate */
|
||||||
+ NULL, /* domainSnapshotApply */
|
+ NULL, /* domainSnapshotApply */
|
||||||
+ NULL, /* domainSnapshotDelete */
|
+ NULL, /* domainSnapshotDelete */
|
||||||
@ -818,11 +801,11 @@ Index: libvirt-0.5.1/src/test.c
|
|||||||
};
|
};
|
||||||
|
|
||||||
static virNetworkDriver testNetworkDriver = {
|
static virNetworkDriver testNetworkDriver = {
|
||||||
Index: libvirt-0.5.1/docs/libvirt-api.xml
|
Index: libvirt-0.6.2/docs/libvirt-api.xml
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/docs/libvirt-api.xml
|
--- libvirt-0.6.2.orig/docs/libvirt-api.xml
|
||||||
+++ libvirt-0.5.1/docs/libvirt-api.xml
|
+++ libvirt-0.6.2/docs/libvirt-api.xml
|
||||||
@@ -183,6 +183,11 @@
|
@@ -194,6 +194,11 @@
|
||||||
<exports symbol='virEventRegisterImpl' type='function'/>
|
<exports symbol='virEventRegisterImpl' type='function'/>
|
||||||
<exports symbol='virDomainMigrate' type='function'/>
|
<exports symbol='virDomainMigrate' type='function'/>
|
||||||
<exports symbol='virDomainSuspend' type='function'/>
|
<exports symbol='virDomainSuspend' type='function'/>
|
||||||
@ -831,10 +814,10 @@ Index: libvirt-0.5.1/docs/libvirt-api.xml
|
|||||||
+ <exports symbol='virDomainSnapshotDelete' type='function'/>
|
+ <exports symbol='virDomainSnapshotDelete' type='function'/>
|
||||||
+ <exports symbol='virDomainNumOfSnapshots' type='function'/>
|
+ <exports symbol='virDomainNumOfSnapshots' type='function'/>
|
||||||
+ <exports symbol='virDomainListSnapshots' type='function'/>
|
+ <exports symbol='virDomainListSnapshots' type='function'/>
|
||||||
<exports symbol='virNetworkCreate' type='function'/>
|
<exports symbol='virDomainCreateLinux' type='function'/>
|
||||||
<exports symbol='virNodeDeviceGetXMLDesc' type='function'/>
|
<exports symbol='virNodeDeviceGetXMLDesc' type='function'/>
|
||||||
<exports symbol='virEventUpdateHandleFunc' type='function'/>
|
<exports symbol='virEventUpdateHandleFunc' type='function'/>
|
||||||
@@ -1237,6 +1242,36 @@ see note above'/>
|
@@ -1296,6 +1301,36 @@ see note above'/>
|
||||||
<return type='int' info='0 in case of success and -1 in case of failure.'/>
|
<return type='int' info='0 in case of success and -1 in case of failure.'/>
|
||||||
<arg name='domain' type='virDomainPtr' info='a domain object'/>
|
<arg name='domain' type='virDomainPtr' info='a domain object'/>
|
||||||
</function>
|
</function>
|
||||||
@ -871,10 +854,10 @@ Index: libvirt-0.5.1/docs/libvirt-api.xml
|
|||||||
<function name='virDomainUndefine' file='libvirt' module='libvirt'>
|
<function name='virDomainUndefine' file='libvirt' module='libvirt'>
|
||||||
<info>Undefine a domain but does not stop it if it is running</info>
|
<info>Undefine a domain but does not stop it if it is running</info>
|
||||||
<return type='int' info='0 in case of success, -1 in case of error'/>
|
<return type='int' info='0 in case of success, -1 in case of error'/>
|
||||||
Index: libvirt-0.5.1/python/libvirt-py.c
|
Index: libvirt-0.6.2/python/libvirt-py.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/libvirt-py.c
|
--- libvirt-0.6.2.orig/python/libvirt-py.c
|
||||||
+++ libvirt-0.5.1/python/libvirt-py.c
|
+++ libvirt-0.6.2/python/libvirt-py.c
|
||||||
@@ -25,6 +25,25 @@ LIBVIRT_END_ALLOW_THREADS;
|
@@ -25,6 +25,25 @@ LIBVIRT_END_ALLOW_THREADS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -901,7 +884,7 @@ Index: libvirt-0.5.1/python/libvirt-py.c
|
|||||||
libvirt_virStorageVolGetKey(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
libvirt_virStorageVolGetKey(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
||||||
PyObject *py_retval;
|
PyObject *py_retval;
|
||||||
const char * c_retval;
|
const char * c_retval;
|
||||||
@@ -847,6 +866,25 @@ LIBVIRT_END_ALLOW_THREADS;
|
@@ -883,6 +902,25 @@ LIBVIRT_END_ALLOW_THREADS;
|
||||||
}
|
}
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
@ -927,7 +910,7 @@ Index: libvirt-0.5.1/python/libvirt-py.c
|
|||||||
libvirt_virNetworkDefineXML(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
libvirt_virNetworkDefineXML(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
||||||
PyObject *py_retval;
|
PyObject *py_retval;
|
||||||
virNetworkPtr c_retval;
|
virNetworkPtr c_retval;
|
||||||
@@ -882,6 +920,24 @@ LIBVIRT_END_ALLOW_THREADS;
|
@@ -918,6 +956,24 @@ LIBVIRT_END_ALLOW_THREADS;
|
||||||
}
|
}
|
||||||
|
|
||||||
PyObject *
|
PyObject *
|
||||||
@ -952,10 +935,13 @@ Index: libvirt-0.5.1/python/libvirt-py.c
|
|||||||
libvirt_virDomainResume(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
libvirt_virDomainResume(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
||||||
PyObject *py_retval;
|
PyObject *py_retval;
|
||||||
int c_retval;
|
int c_retval;
|
||||||
@@ -900,6 +956,25 @@ LIBVIRT_END_ALLOW_THREADS;
|
@@ -933,6 +989,25 @@ LIBVIRT_BEGIN_ALLOW_THREADS;
|
||||||
}
|
LIBVIRT_END_ALLOW_THREADS;
|
||||||
|
py_retval = libvirt_intWrap((int) c_retval);
|
||||||
PyObject *
|
return(py_retval);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+PyObject *
|
||||||
+libvirt_virDomainSnapshotApply(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
+libvirt_virDomainSnapshotApply(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
||||||
+ PyObject *py_retval;
|
+ PyObject *py_retval;
|
||||||
+ int c_retval;
|
+ int c_retval;
|
||||||
@ -972,16 +958,13 @@ Index: libvirt-0.5.1/python/libvirt-py.c
|
|||||||
+LIBVIRT_END_ALLOW_THREADS;
|
+LIBVIRT_END_ALLOW_THREADS;
|
||||||
+ py_retval = libvirt_intWrap((int) c_retval);
|
+ py_retval = libvirt_intWrap((int) c_retval);
|
||||||
+ return(py_retval);
|
+ return(py_retval);
|
||||||
+}
|
}
|
||||||
+
|
|
||||||
+PyObject *
|
PyObject *
|
||||||
libvirt_virConnectGetHostname(PyObject *self ATTRIBUTE_UNUSED, PyObject *args) {
|
Index: libvirt-0.6.2/python/libvirt-py.h
|
||||||
PyObject *py_retval;
|
|
||||||
char * c_retval;
|
|
||||||
Index: libvirt-0.5.1/python/libvirt-py.h
|
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/libvirt-py.h
|
--- libvirt-0.6.2.orig/python/libvirt-py.h
|
||||||
+++ libvirt-0.5.1/python/libvirt-py.h
|
+++ libvirt-0.6.2/python/libvirt-py.h
|
||||||
@@ -1,6 +1,7 @@
|
@@ -1,6 +1,7 @@
|
||||||
/* Generated */
|
/* Generated */
|
||||||
|
|
||||||
@ -990,11 +973,11 @@ Index: libvirt-0.5.1/python/libvirt-py.h
|
|||||||
PyObject * libvirt_virStorageVolGetKey(PyObject *self, PyObject *args);
|
PyObject * libvirt_virStorageVolGetKey(PyObject *self, PyObject *args);
|
||||||
PyObject * libvirt_virConnectClose(PyObject *self, PyObject *args);
|
PyObject * libvirt_virConnectClose(PyObject *self, PyObject *args);
|
||||||
PyObject * libvirt_virDomainDefineXML(PyObject *self, PyObject *args);
|
PyObject * libvirt_virDomainDefineXML(PyObject *self, PyObject *args);
|
||||||
Index: libvirt-0.5.1/python/libvirt.py
|
Index: libvirt-0.6.2/python/libvirt.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/libvirt.py
|
--- libvirt-0.6.2.orig/python/libvirt.py
|
||||||
+++ libvirt-0.5.1/python/libvirt.py
|
+++ libvirt-0.6.2/python/libvirt.py
|
||||||
@@ -382,6 +382,12 @@ class virDomain:
|
@@ -384,6 +384,12 @@ class virDomain:
|
||||||
ret = libvirtmod.virDomainGetName(self._o)
|
ret = libvirtmod.virDomainGetName(self._o)
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
@ -1007,7 +990,7 @@ Index: libvirt-0.5.1/python/libvirt.py
|
|||||||
def reboot(self, flags):
|
def reboot(self, flags):
|
||||||
"""Reboot a domain, the domain object is still usable there
|
"""Reboot a domain, the domain object is still usable there
|
||||||
after but the domain OS is being stopped for a restart.
|
after but the domain OS is being stopped for a restart.
|
||||||
@@ -456,6 +462,24 @@ class virDomain:
|
@@ -472,6 +478,24 @@ class virDomain:
|
||||||
if ret == -1: raise libvirtError ('virDomainShutdown() failed', dom=self)
|
if ret == -1: raise libvirtError ('virDomainShutdown() failed', dom=self)
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
@ -1032,7 +1015,7 @@ Index: libvirt-0.5.1/python/libvirt.py
|
|||||||
def suspend(self):
|
def suspend(self):
|
||||||
"""Suspends an active domain, the process is frozen without
|
"""Suspends an active domain, the process is frozen without
|
||||||
further access to CPU resources and I/O but the memory used
|
further access to CPU resources and I/O but the memory used
|
||||||
@@ -512,6 +536,12 @@ class virDomain:
|
@@ -528,6 +552,12 @@ class virDomain:
|
||||||
ret = libvirtmod.virDomainInterfaceStats(self._o, path)
|
ret = libvirtmod.virDomainInterfaceStats(self._o, path)
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
@ -1045,10 +1028,10 @@ Index: libvirt-0.5.1/python/libvirt.py
|
|||||||
def pinVcpu(self, vcpu, cpumap):
|
def pinVcpu(self, vcpu, cpumap):
|
||||||
"""Dynamically change the real CPUs which can be allocated to
|
"""Dynamically change the real CPUs which can be allocated to
|
||||||
a virtual CPU. This function requires privileged access to
|
a virtual CPU. This function requires privileged access to
|
||||||
Index: libvirt-0.5.1/python/libvir.c
|
Index: libvirt-0.6.2/python/libvir.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/libvir.c
|
--- libvirt-0.6.2.orig/python/libvir.c
|
||||||
+++ libvirt-0.5.1/python/libvir.c
|
+++ libvirt-0.6.2/python/libvir.c
|
||||||
@@ -1375,6 +1375,35 @@ libvirt_virStoragePoolGetInfo(PyObject *
|
@@ -1375,6 +1375,35 @@ libvirt_virStoragePoolGetInfo(PyObject *
|
||||||
return(py_retval);
|
return(py_retval);
|
||||||
}
|
}
|
||||||
@ -1093,10 +1076,10 @@ Index: libvirt-0.5.1/python/libvir.c
|
|||||||
{(char *) "virConnectListStoragePools", libvirt_virConnectListStoragePools, METH_VARARGS, NULL},
|
{(char *) "virConnectListStoragePools", libvirt_virConnectListStoragePools, METH_VARARGS, NULL},
|
||||||
{(char *) "virConnectListDefinedStoragePools", libvirt_virConnectListDefinedStoragePools, METH_VARARGS, NULL},
|
{(char *) "virConnectListDefinedStoragePools", libvirt_virConnectListDefinedStoragePools, METH_VARARGS, NULL},
|
||||||
{(char *) "virStoragePoolGetAutostart", libvirt_virStoragePoolGetAutostart, METH_VARARGS, NULL},
|
{(char *) "virStoragePoolGetAutostart", libvirt_virStoragePoolGetAutostart, METH_VARARGS, NULL},
|
||||||
Index: libvirt-0.5.1/python/libvirt-python-api.xml
|
Index: libvirt-0.6.2/python/libvirt-python-api.xml
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/libvirt-python-api.xml
|
--- libvirt-0.6.2.orig/python/libvirt-python-api.xml
|
||||||
+++ libvirt-0.5.1/python/libvirt-python-api.xml
|
+++ libvirt-0.6.2/python/libvirt-python-api.xml
|
||||||
@@ -135,6 +135,11 @@
|
@@ -135,6 +135,11 @@
|
||||||
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
|
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
|
||||||
<arg name='params' type='virSchedParameterPtr' info='pointer to scheduler parameter objects'/>
|
<arg name='params' type='virSchedParameterPtr' info='pointer to scheduler parameter objects'/>
|
||||||
@ -1109,10 +1092,10 @@ Index: libvirt-0.5.1/python/libvirt-python-api.xml
|
|||||||
<function name='virConnectListStoragePools' file='python'>
|
<function name='virConnectListStoragePools' file='python'>
|
||||||
<info>list the storage pools, stores the pointers to the names in @names</info>
|
<info>list the storage pools, stores the pointers to the names in @names</info>
|
||||||
<arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/>
|
<arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/>
|
||||||
Index: libvirt-0.5.1/python/generator.py
|
Index: libvirt-0.6.2/python/generator.py
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/python/generator.py
|
--- libvirt-0.6.2.orig/python/generator.py
|
||||||
+++ libvirt-0.5.1/python/generator.py
|
+++ libvirt-0.6.2/python/generator.py
|
||||||
@@ -313,6 +313,7 @@ skip_impl = (
|
@@ -313,6 +313,7 @@ skip_impl = (
|
||||||
'virDomainSetSchedulerParameters',
|
'virDomainSetSchedulerParameters',
|
||||||
'virDomainGetVcpus',
|
'virDomainGetVcpus',
|
||||||
@ -1121,11 +1104,11 @@ Index: libvirt-0.5.1/python/generator.py
|
|||||||
'virStoragePoolGetUUID',
|
'virStoragePoolGetUUID',
|
||||||
'virStoragePoolGetUUIDString',
|
'virStoragePoolGetUUIDString',
|
||||||
'virStoragePoolLookupByUUID',
|
'virStoragePoolLookupByUUID',
|
||||||
Index: libvirt-0.5.1/src/libvirt_sym.version.in
|
Index: libvirt-0.6.2/src/libvirt_public.syms
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/libvirt_sym.version.in
|
--- libvirt-0.6.2.orig/src/libvirt_public.syms
|
||||||
+++ libvirt-0.5.1/src/libvirt_sym.version.in
|
+++ libvirt-0.6.2/src/libvirt_public.syms
|
||||||
@@ -224,6 +224,11 @@ LIBVIRT_0.4.2 {
|
@@ -215,6 +215,11 @@ LIBVIRT_0.4.2 {
|
||||||
LIBVIRT_0.4.5 {
|
LIBVIRT_0.4.5 {
|
||||||
global:
|
global:
|
||||||
virConnectFindStoragePoolSources;
|
virConnectFindStoragePoolSources;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.5.1/src/remote_internal.c
|
Index: libvirt-0.6.2/src/remote_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/remote_internal.c
|
--- libvirt-0.6.2.orig/src/remote_internal.c
|
||||||
+++ libvirt-0.5.1/src/remote_internal.c
|
+++ libvirt-0.6.2/src/remote_internal.c
|
||||||
@@ -674,9 +674,22 @@ doRemoteOpen (virConnectPtr conn,
|
@@ -704,9 +704,22 @@ doRemoteOpen (virConnectPtr conn,
|
||||||
cmd_argv[j++] = strdup ("none");
|
cmd_argv[j++] = strdup ("none");
|
||||||
}
|
}
|
||||||
cmd_argv[j++] = strdup (priv->hostname);
|
cmd_argv[j++] = strdup (priv->hostname);
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: libvirt-0.5.1/src/network_conf.c
|
Index: libvirt-0.6.2/src/network_conf.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/network_conf.c
|
--- libvirt-0.6.2.orig/src/network_conf.c
|
||||||
+++ libvirt-0.5.1/src/network_conf.c
|
+++ libvirt-0.6.2/src/network_conf.c
|
||||||
@@ -752,6 +752,137 @@ error:
|
@@ -768,6 +768,137 @@ error:
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -140,7 +140,7 @@ Index: libvirt-0.5.1/src/network_conf.c
|
|||||||
int virNetworkLoadAllConfigs(virConnectPtr conn,
|
int virNetworkLoadAllConfigs(virConnectPtr conn,
|
||||||
virNetworkObjListPtr nets,
|
virNetworkObjListPtr nets,
|
||||||
const char *configDir,
|
const char *configDir,
|
||||||
@@ -787,6 +918,7 @@ int virNetworkLoadAllConfigs(virConnectP
|
@@ -807,6 +938,7 @@ int virNetworkLoadAllConfigs(virConnectP
|
||||||
|
|
||||||
closedir(dir);
|
closedir(dir);
|
||||||
|
|
||||||
@ -148,25 +148,25 @@ Index: libvirt-0.5.1/src/network_conf.c
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: libvirt-0.5.1/src/network_conf.h
|
Index: libvirt-0.6.2/src/network_conf.h
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/network_conf.h
|
--- libvirt-0.6.2.orig/src/network_conf.h
|
||||||
+++ libvirt-0.5.1/src/network_conf.h
|
+++ libvirt-0.6.2/src/network_conf.h
|
||||||
@@ -86,6 +86,7 @@ struct _virNetworkObj {
|
@@ -89,6 +89,7 @@ struct _virNetworkObj {
|
||||||
unsigned int active : 1;
|
unsigned int active : 1;
|
||||||
unsigned int autostart : 1;
|
unsigned int autostart : 1;
|
||||||
unsigned int persistent : 1;
|
unsigned int persistent : 1;
|
||||||
+ unsigned int readonly : 1;
|
+ unsigned int readonly : 1;
|
||||||
|
|
||||||
char *configFile; /* Persistent config file path */
|
virNetworkDefPtr def; /* The current definition */
|
||||||
char *autostartLink; /* Symlink path for autostart */
|
virNetworkDefPtr newDef; /* New definition to activate at shutdown */
|
||||||
Index: libvirt-0.5.1/src/network_driver.c
|
Index: libvirt-0.6.2/src/network_driver.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/network_driver.c
|
--- libvirt-0.6.2.orig/src/network_driver.c
|
||||||
+++ libvirt-0.5.1/src/network_driver.c
|
+++ libvirt-0.6.2/src/network_driver.c
|
||||||
@@ -763,6 +763,11 @@ static int networkShutdownNetworkDaemon(
|
@@ -914,6 +914,11 @@ static int networkShutdownNetworkDaemon(
|
||||||
if (!virNetworkIsActive(network))
|
unlink(stateFile);
|
||||||
return 0;
|
VIR_FREE(stateFile);
|
||||||
|
|
||||||
+ if (network->readonly) {
|
+ if (network->readonly) {
|
||||||
+ networkLog(NETWORK_WARN, ": Network '%s' is readonly", network->def->name);
|
+ networkLog(NETWORK_WARN, ": Network '%s' is readonly", network->def->name);
|
||||||
@ -176,8 +176,8 @@ Index: libvirt-0.5.1/src/network_driver.c
|
|||||||
if (network->dnsmasqPid > 0)
|
if (network->dnsmasqPid > 0)
|
||||||
kill(network->dnsmasqPid, SIGTERM);
|
kill(network->dnsmasqPid, SIGTERM);
|
||||||
|
|
||||||
@@ -1082,6 +1087,12 @@ static int networkSetAutostart(virNetwor
|
@@ -1360,6 +1365,12 @@ static int networkSetAutostart(virNetwor
|
||||||
return -1;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
|
|
||||||
+ if (network->readonly) {
|
+ if (network->readonly) {
|
||||||
@ -188,4 +188,4 @@ Index: libvirt-0.5.1/src/network_driver.c
|
|||||||
+
|
+
|
||||||
autostart = (autostart != 0);
|
autostart = (autostart != 0);
|
||||||
|
|
||||||
if (network->autostart == autostart)
|
if (network->autostart != autostart) {
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
Index: libvirt-0.5.1/src/xend_internal.c
|
Index: libvirt-0.6.2/src/xend_internal.c
|
||||||
===================================================================
|
===================================================================
|
||||||
--- libvirt-0.5.1.orig/src/xend_internal.c
|
--- libvirt-0.6.2.orig/src/xend_internal.c
|
||||||
+++ libvirt-0.5.1/src/xend_internal.c
|
+++ libvirt-0.6.2/src/xend_internal.c
|
||||||
@@ -5021,7 +5021,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
|
@@ -5262,7 +5262,10 @@ xenDaemonFormatSxprDisk(virConnectPtr co
|
||||||
def->device == VIR_DOMAIN_DISK_DEVICE_CDROM ?
|
} else if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM) {
|
||||||
"cdrom" : "disk");
|
virBufferVSprintf(buf, "(dev '%s:cdrom')", def->dst);
|
||||||
} else {
|
} else {
|
||||||
- virBufferVSprintf(buf, "(dev '%s')", def->dst);
|
- virBufferVSprintf(buf, "(dev '%s')", def->dst);
|
||||||
+ if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM)
|
+ if (def->device == VIR_DOMAIN_DISK_DEVICE_CDROM)
|
||||||
|
Loading…
Reference in New Issue
Block a user