1. 25 7月, 2012 5 次提交
    • G
      util: Fix typoes on return value and comments · 72e59a3b
      Guannan Ren 提交于
      virNetDevTapCreateInBridgePort: Fix return value to -1
      virNetDevTapCreate: Fix comments
      72e59a3b
    • M
      fixed SegFault in virauth · 5eef7432
      Martin Kletzander 提交于
      No check for conn->uri being NULL in virAuthGetConfigFilePath (valid
      state) made the client segfault. This happens for example with these
      settings:
       - no virtualbox driver installed (modifies conn->uri)
       - no default URI set (VIRSH_DEFAULT_CONNECT_URI="",
         LIBVIRT_DEFAULT_URI="", uri_default="")
       - auth_sock_rw="sasl"
       - virsh run as root
      
      That are unfortunately the settings with fresh Fedora 17 installation
      with VDSM.
      
      The check ought to be enough as conn->uri being NULL is valid in later
      code and is handled properly.
      5eef7432
    • O
      daemon: Fix the wrong macro name · 98518178
      Osier Yang 提交于
      WITH_INTERFACE is not defined, it should be WITH_NETCF there to load
      the interface driver.
      
      Eric posted patch weeks ago to resolve the problems in the whole
      build system, but it's not finalised yet:
      
      https://www.redhat.com/archives/libvir-list/2012-June/msg01299.html
      
      I'm going to simply fix the wrong macro name here so that the
      interface driver could loaded, and continue the work on the listing
      API for interface driver.
      98518178
    • J
      d9bbf217
    • D
      Fix libnl CFLAGS/LIBS inclusion · 90fcbb9f
      Doug Goldstein 提交于
      When using libnl, use the variables pkg-config provides in case there are
      additional libraries or CFLAGS required to build it. Specifically if
      the libnl headers are not directly in /usr/include.
      90fcbb9f
  2. 24 7月, 2012 5 次提交
    • M
      virsh: fixed domdisplay command · 8101d434
      Martin Kletzander 提交于
      The 'domdisplay' command didn't properly evaluate '--include-password'
      option.
      8101d434
    • W
      building: fix deps error when some drivers are not built · 95738b3f
      Wen Congyang 提交于
      libvirt-daemon-driver-XXX should be a dependency only when with_driver_modules
      is 1.
      libvirt-daemon-driver-libxl should be a dependency only when with_libxl is 1.
      libvirt-daemon-driver-lxc should be a dependency only when with_lxc is 1.
      libvirt-daemon-driver-qemu should be a dependency only when with_qemu is 1.
      libvirt-daemon-driver-uml should be a dependency only when with_uml is 1.
      libvirt-daemon-driver-xen should be a dependency only when with_xen is 1.
      95738b3f
    • D
      More advanced auto-detection of driver module directory · e537a316
      Daniel P. Berrange 提交于
      When running directly from GIT, libvirtd attempts to locate
      the directory containing loadable modules. This currently
      only works if executing libvirtd with a CWD inside the libvirt
      source tree. Switch to locate based on the path to the current
      binary instead
      e537a316
    • R
      adding handling EINTR to poll to make it more robust · 5e62ba34
      Royce Lv 提交于
      some system call and signal will interrupt poll,
      making event loop stops and fails to react events and keepalive message
      from libvirt.
      adding handling EINTR to poll to make it more robust
      Signed-off-by: NRoyce Lv <lvroyce@linux.vnet.ibm.com>
      5e62ba34
    • E
      build: regenerate .png files · 5e21da56
      Eric Blake 提交于
      We don't expect people to have tools installed to regenerate .png
      from .fig by default.  However, since commit 5eb3df8b, several
      .fig files were updated without regenerating the .png file, and
      as a result, 'make dist' ends up regenerating those five files,
      or worse, failing because of missing tools (convert from
      ImageMagick).
      
      Additionally, even if the tools are present, the generation of
      .png files is nondeterministic (the resulting files contain a
      timestamp), which means prior to this patch, running 'make dist'
      from two checkouts will end up producing different tarball
      contents (two 'make dist' runs will always produce different tar
      files, since tarballs also contain timestamps; but unpacking the
      tarballs and doing a recursive diff will show if the contents
      are unchanged).
      
      After this patch, the timestamps are now up-to-date, and 'make
      dist' no longer has anything to do for the .png files.  This gets
      us closer to the goal of two checkouts being able to produce the
      same tarball.
      
      * docs/libvirt-*.png: Regenerate.
      5e21da56
  3. 23 7月, 2012 6 次提交
    • D
      Make ESX & Hyper-V code generator safe with parallel builds · 1bfb47df
      Daniel P. Berrange 提交于
      If from a clean GIT checkout 'make -j 8' is run, the ESX
      and Hyper-V code will be generated multiple times over.
      This is because there are multiple files being generated
      from one invocation of the generator script. make does not
      realize this and so invokes the generator once per file.
      This doesn't matter with serialized builds, but with
      parallel builds multiple instances of the generator get
      run at once.
      
      make[2]: Entering directory `/home/berrange/src/virt/libvirt/src'
        GEN    util/virkeymaps.h
        GEN    remote/remote_protocol.h
        GEN    remote/remote_client_bodies.h
        GEN    remote/qemu_protocol.h
        GEN    remote/qemu_client_bodies.h
        GEN    esx/esx_vi_methods.generated.c
        GEN    esx/esx_vi_methods.generated.h
        GEN    esx/esx_vi_methods.generated.macro
        GEN    esx/esx_vi_types.generated.c
        GEN    esx/esx_vi_types.generated.h
        GEN    esx/esx_vi_types.generated.typedef
        GEN    esx/esx_vi_types.generated.typedef
        GEN    esx/esx_vi_types.generated.typeenum
        GEN    esx/esx_vi_types.generated.typetostring
        GEN    esx/esx_vi_types.generated.typefromstring
        GEN    esx/esx_vi_types.generated.h
        GEN    esx/esx_vi_types.generated.c
        GEN    esx/esx_vi_methods.generated.h
        GEN    esx/esx_vi_methods.generated.c
        GEN    esx/esx_vi_methods.generated.macro
        GEN    esx/esx_vi.generated.h
        GEN    esx/esx_vi.generated.c
        GEN    esx/esx_vi_types.generated.typeenum
        GEN    esx/esx_vi_types.generated.typedef
        GEN    esx/esx_vi_types.generated.typeenum
        GEN    esx/esx_vi_types.generated.typetostring
        GEN    esx/esx_vi_types.generated.typefromstring
        GEN    esx/esx_vi_types.generated.h
        GEN    esx/esx_vi_types.generated.c
        GEN    esx/esx_vi_methods.generated.h
        ...snip...
        GEN    hyperv/hyperv_wmi.generated.h
        GEN    libvirt_qemu_probes.h
        GEN    locking/qemu-sanlock.conf
        GEN    hyperv/hyperv_wmi.generated.c
        GEN    rpc/virnetprotocol.h
        GEN    hyperv/hyperv_wmi_classes.generated.typedef
        GEN    hyperv/hyperv_wmi_classes.generated.h
        GEN    hyperv/hyperv_wmi_classes.generated.c
        GEN    rpc/virkeepaliveprotocol.h
        GEN    remote/remote_protocol.c
        GEN    remote/qemu_protocol.c
        GEN    rpc/virkeepaliveprotocol.c
        GEN    rpc/virnetprotocol.c
        GEN    libvirt.def
      
      Prevent this using a timestamp file to control generation,
      as was previously done for the python bindings in commit
      a7868e01Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      1bfb47df
    • P
      tests: Add support for catching domain XML parsing errors · fa54d2a8
      Peter Krempa 提交于
      This patch enhances qemuxml2argvtest to deal with semantically incorrect
      domain XMLs, that generate errors while parsing.
      
      This patch cleans up macros that invoke the tests and changes boolean
      flags to a bit array flag variable.
      fa54d2a8
    • P
      maint: Clean up coding style and fix error message spelling · 8e0f7faf
      Peter Krempa 提交于
      This patch cleans up coding style breaks some long lines and fixes error
      message spelling on various places in domain_conf.c and in the qemu
      driver.
      8e0f7faf
    • D
      doc: Fix time keeping example for the guest clock · d57e17d5
      Doug Goldstein 提交于
      The time keeping example was missing quotes which resulted in an error
      if you copied and pasted the example into a domain's XML. Additionally
      the rest of the examples use single quotes (') instead of double quotes
      (") so standardized that.
      d57e17d5
    • D
      Fix test failure when no IPv6 is avail · faffe269
      Doug Goldstein 提交于
      When the system doesn't have IPv6 available (e.g. not built into the
      kernel or the module isn't loaded), you can not create an IPv6 socket.
      The test determines earlier on that IPv6 isn't available then goes and
      creates a socket. This makes socket creation conditional on IPv6
      availability.
      faffe269
    • O
      Desert the FSF address in copyright · f9ce7dad
      Osier Yang 提交于
      Per the FSF address could be changed from time to time, and GNU
      recommends the following now: (http://www.gnu.org/licenses/gpl-howto.html)
      
        You should have received a copy of the GNU General Public License
        along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
      
      This patch removes the explicit FSF address, and uses above instead
      (of course, with inserting 'Lesser' before 'General').
      
      Except a bunch of files for security driver, all others are changed
      automatically, the copyright for securify files are not complete,
      that's why to do it manually:
      
        src/security/security_selinux.h
        src/security/security_driver.h
        src/security/security_selinux.c
        src/security/security_apparmor.h
        src/security/security_apparmor.c
        src/security/security_driver.c
      f9ce7dad
  4. 22 7月, 2012 3 次提交
  5. 21 7月, 2012 13 次提交
    • E
      tests: reduce length of nodeinfodata test names · df80282d
      Eric Blake 提交于
      Commit ddd6bef4 switched to the ustar format to fix an issue where
      'make dist' fails to create a tarball because we have files with
      relative names longer than 100 bytes by the time you include a
      'libvirt-0.9.13' prefix.  Unfortunately, even with ustar format,
      the use of 'tar -ch' tries to convert symlinks to hard links,
      also with a name too long (omitting the -h works, but automake
      automatically passes -h); such symlinks were added in commit
      6dcf98c8, which resulted in 'make dist' breaking again.  The
      solution is to rename the offending symlinks to something shorter,
      by shortening the entire nodeinfodata naming scheme.
      
      * tests/nodeinfotest.c (mymain): Shorten test names.
      (linuxTestNodeInfo): Accommodate new names.
      * tests/nodeinfodata/*: Rename files accordingly.
      df80282d
    • E
      tests: avoid seclabeltest crash · a22a36e8
      Eric Blake 提交于
      Commit a56c3470 introduced a use of random numbers into seclabel
      handling, but failed to initialize the random number generator
      in the testsuite.  Also, fail with usual status, not 255.
      
      * tests/seclabeltest.c (main): Initialize randomness.
      a22a36e8
    • G
      openvz: Implement domainGetHostname · be7e61a6
      Guido Günther 提交于
      be7e61a6
    • G
      openvz: Add openvzVEGetStringParam · 4e846804
      Guido Günther 提交于
      to retrieve a VEs config parameters as a single string. This will be
      used by the upcoming domainGetHostname implementation.
      4e846804
    • G
      remote: Provide RPC call for domainGetHostname · 6869b597
      Guido Günther 提交于
      6869b597
    • G
      virsh: Add domhostname · 0429e5f0
      Guido Günther 提交于
      to query the guest's hostname.
      0429e5f0
    • G
      Add virDomainGetHostname · a91067fa
      Guido Günther 提交于
      to query a guests's hostname. Containers like LXC and OpenVZ allow to
      set a hostname different from the hosts name and QEMU's guest agent
      could provide similar functionality.
      a91067fa
    • D
      Report 'errno' in int1 field of virErrorPtr · 2ef6f69a
      Daniel P. Berrange 提交于
      When reporting a system error (VIR_ERR_SYSTEM_ERROR) via
      virReportSystemError, we should copy the errno value into
      the 'int1' field of the virErrorPtr struct. This allows
      callers to detect certain errno conditions & discard the
      error
      
      * src/util/virterror.c: Place errno value in int1 field
      2ef6f69a
    • D
      Only enforce check for YAJL when starting a VM · 33998759
      Daniel P. Berrange 提交于
      The previous check for YAJL would have many undesirable
      consequences, the most important being that it caused the
      capabilities XML to lose all <guest> elements. There is
      no user visible feedback as to what is wrong in this respect,
      merely a syslog message. The empty capabilities causes
      libvirtd to then throw away all guest XML configs that are
      stored.
      
      This changes the code so that the check for YAJL is only
      performed at the time we attempt to spawn a QEMU process
      
      error: Failed to start domain vm-vnc
      error: unsupported configuration: this qemu binary requires libvirt to be compiled with yajl
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      33998759
    • D
      Use a hash table for storing MCS labels · a56c3470
      Daniel P. Berrange 提交于
      Instead of using an O(n) efficiency linked list for storing
      MCS labels, use a hash table. Instead of having the list
      be global, put it in the SELinux driver private data struct
      to ensure uniqueness across different instances of the driver.
      This also ensures thread safety when multiple hypervisor
      drivers are used in the same libvirtd process
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      a56c3470
    • D
      Fix error handling when adding MCS labels · 2e668a61
      Daniel P. Berrange 提交于
      When adding MCS labels, OOM was not being handled correctly.
      In addition when reserving an existing label, no check was
      made to see if it was already reserved
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      2e668a61
    • D
      Use standard naming prefix for SELinux driver function names · 12b187fb
      Daniel P. Berrange 提交于
      The function names in the SELinux driver all start with
      SELinux or 'mcs' as a prefix. Sanitize this so that they
      all use 'virSecuritySELinux' as the prefix
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      12b187fb
    • D
      Disable NWFilter driver completely when unprivileged · f8ab364c
      Daniel P. Berrange 提交于
      Running libvirtd unprivileged results in a warning message from
      the NWFilter driver
      
        virNWFilterSnoopLeaseFileRefresh:1882 : open("/var/run/libvirt/network/nwfilter.ltmp"): No such file or directory
      
      Since it requires privileged network access, this driver should
      not even run when unprivileged.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      f8ab364c
  6. 20 7月, 2012 8 次提交