Compare commits

..

18 Commits

Author SHA1 Message Date
Daniel P. Berrange 0d2e066a49 Fix libvirtd --timeout usage
Fix RPC call problems and QEMU startup handling (rhbz #484414)
Fix unowned directories (rhbz #483442)
2009-02-06 20:01:02 +00:00
Daniel Veillard e7980eb45c Upstream release of 0.6.0, Daniel 2009-01-31 10:16:17 +00:00
Daniel Veillard 11000f2289 fix missing read-only access checks, fixes CVE-2008-5086
daniel
2008-12-17 16:39:37 +00:00
Daniel Veillard c1031efec2 fixing #460510 2008-12-12 07:39:23 +00:00
Daniel Veillard 8d7711c12b Upstream 0.5.1 release, Daniel 2008-12-05 05:44:19 +00:00
Daniel Veillard 357c713f67 Upstream release of 0.5.0, Daniel 2008-11-26 09:14:37 +00:00
Daniel Veillard 387160a388 - a subtle bug in python submakefile broke the 0.4.6-1.fc9 build #463733
daniel
2008-09-24 13:29:30 +00:00
Daniel Veillard a2e8e9c344 update to 0.4.6 to fix a couple of bugs, Daniel 2008-09-24 07:36:24 +00:00
Daniel Veillard fd11e29ae7 fixing a segfault if emulator is missing, Daniel 2008-09-09 15:25:51 +00:00
Daniel Veillard 01dc7c381d Upstream release of 0.4.5, Daniel 2008-09-09 14:32:15 +00:00
Daniel P. Berrange c39f10c1a1 Fix CDROM boot for KVM guests (rhbz #452355) 2008-07-08 13:12:51 +00:00
Daniel Veillard 00e10af084 Upstream release of 0.4.4, Daniel 2008-06-25 09:10:04 +00:00
Daniel Veillard 782e5b11af upstream release 0.4.3, Daniel 2008-06-12 18:07:49 +00:00
Mark McLoughlin a6a9de02cc Ensure PolicyKit is enabled (#446616) 2008-06-04 17:48:03 +00:00
Mark McLoughlin 0646e65ec4 * Wed Jun 4 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-4.fc9
- Disable lokkit support again (#449996, #447633)
2008-06-04 17:43:09 +00:00
Daniel P. Berrange 13203d395a Added /var/lib/libvirt/boot for kernel/initrd images under SElinux policy 2008-05-09 16:57:44 +00:00
Mark McLoughlin 562d8c791b * Mon Apr 28 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-2.fc9
- Enable lokkit support (#443796)
2008-04-28 09:21:28 +00:00
Jesse Keating fb9ca2f0ad Initialize branch F-9 for libvirt 2008-04-21 03:47:16 +00:00
7 changed files with 42 additions and 256 deletions
+1 -2
View File
@@ -3,5 +3,4 @@
i686
x86_64
libvirt-*.tar.gz
libvirt-0.6.0.tar.gz
libvirt-0.6.1.tar.gz
libvirt-0.4.2.tar.gz
+1
View File
@@ -0,0 +1 @@
F-9
-21
View File
@@ -1,21 +0,0 @@
diff -rup libvirt-0.6.0.orig/src/remote_internal.c libvirt-0.6.0.new/src/remote_internal.c
--- libvirt-0.6.0.orig/src/remote_internal.c 2009-02-18 10:56:34.000000000 +0000
+++ libvirt-0.6.0.new/src/remote_internal.c 2009-02-18 13:35:26.000000000 +0000
@@ -654,12 +654,13 @@ doRemoteOpen (virConnectPtr conn,
*/
if (errno == ECONNREFUSED &&
flags & VIR_DRV_OPEN_REMOTE_AUTOSTART &&
- trials < 5) {
+ trials < 20) {
close(priv->sock);
priv->sock = -1;
- if (remoteForkDaemon(conn) == 0) {
+ if (trials > 0 ||
+ remoteForkDaemon(conn) == 0) {
trials++;
- usleep(5000 * trials * trials);
+ usleep(1000 * 100 * trials);
goto autostart_retry;
}
}
Only in libvirt-0.6.0.new/src: remote_internal.c~
-44
View File
@@ -1,44 +0,0 @@
diff -rup libvirt-0.6.0.orig/qemud/qemud.c libvirt-0.6.0.new/qemud/qemud.c
--- libvirt-0.6.0.orig/qemud/qemud.c 2009-02-18 10:56:34.000000000 +0000
+++ libvirt-0.6.0.new/qemud/qemud.c 2009-02-18 12:52:18.000000000 +0000
@@ -860,6 +860,10 @@ static struct qemud_server *qemudNetwork
if (auth_unix_rw == REMOTE_AUTH_POLKIT ||
auth_unix_ro == REMOTE_AUTH_POLKIT) {
DBusError derr;
+
+ dbus_connection_set_change_sigpipe(FALSE);
+ dbus_threads_init_default();
+
dbus_error_init(&derr);
server->sysbus = dbus_bus_get(DBUS_BUS_SYSTEM, &derr);
if (!(server->sysbus)) {
@@ -868,6 +872,7 @@ static struct qemud_server *qemudNetwork
dbus_error_free(&derr);
goto cleanup;
}
+ dbus_connection_set_exit_on_disconnect(server->sysbus, FALSE);
}
#endif
diff -rup libvirt-0.6.0.orig/src/node_device_hal.c libvirt-0.6.0.new/src/node_device_hal.c
--- libvirt-0.6.0.orig/src/node_device_hal.c 2009-01-16 12:44:22.000000000 +0000
+++ libvirt-0.6.0.new/src/node_device_hal.c 2009-02-18 12:52:48.000000000 +0000
@@ -685,6 +685,9 @@ static int halDeviceMonitorStartup(void)
nodeDeviceLock(driverState);
/* Allocate and initialize a new HAL context */
+ dbus_connection_set_change_sigpipe(FALSE);
+ dbus_threads_init_default();
+
dbus_error_init(&err);
hal_ctx = libhal_ctx_new();
if (hal_ctx == NULL) {
@@ -696,6 +699,8 @@ static int halDeviceMonitorStartup(void)
fprintf(stderr, "%s: dbus_bus_get failed\n", __FUNCTION__);
goto failure;
}
+ dbus_connection_set_exit_on_disconnect(dbus_conn, FALSE);
+
if (!libhal_ctx_set_dbus_connection(hal_ctx, dbus_conn)) {
fprintf(stderr, "%s: libhal_ctx_set_dbus_connection failed\n",
__FUNCTION__);
-109
View File
@@ -1,109 +0,0 @@
diff -rup libvirt-0.6.0.orig/src/qemu_driver.c libvirt-0.6.0.new/src/qemu_driver.c
--- libvirt-0.6.0.orig/src/qemu_driver.c 2009-01-31 09:04:18.000000000 +0000
+++ libvirt-0.6.0.new/src/qemu_driver.c 2009-02-18 11:15:37.000000000 +0000
@@ -633,6 +633,7 @@ qemudReadMonitorOutput(virConnectPtr con
{
int got = 0;
buf[0] = '\0';
+ timeout *= 1000; /* poll wants milli seconds */
/* Consume & discard the initial greeting */
while (got < (buflen-1)) {
@@ -694,6 +695,56 @@ qemudReadMonitorOutput(virConnectPtr con
}
+
+/*
+ * Returns -1 for error, 0 on success
+ */
+static int
+qemudReadLogOutput(virConnectPtr conn,
+ virDomainObjPtr vm,
+ int fd,
+ char *buf,
+ int buflen,
+ qemudHandlerMonitorOutput func,
+ const char *what,
+ int timeout)
+{
+ int got = 0;
+ int ret;
+ int retries = timeout*10;
+ buf[0] = '\0';
+
+ while (retries) {
+ while((ret = read(fd, buf+got, buflen-got-1)) > 0) {
+ got += ret;
+ buf[got] = '\0';
+ if ((buflen-got-1) == 0) {
+ qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
+ _("Out of space while reading %s log output"), what);
+ return -1;
+ }
+ }
+
+ if (ret < 0 && errno != EINTR) {
+ virReportSystemError(conn, errno,
+ _("Failure while reading %s log output"),
+ what);
+ return -1;
+ }
+
+ ret = func(conn, vm, buf, fd);
+ if (ret <= 0)
+ return ret;
+
+ usleep(100*1000);
+ retries--;
+ }
+ if (retries == 0)
+ qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
+ _("Timed out while reading %s log output"), what);
+ return -1;
+}
+
static int
qemudCheckMonitorPrompt(virConnectPtr conn ATTRIBUTE_UNUSED,
virDomainObjPtr vm,
@@ -738,7 +789,7 @@ static int qemudOpenMonitor(virConnectPt
vm, monfd,
buf, sizeof(buf),
qemudCheckMonitorPrompt,
- "monitor", 10000) <= 0)
+ "monitor", 10) <= 0)
ret = -1;
else
ret = 0;
@@ -770,6 +821,7 @@ static int qemudOpenMonitor(virConnectPt
return ret;
}
+/* Returns -1 for error, 0 success, 1 continue reading */
static int qemudExtractMonitorPath(virConnectPtr conn,
const char *haystack,
size_t *offset,
@@ -873,19 +925,16 @@ static int qemudWaitForMonitor(virConnec
< 0)
return -1;
- ret = qemudReadMonitorOutput(conn, vm, logfd, buf, sizeof(buf),
- qemudFindCharDevicePTYs,
- "console", 3000);
+ ret = qemudReadLogOutput(conn, vm, logfd, buf, sizeof(buf),
+ qemudFindCharDevicePTYs,
+ "console", 3);
if (close(logfd) < 0)
qemudLog(QEMUD_WARN, _("Unable to close logfile: %s\n"),
strerror(errno));
- if (ret == 1) /* Success */
+ if (ret == 0) /* success */
return 0;
- if (ret == -1)
- return -1;
-
/* Unexpected end of file - inform user of QEMU log data */
qemudReportError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR,
_("unable to start guest: %s"), buf);
+39 -79
View File
@@ -14,7 +14,7 @@
%define with_network 0%{!?_without_network:1}
# Xen is available only on i386 x86_64 ia64
%ifnarch i386 i586 i686 x86_64 ia64
%ifnarch i386 i686 x86_64 ia64
%define with_xen 0
%endif
@@ -46,14 +46,17 @@
Summary: Library providing a simple API virtualization
Name: libvirt
Version: 0.6.1
Release: 1%{?dist}%{?extra_release}
Version: 0.6.0
Release: 2%{?dist}%{?extra_release}
License: LGPLv2+
Group: Development/Libraries
Source: libvirt-%{version}.tar.gz
Patch1: %{name}-%{version}-timeout.patch
Patch2: %{name}-%{version}-rpccall.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
URL: http://libvirt.org/
BuildRequires: python python-devel
Requires: libxml2
Requires: readline
Requires: ncurses
Requires: dnsmasq
@@ -137,8 +140,7 @@ BuildRequires: iscsi-initiator-utils
BuildRequires: parted-devel
# For QEMU/LXC numa info
BuildRequires: numactl-devel
Obsoletes: libvir <= 0.2
Provides: libvir = %{version}-%{release}
Obsoletes: libvir
# Fedora build root suckage
BuildRequires: gawk
@@ -150,13 +152,12 @@ of recent versions of Linux (and other OSes).
%package devel
Summary: Libraries, includes, etc. to compile with the libvirt library
Group: Development/Libraries
Requires: libvirt = %{version}-%{release}
Requires: libvirt = %{version}
Requires: pkgconfig
%if %{with_xen}
Requires: xen-devel
%endif
Obsoletes: libvir-devel <= 0.2
Provides: libvir-devel = %{version}-%{release}
Obsoletes: libvir-devel
%description devel
Includes and documentations for the C library providing an API to use
@@ -166,9 +167,8 @@ the virtualization capabilities of recent versions of Linux (and other OSes).
%package python
Summary: Python bindings for the libvirt library
Group: Development/Libraries
Requires: libvirt = %{version}-%{release}
Obsoletes: libvir-python <= 0.2
Provides: libvir-python = %{version}-%{release}
Requires: libvirt = %{version}
Obsoletes: libvir-python
%description python
The libvirt-python package contains a module that permits applications
@@ -179,9 +179,8 @@ of recent versions of Linux (and other OSes).
%prep
%setup -q
mv NEWS NEWS.old
iconv -f ISO-8859-1 -t UTF-8 < NEWS.old > NEWS
%patch1 -p1
%patch2 -p1
%build
%if ! %{with_xen}
@@ -250,14 +249,11 @@ iconv -f ISO-8859-1 -t UTF-8 < NEWS.old > NEWS
make %{?_smp_mflags}
%install
rm -rf %{buildroot}
rm -fr %{buildroot}
%makeinstall
(cd docs/examples ; make clean ; rm -rf .deps Makefile Makefile.in)
(cd docs/examples/python ; rm -rf .deps Makefile Makefile.in)
(cd examples/hellolibvirt ; make clean ; rm -rf .deps .libs Makefile Makefile.in)
(cd examples/domain-events/events-c ; make clean ;rm -rf .deps .libs Makefile Makefile.in)
(cd docs/examples/python ; rm -f Makefile Makefile.in)
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la
@@ -295,10 +291,6 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/libvirt-python-%{version}
rm -rf $RPM_BUILD_ROOT%{_sysconfdir}/libvirt/qemu.conf
%endif
%if %{with_libvirtd}
chmod 0644 $RPM_BUILD_ROOT%{_sysconfdir}/sysconfig/libvirtd
%endif
%clean
rm -fr %{buildroot}
@@ -332,7 +324,8 @@ if [ $1 = 0 ]; then
fi
%endif
%postun -p /sbin/ldconfig
%postun
/sbin/ldconfig
%files -f %{name}.lang
%defattr(-, root, root)
@@ -455,7 +448,6 @@ fi
%doc docs/*.html docs/html docs/*.gif
%doc docs/examples
%doc docs/libvirt-api.xml
%doc examples
%if %{with_python}
%files python
@@ -471,32 +463,12 @@ fi
%endif
%changelog
* Wed Mar 4 2009 Daniel Veillard <veillard@redhat.com> - 0.6.1-1.fc11
- upstream release 0.6.1
- support for node device detach reattach and reset
- sVirt mandatory access control support
- many bug fixes and small improvements
* Mon Mar 2 2009 Daniel Veillard <veillard@redhat.com> - 0.6.0-6.fc11
- make sure Xen is handled in i586 new default 32bits x86 packages
* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.6.0-5.fc11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
* Wed Feb 18 2009 Daniel P. Berrange <berrange@redhat.com> - 0.6.0-4.fc11
- Fix QEMU startup timeout/race (rhbz #484649)
- Setup DBus threading. Don't allow dbus to call _exit / change SIGPIPE (rhbz #484553)
- Fix timeout when autostarting session daemon
* Wed Feb 11 2009 Richard W.M. Jones <rjones@redhat.com> - 0.6.0-3.fc11
- Multiple fixes to remove rpmlint warnings/errors (rhbz #226055)
* Fri Feb 6 2009 Daniel P. Berrange <berrange@redhat.com> - 0.6.0-2.fc11
* Fri Feb 6 2009 Daniel P. Berrange <berrange@redhat.com> - 0.6.0-2.fc9
- Fix libvirtd --timeout usage
- Fix RPC call problems and QEMU startup handling (rhbz #484414)
- Fix unowned directories (rhbz #483442)
* Sat Jan 31 2009 Daniel Veillard <veillard@redhat.com> - 0.6.0-1.fc11
* Sat Jan 31 2009 Daniel Veillard <veillard@redhat.com> - 0.6.0-1.fc9
- upstream release 0.6.0
- thread safety of API
- allow QEmu/KVM domains to survive daemon restart
@@ -505,72 +477,60 @@ fi
- support of storage cache control options for QEmu/KVM
- a lot of bug fixes
* Wed Dec 17 2008 Daniel Veillard <veillard@redhat.com> - 0.5.1-2.fc11
* Wed Dec 17 2008 Daniel Veillard <veillard@redhat.com> - 0.5.1-2.fc9
- fix missing read-only access checks, fixes CVE-2008-5086
* Fri Dec 5 2008 Daniel Veillard <veillard@redhat.com> - 0.5.1-1.fc11
* Fri Dec 5 2008 Daniel Veillard <veillard@redhat.com> - 0.5.1-1.fc9
- upstream release 0.5.1
- mostly bugfixes e.g #473071
- some driver improvments
* Sat Nov 29 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 0.5.0-2
- Rebuild for Python 2.6
* Wed Nov 26 2008 Daniel Veillard <veillard@redhat.com> - 0.5.0-1.fc11
* Wed Nov 26 2008 Daniel Veillard <veillard@redhat.com> - 0.5.0-1.fc9
- upstream release 0.5.0
- domain lifecycle event support
- node device enumeration
- KVM/QEmu migration support
- improved LXC support
- SDL display configuration
- User Mode Linux driver (Daniel Berrange)
- User Mode Linux driver
* Wed Sep 24 2008 Daniel Veillard <veillard@redhat.com> - 0.4.6-3.fc10
- apply the python makefile patch for #463733
* Wed Sep 24 2008 Daniel Veillard <veillard@redhat.com> - 0.4.6-2.fc9
- a subtle bug in python submakefile broke the 0.4.6-1.fc9 build #463733
* Wed Sep 24 2008 Daniel Veillard <veillard@redhat.com> - 0.4.6-2.fc10
* Wed Sep 24 2008 Daniel Veillard <veillard@redhat.com> - 0.4.6-1.fc9
- upstream release 0.4.6
- fixes some problems with 0.4.5
- fixes a couple of serious bugs in the previous release
* Tue Sep 9 2008 Daniel Veillard <veillard@redhat.com> - 0.4.5-2.fc10
* Tue Sep 9 2008 Daniel Veillard <veillard@redhat.com> - 0.4.5-2.fc9
- fix a crash if a QEmu/KVM domain is defined without an emulator path
* Mon Sep 8 2008 Daniel Veillard <veillard@redhat.com> - 0.4.5-1.fc10
* Mon Sep 8 2008 Daniel Veillard <veillard@redhat.com> - 0.4.5-1.fc9
- upstream release 0.4.5
- a lot of bug fixes
- major updates to QEmu/KVM and Linux containers drivers
- support for OpenVZ if installed
* Thu Aug 7 2008 Tom "spot" Callaway <tcallawa@redhat.com> - 0.4.4-3.fc10
- fix license tag
* Tue Jul 8 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.4-2.fc10
* Tue Jul 8 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.4-2.fc9
- Fix booting of CDROM images with KVM (rhbz #452355)
* Wed Jun 25 2008 Daniel Veillard <veillard@redhat.com> - 0.4.4-1.fc10
- upstream release 0.4.4
- fix a few bugs in previous release
* Thu Jun 25 2008 Daniel Veillard <veillard@redhat.com> - 0.4.4-1.fc9
- upstream release of 0.4.4
- fixes a few bug in previous release
* Thu Jun 12 2008 Daniel Veillard <veillard@redhat.com> - 0.4.3-1.fc10
* Thu Jun 12 2008 Daniel Veillard <veillard@redhat.com> - 0.4.3-1.fc9
- upstream release 0.4.3
- many bug fixes
- many small improvements
- serious xenner fixes
* Wed Jun 4 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-6.fc10
* Wed Jun 4 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-4.fc9
- Disable lokkit support again (#449996, #447633)
- Ensure %-fedora is evaluated correctly
- Ensure PolicyKit is enabled (#446616)
* Thu May 15 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.2-5.fc10
- Rebuild with policy enabled (rhbz #446616)
* Fri May 9 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.2-4.fc10
* Fri May 9 2008 Daniel P. Berrange <berrange@redhat.com> - 0.4.2-3.fc9
- Added directory for initrd/kernel images for SELinux policy
* Mon Apr 28 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-3.fc10
- Simplify the way arch conditionals are handled
* Mon Apr 28 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-2.fc10
* Mon Apr 28 2008 Mark McLoughlin <markmc@redhat.com> - 0.4.2-2.fc9
- Enable lokkit support (#443796)
* Tue Apr 8 2008 Daniel Veillard <veillard@redhat.com> - 0.4.2-1.fc9
@@ -744,7 +704,7 @@ fi
- it's pkgconfig not pgkconfig !
* Mon Nov 6 2006 Daniel Veillard <veillard@redhat.com> 0.1.8-2
- fixing spec file, added %-dist, -devel requires pkgconfig and xen-devel
- fixing spec file, added %dist, -devel requires pkgconfig and xen-devel
- Resolves: rhbz#202320
* Mon Oct 16 2006 Daniel Veillard <veillard@redhat.com> 0.1.8-1
+1 -1
View File
@@ -1 +1 @@
3154ea9d4a0778497dfdf58cb98127c0 libvirt-0.6.1.tar.gz
8e0120d5452b37179f682031bf0895ea libvirt-0.6.0.tar.gz