1. 26 7月, 2012 10 次提交
    • O
      virsh: Split cmds to manage domain snapshot from virsh.c · 648ad247
      Osier Yang 提交于
      Commands to manage domain snapshot are moved from virsh.c to
      virsh-snapshot.c.
      
      * virsh.c: Remove domain snapshot commands.
      * virsh-snapshot.c: New file, filled with domain snapshot commands.
      * po/POTFILES.in: Add virsh-snapshot.c
      * cfg.mk: Skip strcase and config.h including checking for
                virsh-snapshot.c
      648ad247
    • O
      virsh: Split cmds to manage secret from virsh.c · d7acdcf0
      Osier Yang 提交于
      Commands to manage secret are moved from virsh.c to virsh-secret.c,
      with a few helpers for secret command use.
      
      * virsh.c: Remove secret commands and a few helpers.
                 (vshCommandOptSecret, and vshCommandOptSecretBy)
      * virsh-secret.c: New file, filled with secret commands and its helpers.
      * po/POTFILES.in: Add virsh-secret.c
      * cfg.mk: Skip to check config.h including for virsh-secret.c
      d7acdcf0
    • O
      virsh: Split cmds to manage network filter from virsh.c · e9d10055
      Osier Yang 提交于
      Commands to manage network filter are moved from virsh.c to virsh-nwfilter.c,
      with a few helpers for network filter command use.
      
      * virsh.c: Remove network filter commands and a few helpers.
                 (vshCommandOptNWFilter, and vshCommandOptNWFilterBy)
      * virsh-nwfilter.c: New file, filled with network filter commands and its helpers.
      
      * po/POTFILES.in: Add virsh-nwfilter.c
      
      * cfg.mk: Skip to check config.h including for virsh-nwfilter.c
      e9d10055
    • O
      virsh: Split cmds to manage host interface from virsh.c · 0c39ea2f
      Osier Yang 提交于
      Commands to manage host interface are moved from virsh.c to
      virsh-interface.c, with a few helpers for interface command use.
      
      * virsh.c: Remove interface commands and a few helpers.
                 (vshCommandOptInterface, vshCommandOptInterfaceBy)
      * virsh-interface.c: New file, filled with interface commands and
                           its helpers.
      * cfg.mk: Skip to check config.h including for virsh-interface.c
      * po/POTFILES.in: Add virsh-interface.c
      0c39ea2f
    • O
      virsh: Split cmds to manage network from virsh.c · 0510f97e
      Osier Yang 提交于
      Commands to manage network are moved from virsh.c to virsh-network.c,
      with a few helpers for network command use.
      
      * virsh.c: Remove network commands and a few helpers.
      * virsh-network.c: New file, filled with network commands and its
                         helpers.
      * po/POTFILES.in: Add virsh-network.c
      * cfg.mk: Skip to check config.h including for virsh-network.c
      0510f97e
    • O
      virsh: Split cmds of storage pool group from virsh.c · 2f033890
      Osier Yang 提交于
      This splits commands of storage pool group into virsh-pool.c,
      The helpers not for common use are moved too. Standard copyright
      is added for the new file.
      
      * tools/virsh.c:
        Remove commands for storage storage pool and a few helpers.
        (vshCommandOptVol, vshCommandOptVolBy).
      
      * tools/virsh-pool.c:
        New file, filled with commands of storage pool group and its
        helpers.
      
      * po/POTFILES.in:
        Add virsh-pool.c
      
      * cfg.mk:
        Skip to check config.h including for virsh-pool.c
      2f033890
    • O
      virsh: Split cmds of storage volume group from virsh.c · 9fbb344f
      Osier Yang 提交于
      This splits commands of storage volume group into virsh-volume.c,
      The helpers not for common use are moved too. Standard copyright
      is added for the new file.
      
      * tools/virsh.c:
        Remove commands for storage storage volume and a few helpers.
        (vshCommandOptVol, vshCommandOptVolBy).
      
      * tools/virsh-volume.c:
        New file, filled with commands of storage volume group and its
        helpers.
      
      * po/POTFILES.in:
        Add virsh-volume.c
      
      * cfg.mk:
        Skip to check config.h including for virsh-volume.c
      9fbb344f
    • O
      virsh: Split cmds of domain group from virsh.c · 73b89ed8
      Osier Yang 提交于
      This splits commands to manage domain into virsh-domain.c,The helpers
      not for common use are moved into them too. Standard copyright is added
      for the new file.
      
      * tools/virsh.c:
        - Remove commands for domain group, and one helper
          (vshDomainVcpuStateToString)
        - vshStreamSink is moved before commands's definition for it's
          also used by commands not of domain group, such as volUpload.
      
      * tools/virsh-domain.c:
        - New file, commands for domain group and the one helper are
          moved into it.
      
      * po/POTFILES.in:
        - Add virsh-domain.c
      
      * cfg.mk:
        - Skip to check config.h including for virsh-domain.c
      73b89ed8
    • O
      virsh: Split cmds for domain monitoring from virsh.c · 9f4baa22
      Osier Yang 提交于
      This splits commands commands to monitor domain status into
      virsh-domain-monitor.c. The helpers not for common use are moved too.
      Standard copyright is added.
      
      * tools/virsh.c:
        - Remove commands for domain monitoring group and a few helpers (
          vshDomainIOErrorToString, vshGetDomainDescription,
          vshDomainControlStateToString, vshDomainStateToString) not for
          common use.
        - Remove (incldue "intprops.h").
      
      * tools/virsh-domain-monitor.c:
        - New file, filled with commands of domain monitor group.
        - Add "intprops.h".
      
      * cfg.mk:
        - Skip strcase checking for virsh-domain-monitor.c
        - Skip to check config.h including for virsh-domain-monitor.c
      
      * po/POTFILES.in
        - Add virsh-domain-monitor.c
      9f4baa22
    • O
      virsh: Move definition of cmds and cmd groups right at the top of main · e92ff10b
      Osier Yang 提交于
      This will avoid many conflicts if moving the codes for each command
      group into separate files in later patches.
      e92ff10b
  2. 24 7月, 2012 1 次提交
  3. 21 7月, 2012 1 次提交
  4. 19 7月, 2012 1 次提交
    • S
      Add a sheepdog backend for the storage driver · 29bc4fe6
      Sebastian Wiedenroth 提交于
      This patch brings support to manage sheepdog pools and volumes to libvirt.
      It uses the "collie" command-line utility that comes with sheepdog for that.
      
      A sheepdog pool in libvirt maps to a sheepdog cluster.
      It needs a host and port to connect to, which in most cases
      is just going to be the default of localhost on port 7000.
      
      A sheepdog volume in libvirt maps to a sheepdog vdi.
      To create one specify the pool, a name and the capacity.
      Volumes can also be resized later.
      
      In the volume XML the vdi name has to be put into the <target><path>.
      To use the volume as a disk source for virtual machines specify
      the vdi name as "name" attribute of the <source>.
      The host and port information from the pool are specified inside the host tag.
      
        <disk type='network'>
          ...
          <source protocol="sheepdog" name="vdi_name">
            <host name="localhost" port="7000"/>
          </source>
        </disk>
      
      To work right this patch parses the output of collie,
      so it relies on the raw output option. There recently was a bug which caused
      size information to be reported wrong. This is fixed upstream already and
      will be in the next release.
      Signed-off-by: NSebastian Wiedenroth <wiedi@frubar.net>
      29bc4fe6
  5. 17 7月, 2012 1 次提交
    • S
      Convert 'raw MAC address' usages to use virMacAddr · 387117ad
      Stefan Berger 提交于
      Introduce new members in the virMacAddr 'class'
      - virMacAddrSet: set virMacAddr from a virMacAddr
      - virMacAddrSetRaw: setting virMacAddr from raw 6 byte MAC address buffer
      - virMacAddrGetRaw: writing virMacAddr into raw 6 byte MAC address buffer
      - virMacAddrCmp: comparing two virMacAddr
      - virMacAddrCmpRaw: comparing a virMacAddr with a raw 6 byte MAC address buffer
      
      then replace raw MAC addresses by replacing
      
      - 'unsigned char *' with virMacAddrPtr
      - 'unsigned char ... [VIR_MAC_BUFLEN]' with virMacAddr
      
      and introduce usage of above functions where necessary.
      387117ad
  6. 13 7月, 2012 1 次提交
  7. 12 7月, 2012 1 次提交
  8. 10 7月, 2012 2 次提交
  9. 04 7月, 2012 1 次提交
  10. 30 6月, 2012 1 次提交
  11. 27 6月, 2012 1 次提交
    • D
      virsh: Add domdisplay cmd for VNC, SPICE and RDP · 421a2009
      Doug Goldstein 提交于
      v2:
      - Refactored to use virBuffer
      - Refactored to use virXPath wrappers
      - Added support for tls-port and password for SPICE
      - Added optional flag to disable SPICE password to the URI
      - Added support for RDP
      - Fixed code reviews
      
      Add a new 'domdisplay' command that provides a URI for VNC, SPICE and
      RDP connections. Presently the 'vncdisplay' command provides you with
      the port info that QEMU is listening on but there is no counterpart for
      SPICE and RDP. Additionally this provides you with the bind address as
      specified in the XML, which the existing 'vncdisplay' lacks. For SPICE
      connections it supports secure and unsecure channels and optionally
      providing the password for the SPICE channel.
      Signed-off-by: NDoug Goldstein <cardoe@cardoe.com>
      421a2009
  12. 25 6月, 2012 3 次提交
  13. 22 6月, 2012 1 次提交
  14. 21 6月, 2012 2 次提交
    • P
      virsh: add support for virConnectListAllDomains and clean up cmdList · d62e51f8
      Peter Krempa 提交于
      This patch makes use of the newly added api virConnectListAllDomains()
      to list domains in virsh.
      
      Virsh now represents lists of domains using an internal structure
      vshDomainList. This structure contains the virDomainPtr list as provided
      by virConnectListAllDomains() and the count of domains in the list.
      
      For backwards compatibility, the function vshDomainListCollect was added
      that tries to enumerate the domains using the new API and if the API is
      not supported falls back to the older approach with the two list
      functions.  The helper function also simulates filtering by all
      currently supported flags added with virConnectListAllDomains().
      
      This patch also cleans up the "list" command handler to use the new
      helpers and adds new command line flags to make use of filtering.
      d62e51f8
    • P
      f1b872b2
  15. 20 6月, 2012 3 次提交
    • E
      list: use the new snapshot API in virsh when possible · a7f7bf02
      Eric Blake 提交于
      Using the new API is so much shorter than the rest of the remainder
      of the function.
      
      * tools/virsh.c (vshSnapshotList): Use the new API.
      a7f7bf02
    • E
      snapshot: expose new flags in virsh · 35ae18f3
      Eric Blake 提交于
      Previously, to get the name of all snapshots with children, it was
      necessary to get the name of all snapshots and then remove the
      name of leaf snapshots.  This is racy, and somewhat inefficient
      compared to planned API additions.  We can emulate --no-metadata on
      0.9.5-0.9.12, but for now, there is no emulation of --no-leaves.
      
      * tools/virsh.c (cmdSnapshotList): Add new options --no-leaves and
      --no-metadata.
      (vshSnapshotList): Emulate where possible.
      * tools/virsh.pod (snapshot-list): Document them.
      35ae18f3
    • M
      virsh: fix few typos on desc command · 3dc733bb
      Martin Kletzander 提交于
      virsh help fix:
       - <--title> can also /get/ the title
      
      virsh man page:
       - missing <domain-id>
       - <new_desc> should be <new-desc>
      3dc733bb
  16. 19 6月, 2012 1 次提交
  17. 18 6月, 2012 1 次提交
  18. 16 6月, 2012 2 次提交
    • E
      snapshot: use new virsh function for snapshot-list · 90a61b39
      Eric Blake 提交于
      Operating on a list of snapshot objects looks so much simpler.
      In particular, since the helper function already trimmed out
      irrelevant entries, we no longer have quite so many special cases
      on finding the first snapshot to operate on.  Also, vshTreePrint
      no longer has a generic callback struct; both clients now pass
      something different according to their own needs.
      
      * tools/virsh.c (cmdSnapshotList): Use previous patches.
      (vshTreeArrayLookup): Rename...
      (vshNodeListLookup): ...now that it only has one client.
      (cmdNodeListDevices): Adjust caller.
      90a61b39
    • E
      snapshot: new virsh function factored from snapshot-list · 76d397b0
      Eric Blake 提交于
      This patch is based on the fallback code out of cmdSnapshotList,
      with tweaks to keep the snapshot objects around rather than just
      their name, and to remove unwanted elements before returning.
      It looks forward to a future patch when we add a way to list all
      snapshot objects at once, and the next patch will simplify
      cmdSnapshotList to take advantage of this factorization.
      
      * tools/virsh.c (vshSnapshotList, vshSnapshotListFree): New functions.
      76d397b0
  19. 15 6月, 2012 2 次提交
    • W
      virsh: allow the user to specify vmcore's format · 440b8ad1
      Wen Congyang 提交于
      Add a new parameter --memory-only for 'virsh dump' command. So
      the user can decide the vmcore's format.
      440b8ad1
    • O
      virsh: Null terminated the string memcpy from buffer explicitly · e3843d7f
      Osier Yang 提交于
      Detected by valgrind:
      
      ==16217== 1 errors in context 1 of 12:
      ==16217== Invalid read of size 1
      ==16217==    at 0x4A07804: __GI_strlen (mc_replace_strmem.c:284)
      ==16217==    by 0x3019F167F6: xdr_string (in /lib64/libc-2.12.so)
      ==16217==    by 0x3033709E8D: xdr_remote_nonnull_string (remote_protocol.c:31)
      ==16217==    by 0x303370E5CB: xdr_remote_domain_update_device_flags_args (remote_protocol.c:2028)
      ==16217==    by 0x30337197D1: virNetMessageEncodePayload (virnetmessage.c:341)
      ==16217==    by 0x30337135E1: virNetClientProgramCall (virnetclientprogram.c:327)
      ==16217==    by 0x30336F1EFD: callWithFD (remote_driver.c:4586)
      ==16217==    by 0x30336F1F7B: call (remote_driver.c:4607)
      ==16217==    by 0x30336F42F2: remoteDomainUpdateDeviceFlags (remote_client_bodies.h:2865)
      ==16217==    by 0x30336D46E5: virDomainUpdateDeviceFlags (libvirt.c:9457)
      ==16217==    by 0x41AEE8: cmdChangeMedia (virsh.c:15249)
      ==16217==    by 0x413CB4: vshCommandRun (virsh.c:18669)
      ==16217==  Address 0x4ec5e25 is 0 bytes after a block of size 293 alloc'd
      ==16217==    at 0x4A04A28: calloc (vg_replace_malloc.c:467)
      ==16217==    by 0x303364F1DB: virAllocN (memory.c:129)
      ==16217==    by 0x41A844: vshPrepareDiskXML (virsh.c:15043)
      ==16217==    by 0x41AECC: cmdChangeMedia (virsh.c:15246)
      ==16217==    by 0x413CB4: vshCommandRun (virsh.c:18669)
      ==16217==    by 0x423973: main (virsh.c:20261)
      e3843d7f
  20. 14 6月, 2012 4 次提交
    • M
      virsh: Report name from edited object · 79521a5e
      Michal Privoznik 提交于
      There is a little easter egg in virsh: one can easily clone
      an object (domain, network, ...). Just 'virsh edit' change the name
      and remove <uuid>. And then, in the end when reporting success
      the new name was printed out.
      However, with recent edit rewrite we lost the final part and are
      still printing the original name out.
      79521a5e
    • M
      virsh: Honor reedit opts printing to a function · b00469b6
      Michal Privoznik 提交于
      When printing reedit options we make stdin raw. However,
      this results in stdout being raw as well. Therefore we need
      to return carriage when doing new line. Unfortunately,
      '\r' cannot be part of internationalized messages hence
      we must move them to formatting string which then in turn
      become huge and disarranged. To solve this, a new function
      is introduced which takes variable string arguments and
      prepend each with "\r\n" just before printing.
      b00469b6
    • P
      virsh: Don't generate invalid XML in attach-disk command · 5b474026
      Peter Krempa 提交于
      The attach-disk command used with parameter --cache created an invalid
      XML snippet as the beginning of the <driver> element was not printed
      when used solely with --cache and no other attribute to driver.
      5b474026
    • L
      network: fully support/use VIR_NETWORK_XML_INACTIVE flag · 1f145b2f
      Laine Stump 提交于
      commit 52d064f4 added
      VIR_NETWORK_XML_INACTIVE in order to allow suppressing the
      auto-generated list of VFs in network definitions, and a --inactive
      flag to virsh net-dumpxml to take advantage of the flag. However, it
      missed out on two opportunities:
      
      1) Use INACTIVE to get the current config of the network as it
         exists on disk, rather than the currently active config.
      
      2) Add INACTIVE to the flags used for the virsh net-edit command, so
         that it won't include the forward-pool interfaces that were
         autogenerated, and so that a re-edit of the network prior to
         restarting it will show any other edits made since the last restart
         of the network. (prior to this patch, if you edited a network a 2nd
         time without restarting, all of the previous edits would magically
         disappear).
      
      In order to fit with the new #define-based generic edit function in
      virsh.c, a new function vshNetworkGetXMLDesc() was added. This
      function first tries to call virNetworkGetXMLDesc with the INACTIVE
      flag added, then retries without if the first attempt fails (in the
      manner expected when the server doesn't support it).
      1f145b2f