1. 17 9月, 2011 1 次提交
    • D
      Prevent crash from dlclose() of libvirt.so · 8e44e559
      Daniel P. Berrange 提交于
      When libvirt calls virInitialize it creates a thread local
      for the virErrorPtr storage, and registers a callback to
      cleanup memory when a thread exits. When libvirt is dlclose()d
      or otherwise made non-resident, the callback function is
      removed from memory, but the thread local may still exist
      and if a thread later exists, it will invoke the callback
      and SEGV. There may also be other thread locals with callbacks
      pointing to libvirt code, so it is in general never safe to
      unload libvirt.so from memory once initialized.
      
      To allow dlclose() to succeed, but keep libvirt.so resident
      in memory, link with '-z nodelete'. This issue was first
      found with the libvirt CIM provider, but can potentially
      hit many of the dynamic language bindings which all ultimately
      involve dlopen() in some way, either on libvirt.so itself,
      or on the glue code for the binding which in turns links
      to libvirt
      
      * configure.ac, src/Makefile.am: Ensure libvirt.so is linked
        with -z nodelete
      * cfg.mk, .gitignore, tests/Makefile.am, tests/shunloadhelper.c,
        tests/shunloadtest.c: A test case to unload libvirt while
        a thread is still running.
      8e44e559
  2. 14 9月, 2011 1 次提交
  3. 26 8月, 2011 1 次提交
    • M
      hyperv: Add OpenWSMAN based client for the Hyper-V WMI API · e224b6f8
      Matthias Bolte 提交于
      Add a generator script to generate the structs and serialization
      information for OpenWSMAN.
      
      openwsman.h collects workarounds for problems in OpenWSMAN <= 2.2.6.
      There are also disabled sections that would use ws_serializer_free_mem
      but can't because it's broken in OpenWSMAN <= 2.2.6. Patches to fix
      this have been posted upstream.
      e224b6f8
  4. 19 8月, 2011 1 次提交
    • E
      maint: ignore generated file · 322d1cfc
      Eric Blake 提交于
      I did 'git add .' while in the middle of 'make syntax-check', and
      it picked up a temporary file that should not be committed.
      
      * .gitignore: Ignore sc_* from syntax check.
      322d1cfc
  5. 16 8月, 2011 1 次提交
  6. 29 7月, 2011 1 次提交
    • 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
  7. 21 7月, 2011 1 次提交
    • L
      util: add virtkeycode module · 0bbf87e9
      Lai Jiangshan 提交于
      Add virtkey lib for usage-improvment and keycode translating.
      Add 4 internal API for the aim
      
      const char *virKeycodeSetTypeToString(int codeset);
      int virKeycodeSetTypeFromString(const char *name);
      int virKeycodeValueFromString(virKeycodeSet codeset, const char *keyname);
      int virKeycodeValueTranslate(virKeycodeSet from_codeset,
                                   virKeycodeSet to_offset,
                                   int key_value);
      
      * include/libvirt/libvirt.h.in: extend virKeycodeSet enum
      * src/Makefile.am: add new virtkeycode module and rule to generate
        virkeymaps.h
      * src/util/virkeycode.c src/util/virkeycode.h: new module
      * src/util/virkeycode-mapgen.py: python generator for virkeymaps.h
        out of keymaps.csv
      * src/libvirt_private.syms: extend private symbols for new module
      * .gitignore: add generated virkeymaps.h
      0bbf87e9
  8. 19 7月, 2011 1 次提交
    • E
      build: detect doc generation failure · 97ee0953
      Eric Blake 提交于
      Commit 8665f855 introduced a slight regression in doc generation,
      since make only quits a rule on the first failed command ending
      with a newline rather than a semicolon.
      
      * docs/Makefile.am (html/index.html): Don't use xmllint unless
      xsltproc succeeded.
      * .gitignore: Ignore recently updated stamp file name.
      97ee0953
  9. 01 7月, 2011 1 次提交
  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. 25 6月, 2011 1 次提交
  12. 24 6月, 2011 1 次提交
    • D
      Defines the basics of a generic RPC protocol in XDR · 980a132a
      Daniel P. Berrange 提交于
      This patch defines the basics of a generic RPC protocol in XDR.
      This is wire ABI compatible with the original remote_protocol.x.
      It takes everything except for the RPC calls / events from that
      protocol
      
       - The basic header virNetMessageHeader (aka remote_message_header)
       - The error object virNetMessageError  (aka remote_error)
       - Two dummy objects virNetMessageDomain & virNetMessageNetwork
         sadly needed to keep virNetMessageError ABI compatible with
         the old remote_error
      
      The RPC protocol supports method calls, async events and
      bidirectional data streams as before
      
      * src/Makefile.am: Add rules for generating RPC code from
        protocol & define a new libvirt-net-rpc.la helper library
      * src/rpc/virnetprotocol.x: New generic RPC protocol
      980a132a
  13. 01 6月, 2011 1 次提交
  14. 16 5月, 2011 1 次提交
  15. 07 5月, 2011 1 次提交
    • D
      build: Remove all generated RPC files from GIT · 3496b7f5
      Daniel P. Berrange 提交于
      Stop storing the generated files for the remote protocol client
      and server in source control. The generated files will still be
      included in the result of 'make dist' to avoid end-users needing
      to generate the files
      Signed-off-by: NEric Blake <eblake@redhat.com>
      
      Unfortunately, this means that the strings marked for translation
      in generated files are not picked up by gnulib's syntax-check,
      I'm working on fixing that in gnulib.
      
      * .gitignore, cfg.mk, po/POTFILES.in: Reflect deletion.
      3496b7f5
  16. 18 4月, 2011 1 次提交
  17. 08 4月, 2011 1 次提交
    • E
      build: fix gitignore sorting · 02c39a2f
      Eric Blake 提交于
      Make it so we don't have to 'git add -f' particular files like
      po/POTFILES.in all the time (tested by fixing one of our
      special-case files as part of the patch).
      
      * .gnulib: Update to latest.
      * bootstrap: Resync from coreutils.
      * .gitignore: Sort whitelist entries correctly, including ignoring
      files rather than directories.
      * m4/virt-compile-warnings.m4: Convert tabs to space.
      02c39a2f
  18. 05 4月, 2011 1 次提交
    • D
      Remove acinclude.m4 file · 4825b521
      Daniel P. Berrange 提交于
      Split the bit acinclude.m4 file into smaller pieces named
      as m4/virt-XXXXX.m4
      
      * .gitignore: Ignore gettext related files
      * acinclude.m4: Delete
      * m4/virt-compile-warnings.m4: Checks for GCC compiler flags
      * m4/virt-pkgconfig-back-compat.m4: Backcompat check for
        pkgconfig program
      4825b521
  19. 29 3月, 2011 1 次提交
  20. 18 3月, 2011 1 次提交
  21. 22 2月, 2011 1 次提交
    • E
      autobuild.sh: use VPATH build · ec28eb29
      Eric Blake 提交于
      Try to avoid future regressions on the VPATH front.
      
      * autobuild.sh: Uncomment VPATH use.
      * .gitignore: Exclude build directory.
      ec28eb29
  22. 04 1月, 2011 1 次提交
    • D
      Release of libvirt-0.8.7 · 6675e007
      Daniel Veillard 提交于
      * configure.ac libvirt.spec.in docs/news.html.in: bump version and add
        documentation
      * po/*po*: regenerate po and pot files
      6675e007
  23. 02 12月, 2010 1 次提交
  24. 01 12月, 2010 1 次提交
  25. 18 11月, 2010 1 次提交
    • E
      maint: update to latest gnulib · 144c06d4
      Eric Blake 提交于
      Allows bootstrap to work on FreeBSD, where gzip doesn't have a '.'
      in its version; and silences false positives in the new
      'make syntax-check' rule.
      
      * .gnulib: Update to latest.
      * bootstrap: Synchronize to upstream.
      * .x-sc_bindtextdomain: New exemptions.
      * Makefile.am (syntax_check_exceptions): Ship new file.
      * .gitignore: Regenerate per latest bootstrap, anchor entries that
      are only in the root directory, and consolidate entries from other
      generated .gitignore files.
      * build-aux/.gitignore, m4/.gitignore, po/.gitignore: Remove from
      version control, since bootstrap generates them.
      144c06d4
  26. 09 11月, 2010 2 次提交
  27. 27 10月, 2010 1 次提交
    • E
      build: fix shell detection bug · 5ee03c25
      Eric Blake 提交于
      A missing shell was noisy, and the use of command to decipher a
      shell's absolute path requires "" rather than ''.
      
      * configure.ac (lv_cv_wrapper_shell): Fix logic errors if candidate
      shell is not available.
      * .gitignore: Ignore file created when /bin/sh is old dash.
      Reported by Matthias Bolte.
      5ee03c25
  28. 30 7月, 2010 1 次提交
    • E
      build: restore operation of bit-rotted 'make cov' · e7064aa6
      Eric Blake 提交于
      './autobuild.sh' with lcov installed discovered that our
      coverage support has been bit-rotting for a while.  This
      restores it back to a successful state, although I have
      not yet spent any time looking through the resulting files to
      look for low-hanging fruit in the unit test coverage front.
      
      * configure.ac: Clear COMPILER_FLAGS at right place.
      * Makefile.am (cov): Newer genhtml no longer likes plain -s.
      * m4/compiler-flags.m4 (gl_COMPILER_FLAGS): Don't AC_SUBST
      COMPILER_FLAGS; it is a shell variable for use in configure only.
      * src/Makefile.am (AM_CFLAGS, AM_LDFLAGS): New variables, to make
      it easier to provide global flag additions.  Use throughout, to
      uniformly apply coverage flags.
      * .gitignore: Globally ignore gcov output.
      * daemon/.gitignore: Simplify.
      * src/.gitignore: Likewise.
      * tests/.gitignore: Likewise.
      e7064aa6
  29. 20 5月, 2010 1 次提交
    • E
      build: distribute missing file · 92036c2e
      Eric Blake 提交于
      Commit f30ccb24 was incomplete.
      
      * .gitignore: Ignore intermediate directory during failed 'make
      distcheck'.
      * tests/Makefile.am (qemuhelpdata): Distribute new file.
      92036c2e
  30. 04 5月, 2010 1 次提交
    • E
      build: avoid compiler warning · 7f31e28c
      Eric Blake 提交于
      Necessary on cygwin, where uid_t and gid_t are 4-byte long rather
      than int, causing gcc -Wformat warnings.
      
      * src/util/util.c (virFileOperationNoFork, virDirCreateNoFork)
      (virFileOperation, virDirCreate, virGetUserEnt): Cast uid_t and
      gid_t before passing to printf.
      * .gitignore: Ignore Windows executables.
      7f31e28c
  31. 22 4月, 2010 1 次提交
  32. 13 4月, 2010 1 次提交
    • E
      build: fix syntax-check problems · babaae92
      Eric Blake 提交于
      * .x-sc_prohibit_gettext_noop: Add new exemption.
      * .x-sc_prohibit_test_minus_ao: Likewise.
      * Makefile.am (EXTRA_DIST): Distribute new files.
      * .gitignore: Ignore built file.
      babaae92
  33. 24 2月, 2010 1 次提交
    • E
      maint: sort .gitignore · 9ad255f9
      Eric Blake 提交于
      Fallout from the new bootstrap.
      
      * .gitignore: Commit sorting done by bootstrap.
      * build-aux/.gitignore: Likewise.
      * po/.gitignore: Likewise.
      9ad255f9
  34. 09 10月, 2009 1 次提交
    • D
      Remove some auto-generated files · 35b5f84c
      Daniel P. Berrange 提交于
      Removes some auto-generated files still under version control.
      It also moves the rule for generating NEWS into the Makefile.am
      that's in the same directory as the output file to avoid confusion
      
      * docs/libvirt-api.xml, docs/libvirt-refs.xml, NEWS: Remove
        auto-generated files from source control
      * Makefile.am: Add rule for generating NEWS file
      * docs/Makefile.am: Remove rule for generating NEWS file
      35b5f84c
  35. 10 7月, 2009 1 次提交
    • J
      build: automatically rerun ./bootstrap when needed · f272378d
      Jim Meyering 提交于
      When "git pull" (or any other operation) brings in a new version of the
      gnulib git submodule, you must rerun the autogen.sh script.  With this
      change, "make" now fails and tells you to run ./autogen.sh, when needed.
      * autogen.sh: Maintain a new file, .git-module-status, containing
      the current submodule status.  If it doesn't exist or its content
      is different from what "git submodule status" prints, then run
      ./bootstrap
      * .gitignore: Add .git-module-status
      * cfg.mk: Diagnose out of date submodule and fail.
      * README-hacking: Update not to mention bootstrap.
      * Makefile.am (MAINTAINERCLEANFILES): Add .git-module-status,
      so that "make maintainerclean" will remove it.
      f272378d
  36. 09 7月, 2009 1 次提交
  37. 08 7月, 2009 2 次提交
    • J
      use gnumakefile and maintainer-makefile modules from gnulib · bf773e04
      Jim Meyering 提交于
      * bootstrap (modules): Add gnumakefile and maintainer-makefile.
      * GNUmakefile: Remove file, now provided by gnulib.
      * Makefile.maint: Remove.  Replaced by maint.mk from gnulib.
      .gitignore: Add GNUmakefile and maint.mk.
      * cfg.mk (prev_version_file): Disable this feature.
      Setting this to /dev/null avoids an otherwise harmless diagnostic.
      bf773e04
    • J
      make .gnulib a submodule · 7bb22f58
      Jim Meyering 提交于
      This makes it so we record (via a git submodule)
      a snapshot of whatever version of gnulib we're using,
      and none of gnulib sources are in the libvirt repository.
      The result is that we have as much reproducibility as when
      we version-controlled imported copies of the gnulib sources,
      but without the hassle of the manual process we used when
      syncing with upstream.
      
      Note that when you clone libvirt, you get only the libvirt
      repository, but when you first run ./bootstrap, it clones
      gnulib (at the SHA1 recorded via the submodule), creating
      the .gnulib/ hierarchy.  Then, the bootstrap script runs
      gnulib-tool to populate gnulib/ with the files that make
      up the selected modules.
      
      Put the following in your ~/.gitconfig file.
      [alias]
        syncsub = submodule foreach git pull origin master
      
      The update procedure is simple:
        git syncsub
        ...build & test...
        git commit -m 'gnulib: sync submodule to latest' .gnulib
      
      * .gitmodules: New file.
      * .gnulib: Initialize.
      * bootstrap: Set up to use the new submodule.
      Stop using --no-vc-files.
      Don't remove .gitignore files.
      Don't use or create .cvsignore.
      Diagnose an invalid --gnulib-srcdir=DIR argument.
      * build-aux/vc-list-files: Delete file, now pulled from gnulib.
      * build-aux/useless-if-before-free: Likewise.
      * po/POTFILES.in: Remove gnulib/lib/gai_strerror.c, since
      it no longer contains translatable strings.
      * gnulib/*: Remove gnulib/ hierarchy.
      7bb22f58
  38. 03 7月, 2009 1 次提交
    • D
      Release of libvirt-0.6.5 · c759ae55
      Daniel Veillard 提交于
      * configure.in libvirt.spec.in NEWS docs/* po/*: release of
        libvirt-0.6.5
      * .gitignore: adding cscope files
      Daniel
      c759ae55