1. 08 3月, 2018 3 次提交
  2. 06 3月, 2018 1 次提交
  3. 22 2月, 2018 9 次提交
  4. 20 2月, 2018 2 次提交
    • M
      storage_conf: Make virStorageAuthDefFormat return void · 82e43ae1
      Michal Privoznik 提交于
      This function returns nothing but zero. Therefore it makes no
      sense to have it returning an integer.
      Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
      Reviewed-by: NDaniel P. Berrangé <berrange@redhat.com>
      82e43ae1
    • L
      conf: move 'generated' member from virMacAddr to virDomainNetDef · e62cb4a9
      Laine Stump 提交于
      Commit 7e62c4cd (first appearing in libvirt-3.9.0 as a resolution
      to rhbz #1343919) added a "generated" attribute to virMacAddr that was
      set whenever a mac address was auto-generated by libvirt. This
      knowledge was used in a single place - when trying to match a NetDef
      from the Domain to Delete with user-provided XML. Since the XML parser
      always auto-generates a MAC address for NetDefs when none is provided,
      it was previously impossible to make a search where the MAC address
      isn't significant, but the addition of the "generated" attribute made
      it possible for the search function to ignore auto-generated MACs.
      
      This implementation had a problem though - it was adding a field to a
      "low level" struct - virMacAddr - which is used in other places with
      the assumption that it contains exactly a 6 byte MAC address and
      nothing else. In particular, virNWFilterSnoopEthHdr uses virMacAddr as
      part of the definition of an ethernet packet header, whose layout must
      of course match an actual ethernet packet. Adding the extra bools into
      virNWFilterSnoopEthHdr caused the nwfilter driver's "IP discovery via
      DHCP packet snooping" functionality to mysteriously stop working.
      
      In order to fix that behavior, and prevent potential future similar
      odd behavior, this patch moves the "generated" member out of
      virMacAddr (so that it is again really is just a MAC address) into
      virDomainNetDef, and sets it only when virDomainNetGenerateMAC() is
      called from virDomainNetDefParseXML() (which is the only time we care
      about it).
      
      Resolves: https://bugzilla.redhat.com/1529338
      
      (It should also be applied to any maintenance branch that applies
      commit 7e62c4cd and friends to resolve
      https://bugzilla.redhat.com/1343919)
      Signed-off-by: NLaine Stump <laine@laine.org>
      e62cb4a9
  5. 17 2月, 2018 1 次提交
    • Z
      conf: Add support for setting Chassis SMBIOS data fields · c8fec256
      Zhuang Yanying 提交于
      This type of information defines attributes of a system
      chassis, such as SMBIOS Chassis Asset Tag.
      
      access inside VM (for example)
      Linux:   /sys/class/dmi/id/chassis_asset_tag.
      Windows: (Get-WmiObject Win32_SystemEnclosure).SMBIOSAssetTag
                wirhin Windows PowerShell.
      
      As an example, add the following to the guest XML
      
          <chassis>
            <entry name='manufacturer'>Dell Inc.</entry>
            <entry name='version'>2.12</entry>
            <entry name='serial'>65X0XF2</entry>
            <entry name='asset'>40000101</entry>
            <entry name='sku'>Type3Sku1</entry>
          </chassis>
      Signed-off-by: NZhuang Yanying <ann.zhuangyanying@huawei.com>
      Reviewed-by: NJohn Ferlan <jferlan@redhat.com>
      c8fec256
  6. 14 2月, 2018 2 次提交
  7. 12 2月, 2018 1 次提交
    • D
      log: fix deadlock obtaining hostname (related CVE-2018-6764) · c2dc6698
      Daniel P. Berrangé 提交于
      The fix for CVE-2018-6764 introduced a potential deadlock scenario
      that gets triggered by the NSS module when virGetHostname() calls
      getaddrinfo to resolve the hostname:
      
       #0  0x00007f6e714b57e7 in futex_wait
       #1  futex_wait_simple
       #2  __pthread_once_slow
       #3  0x00007f6e71d16e7d in virOnce
       #4  0x00007f6e71d0997c in virLogInitialize
       #5  0x00007f6e71d0a09a in virLogVMessage
       #6  0x00007f6e71d09ffd in virLogMessage
       #7  0x00007f6e71d0db22 in virObjectNew
       #8  0x00007f6e71d0dbf1 in virObjectLockableNew
       #9  0x00007f6e71d0d3e5 in virMacMapNew
       #10 0x00007f6e71cdc50a in findLease
       #11 0x00007f6e71cdcc56 in _nss_libvirt_gethostbyname4_r
       #12 0x00007f6e724631fc in gaih_inet
       #13 0x00007f6e72464697 in __GI_getaddrinfo
       #14 0x00007f6e71d19e81 in virGetHostnameImpl
       #15 0x00007f6e71d1a057 in virGetHostnameQuiet
       #16 0x00007f6e71d09936 in virLogOnceInit
       #17 0x00007f6e71d09952 in virLogOnce
       #18 0x00007f6e714b5829 in __pthread_once_slow
       #19 0x00007f6e71d16e7d in virOnce
       #20 0x00007f6e71d0997c in virLogInitialize
       #21 0x00007f6e71d0a09a in virLogVMessage
       #22 0x00007f6e71d09ffd in virLogMessage
       #23 0x00007f6e71d0db22 in virObjectNew
       #24 0x00007f6e71d0dbf1 in virObjectLockableNew
       #25 0x00007f6e71d0d3e5 in virMacMapNew
       #26 0x00007f6e71cdc50a in findLease
       #27 0x00007f6e71cdc839 in _nss_libvirt_gethostbyname3_r
       #28 0x00007f6e71cdc724 in _nss_libvirt_gethostbyname2_r
       #29 0x00007f6e7248f72f in __gethostbyname2_r
       #30 0x00007f6e7248f494 in gethostbyname2
       #31 0x000056348c30c36d in hosts_keys
       #32 0x000056348c30b7d2 in main
      
      Fortunately the extra stuff virGetHostname does is totally irrelevant to
      the needs of the logging code, so we can just inline a call to the
      native hostname() syscall directly.
      Signed-off-by: NDaniel P. Berrangé <berrange@redhat.com>
      c2dc6698
  8. 10 2月, 2018 1 次提交
  9. 09 2月, 2018 1 次提交
    • D
      storage: move storage file backend framework into util directory · 064fec69
      Daniel P. Berrangé 提交于
      The QEMU driver loadable module needs to be able to resolve all ELF
      symbols it references against libvirt.so. Some of its symbols can only
      be resolved against the storage_driver.so loadable module which creates
      a hard dependancy between them. By moving the storage file backend
      framework into the util directory, this gets included directly in the
      libvirt.so library. The actual backend implementations are still done as
      loadable modules, so this doesn't re-add deps on gluster libraries.
      Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
      064fec69
  10. 07 2月, 2018 2 次提交
  11. 05 2月, 2018 7 次提交
  12. 03 2月, 2018 1 次提交
  13. 02 2月, 2018 2 次提交
  14. 01 2月, 2018 4 次提交
  15. 31 1月, 2018 3 次提交