1. 20 2月, 2014 1 次提交
    • J
      virsh: fix memleak when starting a guest with invalid fd · 6c1059ef
      Jincheng Miao 提交于
      When start a guest with --pass-fd, if the argument of --pass-fd is invalid,
      virsh will exit, but doesn't free the variable 'dom'.
      
      The valgrind said:
      ...
      ==24569== 63 (56 direct, 7 indirect) bytes in 1 blocks are definitely lost in loss record 130 of 234
      ==24569==    at 0x4C2A1D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
      ==24569==    by 0x4E879A4: virAllocVar (viralloc.c:544)
      ==24569==    by 0x4EBD625: virObjectNew (virobject.c:190)
      ==24569==    by 0x4F3A18A: virGetDomain (datatypes.c:226)
      ==24569==    by 0x4F9311F: remoteDomainLookupByName (remote_driver.c:6636)
      ==24569==    by 0x4F44F20: virDomainLookupByName (libvirt.c:2277)
      ==24569==    by 0x12F616: vshCommandOptDomainBy (virsh-domain.c:105)
      ==24569==    by 0x131C79: cmdStart (virsh-domain.c:3330)
      ==24569==    by 0x12C4AB: vshCommandRun (virsh.c:1752)
      ==24569==    by 0x127001: main (virsh.c:3218)
      
      https://bugzilla.redhat.com/show_bug.cgi?id=1067338Signed-off-by: NJincheng Miao <jmiao@redhat.com>
      Signed-off-by: NEric Blake <eblake@redhat.com>
      6c1059ef
  2. 06 2月, 2014 2 次提交
  3. 04 2月, 2014 2 次提交
  4. 24 1月, 2014 1 次提交
    • J
      wireshark: Fix VPATH build · 68b0ff45
      Jiri Denemark 提交于
      config-post.h included indirectly from packet-libvirt.c stays in
      $(top_srcdir) rather than $(top_builddir) which is added automatically.
      68b0ff45
  5. 23 1月, 2014 1 次提交
    • O
      storage: Add document for possible problem on volume detection · 6b29eb84
      Osier Yang 提交于
      For pool which relies on remote resources, such as a "iscsi" type
      pool, since how long it takes to export the corresponding devices
      to host's sysfs is really depended, it could depend on the network
      connection, it also could depend on the host's udev procedures. So
      it's likely that the volumes are not able to be detected during pool
      starting process, polling the sysfs doesn't work, since we don't
      know how much time is best for the polling, and even worse, the
      volumes could still be not detected or partly not detected even after
      the polling.  So we end up with a documentation to prompt the fact,
      in virsh manual.
      
      And as a small improvement, let's explicitly say no LUNs found in
      the debug log in that case.
      6b29eb84
  6. 22 1月, 2014 3 次提交
  7. 21 1月, 2014 3 次提交
    • L
      build: add $(prefix) to SYSTEMD_UNIT_DIR · 00e9d607
      Laine Stump 提交于
      I noticed this problem when adding systemd support to netcf, because I
      setup the configure.ac to automatically prefer using systemd over
      initscripts when possible - although I had copied the
      install-data-local target from the example of libvirt's
      "libvirt-guests" service more or less verbatim, "make distcheck" would
      fail because it was trying to install the service file directly into
      /lib/systemd/system rather than into
      /home/user/some/unimportant/name/lib/systemd/system.
      
      This is caused by the install/uninstall rules for the systemd unit
      files relying on $(DESTDIR) pointing the installed files to the right
      place, but in reality $(DESTDIR) is empty during this part of make
      distcheck - it instead sets $(prefix) with the toplevel directory used
      for its test build/install/uninstall cycle.
      
      (This problem hasn't been seen when running "make distcheck" in
      libvirt because libvirt will never build/install systemd support
      unless explicitly told to do so on the configure commandline, and
      "make distcheck" doesn't put the "--with-initscript=..." option on the
      configure commandline.)
      
      I verified that the same problem does exist in libvirt by modifying
      libvirt's configure.ac to set:
      
        init_systemd=yes
        with_init_script=systemd+redhat
      
      This forces a build/install of the systemd unit files during
      distcheck, which yields an error like this:
      
      /usr/bin/install -c -m 644 virtlockd.service \
        /lib/systemd/system/
      libtool: install: warning: relinking `libvirt-qemu.la'
      /usr/bin/install: cannot remove '/lib/systemd/system/virtlockd.service': Permission denied
      make[4]: *** [install-systemd] Error 1
      
      After adding $(prefix) to all the definitions of SYSTEMD_UNIT_DIR,
      make distcheck now completes successfully with the modified
      configure.ac, and the above lines change to something like this:
      
      /usr/bin/install -c -m 644 virtlockd.service \
        /home/laine/devel/libvirt/libvirt-1.2.1/_inst/lib/systemd/system/
      00e9d607
    • Y
      Add sample output of Wireshark dissector · bad1cbe1
      Yuto KAWAMURA(kawamuray) 提交于
      Add directory tools/wireshark/samples/ and
      libvirt-sample.pdml which is sample output of dissector.
      bad1cbe1
    • Y
      Introduce Libvirt Wireshark dissector · 4f32c5f7
      Yuto KAWAMURA(kawamuray) 提交于
      Introduce Wireshark dissector plugin which adds support to Wireshark
      for dissecting libvirt RPC protocol.
      Added following files to build Wireshark dissector from libvirt source
      tree.
      * tools/wireshark/*: Source tree of Wireshark dissector plugin.
      
      Added followings to configure.ac or Makefile.am.
      configure.ac
      * --with-wireshark-dissector: Enable support for building Wireshark
        dissector.
      * --with-ws-plugindir: Specify wireshark plugin directory that dissector
        will installed.
      * Added tools/wireshark/{Makefile,src/Makefile} to  AC_CONFIG_FILES.
      Makefile.am
      * Added tools/wireshark/ to SUBDIR.
      4f32c5f7
  8. 20 1月, 2014 2 次提交
  9. 16 1月, 2014 1 次提交
    • P
      Fix possible memory leak in virsh-domain-monitor.c in cmdDomblklist · bb22de2e
      Pavel Hrdina 提交于
      In a "for" loop there are created two new strings and they may not
      be freed if a "target" string cannot be obtained. We have to free
      the two created strings to prevent the memory leak.
      
      This has been found by coverity.
      
      John also pointed out that we should somehow care about the "type"
      and "device" and Osier agreed to exit with error message if one of
      them is set to NULL.
      Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
      bb22de2e
  10. 10 1月, 2014 1 次提交
    • E
      virt-login-shell: fix regressions in behavior · 3d007cb5
      Eric Blake 提交于
      Our fixes for CVE-2013-4400 were so effective at "fixing" bugs
      in virt-login-shell that we ended up fixing it into a useless
      do-nothing program.
      
      Commit 3e2f27e1 picked the name LIBVIRT_SETUID_RPC_CLIENT for
      the witness macro when we are doing secure compilation.  But
      commit 9cd6a57d checked whether the name IN_VIRT_LOGIN_SHELL,
      from an earlier version of the patch series, was defined; with
      the net result that virt-login-shell invariably detected that
      it was setuid and failed virInitialize.
      
      Commit b7fcc799 closed all fds larger than stderr, but in the
      wrong place.  Looking at the larger context, we mistakenly did
      the close in between obtaining the set of namespace fds, then
      actually using those fds to switch namespace, which means that
      virt-login-shell will ALWAYS fail.
      
      This is the minimal patch to fix the regressions, although
      further patches are also worth having to clean up poor
      semantics of the resulting program (for example, it is rude to
      not pass on the exit status of the wrapped program back to the
      invoking shell).
      
      * tools/virt-login-shell.c (main): Don't close fds until after
      namespace swap.
      * src/libvirt.c (virGlobalInit): Use correct macro.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      3d007cb5
  11. 09 1月, 2014 1 次提交
  12. 08 1月, 2014 2 次提交
  13. 25 12月, 2013 1 次提交
    • M
      virkeycode: Allow ANSI_A · 72ffbd1b
      Michal Privoznik 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1044806
      
      Currently, sending the ANSI_A keycode from os_x codepage doesn't work as
      it has a special value of 0x0. Our internal code handles that no
      different to other not defined keycodes. Hence, in order to allow it we
      must change all the undefined keycodes from 0 to -1 and adapt some code
      too.
      
        # virsh send-key guestname --codeset os_x ANSI_A
        error: invalid keycode: 'ANSI_A'
      
        # virsh send-key guestname --codeset os_x ANSI_B
        # virsh send-key guestname --codeset os_x ANSI_C
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      72ffbd1b
  14. 24 12月, 2013 1 次提交
  15. 19 12月, 2013 1 次提交
    • P
      storage: Add gluster pool filter and fix virsh pool listing · b560946c
      Peter Krempa 提交于
      Recent addition of the gluster pool type omitted fixing the virsh and
      virConnectListAllStoragePool filters. A typecast of the converting
      function in virsh showed that also the sheepdog pool was omitted in the
      command parser.
      
      This patch adds gluster pool filtering support and fixes virsh to
      properly convert all supported storage pool types. The added typecast
      should avoid doing such mistakes in the future.
      b560946c
  16. 18 12月, 2013 2 次提交
  17. 16 12月, 2013 1 次提交
  18. 12 12月, 2013 1 次提交
    • E
      storage: show gluster option in virsh --version=long · 602751b4
      Eric Blake 提交于
      Adding output to 'virsh --version=long' makes it easier to
      tell if a distro built with particular libraries (it doesn't
      tell you what a remote libvirtd is built with, but is still
      better than nothing).  But we forgot to mention gluster.
      
      * tools/virsh.c (vshShowVersion): Add gluster witness.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      602751b4
  19. 03 12月, 2013 2 次提交
  20. 02 12月, 2013 1 次提交
  21. 26 11月, 2013 1 次提交
    • E
      storage: add network-dir as new storage volume type · ecd881b7
      Eric Blake 提交于
      In the 'directory' and 'netfs' storage pools, a user can see
      both 'file' and 'dir' storage volume types, to know when they
      can descend into a subdirectory.  But in a network-based storage
      pool, such as the upcoming 'gluster' pool, we use 'network'
      instead of 'file', and did not have any counterpart for a
      directory until this patch.  Adding a new volume type
      'network-dir' is better than reusing 'dir', because it makes
      it clear that the only way to access 'network' volumes within
      that container is through the network mounting (leaving 'dir'
      for something accessible in the local file system).
      
      * include/libvirt/libvirt.h.in (virStorageVolType): Expand enum.
      * docs/formatstorage.html.in: Document it.
      * docs/schemasa/storagevol.rng (vol): Allow new value.
      * src/conf/storage_conf.c (virStorageVol): Use new value.
      * src/qemu/qemu_command.c (qemuBuildVolumeString): Fix client.
      * src/qemu/qemu_conf.c (qemuTranslateDiskSourcePool): Likewise.
      * tools/virsh-volume.c (vshVolumeTypeToString): Likewise.
      * src/storage/storage_backend_fs.c
      (virStorageBackendFileSystemVolDelete): Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      ecd881b7
  22. 21 11月, 2013 1 次提交
    • E
      maint: fix comma style issues: tests, tools · 57682aea
      Eric Blake 提交于
      Most of our code base uses space after comma but not before;
      fix the remaining uses before adding a syntax check.
      
      * tests/sysinfotest.c: Consistently use commas.
      * tests/viratomictest.c: Likewise.
      * tests/vircgroupmock.c: Likewise.
      * tools/virsh-domain.c: Likewise.
      * tools/virsh-volume.c: Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      57682aea
  23. 20 11月, 2013 3 次提交
  24. 19 11月, 2013 1 次提交
    • R
      build: work around super-old readline.h · 9eb23fe2
      Ryota Ozaki 提交于
      This patch shuts up the following warning of clang
      on Mac OS X:
      
        virsh.c:2761:22: error: assigning to 'char *' from 'const char [6]' discards qualifiers
            [-Werror,-Wincompatible-pointer-types-discards-qualifiers]
            rl_readline_name = "virsh";
                             ^ ~~~~~~~
      
      The warning happens because rl_readline_name on Mac OS X comes
      from an old readline header that still uses 'char *', while it
      is 'const char *' in readline 4.2 (April 2001) and newer.
      
      Tested on Mac OS X 10.8.5 (clang-500.2.75) and Fedora 19 (gcc 4.8.1).
      Signed-off-by: NRyota Ozaki <ozaki.ryota@gmail.com>
      Signed-off-by: NEric Blake <eblake@redhat.com>
      9eb23fe2
  25. 13 11月, 2013 4 次提交
    • P
      virsh-secret: Unify list column alignment · 8d7800a5
      Peter Krempa 提交于
      Before:
      
      $ virsh secret-list
      UUID                                 Usage
      -----------------------------------------------------------
      0a81f5b2-8403-7b23-c8d6-21ccc2f80d6f volume /var/lib/libvirt/images/puppyname.img
      0a81f5b2-8403-7b23-c8d6-2deadbeefd6f Unused
      
      After:
      
      $ virsh secret-list
       UUID                                  Usage
      --------------------------------------------------------------------------------
       0a81f5b2-8403-7b23-c8d6-21ccc2f80d6f  volume /var/lib/libvirt/images/puppyname.img
       0a81f5b2-8403-7b23-c8d6-2deadbeefd6f  Unused
      8d7800a5
    • P
      virsh-interface: Unify list column alignment · 8cb426a2
      Peter Krempa 提交于
      Before:
      
      $ virsh iface-list
      Name                 State      MAC Address
      --------------------------------------------
      br0                  active     f0:de:f1:dc:b8:b0
      virbr2               active     52:54:00:61:78:0c
      
      After:
      
      $ virsh iface-list
       Name                 State      MAC Address
      ---------------------------------------------------
       br0                  active     f0:de:f1:dc:b8:b0
       virbr2               active     52:54:00:61:78:0c
      8cb426a2
    • P
      virsh-nwfilter: Unify list command column alignment · 75fe29e2
      Peter Krempa 提交于
      Before:
      $ virsh nwfilter-list
      UUID                                  Name
      ----------------------------------------------------------------
      651d902c-165c-4bcc-8d73-41319af1e6bc  allow-arp
      9ae11362-df6b-407f-8864-3bdf5125bf77  allow-dhcp
      53b5a9ed-7d46-480f-a201-6d8a503d6533  allow-dhcp-server
      
      After:
      $ virsh nwfilter-list
       UUID                                  Name
      ------------------------------------------------------------------
       651d902c-165c-4bcc-8d73-41319af1e6bc  allow-arp
       9ae11362-df6b-407f-8864-3bdf5125bf77  allow-dhcp
       53b5a9ed-7d46-480f-a201-6d8a503d6533  allow-dhcp-server
      75fe29e2
    • P
      virsh-pool: Unify spacing of listing function · 96f4b5eb
      Peter Krempa 提交于
      Change the alignment to match the domain listing function.
      
      Before:
      
      $ virsh pool-list
      Name                 State      Autostart
      -----------------------------------------
      boot-scratch         active     no
      default              active     no
      glusterpool          active     no
      
      $ virsh pool-list --details
      Name          State    Autostart  Persistent    Capacity  Allocation  Available
      -------------------------------------------------------------------------------
      boot-scratch  running  no         yes         117.99 GiB  101.40 GiB  16.60 GiB
      default       running  no         yes         117.99 GiB  101.40 GiB  16.60 GiB
      glusterpool   running  no         yes          29.40 GiB   44.23 MiB  29.36 GiB
      
      After:
      
      $ virsh pool-list
       Name                 State      Autostart
      -------------------------------------------
       boot-scratch         active     no
       default              active     no
       glusterpool          active     no
      
      $ virsh pool-list --details
       Name          State    Autostart  Persistent    Capacity  Allocation  Available
      ---------------------------------------------------------------------------------
       boot-scratch  running  no         yes         117.99 GiB  101.40 GiB  16.60 GiB
       default       running  no         yes         117.99 GiB  101.40 GiB  16.60 GiB
       glusterpool   running  no         yes          29.40 GiB   44.23 MiB  29.36 GiB
      96f4b5eb