libvirt/tests/xml2vmxdata
Daniel P. Berrangé 6d3cb071b4 vmx: fix logic handling mac address type
With the current formatter, the XML snippets:

    <interface type='bridge'>
      <mac address='00:0c:29:dd:ee:fe' type='static'/>
      <source bridge='br1'/>
    </interface>
    <interface type='bridge'>
      <mac address='aa:bb:cc:dd:ee:fd' type='generated'/>
      <source bridge='br2'/>
    </interface>

result in

 ethernet1.present = "true"
 ethernet1.networkName = "br1"
 ethernet1.connectionType = "bridged"
 ethernet1.addressType = "static"
 ethernet1.address = "00:0c:29:dd:ee:fe"
 ethernet1.checkMACAddress = "false"

 ethernet2.present = "true"
 ethernet2.networkName = "br2"
 ethernet2.connectionType = "bridged"
 ethernet2.addressType = "static"
 ethernet2.address = "aa:bb:cc:dd:ee:fd"
 ethernet2.checkMACAddress = "false"

which is flawed, as both type='static' and type='generated' in the XML
turn into 'static' in the VMX config.

The existence of the 'static' attribute is further overriding whether
the checkMACAddress config option is set as a side effect.

Both these pieces of flawed logic were introduced in

  commit 454e5961ab
  Author: Bastien Orivel <bastien.orivel@diateam.net>
  Date:   Mon Jul 13 16:28:53 2020 +0200

    Add a type attribute on the mac address element

which intentionally added the 'checkMACAddress' side effect based on
the 'type' attribute.

With this change, we're reverting the handling of checkMACAddress
to match what existed historically. The 'type' attribute now directly
maps to the addressType attribute, so the above config becomes:

 ethernet1.present = "true"
 ethernet1.networkName = "br1"
 ethernet1.connectionType = "bridged"
 ethernet1.addressType = "static"
 ethernet1.address = "00:0c:29:dd:ee:fe"

 ethernet2.present = "true"
 ethernet2.networkName = "br2"
 ethernet2.connectionType = "bridged"
 ethernet2.addressType = "generated"
 ethernet2.generatedAddress = "aa:bb:cc:dd:ee:fd"
 ethernet2.generatedAddressOffset = "0"

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2020-07-23 16:11:31 +01:00
..
xml2vmx-annotation.vmx
xml2vmx-annotation.xml
xml2vmx-cdrom-ide-device.vmx esx: Explictly declare VMX file content as UTF-8 2010-10-15 17:51:28 +02:00
xml2vmx-cdrom-ide-device.xml
xml2vmx-cdrom-ide-empty.vmx
xml2vmx-cdrom-ide-empty.xml
xml2vmx-cdrom-ide-file.vmx
xml2vmx-cdrom-ide-file.xml
xml2vmx-cdrom-ide-raw-auto-detect.vmx
xml2vmx-cdrom-ide-raw-auto-detect.xml
xml2vmx-cdrom-ide-raw-device.vmx
xml2vmx-cdrom-ide-raw-device.xml
xml2vmx-cdrom-scsi-device.vmx
xml2vmx-cdrom-scsi-device.xml
xml2vmx-cdrom-scsi-empty.vmx
xml2vmx-cdrom-scsi-empty.xml
xml2vmx-cdrom-scsi-file.vmx
xml2vmx-cdrom-scsi-file.xml
xml2vmx-cdrom-scsi-passthru.vmx
xml2vmx-cdrom-scsi-passthru.xml
xml2vmx-cdrom-scsi-raw-auto-detect.vmx
xml2vmx-cdrom-scsi-raw-auto-detect.xml
xml2vmx-cdrom-scsi-raw-device.vmx
xml2vmx-cdrom-scsi-raw-device.xml
xml2vmx-datacenterpath.vmx
xml2vmx-datacenterpath.xml
xml2vmx-esx-in-the-wild-1.vmx
xml2vmx-esx-in-the-wild-1.xml
xml2vmx-esx-in-the-wild-2.vmx
xml2vmx-esx-in-the-wild-2.xml
xml2vmx-esx-in-the-wild-3.vmx
xml2vmx-esx-in-the-wild-3.xml
xml2vmx-esx-in-the-wild-4.vmx util: Change virMacAddrFormat to lowercase hex characters 2013-04-02 15:53:43 +02:00
xml2vmx-esx-in-the-wild-4.xml
xml2vmx-esx-in-the-wild-5.vmx
xml2vmx-esx-in-the-wild-5.xml
xml2vmx-esx-in-the-wild-6.vmx
xml2vmx-esx-in-the-wild-6.xml
xml2vmx-esx-in-the-wild-7.vmx
xml2vmx-esx-in-the-wild-7.xml
xml2vmx-esx-in-the-wild-9.vmx
xml2vmx-esx-in-the-wild-9.xml
xml2vmx-ethernet-bridged.vmx
xml2vmx-ethernet-bridged.xml
xml2vmx-ethernet-custom.vmx
xml2vmx-ethernet-custom.xml
xml2vmx-ethernet-e1000.vmx
xml2vmx-ethernet-e1000.xml
xml2vmx-ethernet-generated.vmx
xml2vmx-ethernet-generated.xml
xml2vmx-ethernet-mac-type.vmx vmx: fix logic handling mac address type 2020-07-23 16:11:31 +01:00
xml2vmx-ethernet-mac-type.xml
xml2vmx-ethernet-nat.vmx
xml2vmx-ethernet-nat.xml
xml2vmx-ethernet-other.vmx esx: Explictly declare VMX file content as UTF-8 2010-10-15 17:51:28 +02:00
xml2vmx-ethernet-other.xml
xml2vmx-ethernet-static.vmx
xml2vmx-ethernet-static.xml
xml2vmx-ethernet-vmxnet2.vmx
xml2vmx-ethernet-vmxnet2.xml xml: output memory unit for clarity 2012-03-07 18:24:43 -07:00
xml2vmx-ethernet-vpx.vmx esx: Explictly declare VMX file content as UTF-8 2010-10-15 17:51:28 +02:00
xml2vmx-ethernet-vpx.xml
xml2vmx-firmware-efi.vmx
xml2vmx-firmware-efi.xml
xml2vmx-floppy-device.vmx
xml2vmx-floppy-device.xml xml: output memory unit for clarity 2012-03-07 18:24:43 -07:00
xml2vmx-floppy-file.vmx
xml2vmx-floppy-file.xml
xml2vmx-fusion-in-the-wild-1.vmx
xml2vmx-fusion-in-the-wild-1.xml
xml2vmx-graphics-vnc.vmx
xml2vmx-graphics-vnc.xml
xml2vmx-gsx-in-the-wild-1.vmx
xml2vmx-gsx-in-the-wild-1.xml
xml2vmx-gsx-in-the-wild-2.vmx
xml2vmx-gsx-in-the-wild-2.xml xml: output memory unit for clarity 2012-03-07 18:24:43 -07:00
xml2vmx-gsx-in-the-wild-3.vmx
xml2vmx-gsx-in-the-wild-3.xml
xml2vmx-gsx-in-the-wild-4.vmx
xml2vmx-gsx-in-the-wild-4.xml
xml2vmx-harddisk-ide-file.vmx
xml2vmx-harddisk-ide-file.xml
xml2vmx-harddisk-scsi-file.vmx
xml2vmx-harddisk-scsi-file.xml
xml2vmx-minimal-64bit.vmx
xml2vmx-minimal-64bit.xml
xml2vmx-minimal.vmx
xml2vmx-minimal.xml
xml2vmx-parallel-device.vmx
xml2vmx-parallel-device.xml
xml2vmx-parallel-file.vmx
xml2vmx-parallel-file.xml
xml2vmx-scsi-driver.vmx
xml2vmx-scsi-driver.xml
xml2vmx-scsi-writethrough.vmx
xml2vmx-scsi-writethrough.xml
xml2vmx-serial-device.vmx
xml2vmx-serial-device.xml
xml2vmx-serial-file.vmx
xml2vmx-serial-file.xml
xml2vmx-serial-network-client.vmx
xml2vmx-serial-network-client.xml
xml2vmx-serial-network-server.vmx
xml2vmx-serial-network-server.xml
xml2vmx-serial-pipe.vmx
xml2vmx-serial-pipe.xml
xml2vmx-sharedfolder.vmx
xml2vmx-sharedfolder.xml
xml2vmx-smbios.vmx
xml2vmx-smbios.xml
xml2vmx-svga.vmx
xml2vmx-svga.xml
xml2vmx-ws-in-the-wild-1.vmx
xml2vmx-ws-in-the-wild-1.xml
xml2vmx-ws-in-the-wild-2.vmx
xml2vmx-ws-in-the-wild-2.xml