1. 18 5月, 2013 1 次提交
  2. 15 5月, 2013 1 次提交
  3. 07 5月, 2013 1 次提交
  4. 03 5月, 2013 1 次提交
  5. 02 5月, 2013 3 次提交
    • M
      qemu: Generate agent socket path if missing · 297c99a5
      Michal Privoznik 提交于
      It's not desired to force users imagine path for a socket they
      are not even supposed to connect to. On the other hand, we
      already have a release where the qemu agent socket path is
      exposed to XML, so we cannot silently drop it from there.
      The new path is generated in form:
      
      $LOCALSTATEDIR/lib/libvirt/qemu/channel/target/$domain.$name
      
      for qemu system mode, and
      
      $XDG_CONFIG_HOME/qemu/lib/channel/target/$domain.$name
      
      for qemu session mode.
      297c99a5
    • D
      Release of libvirt-1.0.5 · 8e20a23f
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: updated for the release
      * po/*.po*: pulled and merged a number of new localization updates
      8e20a23f
    • E
      spec: collect all BuildRequires into one area · e2472e69
      Eric Blake 提交于
      Conditional BuildRequires: should be at the top level, rather
      than appearing in conditional sub-package sections.  This
      appears to be the only offender.
      
      * libvirt.spec.in (BuildRequires): Move libblkid-devel into
      correct area.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      e2472e69
  6. 08 4月, 2013 1 次提交
    • J
      spec: Require pod2man when running autoreconf · 6f1b9c8d
      Jiri Denemark 提交于
      Since commit b8a32e0e, all man pages
      depend on configure.ac so that they are properly regenerated whenever
      libvirt version changes. Thus libvirt.spec needs to have a build
      dependency on pod2man when %{enable_autotools} is set.
      6f1b9c8d
  7. 02 4月, 2013 1 次提交
  8. 01 4月, 2013 1 次提交
    • D
      Release of libvirt-1.0.4 · 89d73020
      Daniel Veillard 提交于
      - configure.ac docs/news.html.in libvirt.spec.in: updates for the release
      - po/*.po*: fetch translation updates from Transifex and regenerate
      89d73020
  9. 05 3月, 2013 1 次提交
    • D
      Release of libvirt 1.0.3 · be1c364d
      Daniel Veillard 提交于
      - configure.ac docs/news.html.in libvirt.spec.in: update for the release
      - po/*.po*: merged in transifex updates for fr,hi,pl,ja,uk,it and
        regenerated
      be1c364d
  10. 05 2月, 2013 1 次提交
    • J
      spec: Fix minor changelog issues · 53657a0a
      Jiri Denemark 提交于
      When a changelog entry references an RPM macro, % needs to be escaped so
      that it does not appear expanded in package changelog.
      
      Fri Mar  4 2009 is incorrect since Mar 4 was Wednesday. Since
      libvirt-0.6.1 was released on Mar 4 2009, we should change Fri to Wed.
      53657a0a
  11. 31 1月, 2013 1 次提交
    • J
      spec: Avoid using makeinstall relic · d45066a5
      Jiri Denemark 提交于
      The macro was made to help installing broken packages that did not use
      DESTDIR correctly by overriding individual path variables (prefix,
      sysconfdir, ...). Newer rpm provides fixed make_install macro that calls
      make install with just the correct DESTDIR, however it is not available
      everywhere (e.g., RHEL 5 does not have it). On the other hand the
      make_install macro is simple and straightforward enough for us to use
      its expansion directly.
      d45066a5
  12. 30 1月, 2013 1 次提交
    • D
      Release of libvirt-1.0.2 · 4a824cdb
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the release
      * po/*.po*: updated localizations
      4a824cdb
  13. 22 1月, 2013 1 次提交
    • E
      spec: indent %if to make it easier to see conditions · c8f79c9b
      Eric Blake 提交于
      Nested conditionals are hard to read if they are not indented.
      We can't add arbitrary whitespace to everything in spec files,
      but we CAN add spaces before %if and %define.  Use this trick,
      plus a fancy sed script that rewrites a spec file into a C
      file, so we can use cppi to keep our spec file nice.
      
      For reference, the sed script converts code like:
      
      |# RHEL-5 builds are client-only for s390, ppc
      |%if 0%{?rhel} == 5
      |    %ifnarch %{ix86} x86_64 ia64
      |        %define client_only        1
      |    %endif
      |%endif
      
      into the following for cppi:
      
      |// # RHEL-5 builds are client-only for s390, ppc
      |#if a // 0%{?rhel} == 5
      |# if a // %{ix86} x86_64 ia64
      |#  define client_only        1
      |# endif
      |#endif
      
      and errors from 'make syntax-check' look like:
      spec_indentation
      cppi: mingw-libvirt.spec.in: line 130: not properly indented
      maint.mk: incorrect preprocessor indentation
      
      * libvirt.spec.in: Add some indentation to make it easier to follow
      various conditionals.
      * mingw-libvirt-spec.in: Likewise.
      * cfg.mk (sc_spec_indentation): New syntax check to enforce it.
      c8f79c9b
  14. 19 1月, 2013 1 次提交
  15. 14 1月, 2013 3 次提交
    • D
      Introduce an LXC specific public API & library · 3d1596b0
      Daniel P. Berrange 提交于
      This patch introduces support for LXC specific public APIs. In
      common with what was done for QEMU, this creates a libvirt_lxc.so
      library and libvirt/libvirt-lxc.h header file.
      
      The actual APIs are
      
        int virDomainLxcOpenNamespace(virDomainPtr domain,
                                      int **fdlist,
                                      unsigned int flags);
      
        int virDomainLxcEnterNamespace(virDomainPtr domain,
                                       unsigned int nfdlist,
                                       int *fdlist,
                                       unsigned int *noldfdlist,
                                       int **oldfdlist,
                                       unsigned int flags);
      
      which provide a way to use the setns() system call to move the
      calling process into the container's namespace. It is not
      practical to write in a generically applicable manner. The
      nearest that we could get to such an API would be an API which
      allows to pass a command + argv to be executed inside a
      container. Even if we had such a generic API, this LXC specific
      API is still useful, because it allows the caller to maintain
      the current process context, in particular any I/O streams they
      have open.
      
      NB the virDomainLxcEnterNamespace() API is special in that it
      runs client side, so does not involve the internal driver API.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      3d1596b0
    • D
      Add a test suite for validating SELinux labelling · 907a39e7
      Daniel P. Berrange 提交于
      There are many aspects of the guest XML which result in the
      SELinux driver applying file labelling. With the increasing
      configuration options it is desirable to test this behaviour.
      It is not possible to assume that the test suite has the
      ability to set SELinux labels. Most filesystems though will
      support extended attributes. Thus for the purpose of testing,
      it is possible to extend the existing LD_PRELOAD hack to
      override setfilecon() and getfilecon() to simply use the
      'user.libvirt.selinux' attribute for the sake of testing.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      907a39e7
    • D
      Convert ssh2 check to use LIBVIRT_CHECK_PKG · 0eec6972
      Daniel P. Berrange 提交于
      This converts the libssh2 configure check to use LIBVIRT_CHECK_PKG.
      Previously it would check version 1.0 and 1.3, but this simplifies
      things to just require version 1.3
      0eec6972
  16. 11 1月, 2013 2 次提交
    • Y
      build: require avahi instead of avahi-libs on rhel5. · 8a883b0c
      Yufang Zhang 提交于
      On rhel5, libs of avahi are packaged into avahi instead of avahi-libs.
      Actually, there is no avahi-libs package shipped with rhel5. This patch
      fixes this by requiring avahi on rhel5.
      8a883b0c
    • E
      spec: remove redundant %if · 86007cba
      Eric Blake 提交于
      The daemon-driver-{qemu,lxc} packages are only built if
      %{with_driver_modules} is specified, so they do not need to
      further test this condition.  Likewise, the daemon package
      is only built if %{with_libvirtd} is specified, so it does
      not need to further test this condition.
      
      * libvirt.spec.in (daemon-driver-qemu, daemon-driver-lxc):
      Unconditionally require libvirt-daemon-driver-network.
      (daemon): Unconditionally include lock-driver files.
      86007cba
  17. 10 1月, 2013 1 次提交
    • Y
      build: move file deleting action from %files list to %install · daef7c9e
      Yufang Zhang 提交于
      When building libvirt rpms on rhel5, I got the following error:
      
          File must begin with "/": rm
          File must begin with "/": -f
          File must begin with "/": $RPM_BUILD_ROOT/etc/sysctl.d/libvirtd
          Installed (but unpackaged) file(s) found:
         /etc/sysctl.d/libvirtd
      
      It is triggerd by the %files list of libvirt daemon:
      
          %if 0%{?fedora} >= 14 || 0%{?rhel} >= 6
          %config(noreplace) %{_prefix}/lib/sysctl.d/libvirtd.conf
          %else
          rm -f $RPM_BUILD_ROOT%{_prefix}/lib/sysctl.d/libvirtd.conf
          %endif
      
      After checking document of rpm spec file, I think it would be better
      to move the file deleting line from %files list to %install script.
      
      Bug introduced in commit a1fd56cb.
      daef7c9e
  18. 09 1月, 2013 1 次提交
  19. 07 1月, 2013 1 次提交
    • E
      build: install libvirt sysctl file correctly · a1fd56cb
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=887017 reports that
      even though libvirt attempts to set fs.aio-max-nr via sysctl,
      the file was installed with the wrong name and gets ignored by
      sysctl.  Furthermore, 'man systcl.d' recommends that packages
      install into hard-coded /usr/lib/sysctl.d (even when libdir is
      /usr/lib64), so that sysadmins can use /etc/sysctl.d for overrides.
      
      * daemon/Makefile.am (install-sysctl, uninstall-sysctl): Use
      correct location.
      * libvirt.spec.in (network_files): Reflect this.
      a1fd56cb
  20. 19 12月, 2012 1 次提交
    • J
      spec: Do not install *.py[co] in python examples · 5cce9d28
      Jiri Denemark 提交于
      Unfortunately, rpm is stupid enough to bytycompile python scripts even
      though they are located in /usr/share/doc/libvirt-python-*/examples and
      it does so after %install phase is finished. Thus there's no way we
      could remove those files from BUILDROOT. As a workaround, we may safely
      remove the examples subdirectory completely without losing anything. The
      python scripts that were installed there are also copied directly into
      /usr/share/doc/libvirt-python-*/ by
      
          %doc python/tests/*.py
      
      rule. And yes, the files are actually tests, not examples.
      5cce9d28
  21. 18 12月, 2012 1 次提交
  22. 14 12月, 2012 1 次提交
  23. 13 12月, 2012 3 次提交
    • D
      Add support for re-exec() of virtlockd upon SIGUSR1 · f234dc93
      Daniel P. Berrange 提交于
      The virtlockd daemon maintains file locks on behalf of libvirtd
      and any VMs it is running. These file locks must be held for as
      long as any VM is running. If virtlockd itself ever quits, then
      it is expected that a node would be fenced/rebooted. Thus to
      allow for software upgrads on live systemd, virtlockd needs the
      ability to re-exec() itself.
      
      Upon receipt of SIGUSR1, virtlockd will save its current live
      state out to a file /var/run/virtlockd-restart-exec.json
      It then re-exec()'s itself with exactly the same argv as it
      originally had, and loads the state file, reconstructing any
      objects as appropriate.
      
      The state file contains information about all locks held and
      all network services and clients currently active. An example
      state document is
      
       {
          "server": {
              "min_workers": 1,
              "max_workers": 20,
              "priority_workers": 0,
              "max_clients": 20,
              "keepaliveInterval": 4294967295,
              "keepaliveCount": 0,
              "keepaliveRequired": false,
              "services": [
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_client_max": 1,
                      "socks": [
                          {
                              "fd": 6,
                              "errfd": -1,
                              "pid": 0,
                              "isClient": false
                          }
                      ]
                  }
              ],
              "clients": [
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_max": 1,
                      "sock": {
                          "fd": 9,
                          "errfd": -1,
                          "pid": 0,
                          "isClient": true
                      },
                      "privateData": {
                          "restricted": true,
                          "ownerPid": 1722,
                          "ownerId": 6,
                          "ownerName": "f18x86_64",
                          "ownerUUID": "97586ba9-df27-9459-c806-f016c8bbd224"
                      }
                  },
                  {
                      "auth": 0,
                      "readonly": false,
                      "nrequests_max": 1,
                      "sock": {
                          "fd": 10,
                          "errfd": -1,
                          "pid": 0,
                          "isClient": true
                      },
                      "privateData": {
                          "restricted": true,
                          "ownerPid": 1784,
                          "ownerId": 7,
                          "ownerName": "f16x86_64",
                          "ownerUUID": "7b8e5e42-b875-61e9-b981-91ad8fa46979"
                      }
                  }
              ]
          },
          "defaultLockspace": {
              "resources": [
                  {
                      "name": "/var/lib/libvirt/images/f16x86_64.raw",
                      "path": "/var/lib/libvirt/images/f16x86_64.raw",
                      "fd": 14,
                      "lockHeld": true,
                      "flags": 0,
                      "owners": [
                          1784
                      ]
                  },
                  {
                      "name": "/var/lib/libvirt/images/shared.img",
                      "path": "/var/lib/libvirt/images/shared.img",
                      "fd": 12,
                      "lockHeld": true,
                      "flags": 1,
                      "owners": [
                          1722,
                          1784
                      ]
                  },
                  {
                      "name": "/var/lib/libvirt/images/f18x86_64.img",
                      "path": "/var/lib/libvirt/images/f18x86_64.img",
                      "fd": 11,
                      "lockHeld": true,
                      "flags": 0,
                      "owners": [
                          1722
                      ]
                  }
              ]
          },
          "lockspaces": [
      
          ],
          "magic": "30199"
       }
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      f234dc93
    • D
      Enable systemd socket activation with virtlockd · 74c0353e
      Daniel P. Berrange 提交于
      This enhancement virtlockd so that it can receive a pre-opened
      UNIX domain socket from systemd at launch time, and adds the
      systemd service/socket unit files
      
      * daemon/libvirtd.service.in: Require virtlockd to be running
      * libvirt.spec.in: Add virtlockd systemd files
      * src/Makefile.am: Install systemd files
      * src/locking/lock_daemon.c: Support socket activation
      * src/locking/virtlockd.service.in, src/locking/virtlockd.socket.in:
        systemd unit files
      * src/rpc/virnetserverservice.c, src/rpc/virnetserverservice.h:
        Add virNetServerServiceNewFD() method
      * src/rpc/virnetsocket.c, src/rpc/virnetsocket.h: Add virNetSocketNewListenFD
        method
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      74c0353e
    • D
      Introduce basic infrastructure for virtlockd daemon · c57e3d89
      Daniel P. Berrange 提交于
      The virtlockd daemon will maintain locks on behalf of libvirtd.
      There are two reasons for it to be separate
      
       - Avoid risk of other libvirtd threads accidentally
         releasing fcntl() locks by opening + closing a file
         that is locked
       - Ensure locks can be preserved across libvirtd restarts.
         virtlockd will need to be able to re-exec itself while
         maintaining locks. This is simpler to achieve if its
         sole job is maintaining locks
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      c57e3d89
  24. 12 12月, 2012 1 次提交
  25. 07 12月, 2012 1 次提交
    • J
      Convert libxl driver to Xen 4.2 · dfa1e1dd
      Jim Fehlig 提交于
      Based on a patch originally authored by Daniel De Graaf
      
        http://lists.xen.org/archives/html/xen-devel/2012-05/msg00565.html
      
      This patch converts the Xen libxl driver to support only Xen >= 4.2.
      Support for Xen 4.1 libxl is dropped since that version of libxl is
      designated 'technology preview' only and is incompatible with Xen 4.2
      libxl.  Additionally, the default toolstack in Xen 4.1 is still xend,
      for which libvirt has a stable, functional driver.
      dfa1e1dd
  26. 05 12月, 2012 2 次提交
    • E
      spec: require dbus-daemon when using libvirtd in Fedora · 2edbd3d9
      Eric Blake 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=830201
      
      In older Fedora, the spec file for libivrt depended on avahi, which
      included avahi-daemon, which in turn depended on dbus.  But now that
      avahi libs and avahi-daemon are (correctly) in separate pacakges,
      and since we REALLY don't want a mandatory dependency on avahi-daemon,
      and considering that our init scripts require the messagebus service
      from dbus, we need to explicitly require dbus ourselves.
      
      * libvirt.spec.in (Requires): Add dbus for libvirt-daemon.
      2edbd3d9
    • B
      implement managedsave in libvirt xen legacy driver · 501bfad1
      Bamvor Jian Zhang 提交于
      Implement the domainManagedSave, domainHasManagedSaveImage, and
      domainManagedSaveRemove functions in the libvirt legacy xen driver.
      
      domainHasManagedSaveImage check the managedsave image from filesystem
      everytime. This is different from qemu and libxl driver. In qemu or
      libxl driver, there is a hasManagesSave flag in virDomainObjPtr which
      is not used in xen legacy driver. This flag could not add into xen
      driver ptr either, because the driver ptr will be released at the end of
      every libvirt api call. Meanwhile, AFAIK, xen store all the flags in
      xen not in libvirt xen driver. There is no need to add this flag in xen.
      Signed-off-by: NBamvor Jian Zhang <bjzhang@suse.com>
      501bfad1
  27. 28 11月, 2012 1 次提交
  28. 17 11月, 2012 1 次提交
  29. 06 11月, 2012 2 次提交
  30. 02 11月, 2012 1 次提交
    • D
      Release of libvirt-1.0.0 · 2b435c15
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the new release
      * po/*.po*: update from transifex, a lot of added support e.g. Indian
        languages, and regenerate
      2b435c15
  31. 01 11月, 2012 1 次提交