[go-xml,2/2] Support domain address type='unassigned'

Message ID 03ff3c85b8f83a848c835760c3d9d8944211558c.1576879072.git.crobinso@redhat.com
State New
Headers show
Series
  • Fix libvirt-go-xml test CI
Related show

Commit Message

Cole Robinson Dec. 20, 2019, 10:22 p.m.
Signed-off-by: Cole Robinson <crobinso@redhat.com>

---
This should fix the libvirt-go-xml CI

 domain.go | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

-- 
2.23.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Comments

Daniel P. Berrangé Dec. 23, 2019, 10:03 a.m. | #1
On Fri, Dec 20, 2019 at 05:22:26PM -0500, Cole Robinson wrote:
> Signed-off-by: Cole Robinson <crobinso@redhat.com>
> ---
> This should fix the libvirt-go-xml CI
> 
>  domain.go | 23 +++++++++++++++++++++++
>  1 file changed, 23 insertions(+)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


Regards,
Daniel

Patch

diff --git a/domain.go b/domain.go
index 7552c4b..c290003 100644
--- a/domain.go
+++ b/domain.go
@@ -887,6 +887,9 @@  type DomainAddressCCID struct {
 type DomainAddressVirtioS390 struct {
 }
 
+type DomainAddressUnassigned struct {
+}
+
 type DomainAddress struct {
 	PCI          *DomainAddressPCI
 	Drive        *DomainAddressDrive
@@ -899,6 +902,7 @@  type DomainAddress struct {
 	VirtioMMIO   *DomainAddressVirtioMMIO
 	ISA          *DomainAddressISA
 	DIMM         *DomainAddressDIMM
+	Unassigned   *DomainAddressUnassigned
 }
 
 type DomainChardevLog struct {
@@ -4801,6 +4805,12 @@  func (a *DomainAddressVirtioS390) MarshalXML(e *xml.Encoder, start xml.StartElem
 	return nil
 }
 
+func (a *DomainAddressUnassigned) MarshalXML(e *xml.Encoder, start xml.StartElement) error {
+	e.EncodeToken(start)
+	e.EncodeToken(start.End())
+	return nil
+}
+
 func (a *DomainAddress) MarshalXML(e *xml.Encoder, start xml.StartElement) error {
 	if a.USB != nil {
 		start.Attr = append(start.Attr, xml.Attr{
@@ -4857,6 +4867,11 @@  func (a *DomainAddress) MarshalXML(e *xml.Encoder, start xml.StartElement) error
 			xml.Name{Local: "type"}, "virtio-s390",
 		})
 		return e.EncodeElement(a.VirtioS390, start)
+	} else if a.Unassigned != nil {
+		start.Attr = append(start.Attr, xml.Attr{
+			xml.Name{Local: "type"}, "unassigned",
+		})
+		return e.EncodeElement(a.Unassigned, start)
 	} else {
 		return nil
 	}
@@ -5102,6 +5117,11 @@  func (a *DomainAddressVirtioS390) UnmarshalXML(d *xml.Decoder, start xml.StartEl
 	return nil
 }
 
+func (a *DomainAddressUnassigned) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
+	d.Skip()
+	return nil
+}
+
 func (a *DomainAddress) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
 	var typ string
 	for _, attr := range start.Attr {
@@ -5148,6 +5168,9 @@  func (a *DomainAddress) UnmarshalXML(d *xml.Decoder, start xml.StartElement) err
 	} else if typ == "virtio-s390" {
 		a.VirtioS390 = &DomainAddressVirtioS390{}
 		return d.DecodeElement(a.VirtioS390, &start)
+	} else if typ == "unassigned" {
+		a.Unassigned = &DomainAddressUnassigned{}
+		return d.DecodeElement(a.Unassigned, &start)
 	}
 
 	return nil