1. 02 4月, 2014 9 次提交
    • E
      conf: move storage source type to util/ · 8a20e227
      Eric Blake 提交于
      With this patch, all information related to a host resource in
      a storage file backing chain now lives in util/virstoragefile.h.
      The next step will be to consolidate various places that have
      been tracking backing chain details to all use a common struct.
      
      The changes to tools/Makefile.am were made necessary by the
      fact that virstorageencryption includes uses of libxml, and is
      now pulled in by inclusion from virstoragefile.h.  No
      additional libraries are linked into the final image, and in
      comparison, the build of the setuid library in src/Makefile.am
      already was using LIBXML_CFLAGS via AM_CFLAGS.
      
      * src/conf/domain_conf.h (virDomainDiskSourceDef): Move...
      * src/util/virstoragefile.h (virStorageSource): ...and rename.
      * src/conf/domain_conf.c (virDomainDiskSourceDefClear)
      (virDomainDiskAuthClear): Adjust clients.
      * tools/Makefile.am (virt_login_shell_CFLAGS)
      (virt_host_validate_CFLAGS): Add libxml headers.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      8a20e227
    • E
      conf: move storage secret type to util/ · c05d9dca
      Eric Blake 提交于
      This one is a relatively easy move.  We don't ever convert the
      enum to or from strings (it is inferred from other elements in
      the xml, rather than directly represented).
      
      * src/conf/domain_conf.h (virDomainDiskSecretType): Move...
      * src/util/virstoragefile.h (virStorageSecreteType): ...and
      rename.
      * src/conf/domain_conf.c (virDomainDiskSecretType): Drop unused
      enum conversion.
      (virDomainDiskAuthClear, virDomainDiskDefParseXML)
      (virDomainDiskDefFormat): Adjust clients.
      * src/qemu/qemu_command.c (qemuGetSecretString): Likewise.
      * src/qemu/qemu_conf.c (qemuTranslateDiskSourcePoolAuth):
      Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      c05d9dca
    • E
      conf: move source pool type to util/ · b6edf2bf
      Eric Blake 提交于
      Another struct being moved to util.  This one doesn't have as
      much use yet, thankfully.
      
      * src/conf/domain_conf.h (virDomainDiskSourcePoolMode)
      (virDomainDiskSourcePoolDef): Move...
      * src/util/virstoragefile.h (virStorageSourcePoolMode)
      (virStorageSourcePoolDef): ...and rename.
      * src/conf/domain_conf.c (virDomainDiskSourcePoolDefFree)
      (virDomainDiskSourceDefClear, virDomainDiskSourcePoolDefParse)
      (virDomainDiskDefParseXML, virDomainDiskSourceDefParse)
      (virDomainDiskSourceDefFormatInternal)
      (virDomainDiskDefForeachPath, virDomainDiskSourceIsBlockType):
      Adjust clients.
      * src/qemu/qemu_conf.c (qemuTranslateDiskSourcePool): Likewise.
      * src/libvirt_private.syms (domain_conf.h): Move symbols...
      (virstoragefile.h): ...as appropriate.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      b6edf2bf
    • E
      conf: move storage encryption type to util/ · 8fc32859
      Eric Blake 提交于
      Encryption keys can be associated with each source file in a
      backing chain; as such, this file belongs more in util/ where
      it can be used by virstoragefile.h.
      
      * src/conf/storage_encryption_conf.h: Rename...
      * src/util/virstorageencryption.h: ...to this.
      * src/conf/storage_encryption_conf.c: Rename...
      * src/util/virstorageencryption.c: ...to this.
      * src/Makefile.am (ENCRYPTION_CONF_SOURCES, CONF_SOURCES)
      (UTIL_SOURCES): Update to new file names.
      * src/libvirt_private.syms: Likewise.
      * src/conf/domain_conf.h: Update client.
      * src/conf/storage_conf.h: Likewise.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      8fc32859
    • E
      conf: move network disk protocol type to util/ · 4220f76a
      Eric Blake 提交于
      Another enum moved to util/, this time the fallout from renaming
      is not quite as large.
      
      * src/conf/domain_conf.h (virDomainDiskProtocol): Move...
      * src/util/virstoragefile.h (virStorageNetProtocol): ...and
      rename.
      * src/conf/domain_conf.c: Update clients.
      * src/qemu/qemu_command.c: Likewise.
      * src/qemu/qemu_conf.c: Likewise.
      * src/qemu/qemu_driver.c: Likewise.
      * src/qemu/qemu_migration.c: Likewise.
      * src/storage/storage_backend.c: Likewise.
      * src/storage/storage_backend_gluster.c: Likewise.
      * src/libvirt_private.syms (domain_conf.h): Move symbols...
      (virstoragefile.h): ...as appropriate.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      4220f76a
    • E
      conf: move host disk type to util/ · 16ac4c9d
      Eric Blake 提交于
      A continuation of the migration of disk details to virstoragefile.
      This patch moves a single enum, but converting the name has quite
      a bit of fallout.
      
      * src/conf/domain_conf.h (virDomainDiskType): Move...
      * src/util/virstoragefile.h (virStorageType): ...and rename.
      * src/bhyve/bhyve_command.c (bhyveBuildDiskArgStr)
      (virBhyveProcessBuildLoadCmd): Update clients.
      * src/conf/domain_conf.c (virDomainDiskSourceDefParse)
      (virDomainDiskDefParseXML, virDomainDiskSourceDefFormatInternal)
      (virDomainDiskDefFormat, virDomainDiskGetActualType)
      (virDomainDiskDefForeachPath, virDomainDiskSourceIsBlockType):
      Likewise.
      * src/conf/snapshot_conf.h (_virDomainSnapshotDiskDef): Likewise.
      * src/conf/snapshot_conf.c (virDomainSnapshotDiskDefParseXML)
      (virDomainSnapshotAlignDisks, virDomainSnapshotDiskDefFormat):
      Likewise.
      * src/esx/esx_driver.c (esxAutodetectSCSIControllerModel)
      (esxDomainDefineXML): Likewise.
      * src/locking/domain_lock.c (virDomainLockManagerAddDisk):
      Likewise.
      * src/lxc/lxc_controller.c
      (virLXCControllerSetupLoopDeviceDisk)
      (virLXCControllerSetupNBDDeviceDisk)
      (virLXCControllerSetupLoopDevices, virLXCControllerSetupDisk):
      Likewise.
      * src/parallels/parallels_driver.c (parallelsGetHddInfo):
      Likewise.
      * src/phyp/phyp_driver.c (phypDiskType): Likewise.
      * src/qemu/qemu_command.c (qemuGetDriveSourceString)
      (qemuDomainDiskGetSourceString, qemuBuildDriveStr)
      (qemuBuildCommandLine, qemuParseCommandLineDisk)
      (qemuParseCommandLine): Likewise.
      * src/qemu/qemu_conf.c (qemuCheckSharedDevice)
      (qemuTranslateDiskSourcePool)
      (qemuTranslateSnapshotDiskSourcePool): Likewise.
      * src/qemu/qemu_domain.c (qemuDomainDeviceDefPostParse)
      (qemuDomainDetermineDiskChain): Likewise.
      * src/qemu/qemu_driver.c (qemuDomainGetBlockInfo)
      (qemuDomainSnapshotPrepareDiskExternalBackingInactive)
      (qemuDomainSnapshotPrepareDiskExternalBackingActive)
      (qemuDomainSnapshotPrepareDiskExternalOverlayActive)
      (qemuDomainSnapshotPrepareDiskExternalOverlayInactive)
      (qemuDomainSnapshotPrepareDiskInternal)
      (qemuDomainSnapshotPrepare)
      (qemuDomainSnapshotCreateSingleDiskActive): Likewise.
      * src/qemu/qemu_hotplug.c (qemuDomainChangeEjectableMedia):
      Likewise.
      * src/qemu/qemu_migration.c (qemuMigrationIsSafe): Likewise.
      * src/security/security_apparmor.c
      (AppArmorRestoreSecurityImageLabel)
      (AppArmorSetSecurityImageLabel): Likewise.
      * src/security/security_dac.c (virSecurityDACSetSecurityImageLabel)
      (virSecurityDACRestoreSecurityImageLabelInt)
      (virSecurityDACSetSecurityAllLabel): Likewise.
      * src/security/security_selinux.c
      (virSecuritySELinuxRestoreSecurityImageLabelInt)
      (virSecuritySELinuxSetSecurityImageLabel)
      (virSecuritySELinuxSetSecurityAllLabel): Likewise.
      * src/storage/storage_backend.c (virStorageFileBackendForType):
      Likewise.
      * src/storage/storage_backend_fs.c (virStorageFileBackendFile)
      (virStorageFileBackendBlock): Likewise.
      * src/storage/storage_backend_gluster.c
      (virStorageFileBackendGluster): Likewise.
      * src/vbox/vbox_tmpl.c (vboxDomainGetXMLDesc, vboxAttachDrives)
      (vboxDomainAttachDeviceImpl, vboxDomainDetachDevice): Likewise.
      * src/vmware/vmware_conf.c (vmwareVmxPath): Likewise.
      * src/vmx/vmx.c (virVMXParseDisk, virVMXFormatDisk)
      (virVMXFormatFloppy): Likewise.
      * src/xenxs/xen_sxpr.c (xenParseSxprDisks, xenParseSxpr)
      (xenFormatSxprDisk): Likewise.
      * src/xenxs/xen_xm.c (xenParseXM, xenFormatXMDisk): Likewise.
      * tests/securityselinuxlabeltest.c (testSELinuxLoadDef):
      Likewise.
      * src/libvirt_private.syms (domain_conf.h): Move symbols...
      (virstoragefile.h): ...as appropriate.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      16ac4c9d
    • E
      conf: split network host structs to util/ · 52fb5311
      Eric Blake 提交于
      Continuing the refactoring of host-side storage descriptions out
      of conf/domain_conf and into util/virstoragefile, this patch
      focuses on details about a host name/port/transport as used by
      a network storage volume.
      
      * src/conf/domain_conf.h (virDomainDiskProtocolTransport)
      (virDomainDiskHostDef, virDomainDiskHostDefClear)
      (virDomainDiskHostDefFree, virDomainDiskHostDefCopy): Move...
      * src/util/virstoragefile.h (virStorageNetHostTransport)
      (virStorageNetHostDef, virStorageNetHostDefClear)
      (virStorageNetHostDefFree, virStorageNetHostDefCopy): ...here,
      with better names.
      * src/util/virstoragefile.c (virStorageNetHostDefClear)
      (virStorageNetHostDefFree, virStorageNetHostDefCopy): Moved from...
      * src/conf/domain_conf.c (virDomainDiskHostDefClear)
      (virDomainDiskHostDefFree, virDomainDiskHostDefCopy): ...here.
      (virDomainDiskSourceDefClear, virDomainDiskSourceDefParse)
      (virDomainDiskSourceDefFormatInternal): Adjust callers.
      * src/conf/snapshot_conf.h (_virDomainSnapshotDiskDef): Likewise.
      * src/conf/snapshot_conf.c (virDomainSnapshotDiskDefClear):
      Likewise.
      * src/qemu/qemu_command.c (qemuAddRBDHost)
      (qemuParseDriveURIString, qemuParseNBDString)
      (qemuBuildNetworkDriveURI, qemuParseCommandLineDisk)
      (qemuParseCommandLine, qemuGetDriveSourceString): Likewise.
      * src/qemu/qemu_command.h: Likewise.
      * src/qemu/qemu_conf.c (qemuAddISCSIPoolSourceHost)
      (qemuTranslateDiskSourcePool): Likewise.
      * src/qemu/qemu_driver.c
      (qemuDomainSnapshotCreateSingleDiskActive)
      (qemuDomainSnapshotUndoSingleDiskActive): Likewise.
      * src/storage/storage_backend_gluster.c
      (virStorageFileBackendGlusterInit): Likewise.
      * src/storage/storage_driver.c (virStorageFileFree)
      (virStorageFileInitInternal): Likewise.
      * src/storage/storage_driver.h (_virStorageFile): Likewise.
      * src/libvirt_private.syms (domain_conf.h): Move symbols...
      (virstoragefile.h): ...as appropriate.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      52fb5311
    • E
      conf: split security label structs to util/ · 3e929386
      Eric Blake 提交于
      In order to reuse the newly-created host-side disk struct in
      the virstoragefile backing chain code, I first have to move
      it to util/.  This starts the process, by first moving the
      security label structures.
      
      * src/conf/domain_conf.h (virDomainDefGenSecurityLabelDef)
      (virDomainDiskDefGenSecurityLabelDef, virSecurityLabelDefFree)
      (virSecurityDeviceLabelDefFree, virSecurityLabelDef)
      (virSecurityDeviceLabelDef): Move...
      * src/util/virseclabel.h: ...to new file.
      (virSecurityLabelDefNew, virSecurityDeviceLabelDefNew): Rename the
      GenSecurity functions.
      * src/qemu/qemu_process.c (qemuProcessAttach): Adjust callers.
      * src/security/security_manager.c (virSecurityManagerGenLabel):
      Likewise.
      * src/security/security_selinux.c
      (virSecuritySELinuxSetSecurityFileLabel): Likewise.
      * src/util/virseclabel.c: New file.
      * src/conf/domain_conf.c: Move security code, and fix fallout.
      * src/Makefile.am (UTIL_SOURCES): Build new file.
      * src/libvirt_private.syms (domain_conf.h): Move symbols...
      (virseclabel.h): ...to new section.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      3e929386
    • E
      maint: ensure src/ directory includes are clean · cbfd9a61
      Eric Blake 提交于
      In 'make syntax-check', we have a rule that prevents layering
      violations between the various files in src.  However, we
      forgot to treat conf/ and the more recently-added access/ as
      lower-level directories, and were not detecting cases where
      they might have used a driver file.  Also, it's not nice that
      qemu can use storage/ but none of the other drivers could do so.
      
      * cfg.mk (sc_prohibit_cross_inclusion): Tighten rules for conf/
      and access/, let all other drivers use storage/.
      Signed-off-by: NEric Blake <eblake@redhat.com>
      cbfd9a61
  2. 01 4月, 2014 11 次提交
    • P
      storage: gluster: Implement storage pool lookup · cb938029
      Peter Krempa 提交于
      Use the previously implemented function to lookup glusterfs source pools
      for the netfs pool to lookup native gluster pools too.
      cb938029
    • P
      storage: netfs: Support lookup of glusterfs pool sources · 05671b95
      Peter Krempa 提交于
      https://bugzilla.redhat.com/show_bug.cgi?id=1072714
      
      Use the "gluster" command line tool to retrieve information about remote
      volumes on a gluster server to allow storage pool source lookup.
      
      Unfortunately gluster doesn't provide a management library so that we
      could use that directly, instead the RPC calls are hardcoded in the
      command line tool.
      05671b95
    • P
      storage: netfs: Split up and tidy up NFS storage pool source function · 18642d10
      Peter Krempa 提交于
      Extract the NFS related stuff into a separate function and tidy up the
      rest of the code so we can reuse it to add gluster backend detection.
      
      Additionally avoid reporting of errors from "showmount" and return an
      empty source list instead. This will help when adding other detection
      backends.
      18642d10
    • M
      Bump version to 1.2.4 for new dev cycle · 09544abf
      Michal Privoznik 提交于
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      09544abf
    • D
      Release of libvirt-1.2.3 · c53663cc
      Daniel Veillard 提交于
      * docs/news.html.in libvirt.spec.in: update for the release
      * po/*.po*: pull updated translations and regenerate
      c53663cc
    • M
      79752160
    • P
      gluster: Fix "key" attribute for gluster volumes · 0f6c50b9
      Peter Krempa 提交于
      According to our documentation the "key" value has the following
      meaning: "Providing an identifier for the volume which identifies a
      single volume." The currently used keys for gluster volumes consist of
      the gluster volume name and file path. This can't be considered unique
      as a different storage server can serve a volume with the same name.
      
      Unfortunately I wasn't able to figure out a way to retrieve the gluster
      volume UUID which would avoid the possibility of having two distinct
      keys identifying a single volume.
      
      Use the full URI as the key for the volume to avoid the more critical
      ambiguity problem and document the possible change to UUID.
      0f6c50b9
    • C
      storage: Rename VolOpenCheckMode to VolOpen · fa5b5549
      Cole Robinson 提交于
      Remove the original VolOpen implementation, which is now only used in
      one spot.
      fa5b5549
    • C
      847a9eb1
    • C
      storage: Rename UpdateVolInfoFlags to UpdateVolInfo · 16d75d19
      Cole Robinson 提交于
      And drop the original UpdateVolInfo. Makes it a bit easier to follow
      the function usage.
      
      And change the int parameter to an explicit bool.
      16d75d19
    • N
      Fix Memory Leak in testMessageArrayRef() · 968aae48
      Nehal J Wani 提交于
      While running virdbustest, it was found that valgrind pointed out
      the following memory leaks:
      
      ==9996== 17 (8 direct, 9 indirect) bytes in 1 blocks are definitely lost in loss record 9 of 36
      ==9996==    at 0x4A069EE: malloc (vg_replace_malloc.c:270)
      ==9996==    by 0x4A06B62: realloc (vg_replace_malloc.c:662)
      ==9996==    by 0x4C6B587: virReallocN (viralloc.c:245)
      ==9996==    by 0x4C6B6AE: virExpandN (viralloc.c:294)
      ==9996==    by 0x4C82B54: virDBusMessageDecodeArgs (virdbus.c:907)
      ==9996==    by 0x4C83463: virDBusMessageDecode (virdbus.c:1141)
      ==9996==    by 0x402C45: testMessageArrayRef (virdbustest.c:273)
      ==9996==    by 0x404E71: virtTestRun (testutils.c:201)
      ==9996==    by 0x401C2D: mymain (virdbustest.c:479)
      ==9996==    by 0x4055ED: virtTestMain (testutils.c:789)
      ==9996==    by 0x3E6CE1ED1C: (below main) (libc-start.c:226)
      ==9996==
      ==9996== 28 (16 direct, 12 indirect) bytes in 1 blocks are definitely lost in loss record 12 of 36
      ==9996==    at 0x4A06BE0: realloc (vg_replace_malloc.c:662)
      ==9996==    by 0x4C6B587: virReallocN (viralloc.c:245)
      ==9996==    by 0x4C6B6AE: virExpandN (viralloc.c:294)
      ==9996==    by 0x4C82B54: virDBusMessageDecodeArgs (virdbus.c:907)
      ==9996==    by 0x4C83463: virDBusMessageDecode (virdbus.c:1141)
      ==9996==    by 0x402C45: testMessageArrayRef (virdbustest.c:273)
      ==9996==    by 0x404E71: virtTestRun (testutils.c:201)
      ==9996==    by 0x401C2D: mymain (virdbustest.c:479)
      ==9996==    by 0x4055ED: virtTestMain (testutils.c:789)
      ==9996==    by 0x3E6CE1ED1C: (below main) (libc-start.c:226)
      ==9996==
      Signed-off-by: NEric Blake <eblake@redhat.com>
      968aae48
  3. 31 3月, 2014 7 次提交
  4. 30 3月, 2014 3 次提交
    • D
      ESX: Add support for virtualHW version 10 · 5cc3cce5
      Dawid Zamirski 提交于
      This follows the same pattern when v8 and v9 were added. I've tested
      this with my ESX 5.5 and seems to work fine.
      5cc3cce5
    • M
      Prohibit Windows special chars in filenames · 8f21ae70
      Matthias Bolte 提交于
      Using any of these chars [:*?"<>|] in a filename is forbidden on
      Windows and breaks git operations on Windows as git is not able
      to create those files/directories on clone or pull.
      
      Because some of them can be used in UNIX filenames they tend to
      creep into filenames; especially : in PCI/SCSI device names that
      are used as filenames in test cases.
      8f21ae70
    • M
      tests: Fix SCSI test data filenames for Windows · d20539a4
      Matthias Bolte 提交于
      Windows doesn't allow : in filenames.
      
      Commit 6fdece9a added files with a : in
      their names. This broke git operations on Windows as git is not able to
      create those files on clone or pull.
      
      Replace : with - in the offending filenames and adapt the test case.
      As the tested Linux specific code expects the files to exist with : in
      their path use symlinks to provide the name that way.
      d20539a4
  5. 29 3月, 2014 1 次提交
  6. 28 3月, 2014 2 次提交
  7. 27 3月, 2014 7 次提交