1. 29 9月, 2009 3 次提交
    • L
      Maintain value of ctxt->node in virInterfaceDefParseDhcp · c93370c4
      Laine Stump 提交于
      * src/conf/interface_conf.c: This was causing subsequent calls to
        virXPathxxx() to fail, since ctxt->node was left pointing at the
        dhcp node, rather than the protocol node.
      c93370c4
    • D
      Fix some XPath relative node resets · 237f3bf8
      Daniel Veillard 提交于
      * src/util/xml.c: The virXPath... function take extra care to preserve
        the XPath context node (ctxt->node) but in the case of virXPathString
        and virXPathBoolean they forgot to do this on the error path. This
        patch fixes this and move all ctxt->node = relnode instuctions just
        after the xmlXPathEval() to make sure this doesn't happen if this code
        is modified.
      237f3bf8
    • M
      util.h needs libvirt.h for virConnectPtr · 25e2857c
      Mark McLoughlin 提交于
      Seems standard to include internal.h in order to pull in libvirt.h
      
      * src/util/util.h: include internal.h
      25e2857c
  2. 28 9月, 2009 2 次提交
    • D
      Don't require full daemon install for libvirt python bindings · 323ad539
      Daniel P. Berrange 提交于
      * libvirt.spec.in: libvirt-python only needs to depend on
        libvirt-clients
      323ad539
    • D
      Fix API doc extractor to stop munging comment formatting · 5486abfe
      Daniel P. Berrange 提交于
      The python method help docs are copied across from the C
      funtion comments, but in the process all line breaks and
      indentation was being lost. This made the resulting text
      and code examples completely unreadable. Both the API
      doc extractor and the python generator were destroying
      whitespace & this fixes them to preserve it exactly.
      
      * docs/apibuild.py: Preserve all whitespace when extracting
        function comments. Print function comment inside a <![CDATA[
        section to fully preserve all whitespace. Look for the
        word 'returns' to describe return values, instead of 'return'
        to avoid getting confused with code examples including the
        C 'return' statement.
      * python/generator.py: Preserve all whitespace when printing
        function help docs
      * src/libvirt.c: Change any return parameter indicated by
        'return' to be 'returns', to avoid confusing the API extractor
      * docs/libvirt-api.xml: Re-build for fixed descriptions
      5486abfe
  3. 24 9月, 2009 6 次提交
  4. 23 9月, 2009 14 次提交
    • M
      ESX: Check if a datastore is accessible first · b167672c
      Matthias Bolte 提交于
      An inaccessible datastore has no valid URL property so don't
      access its URI property.
      
      * src/esx/esx_vi.c: esxVI_LookupDatastoreByName(): check if datastore is
        accessible before accessing its URL property
      * src/esx/esx_vmx.c: update to changed datastore properties
      b167672c
    • M
      ESX remove phantom mode · 23b24972
      Matthias Bolte 提交于
      * src/esx/esx_driver.c: remove phantom mode
      23b24972
    • M
      ESX replace esxUtil_EqualSuffix() with virFileHasSuffix() · 8ce9f2b1
      Matthias Bolte 提交于
      * src/esx/esx_util.[ch]: remove esxUtil_EqualSuffix()
      * src/esx/esx_driver.c, src/esx/esx_vmx.c: replace esxUtil_EqualSuffix()
        with virFileHasSuffix()
      8ce9f2b1
    • M
      ESX add esxDomainDefineXML() · 49faa15e
      Matthias Bolte 提交于
      A given domain XML gets converted to a VMX config, uploaded to the host
      and registered as new virtual machine.
      
      * src/esx/esx_driver.c: refactor datastore related path parsing into
        esxUtil_ParseDatastoreRelatedPath()
      * src/esx/esx_util.[ch]: add esxUtil_ParseDatastoreRelatedPath()
      * src/esx/esx_vi.[ch]: add esxVI_Context_UploadFile(), add datastores to
        the traversal in esxVI_BuildFullTraversalSpecList(), add
        esxVI_LookupDatastoreByName()
      * src/esx/esx_vi_methods.[ch]: add esxVI_RegisterVM_Task()
      * src/esx/esx_vi_types.c: make some error message more verbose
      * src/esx/esx_vmx.[ch]: add esxVMX_AbsolutePathToDatastoreRelatedPath()
        to convert a path into a datastore related path, add esxVMX_ParseFileName()
        to convert from VMX path format to domain XML path format, extend the other
        parsing function to be datastore aware, add esxVMX_FormatFileName() to
        convert from domain XML path format to VMX path format, fix VMX ethernet
        entry formating
      * tests/esxutilstest.c: add test for esxUtil_ParseDatastoreRelatedPath()
      * tests/vmx2xmldata/*: update domain XML files to use datastore related paths
      * tests/xml2vmxdata/*: update domain XML files to use datastore related paths,
        update VMX files to use absolute paths
      49faa15e
    • M
      ESX add esxVI_Occurence enum to for occurences · c3aa1f8b
      Matthias Bolte 提交于
      Add esxVI_Occurence enum to describe expected occurence of items
      * src/esx/esx_driver.c: update the use of esxVI_LookupVirtualMachineByUuid()
      * src/esx/esx_vi.c: add an esxVI_Occurence parameter to
        esxVI_LookupVirtualMachineByUuid() and take care if esxVI_FindByUuid()
        can't find anything for a given uuid
      * src/esx/esx_vi.h: add esxVI_Occurence enum
      * src/esx/esx_vi_methods.c: expect null or more items to be returned
        from esxVI_FindByUuid()
      c3aa1f8b
    • M
      ESX Whitespace cleanup · 0d4d04e5
      Matthias Bolte 提交于
      0d4d04e5
    • M
      ESX add x86_64 detection based on the CPUID · 15b0c4ff
      Matthias Bolte 提交于
      * src/esx/esx_driver.c: add esxSupportsLongMode() and update esxCapsInit()
      * src/esx/esx_vi.[ch]: Add AnyType handling for lists
      * src/esx/esx_vi_types.c: bind VI type HostCpuIdInfo
      15b0c4ff
    • M
      ESX add tests for the VMX to/from domain XML mapping · af4c893e
      Matthias Bolte 提交于
      * tests/.gitignore: ignore new test binaries
      * tests/Makefile.am: add new tests
      * tests/esxutilstest.c: test esxVMX_IndexToDiskName()
      * tests/vmx2xmldata/*: config files for the VMX to domain XML test
      * tests/vmx2xmltest.c: test the VMX to domain XML mapping
      * tests/xml2vmxdata/*: config files for the domain XML to VMX test
      * tests/xml2vmxtest.c: test the domain XML to VMX mapping
      af4c893e
    • M
      ESX Add esxDomainXMLToNative() · a1c4d7d7
      Matthias Bolte 提交于
      Extend and cleanup the VMX to domain XML mapping. Add the domain XML to
      VMX mapping functions.
      
      * src/esx/esx_driver.c: add esxDomainXMLToNative()
      * src/esx/esx_vmx.[ch]: add esxVMX_SCSIDiskNameToControllerAndID(),
        esxVMX_IDEDiskNameToControllerAndID(), esxVMX_FloppyDiskNameToController(),
        esxVMX_GatherSCSIControllers(), add basic handling for the VMX guestOS entry
        to distinguish between i686 and x86_64, make SCSI virtualDev VMX entry
        optional as it should be, map the VMX networkName entry to the domain XML
        interface bridge name, add basic mapping for serial devices in pipe mode,
        add several esxVMX_Format*() functions
      a1c4d7d7
    • M
      ESX Set challenge for auth callback to hostname · 6f9d8bdb
      Matthias Bolte 提交于
      This enables the auth callback to automatically distinguish between
      requests for ESX host and vCenter credentials.
      
      * src/esx/esx_util.[ch]: set challenge for auth callback to hostname
      6f9d8bdb
    • M
      ESX Add esxNodeGetFreeMemory() · ecd93b75
      Matthias Bolte 提交于
      * src/esx/esx_driver.c: add esxNodeGetFreeMemory(), cache IP address
      * src/esx/esx_vi.[ch]: refactor resource pool query into esxVI_GetResourcePool()
      * src/esx/esx_vi_types.[ch]: bind VI type ResourcePoolResourceUsage
      ecd93b75
    • C
    • P
      network: add 'bootp' and 'tftp' config · 738ee810
      Paolo Bonzini 提交于
      Currently, libvirtd will start a dnsmasq process for the virtual
      network, but (aside from killing the dnsmasq process and replacing it),
      there's no way to define tftp boot options.
      
      This change introduces the appropriate tags to the dhcp configuration:
      
       <network>
         <name>default</name>
         <bridge name="virbr%d" />
         <forward/>
         <ip address="192.168.122.1" netmask="255.255.255.0">
           <tftp root="/var/lib/tftproot" />
           <dhcp>
             <range start="192.168.122.2" end="192.168.122.254" />
             <bootp file="pxeboot.img"/>
           </dhcp>
         </ip>
       </network>
      
      When the attributes are present, these are passed to the
      arguments to dnsmasq:
      
       dnsmasq [...] --enable-tftp --tftp-root /srv/tftp --dhcp-boot pxeboot.img
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^
                            from <tftp />                     from <bootp />
      
      At present, only local tftp servers are supported (ie, dnsmasq runs as
      the tftp server), but we could improve this in future by adding a
      server= attribute.
      Signed-off-by: NJeremy Kerr <jk@ozlabs.org>
      Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
      
      2009-09-21  Paolo Bonzini  <pbonzini@redhat.com>
                  Jeremy Kerr  <jk@ozlabs.org>
      
      	* docs/formatnetwork.html.in: Document new tags.
      	* docs/formatnetwork.html: Regenerate.
      	* docs/schemas/network.rng: Update.
      	* src/network_conf.c (virNetworkDefFree): Free new fields.
      	(virNetworkDHCPRangeDefParseXML): Parse <bootp>.
      	(virNetworkIPParseXML): New, parsing <dhcp> and <tftp>.
      	(virNetworkDefParseXML): Use virNetworkIPParseXML instead of
      	virNetworkDHCPRangeDefParseXML.
      	(virNetworkDefFormat): Pretty print new fields.
      	* src/network_conf.h (struct _virNetworkDef): Add netboot fields.
      	* src/network_driver.c (networkBuildDnsmasqArgv): Add
      	TFTP and BOOTP arguments.
      
      	* tests/Makefile.am (EXTRA_DIST): Add networkschemadata.
      	* tests/networkschematest: Look in networkschemadata.
      	* tests/networkschemadata/netboot-network.xml: New.
      738ee810
    • C
      Introduce virStrncpy. · 03d777f3
      Chris Lalancette 提交于
      Add the virStrncpy function, which takes a dst string, source string,
      the number of bytes to copy and the number of bytes available in the
      dest string.  If the source string is too large to fit into the
      destination string, including the \0 byte, then no data is copied and
      the function returns NULL.  Otherwise, this function copies n bytes
      from source into dst, including the \0, and returns a pointer to the
      dst string.  This function is intended to replace all unsafe uses
      of strncpy in the code base, since strncpy does *not* guarantee that
      the buffer terminates with a \0.
      Signed-off-by: NChris Lalancette <clalance@redhat.com>
      03d777f3
  5. 22 9月, 2009 14 次提交
  6. 21 9月, 2009 1 次提交