1. 26 8月, 2011 1 次提交
  2. 04 8月, 2011 1 次提交
    • M
      Fix detection of GnuTLS 1.x.y · 099d30a8
      Matthias Bolte 提交于
      Detection based on gnutls_session doesn't work because GnuTLS 2.x.y
      comes with a compat.h that defines gnutls_session to gnutls_session_t.
      
      Instead detect this based on LIBGNUTLS_VERSION_MAJOR. Move this from
      configure/config.h to gnutls_1_0_compat.h and make sure that all users
      include gnutls_1_0_compat.h properly.
      
      Also fix header guard in gnutls_1_0_compat.h.
      099d30a8
  3. 03 8月, 2011 2 次提交
    • D
      Release of libvirt-0.9.4 · 14c2ca3d
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: updates for new
        release
      * po/*.po*: pulled translations from the transifex teams and regenerated
        localizations
      14c2ca3d
    • E
      build: allow caching the input to STATIC_ANALYSIS · e4047f0a
      Eric Blake 提交于
      Right now, every re-run of configure re-evaluates whether a
      static analysis tool is in use.  But if you run configure under
      coverity, make a tweak, and then do an incremental rebuild with
      gcc but not coverity to test the tweak, then rerun a build under
      coverity, then configure does not get rerun, and static analysis
      ends up with lots of false positives.
      
      This patch caches the static analysis result, and also makes it
      easier to force static analysis even if the existing checks are
      insufficient to detect newer versions of the static analyzer tools.
      
      * configure.ac (lv_cv_static_analysis): New cache variable.
      e4047f0a
  4. 29 7月, 2011 2 次提交
    • M
      freebsd: Fix build problem due to picking up the wrong libvirt.h · b590866b
      Matthias Bolte 提交于
      Gettext annoyingly modifies CPPFLAGS in-place, putting
      -I/usr/local/include into the search patch if libintl headers
      must be used from that location.  But since we must support
      automake 1.9.6 which lacks AM_CPPFLAGS, and since CPPFLAGS is used
      prior to INCLUDES, this means that the build picks up the _old_
      installed libvirt.h in priority to the in-tree version, leading
      to all sorts of weird build failures on FreeBSD.
      
      Fix this by teaching configure to undo gettext's actions, but
      to keep any changes required by gettext at the end of INCLUDES
      after all in-tree locations are used first.  Also requires
      adding a wrapper Makefile.am and making gnulib-tool create
      just gnulib.mk files during the bootstrap process.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      b590866b
    • E
      maint: add missing copyright notices · ff81956a
      Eric Blake 提交于
      I went with the shorter license notice used by src/libvirt.c,
      rather than spelling out the full LGPLv2+ clause into each of
      these files.
      
      * configure.ac: Declare copyright.
      * all Makefile.am: Likewise.
      ff81956a
  5. 25 7月, 2011 2 次提交
    • M
      bandwidth: Implement functions to enable and disable QoS · 90074ecf
      Michal Privoznik 提交于
      These function executes 'tc' with appropriate arguments to set
      desired QoS setting on interface or bridge during its creation.
      90074ecf
    • E
      tests: fix compilation failures · 5283ea9b
      Eric Blake 提交于
      Even though gnutls is a hard-req for libvirt, and gnutls depends
      on libtasn1, that does not mean that you have to have the libtasn1
      development files installed.  Skip the test rather than failing
      compilation in that case.
      
      With newer gcc, the test consumed too much stack space.  Move
      things to static storage to fix that.
      
      * configure.ac (AC_CHECK_HEADERS): Check for libtasn1.h.
      (HAVE_LIBTASN1): New automake conditional.
      * tests/Makefile.am (virnettlsconvirnettlscontexttest_SOURCES)
      (virnettlscontexttest_LDADD): Allow compilation without libtasn1.
      * tests/virnettlscontexttest.c: Skip test if headers not present.
      (struct testTLSCertReq): Alter time members.
      (testTLSGenerateCert): Reflect the change.
      (mymain): Reduce stack usage.
      5283ea9b
  6. 22 7月, 2011 1 次提交
    • E
      save: let iohelper work on O_DIRECT fds · 12291656
      Eric Blake 提交于
      Required for a coming patch where iohelper will operate on O_DIRECT
      fds.  There, the user-space memory must be aligned to file system
      boundaries (at least 512, but using page-aligned works better, and
      some file systems prefer 64k).  Made tougher by the fact that
      VIR_ALLOC won't work on void *, but posix_memalign won't work on
      char * and isn't available everywhere.
      
      This patch makes some simplifying assumptions - namely, output
      to an O_DIRECT fd will only be attempted on an empty seekable
      file (hence, no need to worry about preserving existing data
      on a partial block, and ftruncate will work to undo the effects
      of having to round up the size of the last block written), and
      input from an O_DIRECT fd will only be attempted on a complete
      seekable file with the only possible short read at EOF.
      
      * configure.ac (AC_CHECK_FUNCS_ONCE): Check for posix_memalign.
      * src/util/iohelper.c (runIO): Use aligned memory, and handle
      quirks of O_DIRECT on last write.
      12291656
  7. 12 7月, 2011 1 次提交
  8. 08 7月, 2011 2 次提交
    • J
      Skip some xen tests if xend is not running · 41828514
      Jim Fehlig 提交于
      Currently, the xen statstest and reconnect tests are only compiled
      if xend is running.  Compile them unconditionally if xen headers
      are present, but skip the tests at runtime if xend is not running.
      
      This is in response to Eric's suggestion here
      
      https://www.redhat.com/archives/libvir-list/2011-July/msg00367.html
      41828514
    • E
      build: use gnulib pthread_sigmask · 8437e738
      Eric Blake 提交于
      Gnulib finally learned how to do pthread_sigmask on mingw.
      
      * .gnulib: Update to latest, for pthread_sigmask.
      * bootstrap.conf (gnulib_modules): Add pthread_sigmask.
      * configure.ac (AC_CHECK_FUNCS): Drop redundant check.
      * src/rpc/virnetclient.c (virNetClientSetTLSSession)
      (virNetClientIOEventLoop): Make code unconditional.
      * src/util/command.c (virFork): Likewise.
      * tools/virsh.c (doMigrate, cmdMigrate): Likewise.
      8437e738
  9. 04 7月, 2011 1 次提交
    • D
      Release of libvirt-0.9.3 · 7976d96d
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the
        new release
      * po/*.po*: updated and regenerated localizations
      7976d96d
  10. 29 6月, 2011 1 次提交
    • D
      Convert libvirtd over to the new RPC handling APIs · df0b57a9
      Daniel P. Berrange 提交于
      This guts the libvirtd daemon, removing all its networking and
      RPC handling code. Instead it calls out to the new virServerPtr
      APIs for all its RPC & networking work
      
      As a fallout all libvirtd daemon error reporting now takes place
      via the normal internal error reporting APIs. There is no need
      to call separate error reporting APIs in RPC code, nor should
      code use VIR_WARN/VIR_ERROR for reporting fatal problems anymore.
      
      * daemon/qemu_dispatch_*.h, daemon/remote_dispatch_*.h: Remove
        old generated dispatcher code
      * daemon/qemu_dispatch.h, daemon/remote_dispatch.h: New dispatch
        code
      * daemon/dispatch.c, daemon/dispatch.h: Remove obsoleted code
      * daemon/remote.c, daemon/remote.h: Rewrite for new dispatch
        APIs
      * daemon/libvirtd.c, daemon/libvirtd.h: Remove all networking
        code
      * daemon/stream.c, daemon/stream.h: Update for new APIs
      * daemon/Makefile.am: Link to libvirt-net-rpc-server.la
      df0b57a9
  11. 24 6月, 2011 1 次提交
    • D
      Introduce a generic object for using network sockets · 58b5b14e
      Daniel P. Berrange 提交于
      Introduces a simple wrapper around the raw POSIX sockets APIs
      and name resolution APIs. Allows for easy creation of client
      and server sockets with correct usage of name resolution APIs
      for protocol agnostic socket setup.
      
      It can listen for UNIX and TCP stream sockets.
      
      It can connect to UNIX, TCP streams directly, or indirectly
      to UNIX sockets via an SSH tunnel or external command
      
      * src/Makefile.am: Add to libvirt-net-rpc.la
      * src/rpc/virnetsocket.c, src/rpc/virnetsocket.h: Generic
        sockets APIs
      * tests/Makefile.am: Add socket test
      * tests/virnetsockettest.c: New test case
      * tests/testutils.c: Avoid overriding LIBVIRT_DEBUG settings
      * tests/ssh.c: Dumb helper program for SSH tunnelling tests
      58b5b14e
  12. 23 6月, 2011 1 次提交
  13. 14 6月, 2011 1 次提交
    • M
      Fix dlopen dependency · bfbeafbd
      Matthias Bolte 提交于
      Since the addition of the lock manager framework in 6a943419
      dlopen is always required, but the checks in configure wasn't changed
      to reflect that. This didn't show up directly because the VirtualBox
      driver linking dlopen in covered it. But disabling the VirtualBox
      driver makes the build fail due to missing dlopen.
      
      Change the dlopen check in configure to pick up dlopen when available.
      
      Reported by Ruben Kerkhof.
      bfbeafbd
  14. 08 6月, 2011 2 次提交
    • E
      build: detect Coverity 5.3.0 · 28ea3bf3
      Eric Blake 提交于
      Coverity 5.3.0 still outputs lots of COVERITY_* variables, but no
      longer modifies COVERITY_BUILD_COMMAND in the environment.  Pick
      one that seems likely to stay around.
      
      * configure.ac (STATIC_ANALYSIS): Detect newer Coverity.
      28ea3bf3
    • O
      build: Fix typos in configure.ac · 31967cff
      Osier Yang 提交于
      31967cff
  15. 06 6月, 2011 1 次提交
    • D
      Release of libvirt-0.9.2 · 2c5ded6e
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for release
      * po/*.po*: updated translations and regenerated
      2c5ded6e
  16. 03 6月, 2011 1 次提交
    • D
      Add call to sanlock_restrict() in QEMU lock driver · ebfb8c42
      Daniel P. Berrange 提交于
      In between fork and exec, a connection to sanlock is acquired
      and the socket file descriptor is intionally leaked to the
      child process. sanlock watches this FD for POLL_HANGUP to
      detect when QEMU has exited. We don't want a rogus/compromised
      QEMU from issuing sanlock RPC calls on the leaked FD though,
      since that could be used to DOS other guests. By calling
      sanlock_restrict() on the socket before exec() we can lock
      it down.
      
      * configure.ac: Check for sanlock_restrict API
      * src/locking/domain_lock.c: Restrict lock acquired in
        process startup phase
      * src/locking/lock_driver.h: Add VIR_LOCK_MANAGER_ACQUIRE_RESTRICT
      * src/locking/lock_driver_sanlock.c: Add call to sanlock_restrict
        when requested by VIR_LOCK_MANAGER_ACQUIRE_RESTRICT flag
      ebfb8c42
  17. 02 6月, 2011 1 次提交
    • D
      Add a plugin for the 'sanlock' project · 9f135031
      Daniel P. Berrange 提交于
      Sanlock is a project that implements a disk-paxos locking
      algorithm. This is suitable for cluster deployments with
      shared storage.
      
      * src/Makefile.am: Add dlopen plugin for sanlock
      * src/locking/lock_driver_sanlock.c: Sanlock driver
      * configure.ac: Check for sanlock
      * libvirt.spec.in: Add a libvirt-lock-sanlock RPM
      9f135031
  18. 01 6月, 2011 1 次提交
    • M
      remote generator: Legacy support for hyper to long mappings · 32abd5ee
      Matthias Bolte 提交于
      Remove some special case code that took care of mapping hyper to the
      correct C types.
      
      As the list of procedures that is allowed to map hyper to long is fixed
      put it in the generator instead annotations in the .x files. This
      results in simpler .x file parsing code.
      
      Use macros for hyper to long assignments that perform overflow checks
      when long is smaller than hyper. Map hyper to long long by default.
      
      Suggested by Eric Blake.
      32abd5ee
  19. 31 5月, 2011 1 次提交
  20. 28 5月, 2011 1 次提交
  21. 26 5月, 2011 1 次提交
  22. 20 5月, 2011 1 次提交
    • E
      build: require newer gettext · 0bb6e155
      Eric Blake 提交于
      Now that RHEL 5.6 ships with gettext 0.17, we can get out of the
      stone age and use the newer gettext capabilities and improved
      macros for certain configure tests.
      
      * configure.ac (AM_GNU_GETTEXT_VERSION): Bump to 0.17.
      (MKINSTALLDIRS): Delete hack that is no longer needed.
      * bootstrap.conf (buildreq): Check for minimum gettext version.
      Based on a report by Wen Congyang.
      0bb6e155
  23. 18 5月, 2011 1 次提交
  24. 17 5月, 2011 1 次提交
    • E
      build: drop unused <sys/syslimits.h> header · d4982b86
      Eric Blake 提交于
      <sys/syslimits.h> is not standardized, so portable programs should
      not need to rely on it.  If there really is something that we need
      where <sys/syslimits.h> provided the limit but <limits.h> did not,
      then that would be a candidate for fixing in gnulib.  But this patch
      did not turn up any compilation failures on Linux.
      
      * src/internal.h (includes): Drop unused header.
      * daemon/libvirtd.h (includes): Likewise.
      * configure.ac (AC_CHECK_HEADERS): Likewise.
      Based on a report by Matthias Bolte.
      d4982b86
  25. 14 5月, 2011 1 次提交
  26. 12 5月, 2011 2 次提交
    • W
      build: avoid compiler warning during configure · 1ba6e2d9
      Wen Congyang 提交于
      There is no need to redefine _GNU_SOURCE in tests that occur after
      gl_INIT, since that macro already AC_DEFINE'd it for us.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      1ba6e2d9
    • C
      fix xdr detection and use with recent glibc · 29d753c8
      Christophe Fergeau 提交于
      glibc 2.13.90 has obsoleted its rpc implementation in favour of
      the one provided by the TI-RPC library:
      
      > * The RPC implementation in libc is obsoleted.  Old programs keep working
      >   but new programs cannot be linked with the routines in libc anymore.
      >   Programs in need of RPC functionality must be linked against TI-RPC.
      >   The TI-RPC implemtation is IPv6 enabled and there are other benefits.
      >
      >   Visible changes of this change include (obviously) the inability to
      >   link
      >   programs using RPC functions without referencing the TI-RPC library,
      >   the
      >   removal of the RPC headers from the glibc headers, and the lack of
      >   symbols defined in <rpc/netdb.h> when <netdb.h> is installed.
      >   Implemented by Ulrich Drepper.
      (from glibc NEWS)
      
      Thus with recent glibc, we need to try linking with -ltirpc when looking
      for the XDR functions. The daemon also needs to use XDR_CFLAGS to be able
      to find the XDR headers stored in /usr/include/tirpc.
      
      When using TI-RPC, there are some warnings about redundant declarations, but
      the fix probably belongs in other modules:
      
      /usr/include/tirpc/rpc/rpcent.h:68:13: warning: redundant redeclaration of
      'setrpcent' [-Wredundant-decls]
      /usr/include/rpc/netdb.h:53:13: note: previous declaration of 'setrpcent'
      was here
      
      /usr/include/tirpc/rpc/rpcent.h:69:13: warning: redundant redeclaration of
      'endrpcent' [-Wredundant-decls]
      /usr/include/rpc/netdb.h:54:13: note: previous declaration of 'endrpcent'
      was here
      
      /usr/include/tirpc/rpc/rpc.h:84:12: warning: redundant redeclaration of
      'bindresvport' [-Wredundant-decls]
      /usr/include/netinet/in.h:440:12: note: previous declaration of
      'bindresvport' was here
      29d753c8
  27. 11 5月, 2011 1 次提交
    • D
      Add support for YAJL version 2 API/ABI · 9f5d3a91
      Daniel P. Berrange 提交于
      Version 2.0.0 or yajl changed API. It is fairly trivial for us to
      cope with both APIs in libvirt, so adapt.
      
      * configure.ac: Probe for yajl2 API
      * src/util/json.c: Conditional support for yajl2 API
      9f5d3a91
  28. 05 5月, 2011 2 次提交
    • D
      Release of libvirt-0.9.1 · 9b889aac
      Daniel Veillard 提交于
      * configure.ac libvirt.spec.in docs/news.html.in: update and document
        the release
      * po/*.po*: update localizations for german, polish, spanish, ukrainian
        and vietnamese coming from transifex, regenerate
      9b889aac
    • E
      maint: detect clang 2.9 · 2ffa8b34
      Eric Blake 提交于
      In Fedora 15, with clang 2.8, 'scan-build env' shows:
      CCC_ANALYZER_ANALYSIS=-analyzer-check-objc-mem -analyzer-check-security-syntactic -analyzer-check-dead-stores -analyzer-check-objc-unused-ivars -analyzer-check-objc-methodsigs
      
      But in rawhide, with clang 2.9, the same variable is set but
      empty, implying the default set of analysis.  We still want
      sa_assert defined in that case, to stop clang from hitting
      false positives.
      
      * configure.ac (STATIC_ANALYSIS): Detect clang even when the set
      of analyses is the default.
      2ffa8b34
  29. 28 4月, 2011 2 次提交
  30. 27 4月, 2011 1 次提交
  31. 05 4月, 2011 1 次提交
    • D
      Use gnulib's manywarnings & warnings modules · 0e867555
      Daniel P. Berrange 提交于
      Remove custom code for checking compiler warnings, using
      gl_WARN_ADD instead. Don't list all flags ourselves, use
      gnulib's gl_MANYWARN_ALL_GCC to get all possible GCC flags,
      then turn off the ones we don't want yet.
      
      * acinclude.m4: Rewrite to use gl_WARN_ADD and gl_MANYWARN_ALL_GCC
      * bootstrap.conf: Add warnings & manywarnings
      * configure.ac: Switch to gl_WARN_ADD
      * m4/compiler-flags.m4: Obsoleted by gl_WARN_ADD
      0e867555
  32. 04 4月, 2011 1 次提交
    • D
      Release of libvirt-0.9.0 · d17e438a
      Daniel Veillard 提交于
      * configure.ac docs/news.html.in libvirt.spec.in: update for the release
      * po/*.po*: update polish translation and regenerate
      d17e438a