summaryrefslogtreecommitdiff
path: root/vendor/github.com/libvirt/libvirt-go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/libvirt/libvirt-go')
-rw-r--r--vendor/github.com/libvirt/libvirt-go/.travis.yml4
-rw-r--r--vendor/github.com/libvirt/libvirt-go/connect.go111
-rw-r--r--vendor/github.com/libvirt/libvirt-go/domain.go198
-rw-r--r--vendor/github.com/libvirt/libvirt-go/domain_compat.go34
-rw-r--r--vendor/github.com/libvirt/libvirt-go/domain_compat.h13
-rw-r--r--vendor/github.com/libvirt/libvirt-go/domain_snapshot.go12
-rw-r--r--vendor/github.com/libvirt/libvirt-go/error.go3
-rw-r--r--vendor/github.com/libvirt/libvirt-go/error_compat.h6
-rw-r--r--vendor/github.com/libvirt/libvirt-go/events.go9
-rw-r--r--vendor/github.com/libvirt/libvirt-go/interface.go9
-rw-r--r--vendor/github.com/libvirt/libvirt-go/libvirtd.sasl2
-rw-r--r--vendor/github.com/libvirt/libvirt-go/network.go16
-rw-r--r--vendor/github.com/libvirt/libvirt-go/node_device.go16
-rw-r--r--vendor/github.com/libvirt/libvirt-go/nwfilter.go7
-rw-r--r--vendor/github.com/libvirt/libvirt-go/secret.go10
-rw-r--r--vendor/github.com/libvirt/libvirt-go/storage_pool.go23
-rw-r--r--vendor/github.com/libvirt/libvirt-go/storage_volume.go15
-rw-r--r--vendor/github.com/libvirt/libvirt-go/stream.go16
18 files changed, 500 insertions, 4 deletions
diff --git a/vendor/github.com/libvirt/libvirt-go/.travis.yml b/vendor/github.com/libvirt/libvirt-go/.travis.yml
index 63c0c672..1bdb48f9 100644
--- a/vendor/github.com/libvirt/libvirt-go/.travis.yml
+++ b/vendor/github.com/libvirt/libvirt-go/.travis.yml
@@ -7,12 +7,15 @@ go:
- 1.5
- 1.6
- 1.7
+ - 1.8
+ - 1.9
env:
- LIBVIRT=1.2.0 EXT=gz
- LIBVIRT=1.2.10 EXT=gz
- LIBVIRT=1.2.20 EXT=gz
- LIBVIRT=2.5.0 EXT=xz
+ - LIBVIRT=3.6.0 EXT=xz
install:
- sudo apt-get -qqy build-dep libvirt
@@ -29,6 +32,7 @@ install:
- make
- sudo make install
- popd
+ - sudo cp libvirtd.sasl /etc/sasl2/libvirt.conf
- sudo libvirtd -d -l -f libvirtd.conf
- sudo virtlogd -d || true
- sudo chmod a+rwx /var/run/libvirt/libvirt-sock*
diff --git a/vendor/github.com/libvirt/libvirt-go/connect.go b/vendor/github.com/libvirt/libvirt-go/connect.go
index ac6c0fe6..3267a03b 100644
--- a/vendor/github.com/libvirt/libvirt-go/connect.go
+++ b/vendor/github.com/libvirt/libvirt-go/connect.go
@@ -308,6 +308,7 @@ func releaseConnectionData(c *Connect) {
delete(connections, c.ptr)
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virGetVersion
func GetVersion() (uint32, error) {
var version C.ulong
if err := C.virGetVersion(&version, nil, nil); err < 0 {
@@ -316,6 +317,7 @@ func GetVersion() (uint32, error) {
return uint32(version), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectOpen
func NewConnect(uri string) (*Connect, error) {
var cUri *C.char
if uri != "" {
@@ -378,6 +380,7 @@ func connectAuthCallback(ccredlist C.virConnectCredentialPtr, ncred C.uint, call
return 0
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectOpenAuth
func NewConnectWithAuth(uri string, auth *ConnectAuth, flags ConnectFlags) (*Connect, error) {
var cUri *C.char
@@ -402,6 +405,7 @@ func NewConnectWithAuth(uri string, auth *ConnectAuth, flags ConnectFlags) (*Con
return &Connect{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectOpenReadOnly
func NewConnectReadOnly(uri string) (*Connect, error) {
var cUri *C.char
if uri != "" {
@@ -415,6 +419,7 @@ func NewConnectReadOnly(uri string) (*Connect, error) {
return &Connect{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectClose
func (c *Connect) Close() (int, error) {
result := int(C.virConnectClose(c.ptr))
if result == -1 {
@@ -428,6 +433,7 @@ func (c *Connect) Close() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectRef
func (c *Connect) Ref() error {
ret := C.virConnectRef(c.ptr)
if ret == -1 {
@@ -441,6 +447,7 @@ type CloseCallback func(conn *Connect, reason ConnectCloseReason)
// Register a close callback for the given destination. Only one
// callback per connection is allowed. Setting a callback will remove
// the previous one.
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectRegisterCloseCallback
func (c *Connect) RegisterCloseCallback(callback CloseCallback) error {
c.UnregisterCloseCallback()
goCallbackId := registerCallbackId(callback)
@@ -455,6 +462,7 @@ func (c *Connect) RegisterCloseCallback(callback CloseCallback) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectUnregisterCloseCallback
func (c *Connect) UnregisterCloseCallback() error {
connData := getConnectionData(c)
if connData.closeCallbackId == nil {
@@ -479,6 +487,7 @@ func closeCallback(conn C.virConnectPtr, reason ConnectCloseReason, goCallbackId
callback(&Connect{ptr: conn}, reason)
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetCapabilities
func (c *Connect) GetCapabilities() (string, error) {
str := C.virConnectGetCapabilities(c.ptr)
if str == nil {
@@ -489,6 +498,7 @@ func (c *Connect) GetCapabilities() (string, error) {
return capabilities, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetInfo
func (c *Connect) GetNodeInfo() (*NodeInfo, error) {
var cinfo C.virNodeInfo
result := C.virNodeGetInfo(c.ptr, &cinfo)
@@ -511,6 +521,7 @@ func (ni *NodeInfo) GetMaxCPUs() uint32 {
return ni.Nodes * ni.Sockets * ni.Cores * ni.Threads
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetHostname
func (c *Connect) GetHostname() (string, error) {
str := C.virConnectGetHostname(c.ptr)
if str == nil {
@@ -521,6 +532,7 @@ func (c *Connect) GetHostname() (string, error) {
return hostname, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetLibVersion
func (c *Connect) GetLibVersion() (uint32, error) {
var version C.ulong
if err := C.virConnectGetLibVersion(c.ptr, &version); err < 0 {
@@ -529,6 +541,7 @@ func (c *Connect) GetLibVersion() (uint32, error) {
return uint32(version), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetType
func (c *Connect) GetType() (string, error) {
str := C.virConnectGetType(c.ptr)
if str == nil {
@@ -538,6 +551,7 @@ func (c *Connect) GetType() (string, error) {
return hypDriver, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectIsAlive
func (c *Connect) IsAlive() (bool, error) {
result := C.virConnectIsAlive(c.ptr)
if result == -1 {
@@ -549,6 +563,7 @@ func (c *Connect) IsAlive() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectIsEncrypted
func (c *Connect) IsEncrypted() (bool, error) {
result := C.virConnectIsEncrypted(c.ptr)
if result == -1 {
@@ -560,6 +575,7 @@ func (c *Connect) IsEncrypted() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectIsSecure
func (c *Connect) IsSecure() (bool, error) {
result := C.virConnectIsSecure(c.ptr)
if result == -1 {
@@ -571,6 +587,7 @@ func (c *Connect) IsSecure() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectListDefinedDomains
func (c *Connect) ListDefinedDomains() ([]string, error) {
var names [1024](*C.char)
namesPtr := unsafe.Pointer(&names)
@@ -589,6 +606,7 @@ func (c *Connect) ListDefinedDomains() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectListDomains
func (c *Connect) ListDomains() ([]uint32, error) {
var cDomainsIds [512](uint32)
cDomainsPointer := unsafe.Pointer(&cDomainsIds)
@@ -600,6 +618,7 @@ func (c *Connect) ListDomains() ([]uint32, error) {
return cDomainsIds[:numDomains], nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virConnectListInterfaces
func (c *Connect) ListInterfaces() ([]string, error) {
const maxIfaces = 1024
var names [maxIfaces](*C.char)
@@ -619,6 +638,7 @@ func (c *Connect) ListInterfaces() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virConnectListNetworks
func (c *Connect) ListNetworks() ([]string, error) {
const maxNets = 1024
var names [maxNets](*C.char)
@@ -638,6 +658,7 @@ func (c *Connect) ListNetworks() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virConnectListNWFilters
func (c *Connect) ListNWFilters() ([]string, error) {
const maxFilters = 1024
var names [maxFilters](*C.char)
@@ -657,6 +678,7 @@ func (c *Connect) ListNWFilters() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectListStoragePools
func (c *Connect) ListStoragePools() ([]string, error) {
const maxPools = 1024
var names [maxPools](*C.char)
@@ -676,6 +698,7 @@ func (c *Connect) ListStoragePools() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virConnectListSecrets
func (c *Connect) ListSecrets() ([]string, error) {
const maxSecrets = 1024
var uuids [maxSecrets](*C.char)
@@ -695,6 +718,7 @@ func (c *Connect) ListSecrets() ([]string, error) {
return goUuids, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeListDevices
func (c *Connect) ListDevices(cap string, flags uint32) ([]string, error) {
ccap := C.CString(cap)
defer C.free(unsafe.Pointer(ccap))
@@ -716,6 +740,7 @@ func (c *Connect) ListDevices(cap string, flags uint32) ([]string, error) {
return goUuids, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainLookupByID
func (c *Connect) LookupDomainById(id uint32) (*Domain, error) {
ptr := C.virDomainLookupByID(c.ptr, C.int(id))
if ptr == nil {
@@ -724,6 +749,7 @@ func (c *Connect) LookupDomainById(id uint32) (*Domain, error) {
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainLookupByName
func (c *Connect) LookupDomainByName(id string) (*Domain, error) {
cName := C.CString(id)
defer C.free(unsafe.Pointer(cName))
@@ -734,6 +760,7 @@ func (c *Connect) LookupDomainByName(id string) (*Domain, error) {
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainLookupByUUIDString
func (c *Connect) LookupDomainByUUIDString(uuid string) (*Domain, error) {
cUuid := C.CString(uuid)
defer C.free(unsafe.Pointer(cUuid))
@@ -744,6 +771,7 @@ func (c *Connect) LookupDomainByUUIDString(uuid string) (*Domain, error) {
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainLookupByUUID
func (c *Connect) LookupDomainByUUID(uuid []byte) (*Domain, error) {
if len(uuid) != C.VIR_UUID_BUFLEN {
return nil, fmt.Errorf("UUID must be exactly %d bytes in size",
@@ -760,6 +788,7 @@ func (c *Connect) LookupDomainByUUID(uuid []byte) (*Domain, error) {
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCreateXML
func (c *Connect) DomainCreateXML(xmlConfig string, flags DomainCreateFlags) (*Domain, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -770,6 +799,7 @@ func (c *Connect) DomainCreateXML(xmlConfig string, flags DomainCreateFlags) (*D
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCreateXMLWithFiles
func (c *Connect) DomainCreateXMLWithFiles(xmlConfig string, files []os.File, flags DomainCreateFlags) (*Domain, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -784,6 +814,7 @@ func (c *Connect) DomainCreateXMLWithFiles(xmlConfig string, files []os.File, fl
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDefineXML
func (c *Connect) DomainDefineXML(xmlConfig string) (*Domain, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -794,6 +825,7 @@ func (c *Connect) DomainDefineXML(xmlConfig string) (*Domain, error) {
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDefineXMLFlags
func (c *Connect) DomainDefineXMLFlags(xmlConfig string, flags DomainDefineFlags) (*Domain, error) {
if C.LIBVIR_VERSION_NUMBER < 1002012 {
return nil, GetNotImplementedError("virDomainDefineXMLFlags")
@@ -807,6 +839,7 @@ func (c *Connect) DomainDefineXMLFlags(xmlConfig string, flags DomainDefineFlags
return &Domain{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virConnectListDefinedInterfaces
func (c *Connect) ListDefinedInterfaces() ([]string, error) {
const maxIfaces = 1024
var names [maxIfaces](*C.char)
@@ -826,6 +859,7 @@ func (c *Connect) ListDefinedInterfaces() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virConnectListDefinedNetworks
func (c *Connect) ListDefinedNetworks() ([]string, error) {
const maxNets = 1024
var names [maxNets](*C.char)
@@ -845,6 +879,7 @@ func (c *Connect) ListDefinedNetworks() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectListDefinedStoragePools
func (c *Connect) ListDefinedStoragePools() ([]string, error) {
const maxPools = 1024
var names [maxPools](*C.char)
@@ -864,6 +899,7 @@ func (c *Connect) ListDefinedStoragePools() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectNumOfDefinedDomains
func (c *Connect) NumOfDefinedDomains() (int, error) {
result := int(C.virConnectNumOfDefinedDomains(c.ptr))
if result == -1 {
@@ -872,6 +908,7 @@ func (c *Connect) NumOfDefinedDomains() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virConnectNumOfDefinedInterfaces
func (c *Connect) NumOfDefinedInterfaces() (int, error) {
result := int(C.virConnectNumOfDefinedInterfaces(c.ptr))
if result == -1 {
@@ -880,6 +917,7 @@ func (c *Connect) NumOfDefinedInterfaces() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virConnectNumOfDefinedNetworks
func (c *Connect) NumOfDefinedNetworks() (int, error) {
result := int(C.virConnectNumOfDefinedNetworks(c.ptr))
if result == -1 {
@@ -888,6 +926,7 @@ func (c *Connect) NumOfDefinedNetworks() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectNumOfDefinedStoragePools
func (c *Connect) NumOfDefinedStoragePools() (int, error) {
result := int(C.virConnectNumOfDefinedStoragePools(c.ptr))
if result == -1 {
@@ -896,6 +935,7 @@ func (c *Connect) NumOfDefinedStoragePools() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectNumOfDomains
func (c *Connect) NumOfDomains() (int, error) {
result := int(C.virConnectNumOfDomains(c.ptr))
if result == -1 {
@@ -904,6 +944,7 @@ func (c *Connect) NumOfDomains() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectNumOfStoragePools
func (c *Connect) NumOfStoragePools() (int, error) {
result := int(C.virConnectNumOfStoragePools(c.ptr))
if result == -1 {
@@ -912,6 +953,7 @@ func (c *Connect) NumOfStoragePools() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virConnectNumOfInterfaces
func (c *Connect) NumOfInterfaces() (int, error) {
result := int(C.virConnectNumOfInterfaces(c.ptr))
if result == -1 {
@@ -920,6 +962,7 @@ func (c *Connect) NumOfInterfaces() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virConnectNumOfNetworks
func (c *Connect) NumOfNetworks() (int, error) {
result := int(C.virConnectNumOfNetworks(c.ptr))
if result == -1 {
@@ -928,6 +971,7 @@ func (c *Connect) NumOfNetworks() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virConnectNumOfNWFilters
func (c *Connect) NumOfNWFilters() (int, error) {
result := int(C.virConnectNumOfNWFilters(c.ptr))
if result == -1 {
@@ -936,6 +980,7 @@ func (c *Connect) NumOfNWFilters() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virConnectNumOfSecrets
func (c *Connect) NumOfSecrets() (int, error) {
result := int(C.virConnectNumOfSecrets(c.ptr))
if result == -1 {
@@ -944,6 +989,7 @@ func (c *Connect) NumOfSecrets() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeNumOfDevices
func (c *Connect) NumOfDevices(cap string, flags uint32) (int, error) {
ccap := C.CString(cap)
defer C.free(unsafe.Pointer(ccap))
@@ -954,6 +1000,7 @@ func (c *Connect) NumOfDevices(cap string, flags uint32) (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkDefineXML
func (c *Connect) NetworkDefineXML(xmlConfig string) (*Network, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -964,6 +1011,7 @@ func (c *Connect) NetworkDefineXML(xmlConfig string) (*Network, error) {
return &Network{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkCreateXML
func (c *Connect) NetworkCreateXML(xmlConfig string) (*Network, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -974,6 +1022,7 @@ func (c *Connect) NetworkCreateXML(xmlConfig string) (*Network, error) {
return &Network{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkLookupByName
func (c *Connect) LookupNetworkByName(name string) (*Network, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -984,6 +1033,7 @@ func (c *Connect) LookupNetworkByName(name string) (*Network, error) {
return &Network{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkLookupByUUIDString
func (c *Connect) LookupNetworkByUUIDString(uuid string) (*Network, error) {
cUuid := C.CString(uuid)
defer C.free(unsafe.Pointer(cUuid))
@@ -994,6 +1044,7 @@ func (c *Connect) LookupNetworkByUUIDString(uuid string) (*Network, error) {
return &Network{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkLookupByUUID
func (c *Connect) LookupNetworkByUUID(uuid []byte) (*Network, error) {
if len(uuid) != C.VIR_UUID_BUFLEN {
return nil, fmt.Errorf("UUID must be exactly %d bytes in size",
@@ -1010,6 +1061,7 @@ func (c *Connect) LookupNetworkByUUID(uuid []byte) (*Network, error) {
return &Network{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectSetKeepAlive
func (c *Connect) SetKeepAlive(interval int, count uint) error {
res := int(C.virConnectSetKeepAlive(c.ptr, C.int(interval), C.uint(count)))
switch res {
@@ -1020,6 +1072,7 @@ func (c *Connect) SetKeepAlive(interval int, count uint) error {
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetSysinfo
func (c *Connect) GetSysinfo(flags uint32) (string, error) {
cStr := C.virConnectGetSysinfo(c.ptr, C.uint(flags))
if cStr == nil {
@@ -1030,6 +1083,7 @@ func (c *Connect) GetSysinfo(flags uint32) (string, error) {
return info, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetURI
func (c *Connect) GetURI() (string, error) {
cStr := C.virConnectGetURI(c.ptr)
if cStr == nil {
@@ -1040,6 +1094,7 @@ func (c *Connect) GetURI() (string, error) {
return uri, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetMaxVcpus
func (c *Connect) GetMaxVcpus(typeAttr string) (int, error) {
var cTypeAttr *C.char
if typeAttr != "" {
@@ -1053,6 +1108,7 @@ func (c *Connect) GetMaxVcpus(typeAttr string) (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceDefineXML
func (c *Connect) InterfaceDefineXML(xmlConfig string, flags uint32) (*Interface, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1063,6 +1119,7 @@ func (c *Connect) InterfaceDefineXML(xmlConfig string, flags uint32) (*Interface
return &Interface{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceLookupByName
func (c *Connect) LookupInterfaceByName(name string) (*Interface, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -1073,6 +1130,7 @@ func (c *Connect) LookupInterfaceByName(name string) (*Interface, error) {
return &Interface{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceLookupByMACString
func (c *Connect) LookupInterfaceByMACString(mac string) (*Interface, error) {
cName := C.CString(mac)
defer C.free(unsafe.Pointer(cName))
@@ -1083,6 +1141,7 @@ func (c *Connect) LookupInterfaceByMACString(mac string) (*Interface, error) {
return &Interface{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolDefineXML
func (c *Connect) StoragePoolDefineXML(xmlConfig string, flags uint32) (*StoragePool, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1093,6 +1152,7 @@ func (c *Connect) StoragePoolDefineXML(xmlConfig string, flags uint32) (*Storage
return &StoragePool{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolCreateXML
func (c *Connect) StoragePoolCreateXML(xmlConfig string, flags StoragePoolCreateFlags) (*StoragePool, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1103,6 +1163,7 @@ func (c *Connect) StoragePoolCreateXML(xmlConfig string, flags StoragePoolCreate
return &StoragePool{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolLookupByName
func (c *Connect) LookupStoragePoolByName(name string) (*StoragePool, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -1113,6 +1174,7 @@ func (c *Connect) LookupStoragePoolByName(name string) (*StoragePool, error) {
return &StoragePool{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolLookupByUUIDString
func (c *Connect) LookupStoragePoolByUUIDString(uuid string) (*StoragePool, error) {
cUuid := C.CString(uuid)
defer C.free(unsafe.Pointer(cUuid))
@@ -1123,6 +1185,7 @@ func (c *Connect) LookupStoragePoolByUUIDString(uuid string) (*StoragePool, erro
return &StoragePool{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolLookupByUUID
func (c *Connect) LookupStoragePoolByUUID(uuid []byte) (*StoragePool, error) {
if len(uuid) != C.VIR_UUID_BUFLEN {
return nil, fmt.Errorf("UUID must be exactly %d bytes in size",
@@ -1139,6 +1202,7 @@ func (c *Connect) LookupStoragePoolByUUID(uuid []byte) (*StoragePool, error) {
return &StoragePool{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterDefineXML
func (c *Connect) NWFilterDefineXML(xmlConfig string) (*NWFilter, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1149,6 +1213,7 @@ func (c *Connect) NWFilterDefineXML(xmlConfig string) (*NWFilter, error) {
return &NWFilter{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterLookupByName
func (c *Connect) LookupNWFilterByName(name string) (*NWFilter, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -1159,6 +1224,7 @@ func (c *Connect) LookupNWFilterByName(name string) (*NWFilter, error) {
return &NWFilter{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterLookupByUUIDString
func (c *Connect) LookupNWFilterByUUIDString(uuid string) (*NWFilter, error) {
cUuid := C.CString(uuid)
defer C.free(unsafe.Pointer(cUuid))
@@ -1169,6 +1235,7 @@ func (c *Connect) LookupNWFilterByUUIDString(uuid string) (*NWFilter, error) {
return &NWFilter{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterLookupByUUID
func (c *Connect) LookupNWFilterByUUID(uuid []byte) (*NWFilter, error) {
if len(uuid) != C.VIR_UUID_BUFLEN {
return nil, fmt.Errorf("UUID must be exactly %d bytes in size",
@@ -1185,6 +1252,7 @@ func (c *Connect) LookupNWFilterByUUID(uuid []byte) (*NWFilter, error) {
return &NWFilter{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolLookupByKey
func (c *Connect) LookupStorageVolByKey(key string) (*StorageVol, error) {
cKey := C.CString(key)
defer C.free(unsafe.Pointer(cKey))
@@ -1195,6 +1263,7 @@ func (c *Connect) LookupStorageVolByKey(key string) (*StorageVol, error) {
return &StorageVol{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolLookupByPath
func (c *Connect) LookupStorageVolByPath(path string) (*StorageVol, error) {
cPath := C.CString(path)
defer C.free(unsafe.Pointer(cPath))
@@ -1205,6 +1274,7 @@ func (c *Connect) LookupStorageVolByPath(path string) (*StorageVol, error) {
return &StorageVol{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretDefineXML
func (c *Connect) SecretDefineXML(xmlConfig string, flags uint32) (*Secret, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1215,6 +1285,7 @@ func (c *Connect) SecretDefineXML(xmlConfig string, flags uint32) (*Secret, erro
return &Secret{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretLookupByUUID
func (c *Connect) LookupSecretByUUID(uuid []byte) (*Secret, error) {
if len(uuid) != C.VIR_UUID_BUFLEN {
return nil, fmt.Errorf("UUID must be exactly %d bytes in size",
@@ -1231,6 +1302,7 @@ func (c *Connect) LookupSecretByUUID(uuid []byte) (*Secret, error) {
return &Secret{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretLookupByUUIDString
func (c *Connect) LookupSecretByUUIDString(uuid string) (*Secret, error) {
cUuid := C.CString(uuid)
defer C.free(unsafe.Pointer(cUuid))
@@ -1241,6 +1313,7 @@ func (c *Connect) LookupSecretByUUIDString(uuid string) (*Secret, error) {
return &Secret{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretLookupByUsage
func (c *Connect) LookupSecretByUsage(usageType SecretUsageType, usageID string) (*Secret, error) {
cUsageID := C.CString(usageID)
defer C.free(unsafe.Pointer(cUsageID))
@@ -1251,6 +1324,7 @@ func (c *Connect) LookupSecretByUsage(usageType SecretUsageType, usageID string)
return &Secret{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceLookupByName
func (c *Connect) LookupDeviceByName(id string) (*NodeDevice, error) {
cName := C.CString(id)
defer C.free(unsafe.Pointer(cName))
@@ -1261,6 +1335,7 @@ func (c *Connect) LookupDeviceByName(id string) (*NodeDevice, error) {
return &NodeDevice{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceLookupSCSIHostByWWN
func (c *Connect) LookupDeviceSCSIHostByWWN(wwnn, wwpn string, flags uint32) (*NodeDevice, error) {
cWwnn := C.CString(wwnn)
cWwpn := C.CString(wwpn)
@@ -1273,6 +1348,7 @@ func (c *Connect) LookupDeviceSCSIHostByWWN(wwnn, wwpn string, flags uint32) (*N
return &NodeDevice{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceCreateXML
func (c *Connect) DeviceCreateXML(xmlConfig string, flags uint32) (*NodeDevice, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -1283,6 +1359,7 @@ func (c *Connect) DeviceCreateXML(xmlConfig string, flags uint32) (*NodeDevice,
return &NodeDevice{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virConnectListAllInterfaces
func (c *Connect) ListAllInterfaces(flags ConnectListAllInterfacesFlags) ([]Interface, error) {
var cList *C.virInterfacePtr
numIfaces := C.virConnectListAllInterfaces(c.ptr, (**C.virInterfacePtr)(&cList), C.uint(flags))
@@ -1303,6 +1380,7 @@ func (c *Connect) ListAllInterfaces(flags ConnectListAllInterfacesFlags) ([]Inte
return ifaces, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virConnectListAllNetworks
func (c *Connect) ListAllNetworks(flags ConnectListAllNetworksFlags) ([]Network, error) {
var cList *C.virNetworkPtr
numNets := C.virConnectListAllNetworks(c.ptr, (**C.virNetworkPtr)(&cList), C.uint(flags))
@@ -1323,6 +1401,7 @@ func (c *Connect) ListAllNetworks(flags ConnectListAllNetworksFlags) ([]Network,
return nets, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectListAllDomains
func (c *Connect) ListAllDomains(flags ConnectListAllDomainsFlags) ([]Domain, error) {
var cList *C.virDomainPtr
numDomains := C.virConnectListAllDomains(c.ptr, (**C.virDomainPtr)(&cList), C.uint(flags))
@@ -1343,6 +1422,7 @@ func (c *Connect) ListAllDomains(flags ConnectListAllDomainsFlags) ([]Domain, er
return domains, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virConnectListAllNWFilters
func (c *Connect) ListAllNWFilters(flags uint32) ([]NWFilter, error) {
var cList *C.virNWFilterPtr
numNWFilters := C.virConnectListAllNWFilters(c.ptr, (**C.virNWFilterPtr)(&cList), C.uint(flags))
@@ -1363,6 +1443,7 @@ func (c *Connect) ListAllNWFilters(flags uint32) ([]NWFilter, error) {
return filters, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectListAllStoragePools
func (c *Connect) ListAllStoragePools(flags ConnectListAllStoragePoolsFlags) ([]StoragePool, error) {
var cList *C.virStoragePoolPtr
numPools := C.virConnectListAllStoragePools(c.ptr, (**C.virStoragePoolPtr)(&cList), C.uint(flags))
@@ -1383,6 +1464,7 @@ func (c *Connect) ListAllStoragePools(flags ConnectListAllStoragePoolsFlags) ([]
return pools, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virConnectListAllSecrets
func (c *Connect) ListAllSecrets(flags ConnectListAllSecretsFlags) ([]Secret, error) {
var cList *C.virSecretPtr
numPools := C.virConnectListAllSecrets(c.ptr, (**C.virSecretPtr)(&cList), C.uint(flags))
@@ -1403,6 +1485,7 @@ func (c *Connect) ListAllSecrets(flags ConnectListAllSecretsFlags) ([]Secret, er
return pools, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virConnectListAllNodeDevices
func (c *Connect) ListAllNodeDevices(flags ConnectListAllNodeDeviceFlags) ([]NodeDevice, error) {
var cList *C.virNodeDevicePtr
numPools := C.virConnectListAllNodeDevices(c.ptr, (**C.virNodeDevicePtr)(&cList), C.uint(flags))
@@ -1423,6 +1506,7 @@ func (c *Connect) ListAllNodeDevices(flags ConnectListAllNodeDeviceFlags) ([]Nod
return pools, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceChangeBegin
func (c *Connect) InterfaceChangeBegin(flags uint32) error {
ret := C.virInterfaceChangeBegin(c.ptr, C.uint(flags))
if ret == -1 {
@@ -1431,6 +1515,7 @@ func (c *Connect) InterfaceChangeBegin(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceChangeCommit
func (c *Connect) InterfaceChangeCommit(flags uint32) error {
ret := C.virInterfaceChangeCommit(c.ptr, C.uint(flags))
if ret == -1 {
@@ -1439,6 +1524,7 @@ func (c *Connect) InterfaceChangeCommit(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceChangeRollback
func (c *Connect) InterfaceChangeRollback(flags uint32) error {
ret := C.virInterfaceChangeRollback(c.ptr, C.uint(flags))
if ret == -1 {
@@ -1447,6 +1533,7 @@ func (c *Connect) InterfaceChangeRollback(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeAllocPages
func (c *Connect) AllocPages(pageSizes map[int]int64, startCell int, cellCount uint, flags NodeAllocPagesFlags) (int, error) {
if C.LIBVIR_VERSION_NUMBER < 1002009 {
return 0, GetNotImplementedError("virNodeAllocPages")
@@ -1470,6 +1557,7 @@ func (c *Connect) AllocPages(pageSizes map[int]int64, startCell int, cellCount u
return int(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetCPUMap
func (c *Connect) GetCPUMap(flags uint32) (map[int]bool, uint, error) {
var ccpumap *C.uchar
var conline C.uint
@@ -1507,6 +1595,7 @@ type NodeCPUStats struct {
Utilization uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetCPUStats
func (c *Connect) GetCPUStats(cpuNum int, flags uint32) (*NodeCPUStats, error) {
var nparams C.int
@@ -1550,6 +1639,7 @@ func (c *Connect) GetCPUStats(cpuNum int, flags uint32) (*NodeCPUStats, error) {
return stats, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetCellsFreeMemory
func (c *Connect) GetCellsFreeMemory(startCell int, maxCells int) ([]uint64, error) {
cmem := make([]C.ulonglong, maxCells)
ret := C.virNodeGetCellsFreeMemory(c.ptr, (*C.ulonglong)(unsafe.Pointer(&cmem[0])), C.int(startCell), C.int(maxCells))
@@ -1565,6 +1655,7 @@ func (c *Connect) GetCellsFreeMemory(startCell int, maxCells int) ([]uint64, err
return mem, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetFreeMemory
func (c *Connect) GetFreeMemory() (uint64, error) {
ret := C.virNodeGetFreeMemory(c.ptr)
if ret == 0 {
@@ -1574,6 +1665,7 @@ func (c *Connect) GetFreeMemory() (uint64, error) {
return (uint64)(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetFreePages
func (c *Connect) GetFreePages(pageSizes []uint64, startCell int, maxCells uint, flags uint32) ([]uint64, error) {
if C.LIBVIR_VERSION_NUMBER < 1002006 {
return []uint64{}, GetNotImplementedError("virNodeGetFreePages")
@@ -1655,6 +1747,7 @@ func getMemoryParameterFieldInfo(params *NodeMemoryParameters) map[string]typedP
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetMemoryParameters
func (c *Connect) GetMemoryParameters(flags uint32) (*NodeMemoryParameters, error) {
params := &NodeMemoryParameters{}
info := getMemoryParameterFieldInfo(params)
@@ -1693,6 +1786,7 @@ type NodeMemoryStats struct {
Cached uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetMemoryStats
func (c *Connect) GetMemoryStats(cellNum int, flags uint32) (*NodeMemoryStats, error) {
var nparams C.int
@@ -1735,6 +1829,7 @@ type NodeSecurityModel struct {
Doi string
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeGetSecurityModel
func (c *Connect) GetSecurityModel() (*NodeSecurityModel, error) {
var cmodel C.virSecurityModel
ret := C.virNodeGetSecurityModel(c.ptr, &cmodel)
@@ -1748,6 +1843,7 @@ func (c *Connect) GetSecurityModel() (*NodeSecurityModel, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeSetMemoryParameters
func (c *Connect) SetMemoryParameters(params *NodeMemoryParameters, flags uint32) error {
info := getMemoryParameterFieldInfo(params)
@@ -1776,6 +1872,7 @@ func (c *Connect) SetMemoryParameters(params *NodeMemoryParameters, flags uint32
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virNodeSuspendForDuration
func (c *Connect) SuspendForDuration(target NodeSuspendTarget, duration uint64, flags uint32) error {
ret := C.virNodeSuspendForDuration(c.ptr, C.uint(target), C.ulonglong(duration), C.uint(flags))
if ret == -1 {
@@ -1784,6 +1881,7 @@ func (c *Connect) SuspendForDuration(target NodeSuspendTarget, duration uint64,
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSaveImageDefineXML
func (c *Connect) DomainSaveImageDefineXML(file string, xml string, flags DomainSaveRestoreFlags) error {
cfile := C.CString(file)
defer C.free(unsafe.Pointer(cfile))
@@ -1799,6 +1897,7 @@ func (c *Connect) DomainSaveImageDefineXML(file string, xml string, flags Domain
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSaveImageGetXMLDesc
func (c *Connect) DomainSaveImageGetXMLDesc(file string, flags DomainXMLFlags) (string, error) {
cfile := C.CString(file)
defer C.free(unsafe.Pointer(cfile))
@@ -1814,6 +1913,7 @@ func (c *Connect) DomainSaveImageGetXMLDesc(file string, flags DomainXMLFlags) (
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectBaselineCPU
func (c *Connect) BaselineCPU(xmlCPUs []string, flags ConnectBaselineCPUFlags) (string, error) {
cxmlCPUs := make([]*C.char, len(xmlCPUs))
for i := 0; i < len(xmlCPUs); i++ {
@@ -1831,6 +1931,7 @@ func (c *Connect) BaselineCPU(xmlCPUs []string, flags ConnectBaselineCPUFlags) (
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectCompareCPU
func (c *Connect) CompareCPU(xmlDesc string, flags ConnectCompareCPUFlags) (CPUCompareResult, error) {
cxmlDesc := C.CString(xmlDesc)
defer C.free(unsafe.Pointer(cxmlDesc))
@@ -1843,6 +1944,7 @@ func (c *Connect) CompareCPU(xmlDesc string, flags ConnectCompareCPUFlags) (CPUC
return CPUCompareResult(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectDomainXMLFromNative
func (c *Connect) DomainXMLFromNative(nativeFormat string, nativeConfig string, flags uint32) (string, error) {
cnativeFormat := C.CString(nativeFormat)
defer C.free(unsafe.Pointer(cnativeFormat))
@@ -1859,6 +1961,7 @@ func (c *Connect) DomainXMLFromNative(nativeFormat string, nativeConfig string,
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectDomainXMLToNative
func (c *Connect) DomainXMLToNative(nativeFormat string, domainXml string, flags uint32) (string, error) {
cnativeFormat := C.CString(nativeFormat)
defer C.free(unsafe.Pointer(cnativeFormat))
@@ -1875,6 +1978,7 @@ func (c *Connect) DomainXMLToNative(nativeFormat string, domainXml string, flags
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetCPUModelNames
func (c *Connect) GetCPUModelNames(arch string, flags uint32) ([]string, error) {
carch := C.CString(arch)
defer C.free(unsafe.Pointer(carch))
@@ -1897,6 +2001,7 @@ func (c *Connect) GetCPUModelNames(arch string, flags uint32) ([]string, error)
return models, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectGetDomainCapabilities
func (c *Connect) GetDomainCapabilities(emulatorbin string, arch string, machine string, virttype string, flags uint32) (string, error) {
if C.LIBVIR_VERSION_NUMBER < 1002007 {
return "", GetNotImplementedError("virConnectGetDomainCapabilities")
@@ -1932,6 +2037,7 @@ func (c *Connect) GetDomainCapabilities(emulatorbin string, arch string, machine
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-host.html#virConnectGetVersion
func (c *Connect) GetVersion() (uint32, error) {
var hvVer C.ulong
ret := C.virConnectGetVersion(c.ptr, &hvVer)
@@ -1942,6 +2048,7 @@ func (c *Connect) GetVersion() (uint32, error) {
return uint32(hvVer), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virConnectFindStoragePoolSources
func (c *Connect) FindStoragePoolSources(pooltype string, srcSpec string, flags uint32) (string, error) {
cpooltype := C.CString(pooltype)
defer C.free(unsafe.Pointer(cpooltype))
@@ -1960,6 +2067,7 @@ func (c *Connect) FindStoragePoolSources(pooltype string, srcSpec string, flags
return C.GoString(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainRestore
func (c *Connect) DomainRestore(srcFile string) error {
cPath := C.CString(srcFile)
defer C.free(unsafe.Pointer(cPath))
@@ -1969,6 +2077,7 @@ func (c *Connect) DomainRestore(srcFile string) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainRestoreFlags
func (c *Connect) DomainRestoreFlags(srcFile, xmlConf string, flags DomainSaveRestoreFlags) error {
cPath := C.CString(srcFile)
defer C.free(unsafe.Pointer(cPath))
@@ -1983,6 +2092,7 @@ func (c *Connect) DomainRestoreFlags(srcFile, xmlConf string, flags DomainSaveRe
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamNew
func (c *Connect) NewStream(flags StreamFlags) (*Stream, error) {
virStream := C.virStreamNew(c.ptr, C.uint(flags))
if virStream == nil {
@@ -2423,6 +2533,7 @@ func getDomainStatsLengthsFieldInfo(params *domainStatsLengths) map[string]typed
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virConnectGetAllDomainStats
func (c *Connect) GetAllDomainStats(doms []*Domain, statsTypes DomainStatsTypes, flags ConnectGetAllDomainStatsFlags) ([]DomainStats, error) {
if C.LIBVIR_VERSION_NUMBER < 1002008 {
return []DomainStats{}, GetNotImplementedError("virConnectGetAllDomainStats")
diff --git a/vendor/github.com/libvirt/libvirt-go/domain.go b/vendor/github.com/libvirt/libvirt-go/domain.go
index cc786dde..b83bfc3e 100644
--- a/vendor/github.com/libvirt/libvirt-go/domain.go
+++ b/vendor/github.com/libvirt/libvirt-go/domain.go
@@ -856,6 +856,7 @@ type DomainVcpuInfo struct {
CpuMap []bool
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainFree
func (d *Domain) Free() error {
ret := C.virDomainFree(d.ptr)
if ret == -1 {
@@ -864,6 +865,7 @@ func (d *Domain) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainRef
func (c *Domain) Ref() error {
ret := C.virDomainRef(c.ptr)
if ret == -1 {
@@ -872,6 +874,7 @@ func (c *Domain) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCreate
func (d *Domain) Create() error {
result := C.virDomainCreate(d.ptr)
if result == -1 {
@@ -880,6 +883,7 @@ func (d *Domain) Create() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCreateWithFlags
func (d *Domain) CreateWithFlags(flags DomainCreateFlags) error {
result := C.virDomainCreateWithFlags(d.ptr, C.uint(flags))
if result == -1 {
@@ -888,6 +892,7 @@ func (d *Domain) CreateWithFlags(flags DomainCreateFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCreateWithFiles
func (d *Domain) CreateWithFiles(files []os.File, flags DomainCreateFlags) error {
cfiles := make([]C.int, len(files))
for i := 0; i < len(files); i++ {
@@ -900,6 +905,7 @@ func (d *Domain) CreateWithFiles(files []os.File, flags DomainCreateFlags) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDestroy
func (d *Domain) Destroy() error {
result := C.virDomainDestroy(d.ptr)
if result == -1 {
@@ -908,6 +914,7 @@ func (d *Domain) Destroy() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainShutdown
func (d *Domain) Shutdown() error {
result := C.virDomainShutdown(d.ptr)
if result == -1 {
@@ -916,6 +923,7 @@ func (d *Domain) Shutdown() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainReboot
func (d *Domain) Reboot(flags DomainRebootFlagValues) error {
result := C.virDomainReboot(d.ptr, C.uint(flags))
if result == -1 {
@@ -924,6 +932,7 @@ func (d *Domain) Reboot(flags DomainRebootFlagValues) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsActive
func (d *Domain) IsActive() (bool, error) {
result := C.virDomainIsActive(d.ptr)
if result == -1 {
@@ -935,6 +944,7 @@ func (d *Domain) IsActive() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsPersistent
func (d *Domain) IsPersistent() (bool, error) {
result := C.virDomainIsPersistent(d.ptr)
if result == -1 {
@@ -946,6 +956,7 @@ func (d *Domain) IsPersistent() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainIsUpdated
func (d *Domain) IsUpdated() (bool, error) {
result := C.virDomainIsUpdated(d.ptr)
if result == -1 {
@@ -957,6 +968,7 @@ func (d *Domain) IsUpdated() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetAutostart
func (d *Domain) SetAutostart(autostart bool) error {
var cAutostart C.int
switch autostart {
@@ -972,6 +984,7 @@ func (d *Domain) SetAutostart(autostart bool) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetAutostart
func (d *Domain) GetAutostart() (bool, error) {
var out C.int
result := C.virDomainGetAutostart(d.ptr, (*C.int)(unsafe.Pointer(&out)))
@@ -986,6 +999,7 @@ func (d *Domain) GetAutostart() (bool, error) {
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetBlockInfo
func (d *Domain) GetBlockInfo(disk string, flag uint) (*DomainBlockInfo, error) {
var cinfo C.virDomainBlockInfo
cDisk := C.CString(disk)
@@ -1002,6 +1016,7 @@ func (d *Domain) GetBlockInfo(disk string, flag uint) (*DomainBlockInfo, error)
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetName
func (d *Domain) GetName() (string, error) {
name := C.virDomainGetName(d.ptr)
if name == nil {
@@ -1010,6 +1025,7 @@ func (d *Domain) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetState
func (d *Domain) GetState() (DomainState, int, error) {
var cState C.int
var cReason C.int
@@ -1023,6 +1039,7 @@ func (d *Domain) GetState() (DomainState, int, error) {
return DomainState(cState), int(cReason), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetID
func (d *Domain) GetID() (uint, error) {
id := uint(C.virDomainGetID(d.ptr))
if id == ^uint(0) {
@@ -1031,6 +1048,7 @@ func (d *Domain) GetID() (uint, error) {
return id, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetUUID
func (d *Domain) GetUUID() ([]byte, error) {
var cUuid [C.VIR_UUID_BUFLEN](byte)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -1041,6 +1059,7 @@ func (d *Domain) GetUUID() ([]byte, error) {
return C.GoBytes(cuidPtr, C.VIR_UUID_BUFLEN), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetUUIDString
func (d *Domain) GetUUIDString() (string, error) {
var cUuid [C.VIR_UUID_STRING_BUFLEN](C.char)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -1051,6 +1070,7 @@ func (d *Domain) GetUUIDString() (string, error) {
return C.GoString((*C.char)(cuidPtr)), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetInfo
func (d *Domain) GetInfo() (*DomainInfo, error) {
var cinfo C.virDomainInfo
result := C.virDomainGetInfo(d.ptr, &cinfo)
@@ -1066,6 +1086,7 @@ func (d *Domain) GetInfo() (*DomainInfo, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetXMLDesc
func (d *Domain) GetXMLDesc(flags DomainXMLFlags) (string, error) {
result := C.virDomainGetXMLDesc(d.ptr, C.uint(flags))
if result == nil {
@@ -1108,6 +1129,7 @@ func getCPUStatsFieldInfo(params *DomainCPUStats) map[string]typedParamsFieldInf
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetCPUStats
func (d *Domain) GetCPUStats(startCpu int, nCpus uint, flags uint32) ([]DomainCPUStats, error) {
if nCpus == 0 {
if startCpu == -1 {
@@ -1205,6 +1227,7 @@ func getInterfaceParameterFieldInfo(params *DomainInterfaceParameters) map[strin
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetInterfaceParameters
func (d *Domain) GetInterfaceParameters(device string, flags DomainModificationImpact) (*DomainInterfaceParameters, error) {
params := &DomainInterfaceParameters{}
info := getInterfaceParameterFieldInfo(params)
@@ -1234,6 +1257,7 @@ func (d *Domain) GetInterfaceParameters(device string, flags DomainModificationI
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetInterfaceParameters
func (d *Domain) SetInterfaceParameters(device string, params *DomainInterfaceParameters, flags DomainModificationImpact) error {
info := getInterfaceParameterFieldInfo(params)
@@ -1264,6 +1288,7 @@ func (d *Domain) SetInterfaceParameters(device string, params *DomainInterfacePa
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetMetadata
func (d *Domain) GetMetadata(tipus DomainMetadataType, uri string, flags DomainModificationImpact) (string, error) {
var cUri *C.char
if uri != "" {
@@ -1280,6 +1305,7 @@ func (d *Domain) GetMetadata(tipus DomainMetadataType, uri string, flags DomainM
return C.GoString(result), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMetadata
func (d *Domain) SetMetadata(metaDataType DomainMetadataType, metaDataCont, uriKey, uri string, flags DomainModificationImpact) error {
var cMetaDataCont *C.char
var cUriKey *C.char
@@ -1305,6 +1331,7 @@ func (d *Domain) SetMetadata(metaDataType DomainMetadataType, metaDataCont, uriK
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainUndefine
func (d *Domain) Undefine() error {
result := C.virDomainUndefine(d.ptr)
if result == -1 {
@@ -1313,6 +1340,7 @@ func (d *Domain) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainUndefineFlags
func (d *Domain) UndefineFlags(flags DomainUndefineFlagsValues) error {
result := C.virDomainUndefineFlags(d.ptr, C.uint(flags))
if result == -1 {
@@ -1321,6 +1349,7 @@ func (d *Domain) UndefineFlags(flags DomainUndefineFlagsValues) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMaxMemory
func (d *Domain) SetMaxMemory(memory uint) error {
result := C.virDomainSetMaxMemory(d.ptr, C.ulong(memory))
if result == -1 {
@@ -1329,6 +1358,7 @@ func (d *Domain) SetMaxMemory(memory uint) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMemory
func (d *Domain) SetMemory(memory uint64) error {
result := C.virDomainSetMemory(d.ptr, C.ulong(memory))
if result == -1 {
@@ -1337,6 +1367,7 @@ func (d *Domain) SetMemory(memory uint64) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMemoryFlags
func (d *Domain) SetMemoryFlags(memory uint64, flags DomainMemoryModFlags) error {
result := C.virDomainSetMemoryFlags(d.ptr, C.ulong(memory), C.uint(flags))
if result == -1 {
@@ -1345,6 +1376,7 @@ func (d *Domain) SetMemoryFlags(memory uint64, flags DomainMemoryModFlags) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMemoryStatsPeriod
func (d *Domain) SetMemoryStatsPeriod(period int, flags DomainMemoryModFlags) error {
result := C.virDomainSetMemoryStatsPeriod(d.ptr, C.int(period), C.uint(flags))
if result == -1 {
@@ -1353,6 +1385,7 @@ func (d *Domain) SetMemoryStatsPeriod(period int, flags DomainMemoryModFlags) er
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetVcpus
func (d *Domain) SetVcpus(vcpu uint) error {
result := C.virDomainSetVcpus(d.ptr, C.uint(vcpu))
if result == -1 {
@@ -1361,6 +1394,7 @@ func (d *Domain) SetVcpus(vcpu uint) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetVcpusFlags
func (d *Domain) SetVcpusFlags(vcpu uint, flags DomainVcpuFlags) error {
result := C.virDomainSetVcpusFlags(d.ptr, C.uint(vcpu), C.uint(flags))
if result == -1 {
@@ -1369,6 +1403,7 @@ func (d *Domain) SetVcpusFlags(vcpu uint, flags DomainVcpuFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSuspend
func (d *Domain) Suspend() error {
result := C.virDomainSuspend(d.ptr)
if result == -1 {
@@ -1377,6 +1412,7 @@ func (d *Domain) Suspend() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainResume
func (d *Domain) Resume() error {
result := C.virDomainResume(d.ptr)
if result == -1 {
@@ -1385,6 +1421,7 @@ func (d *Domain) Resume() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainAbortJob
func (d *Domain) AbortJob() error {
result := C.virDomainAbortJob(d.ptr)
if result == -1 {
@@ -1393,6 +1430,7 @@ func (d *Domain) AbortJob() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDestroyFlags
func (d *Domain) DestroyFlags(flags DomainDestroyFlags) error {
result := C.virDomainDestroyFlags(d.ptr, C.uint(flags))
if result == -1 {
@@ -1401,6 +1439,7 @@ func (d *Domain) DestroyFlags(flags DomainDestroyFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainShutdownFlags
func (d *Domain) ShutdownFlags(flags DomainShutdownFlags) error {
result := C.virDomainShutdownFlags(d.ptr, C.uint(flags))
if result == -1 {
@@ -1409,6 +1448,7 @@ func (d *Domain) ShutdownFlags(flags DomainShutdownFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainAttachDevice
func (d *Domain) AttachDevice(xml string) error {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -1419,6 +1459,7 @@ func (d *Domain) AttachDevice(xml string) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainAttachDeviceFlags
func (d *Domain) AttachDeviceFlags(xml string, flags DomainDeviceModifyFlags) error {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -1429,6 +1470,7 @@ func (d *Domain) AttachDeviceFlags(xml string, flags DomainDeviceModifyFlags) er
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDetachDevice
func (d *Domain) DetachDevice(xml string) error {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -1439,6 +1481,7 @@ func (d *Domain) DetachDevice(xml string) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDetachDeviceFlags
func (d *Domain) DetachDeviceFlags(xml string, flags DomainDeviceModifyFlags) error {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -1449,6 +1492,7 @@ func (d *Domain) DetachDeviceFlags(xml string, flags DomainDeviceModifyFlags) er
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainUpdateDeviceFlags
func (d *Domain) UpdateDeviceFlags(xml string, flags DomainDeviceModifyFlags) error {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -1459,6 +1503,7 @@ func (d *Domain) UpdateDeviceFlags(xml string, flags DomainDeviceModifyFlags) er
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainScreenshot
func (d *Domain) Screenshot(stream *Stream, screen, flags uint32) (string, error) {
cType := C.virDomainScreenshot(d.ptr, stream.ptr, C.uint(screen), C.uint(flags))
if cType == nil {
@@ -1470,6 +1515,7 @@ func (d *Domain) Screenshot(stream *Stream, screen, flags uint32) (string, error
return mimeType, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSendKey
func (d *Domain) SendKey(codeset, holdtime uint, keycodes []uint, flags uint32) error {
result := C.virDomainSendKey(d.ptr, C.uint(codeset), C.uint(holdtime), (*C.uint)(unsafe.Pointer(&keycodes[0])), C.int(len(keycodes)), C.uint(flags))
if result == -1 {
@@ -1541,6 +1587,7 @@ func getBlockStatsFieldInfo(params *DomainBlockStats) map[string]typedParamsFiel
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockStatsFlags
func (d *Domain) BlockStatsFlags(disk string, flags uint32) (*DomainBlockStats, error) {
params := &DomainBlockStats{}
info := getBlockStatsFieldInfo(params)
@@ -1570,6 +1617,7 @@ func (d *Domain) BlockStatsFlags(disk string, flags uint32) (*DomainBlockStats,
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockStats
func (d *Domain) BlockStats(path string) (*DomainBlockStats, error) {
cPath := C.CString(path)
defer C.free(unsafe.Pointer(cPath))
@@ -1615,6 +1663,7 @@ type DomainInterfaceStats struct {
TxDrop int64
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainInterfaceStats
func (d *Domain) InterfaceStats(path string) (*DomainInterfaceStats, error) {
cPath := C.CString(path)
defer C.free(unsafe.Pointer(cPath))
@@ -1649,6 +1698,7 @@ func (d *Domain) InterfaceStats(path string) (*DomainInterfaceStats, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMemoryStats
func (d *Domain) MemoryStats(nrStats uint32, flags uint32) ([]DomainMemoryStat, error) {
ptr := make([]C.virDomainMemoryStatStruct, nrStats)
@@ -1670,6 +1720,7 @@ func (d *Domain) MemoryStats(nrStats uint32, flags uint32) ([]DomainMemoryStat,
return out, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetVcpus
func (d *Domain) GetVcpus() ([]DomainVcpuInfo, error) {
var cnodeinfo C.virNodeInfo
ret := C.virNodeGetInfo(C.virDomainGetConnect(d.ptr), &cnodeinfo)
@@ -1716,6 +1767,7 @@ func (d *Domain) GetVcpus() ([]DomainVcpuInfo, error) {
return info, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetVcpusFlags
func (d *Domain) GetVcpusFlags(flags DomainVcpuFlags) (int32, error) {
result := C.virDomainGetVcpusFlags(d.ptr, C.uint(flags))
if result == -1 {
@@ -1724,6 +1776,7 @@ func (d *Domain) GetVcpusFlags(flags DomainVcpuFlags) (int32, error) {
return int32(result), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPinVcpu
func (d *Domain) PinVcpu(vcpu uint, cpuMap []bool) error {
maplen := (len(cpuMap) + 7) / 8
ccpumap := make([]C.uchar, maplen)
@@ -1744,6 +1797,7 @@ func (d *Domain) PinVcpu(vcpu uint, cpuMap []bool) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPinVcpuFlags
func (d *Domain) PinVcpuFlags(vcpu uint, cpuMap []bool, flags DomainModificationImpact) error {
maplen := (len(cpuMap) + 7) / 8
ccpumap := make([]C.uchar, maplen)
@@ -1776,6 +1830,7 @@ type DomainInterface struct {
Addrs []DomainIPAddress
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainInterfaceAddresses
func (d *Domain) ListAllInterfaceAddresses(src DomainInterfaceAddressesSource) ([]DomainInterface, error) {
if C.LIBVIR_VERSION_NUMBER < 1002014 {
return []DomainInterface{}, GetNotImplementedError("virDomainInterfaceAddresses")
@@ -1815,6 +1870,7 @@ func (d *Domain) ListAllInterfaceAddresses(src DomainInterfaceAddressesSource) (
return ifaces, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotCurrent
func (d *Domain) SnapshotCurrent(flags uint32) (*DomainSnapshot, error) {
result := C.virDomainSnapshotCurrent(d.ptr, C.uint(flags))
if result == nil {
@@ -1824,6 +1880,7 @@ func (d *Domain) SnapshotCurrent(flags uint32) (*DomainSnapshot, error) {
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotNum
func (d *Domain) SnapshotNum(flags DomainSnapshotListFlags) (int, error) {
result := int(C.virDomainSnapshotNum(d.ptr, C.uint(flags)))
if result == -1 {
@@ -1832,6 +1889,7 @@ func (d *Domain) SnapshotNum(flags DomainSnapshotListFlags) (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotLookupByName
func (d *Domain) SnapshotLookupByName(name string, flags uint32) (*DomainSnapshot, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -1842,6 +1900,7 @@ func (d *Domain) SnapshotLookupByName(name string, flags uint32) (*DomainSnapsho
return &DomainSnapshot{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotListNames
func (d *Domain) SnapshotListNames(flags DomainSnapshotListFlags) ([]string, error) {
const maxNames = 1024
var names [maxNames](*C.char)
@@ -1861,6 +1920,7 @@ func (d *Domain) SnapshotListNames(flags DomainSnapshotListFlags) ([]string, err
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainListAllSnapshots
func (d *Domain) ListAllSnapshots(flags DomainSnapshotListFlags) ([]DomainSnapshot, error) {
var cList *C.virDomainSnapshotPtr
numVols := C.virDomainListAllSnapshots(d.ptr, (**C.virDomainSnapshotPtr)(&cList), C.uint(flags))
@@ -1881,6 +1941,7 @@ func (d *Domain) ListAllSnapshots(flags DomainSnapshotListFlags) ([]DomainSnapsh
return pools, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockCommit
func (d *Domain) BlockCommit(disk string, base string, top string, bandwidth uint64, flags DomainBlockCommitFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -1927,6 +1988,7 @@ func getBlockCopyParameterFieldInfo(params *DomainBlockCopyParameters) map[strin
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockCopy
func (d *Domain) BlockCopy(disk string, destxml string, params *DomainBlockCopyParameters, flags DomainBlockCopyFlags) error {
if C.LIBVIR_VERSION_NUMBER < 1002008 {
return GetNotImplementedError("virDomainBlockCopy")
@@ -1954,6 +2016,7 @@ func (d *Domain) BlockCopy(disk string, destxml string, params *DomainBlockCopyP
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockJobAbort
func (d *Domain) BlockJobAbort(disk string, flags DomainBlockJobAbortFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -1964,6 +2027,7 @@ func (d *Domain) BlockJobAbort(disk string, flags DomainBlockJobAbortFlags) erro
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockJobSetSpeed
func (d *Domain) BlockJobSetSpeed(disk string, bandwidth uint64, flags DomainBlockJobSetSpeedFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -1974,6 +2038,7 @@ func (d *Domain) BlockJobSetSpeed(disk string, bandwidth uint64, flags DomainBlo
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockPull
func (d *Domain) BlockPull(disk string, bandwidth uint64, flags DomainBlockPullFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -1984,6 +2049,7 @@ func (d *Domain) BlockPull(disk string, bandwidth uint64, flags DomainBlockPullF
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockRebase
func (d *Domain) BlockRebase(disk string, base string, bandwidth uint64, flags DomainBlockRebaseFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -1999,6 +2065,7 @@ func (d *Domain) BlockRebase(disk string, base string, bandwidth uint64, flags D
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockResize
func (d *Domain) BlockResize(disk string, size uint64, flags DomainBlockResizeFlags) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -2009,6 +2076,7 @@ func (d *Domain) BlockResize(disk string, size uint64, flags DomainBlockResizeFl
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainBlockPeek
func (d *Domain) BlockPeek(disk string, offset uint64, size uint64, flags uint32) ([]byte, error) {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -2022,6 +2090,7 @@ func (d *Domain) BlockPeek(disk string, offset uint64, size uint64, flags uint32
return data, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMemoryPeek
func (d *Domain) MemoryPeek(start uint64, size uint64, flags DomainMemoryFlags) ([]byte, error) {
data := make([]byte, size)
ret := C.virDomainMemoryPeek(d.ptr, C.ulonglong(start), C.size_t(size),
@@ -2033,6 +2102,7 @@ func (d *Domain) MemoryPeek(start uint64, size uint64, flags DomainMemoryFlags)
return data, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrate
func (d *Domain) Migrate(dconn *Connect, flags DomainMigrateFlags, dname string, uri string, bandwidth uint64) (*Domain, error) {
var cdname *C.char
if dname != "" {
@@ -2055,6 +2125,7 @@ func (d *Domain) Migrate(dconn *Connect, flags DomainMigrateFlags, dname string,
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrate2
func (d *Domain) Migrate2(dconn *Connect, dxml string, flags DomainMigrateFlags, dname string, uri string, bandwidth uint64) (*Domain, error) {
var cdxml *C.char
if dxml != "" {
@@ -2186,6 +2257,7 @@ func getMigrateParameterFieldInfo(params *DomainMigrateParameters) map[string]ty
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrate3
func (d *Domain) Migrate3(dconn *Connect, params *DomainMigrateParameters, flags DomainMigrateFlags) (*Domain, error) {
info := getMigrateParameterFieldInfo(params)
@@ -2207,6 +2279,7 @@ func (d *Domain) Migrate3(dconn *Connect, params *DomainMigrateParameters, flags
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateToURI
func (d *Domain) MigrateToURI(duri string, flags DomainMigrateFlags, dname string, bandwidth uint64) error {
cduri := C.CString(duri)
defer C.free(unsafe.Pointer(cduri))
@@ -2225,6 +2298,7 @@ func (d *Domain) MigrateToURI(duri string, flags DomainMigrateFlags, dname strin
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateToURI2
func (d *Domain) MigrateToURI2(dconnuri string, miguri string, dxml string, flags DomainMigrateFlags, dname string, bandwidth uint64) error {
var cdconnuri *C.char
if dconnuri != "" {
@@ -2255,6 +2329,7 @@ func (d *Domain) MigrateToURI2(dconnuri string, miguri string, dxml string, flag
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateToURI3
func (d *Domain) MigrateToURI3(dconnuri string, params *DomainMigrateParameters, flags DomainMigrateFlags) error {
var cdconnuri *C.char
if dconnuri != "" {
@@ -2279,6 +2354,7 @@ func (d *Domain) MigrateToURI3(dconnuri string, params *DomainMigrateParameters,
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateGetCompressionCache
func (d *Domain) MigrateGetCompressionCache(flags uint32) (uint64, error) {
var cacheSize C.ulonglong
@@ -2290,6 +2366,7 @@ func (d *Domain) MigrateGetCompressionCache(flags uint32) (uint64, error) {
return uint64(cacheSize), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateSetCompressionCache
func (d *Domain) MigrateSetCompressionCache(size uint64, flags uint32) error {
ret := C.virDomainMigrateSetCompressionCache(d.ptr, C.ulonglong(size), C.uint(flags))
if ret == -1 {
@@ -2299,6 +2376,7 @@ func (d *Domain) MigrateSetCompressionCache(size uint64, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateGetMaxSpeed
func (d *Domain) MigrateGetMaxSpeed(flags uint32) (uint64, error) {
var maxSpeed C.ulong
@@ -2310,6 +2388,7 @@ func (d *Domain) MigrateGetMaxSpeed(flags uint32) (uint64, error) {
return uint64(maxSpeed), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateSetMaxSpeed
func (d *Domain) MigrateSetMaxSpeed(speed uint64, flags uint32) error {
ret := C.virDomainMigrateSetMaxSpeed(d.ptr, C.ulong(speed), C.uint(flags))
if ret == -1 {
@@ -2319,6 +2398,7 @@ func (d *Domain) MigrateSetMaxSpeed(speed uint64, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateSetMaxDowntime
func (d *Domain) MigrateSetMaxDowntime(downtime uint64, flags uint32) error {
ret := C.virDomainMigrateSetMaxDowntime(d.ptr, C.ulonglong(downtime), C.uint(flags))
if ret == -1 {
@@ -2328,6 +2408,23 @@ func (d *Domain) MigrateSetMaxDowntime(downtime uint64, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateGetMaxDowntime
+func (d *Domain) MigrateGetMaxDowntime(flags uint32) (uint64, error) {
+ var downtimeLen C.ulonglong
+
+ if C.LIBVIR_VERSION_NUMBER < 3007000 {
+ return 0, GetNotImplementedError("virDomainMigrateGetMaxDowntime")
+ }
+
+ ret := C.virDomainMigrateGetMaxDowntimeCompat(d.ptr, &downtimeLen, C.uint(flags))
+ if ret == -1 {
+ return 0, GetLastError()
+ }
+
+ return uint64(downtimeLen), nil
+}
+
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainMigrateStartPostCopy
func (d *Domain) MigrateStartPostCopy(flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 1003003 {
return GetNotImplementedError("virDomainMigrateStartPostCopy")
@@ -2385,6 +2482,7 @@ func getBlkioParametersFieldInfo(params *DomainBlkioParameters) map[string]typed
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetBlkioParameters
func (d *Domain) GetBlkioParameters(flags DomainModificationImpact) (*DomainBlkioParameters, error) {
params := &DomainBlkioParameters{}
info := getBlkioParametersFieldInfo(params)
@@ -2411,6 +2509,7 @@ func (d *Domain) GetBlkioParameters(flags DomainModificationImpact) (*DomainBlki
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetBlkioParameters
func (d *Domain) SetBlkioParameters(params *DomainBlkioParameters, flags DomainModificationImpact) error {
info := getBlkioParametersFieldInfo(params)
@@ -2567,6 +2666,7 @@ func getBlockIoTuneParametersFieldInfo(params *DomainBlockIoTuneParameters) map[
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetBlockIoTune
func (d *Domain) GetBlockIoTune(disk string, flags DomainModificationImpact) (*DomainBlockIoTuneParameters, error) {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -2596,6 +2696,7 @@ func (d *Domain) GetBlockIoTune(disk string, flags DomainModificationImpact) (*D
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetBlockIoTune
func (d *Domain) SetBlockIoTune(disk string, params *DomainBlockIoTuneParameters, flags DomainModificationImpact) error {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -2634,6 +2735,7 @@ type DomainBlockJobInfo struct {
End uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetBlockJobInfo
func (d *Domain) GetBlockJobInfo(disk string, flags DomainBlockJobInfoFlags) (*DomainBlockJobInfo, error) {
cdisk := C.CString(disk)
defer C.free(unsafe.Pointer(cdisk))
@@ -2660,6 +2762,7 @@ type DomainControlInfo struct {
StateTime uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetControlInfo
func (d *Domain) GetControlInfo(flags uint32) (*DomainControlInfo, error) {
var cinfo C.virDomainControlInfo
@@ -2681,6 +2784,7 @@ type DomainDiskError struct {
Error DomainDiskErrorCode
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetDiskErrors
func (d *Domain) GetDiskErrors(flags uint32) ([]DomainDiskError, error) {
ret := C.virDomainGetDiskErrors(d.ptr, nil, 0, 0)
if ret == -1 {
@@ -2708,6 +2812,7 @@ func (d *Domain) GetDiskErrors(flags uint32) ([]DomainDiskError, error) {
return errors, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetHostname
func (d *Domain) GetHostname(flags uint32) (string, error) {
ret := C.virDomainGetHostname(d.ptr, C.uint(flags))
if ret == nil {
@@ -2781,6 +2886,7 @@ type DomainJobInfo struct {
Operation DomainJobOperationType
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetJobInfo
func (d *Domain) GetJobInfo() (*DomainJobInfo, error) {
var cinfo C.virDomainJobInfo
@@ -2937,6 +3043,7 @@ func getDomainJobInfoFieldInfo(params *DomainJobInfo) map[string]typedParamsFiel
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetJobStats
func (d *Domain) GetJobStats(flags DomainGetJobStatsFlags) (*DomainJobInfo, error) {
var cparams *C.virTypedParameter
var nparams C.int
@@ -2958,6 +3065,7 @@ func (d *Domain) GetJobStats(flags DomainGetJobStatsFlags) (*DomainJobInfo, erro
return &params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetMaxMemory
func (d *Domain) GetMaxMemory() (uint64, error) {
ret := C.virDomainGetMaxMemory(d.ptr)
if ret == 0 {
@@ -2967,6 +3075,7 @@ func (d *Domain) GetMaxMemory() (uint64, error) {
return uint64(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetMaxVcpus
func (d *Domain) GetMaxVcpus() (uint, error) {
ret := C.virDomainGetMaxVcpus(d.ptr)
if ret == -1 {
@@ -2976,6 +3085,7 @@ func (d *Domain) GetMaxVcpus() (uint, error) {
return uint(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetOSType
func (d *Domain) GetOSType() (string, error) {
ret := C.virDomainGetOSType(d.ptr)
if ret == nil {
@@ -3019,6 +3129,7 @@ func getDomainMemoryParametersFieldInfo(params *DomainMemoryParameters) map[stri
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetMemoryParameters
func (d *Domain) GetMemoryParameters(flags DomainModificationImpact) (*DomainMemoryParameters, error) {
params := &DomainMemoryParameters{}
info := getDomainMemoryParametersFieldInfo(params)
@@ -3045,6 +3156,7 @@ func (d *Domain) GetMemoryParameters(flags DomainModificationImpact) (*DomainMem
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetMemoryParameters
func (d *Domain) SetMemoryParameters(params *DomainMemoryParameters, flags DomainModificationImpact) error {
info := getDomainMemoryParametersFieldInfo(params)
@@ -3093,6 +3205,7 @@ func getDomainNumaParametersFieldInfo(params *DomainNumaParameters) map[string]t
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetNumaParameters
func (d *Domain) GetNumaParameters(flags DomainModificationImpact) (*DomainNumaParameters, error) {
params := &DomainNumaParameters{}
info := getDomainNumaParametersFieldInfo(params)
@@ -3119,6 +3232,7 @@ func (d *Domain) GetNumaParameters(flags DomainModificationImpact) (*DomainNumaP
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetNumaParameters
func (d *Domain) SetNumaParameters(params *DomainNumaParameters, flags DomainModificationImpact) error {
info := getDomainNumaParametersFieldInfo(params)
@@ -3289,6 +3403,7 @@ func getDomainPerfEventsFieldInfo(params *DomainPerfEvents) map[string]typedPara
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetPerfEvents
func (d *Domain) GetPerfEvents(flags DomainModificationImpact) (*DomainPerfEvents, error) {
if C.LIBVIR_VERSION_NUMBER < 1003003 {
return nil, GetNotImplementedError("virDomainGetPerfEvents")
@@ -3314,6 +3429,7 @@ func (d *Domain) GetPerfEvents(flags DomainModificationImpact) (*DomainPerfEvent
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetPerfEvents
func (d *Domain) SetPerfEvents(params *DomainPerfEvents, flags DomainModificationImpact) error {
if C.LIBVIR_VERSION_NUMBER < 1003003 {
return GetNotImplementedError("virDomainSetPerfEvents")
@@ -3433,6 +3549,7 @@ func getDomainSchedulerParametersFieldInfo(params *DomainSchedulerParameters) ma
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetSchedulerParameters
func (d *Domain) GetSchedulerParameters() (*DomainSchedulerParameters, error) {
params := &DomainSchedulerParameters{}
info := getDomainSchedulerParametersFieldInfo(params)
@@ -3465,6 +3582,7 @@ func (d *Domain) GetSchedulerParameters() (*DomainSchedulerParameters, error) {
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetSchedulerParametersFlags
func (d *Domain) GetSchedulerParametersFlags(flags DomainModificationImpact) (*DomainSchedulerParameters, error) {
params := &DomainSchedulerParameters{}
info := getDomainSchedulerParametersFieldInfo(params)
@@ -3497,6 +3615,7 @@ func (d *Domain) GetSchedulerParametersFlags(flags DomainModificationImpact) (*D
return params, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetSchedulerParameters
func (d *Domain) SetSchedulerParameters(params *DomainSchedulerParameters) error {
info := getDomainSchedulerParametersFieldInfo(params)
@@ -3528,6 +3647,7 @@ func (d *Domain) SetSchedulerParameters(params *DomainSchedulerParameters) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetSchedulerParametersFlags
func (d *Domain) SetSchedulerParametersFlags(params *DomainSchedulerParameters, flags DomainModificationImpact) error {
info := getDomainSchedulerParametersFieldInfo(params)
@@ -3564,6 +3684,7 @@ type SecurityLabel struct {
Enforcing bool
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetSecurityLabel
func (d *Domain) GetSecurityLabel() (*SecurityLabel, error) {
var clabel C.virSecurityLabel
@@ -3578,6 +3699,7 @@ func (d *Domain) GetSecurityLabel() (*SecurityLabel, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetSecurityLabelList
func (d *Domain) GetSecurityLabelList() ([]SecurityLabel, error) {
var clabels *C.virSecurityLabel
@@ -3599,6 +3721,7 @@ func (d *Domain) GetSecurityLabelList() ([]SecurityLabel, error) {
return labels, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetTime
func (d *Domain) GetTime(flags uint32) (int64, uint, error) {
if C.LIBVIR_VERSION_NUMBER < 1002005 {
return 0, 0, GetNotImplementedError("virDomainGetTime")
@@ -3613,6 +3736,7 @@ func (d *Domain) GetTime(flags uint32) (int64, uint, error) {
return int64(secs), uint(nsecs), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetTime
func (d *Domain) SetTime(secs int64, nsecs uint, flags DomainSetTimeFlags) error {
if C.LIBVIR_VERSION_NUMBER < 1002005 {
return GetNotImplementedError("virDomainSetTime")
@@ -3626,6 +3750,7 @@ func (d *Domain) SetTime(secs int64, nsecs uint, flags DomainSetTimeFlags) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetUserPassword
func (d *Domain) SetUserPassword(user string, password string, flags DomainSetUserPasswordFlags) error {
if C.LIBVIR_VERSION_NUMBER < 1002015 {
return GetNotImplementedError("virDomainSetUserPassword")
@@ -3644,6 +3769,7 @@ func (d *Domain) SetUserPassword(user string, password string, flags DomainSetUs
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainManagedSave
func (d *Domain) ManagedSave(flags DomainSaveRestoreFlags) error {
ret := C.virDomainManagedSave(d.ptr, C.uint(flags))
if ret == -1 {
@@ -3653,6 +3779,7 @@ func (d *Domain) ManagedSave(flags DomainSaveRestoreFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainHasManagedSaveImage
func (d *Domain) HasManagedSaveImage(flags uint32) (bool, error) {
result := C.virDomainHasManagedSaveImage(d.ptr, C.uint(flags))
if result == -1 {
@@ -3664,6 +3791,7 @@ func (d *Domain) HasManagedSaveImage(flags uint32) (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainManagedSaveRemove
func (d *Domain) ManagedSaveRemove(flags uint32) error {
ret := C.virDomainManagedSaveRemove(d.ptr, C.uint(flags))
if ret == -1 {
@@ -3673,6 +3801,7 @@ func (d *Domain) ManagedSaveRemove(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainRename
func (d *Domain) Rename(name string, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 1002019 {
return GetNotImplementedError("virDomainRename")
@@ -3687,6 +3816,7 @@ func (d *Domain) Rename(name string, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainReset
func (d *Domain) Reset(flags uint32) error {
ret := C.virDomainReset(d.ptr, C.uint(flags))
if ret == -1 {
@@ -3696,6 +3826,7 @@ func (d *Domain) Reset(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSendProcessSignal
func (d *Domain) SendProcessSignal(pid int64, signum DomainProcessSignal, flags uint32) error {
ret := C.virDomainSendProcessSignal(d.ptr, C.longlong(pid), C.uint(signum), C.uint(flags))
if ret == -1 {
@@ -3705,6 +3836,7 @@ func (d *Domain) SendProcessSignal(pid int64, signum DomainProcessSignal, flags
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainInjectNMI
func (d *Domain) InjectNMI(flags uint32) error {
ret := C.virDomainInjectNMI(d.ptr, C.uint(flags))
if ret == -1 {
@@ -3714,6 +3846,7 @@ func (d *Domain) InjectNMI(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCoreDump
func (d *Domain) CoreDump(to string, flags DomainCoreDumpFlags) error {
cto := C.CString(to)
defer C.free(unsafe.Pointer(cto))
@@ -3726,6 +3859,7 @@ func (d *Domain) CoreDump(to string, flags DomainCoreDumpFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainCoreDumpWithFormat
func (d *Domain) CoreDumpWithFormat(to string, format DomainCoreDumpFormat, flags DomainCoreDumpFlags) error {
if C.LIBVIR_VERSION_NUMBER < 1002003 {
GetNotImplementedError("virDomainCoreDumpWithFormat")
@@ -3741,6 +3875,7 @@ func (d *Domain) CoreDumpWithFormat(to string, format DomainCoreDumpFormat, flag
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainHasCurrentSnapshot
func (d *Domain) HasCurrentSnapshot(flags uint32) (bool, error) {
result := C.virDomainHasCurrentSnapshot(d.ptr, C.uint(flags))
if result == -1 {
@@ -3752,6 +3887,7 @@ func (d *Domain) HasCurrentSnapshot(flags uint32) (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainFSFreeze
func (d *Domain) FSFreeze(mounts []string, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 1002005 {
return GetNotImplementedError("virDomainFSFreeze")
@@ -3772,6 +3908,7 @@ func (d *Domain) FSFreeze(mounts []string, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainFSThaw
func (d *Domain) FSThaw(mounts []string, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 1002005 {
return GetNotImplementedError("virDomainFSThaw")
@@ -3792,9 +3929,13 @@ func (d *Domain) FSThaw(mounts []string, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainFSTrim
func (d *Domain) FSTrim(mount string, minimum uint64, flags uint32) error {
- cmount := C.CString(mount)
- defer C.free(unsafe.Pointer(cmount))
+ var cmount *C.char
+ if mount != "" {
+ cmount := C.CString(mount)
+ defer C.free(unsafe.Pointer(cmount))
+ }
ret := C.virDomainFSTrim(d.ptr, cmount, C.ulonglong(minimum), C.uint(flags))
if ret == -1 {
@@ -3811,6 +3952,7 @@ type DomainFSInfo struct {
DevAlias []string
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetFSInfo
func (d *Domain) GetFSInfo(flags uint32) ([]DomainFSInfo, error) {
if C.LIBVIR_VERSION_NUMBER < 1002011 {
return []DomainFSInfo{}, GetNotImplementedError("virDomainGetFSInfo")
@@ -3846,6 +3988,7 @@ func (d *Domain) GetFSInfo(flags uint32) ([]DomainFSInfo, error) {
return fsinfo, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPMSuspendForDuration
func (d *Domain) PMSuspendForDuration(target NodeSuspendTarget, duration uint64, flags uint32) error {
ret := C.virDomainPMSuspendForDuration(d.ptr, C.uint(target), C.ulonglong(duration), C.uint(flags))
if ret == -1 {
@@ -3855,6 +3998,7 @@ func (d *Domain) PMSuspendForDuration(target NodeSuspendTarget, duration uint64,
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPMWakeup
func (d *Domain) PMWakeup(flags uint32) error {
ret := C.virDomainPMWakeup(d.ptr, C.uint(flags))
if ret == -1 {
@@ -3864,6 +4008,7 @@ func (d *Domain) PMWakeup(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainAddIOThread
func (d *Domain) AddIOThread(id uint, flags DomainModificationImpact) error {
if C.LIBVIR_VERSION_NUMBER < 1002015 {
return GetNotImplementedError("virDomainAddIOThread")
@@ -3876,6 +4021,7 @@ func (d *Domain) AddIOThread(id uint, flags DomainModificationImpact) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainDelIOThread
func (d *Domain) DelIOThread(id uint, flags DomainModificationImpact) error {
if C.LIBVIR_VERSION_NUMBER < 1002015 {
return GetNotImplementedError("virDomainDelIOThread")
@@ -3888,6 +4034,7 @@ func (d *Domain) DelIOThread(id uint, flags DomainModificationImpact) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetEmulatorPinInfo
func (d *Domain) GetEmulatorPinInfo(flags DomainModificationImpact) ([]bool, error) {
var cnodeinfo C.virNodeInfo
ret := C.virNodeGetInfo(C.virDomainGetConnect(d.ptr), &cnodeinfo)
@@ -3918,6 +4065,7 @@ type DomainIOThreadInfo struct {
CpuMap []bool
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetIOThreadInfo
func (d *Domain) GetIOThreadInfo(flags DomainModificationImpact) ([]DomainIOThreadInfo, error) {
if C.LIBVIR_VERSION_NUMBER < 1002014 {
return []DomainIOThreadInfo{}, GetNotImplementedError("virDomaingetIOThreadInfo")
@@ -3956,6 +4104,7 @@ func (d *Domain) GetIOThreadInfo(flags DomainModificationImpact) ([]DomainIOThre
return info, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetVcpuPinInfo
func (d *Domain) GetVcpuPinInfo(flags DomainModificationImpact) ([][]bool, error) {
var cnodeinfo C.virNodeInfo
ret := C.virNodeGetInfo(C.virDomainGetConnect(d.ptr), &cnodeinfo)
@@ -3995,6 +4144,7 @@ func (d *Domain) GetVcpuPinInfo(flags DomainModificationImpact) ([][]bool, error
return cpumaps, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPinEmulator
func (d *Domain) PinEmulator(cpumap []bool, flags DomainModificationImpact) error {
maplen := (len(cpumap) + 7) / 8
@@ -4016,6 +4166,7 @@ func (d *Domain) PinEmulator(cpumap []bool, flags DomainModificationImpact) erro
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainPinIOThread
func (d *Domain) PinIOThread(iothreadid uint, cpumap []bool, flags DomainModificationImpact) error {
if C.LIBVIR_VERSION_NUMBER < 1002014 {
return GetNotImplementedError("virDomainPinIOThread")
@@ -4040,6 +4191,7 @@ func (d *Domain) PinIOThread(iothreadid uint, cpumap []bool, flags DomainModific
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainOpenChannel
func (d *Domain) OpenChannel(name string, stream *Stream, flags DomainChannelFlags) error {
cname := C.CString(name)
defer C.free(unsafe.Pointer(cname))
@@ -4052,6 +4204,7 @@ func (d *Domain) OpenChannel(name string, stream *Stream, flags DomainChannelFla
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainOpenConsole
func (d *Domain) OpenConsole(devname string, stream *Stream, flags DomainConsoleFlags) error {
var cdevname *C.char
if devname != "" {
@@ -4067,6 +4220,7 @@ func (d *Domain) OpenConsole(devname string, stream *Stream, flags DomainConsole
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainOpenGraphics
func (d *Domain) OpenGraphics(idx uint, file os.File, flags DomainOpenGraphicsFlags) error {
ret := C.virDomainOpenGraphics(d.ptr, C.uint(idx), C.int(file.Fd()), C.uint(flags))
if ret == -1 {
@@ -4076,6 +4230,7 @@ func (d *Domain) OpenGraphics(idx uint, file os.File, flags DomainOpenGraphicsFl
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainOpenGraphicsFD
func (d *Domain) OpenGraphicsFD(idx uint, flags DomainOpenGraphicsFlags) (*os.File, error) {
if C.LIBVIR_VERSION_NUMBER < 1002008 {
return nil, GetNotImplementedError("virDomainOpenGraphicsFD")
@@ -4088,6 +4243,7 @@ func (d *Domain) OpenGraphicsFD(idx uint, flags DomainOpenGraphicsFlags) (*os.Fi
return os.NewFile(uintptr(ret), "graphics"), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotCreateXML
func (d *Domain) CreateSnapshotXML(xml string, flags DomainSnapshotCreateFlags) (*DomainSnapshot, error) {
cXml := C.CString(xml)
defer C.free(unsafe.Pointer(cXml))
@@ -4098,6 +4254,7 @@ func (d *Domain) CreateSnapshotXML(xml string, flags DomainSnapshotCreateFlags)
return &DomainSnapshot{ptr: result}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSave
func (d *Domain) Save(destFile string) error {
cPath := C.CString(destFile)
defer C.free(unsafe.Pointer(cPath))
@@ -4108,6 +4265,7 @@ func (d *Domain) Save(destFile string) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSaveFlags
func (d *Domain) SaveFlags(destFile string, destXml string, flags DomainSaveRestoreFlags) error {
cDestFile := C.CString(destFile)
cDestXml := C.CString(destXml)
@@ -4200,6 +4358,7 @@ func parseCPUString(cpumapstr string) ([]bool, error) {
return cpumap, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainGetGuestVcpus
func (d *Domain) GetGuestVcpus(flags uint32) (*DomainGuestVcpus, error) {
if C.LIBVIR_VERSION_NUMBER < 2000000 {
return nil, GetNotImplementedError("virDomainGetGuestVcpus")
@@ -4226,6 +4385,7 @@ func (d *Domain) GetGuestVcpus(flags uint32) (*DomainGuestVcpus, error) {
return &DomainGuestVcpus{}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetGuestVcpus
func (d *Domain) SetGuestVcpus(cpus []bool, state bool, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 2000000 {
return GetNotImplementedError("virDomainSetGuestVcpus")
@@ -4258,6 +4418,7 @@ func (d *Domain) SetGuestVcpus(cpus []bool, state bool, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetVcpu
func (d *Domain) SetVcpu(cpus []bool, state bool, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 3001000 {
return GetNotImplementedError("virDomainSetVcpu")
@@ -4290,6 +4451,7 @@ func (d *Domain) SetVcpu(cpus []bool, state bool, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainSetBlockThreshold
func (d *Domain) SetBlockThreshold(dev string, threshold uint64, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 3002000 {
return GetNotImplementedError("virDomainSetBlockThreshold")
@@ -4304,3 +4466,35 @@ func (d *Domain) SetBlockThreshold(dev string, threshold uint64, flags uint32) e
return nil
}
+
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainManagedSaveDefineXML
+func (d *Domain) ManagedSaveDefineXML(xml string, flags uint32) error {
+ if C.LIBVIR_VERSION_NUMBER < 3007000 {
+ return GetNotImplementedError("virDomainManagedSaveDefineXML")
+ }
+
+ cxml := C.CString(xml)
+ defer C.free(unsafe.Pointer(cxml))
+ ret := C.virDomainManagedSaveDefineXMLCompat(d.ptr, cxml, C.uint(flags))
+ if ret == -1 {
+ return GetLastError()
+ }
+
+ return nil
+}
+
+// See also https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainManagedSaveGetXMLDesc
+func (d *Domain) ManagedSaveGetXMLDesc(flags uint32) (string, error) {
+ if C.LIBVIR_VERSION_NUMBER < 3007000 {
+ return "", GetNotImplementedError("virDomainManagedSaveGetXMLDesc")
+ }
+
+ ret := C.virDomainManagedSaveGetXMLDescCompat(d.ptr, C.uint(flags))
+ if ret == nil {
+ return "", GetLastError()
+ }
+
+ xml := C.GoString(ret)
+ C.free(unsafe.Pointer(ret))
+ return xml, nil
+}
diff --git a/vendor/github.com/libvirt/libvirt-go/domain_compat.go b/vendor/github.com/libvirt/libvirt-go/domain_compat.go
index 81ac004e..c59b00e9 100644
--- a/vendor/github.com/libvirt/libvirt-go/domain_compat.go
+++ b/vendor/github.com/libvirt/libvirt-go/domain_compat.go
@@ -311,5 +311,39 @@ int virDomainSetBlockThresholdCompat(virDomainPtr domain,
#endif
}
+int virDomainMigrateGetMaxDowntimeCompat(virDomainPtr domain,
+ unsigned long long *downtime,
+ unsigned int flags)
+{
+#if LIBVIR_VERSION_NUMBER < 3007000
+ assert(0); // Caller should have checked version
+#else
+ return virDomainMigrateGetMaxDowntime(domain, downtime, flags);
+#endif
+}
+
+
+char *virDomainManagedSaveGetXMLDescCompat(virDomainPtr domain,
+ unsigned int flags)
+{
+#if LIBVIR_VERSION_NUMBER < 3007000
+ assert(0); // Caller should have checked version
+#else
+ return virDomainManagedSaveGetXMLDesc(domain, flags);
+#endif
+}
+
+
+int virDomainManagedSaveDefineXMLCompat(virDomainPtr domain,
+ const char *dxml,
+ unsigned int flags)
+{
+#if LIBVIR_VERSION_NUMBER < 3007000
+ assert(0); // Caller should have checked version
+#else
+ return virDomainManagedSaveDefineXML(domain, dxml, flags);
+#endif
+}
+
*/
import "C"
diff --git a/vendor/github.com/libvirt/libvirt-go/domain_compat.h b/vendor/github.com/libvirt/libvirt-go/domain_compat.h
index 60538038..0f66e8b3 100644
--- a/vendor/github.com/libvirt/libvirt-go/domain_compat.h
+++ b/vendor/github.com/libvirt/libvirt-go/domain_compat.h
@@ -958,4 +958,17 @@ int virDomainSetBlockThresholdCompat(virDomainPtr domain,
#define VIR_DOMAIN_BLOCK_COPY_TRANSIENT_JOB 1 << 2
#endif
+
+/* 3.7.0 */
+
+int virDomainMigrateGetMaxDowntimeCompat(virDomainPtr domain,
+ unsigned long long *downtime,
+ unsigned int flags);
+
+char *virDomainManagedSaveGetXMLDescCompat(virDomainPtr domain,
+ unsigned int flags);
+int virDomainManagedSaveDefineXMLCompat(virDomainPtr domain,
+ const char *dxml,
+ unsigned int flags);
+
#endif /* LIBVIRT_GO_DOMAIN_COMPAT_H__ */
diff --git a/vendor/github.com/libvirt/libvirt-go/domain_snapshot.go b/vendor/github.com/libvirt/libvirt-go/domain_snapshot.go
index 17c9c0ca..a133d5fd 100644
--- a/vendor/github.com/libvirt/libvirt-go/domain_snapshot.go
+++ b/vendor/github.com/libvirt/libvirt-go/domain_snapshot.go
@@ -89,6 +89,7 @@ type DomainSnapshot struct {
ptr C.virDomainSnapshotPtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotFree
func (s *DomainSnapshot) Free() error {
ret := C.virDomainSnapshotFree(s.ptr)
if ret == -1 {
@@ -97,6 +98,7 @@ func (s *DomainSnapshot) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotRef
func (c *DomainSnapshot) Ref() error {
ret := C.virDomainSnapshotRef(c.ptr)
if ret == -1 {
@@ -105,6 +107,7 @@ func (c *DomainSnapshot) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotDelete
func (s *DomainSnapshot) Delete(flags DomainSnapshotDeleteFlags) error {
result := C.virDomainSnapshotDelete(s.ptr, C.uint(flags))
if result != 0 {
@@ -113,6 +116,7 @@ func (s *DomainSnapshot) Delete(flags DomainSnapshotDeleteFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainRevertToSnapshot
func (s *DomainSnapshot) RevertToSnapshot(flags DomainSnapshotRevertFlags) error {
result := C.virDomainRevertToSnapshot(s.ptr, C.uint(flags))
if result != 0 {
@@ -121,6 +125,7 @@ func (s *DomainSnapshot) RevertToSnapshot(flags DomainSnapshotRevertFlags) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotIsCurrent
func (s *DomainSnapshot) IsCurrent(flags uint32) (bool, error) {
result := C.virDomainSnapshotIsCurrent(s.ptr, C.uint(flags))
if result == -1 {
@@ -132,6 +137,7 @@ func (s *DomainSnapshot) IsCurrent(flags uint32) (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotHasMetadata
func (s *DomainSnapshot) HasMetadata(flags uint32) (bool, error) {
result := C.virDomainSnapshotHasMetadata(s.ptr, C.uint(flags))
if result == -1 {
@@ -143,6 +149,7 @@ func (s *DomainSnapshot) HasMetadata(flags uint32) (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotGetXMLDesc
func (s *DomainSnapshot) GetXMLDesc(flags DomainXMLFlags) (string, error) {
result := C.virDomainSnapshotGetXMLDesc(s.ptr, C.uint(flags))
if result == nil {
@@ -153,6 +160,7 @@ func (s *DomainSnapshot) GetXMLDesc(flags DomainXMLFlags) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotGetName
func (s *DomainSnapshot) GetName() (string, error) {
name := C.virDomainSnapshotGetName(s.ptr)
if name == nil {
@@ -161,6 +169,7 @@ func (s *DomainSnapshot) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotGetParent
func (s *DomainSnapshot) GetParent(flags uint32) (*DomainSnapshot, error) {
ptr := C.virDomainSnapshotGetParent(s.ptr, C.uint(flags))
if ptr == nil {
@@ -169,6 +178,7 @@ func (s *DomainSnapshot) GetParent(flags uint32) (*DomainSnapshot, error) {
return &DomainSnapshot{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotNumChildren
func (s *DomainSnapshot) NumChildren(flags DomainSnapshotListFlags) (int, error) {
result := int(C.virDomainSnapshotNumChildren(s.ptr, C.uint(flags)))
if result == -1 {
@@ -177,6 +187,7 @@ func (s *DomainSnapshot) NumChildren(flags DomainSnapshotListFlags) (int, error)
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotListChildrenNames
func (s *DomainSnapshot) ListChildrenNames(flags DomainSnapshotListFlags) ([]string, error) {
const maxNames = 1024
var names [maxNames](*C.char)
@@ -196,6 +207,7 @@ func (s *DomainSnapshot) ListChildrenNames(flags DomainSnapshotListFlags) ([]str
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-domain-snapshot.html#virDomainSnapshotListAllChildren
func (d *DomainSnapshot) ListAllChildren(flags DomainSnapshotListFlags) ([]DomainSnapshot, error) {
var cList *C.virDomainSnapshotPtr
numVols := C.virDomainSnapshotListAllChildren(d.ptr, (**C.virDomainSnapshotPtr)(&cList), C.uint(flags))
diff --git a/vendor/github.com/libvirt/libvirt-go/error.go b/vendor/github.com/libvirt/libvirt-go/error.go
index 24d4b09f..fb218f70 100644
--- a/vendor/github.com/libvirt/libvirt-go/error.go
+++ b/vendor/github.com/libvirt/libvirt-go/error.go
@@ -557,6 +557,9 @@ const (
// Error from libssh
FROM_LIBSSH = ErrorDomain(C.VIR_FROM_LIBSSH)
+
+ // Error from resoruce control
+ FROM_RESCTRL = ErrorDomain(C.VIR_FROM_RESCTRL)
)
type Error struct {
diff --git a/vendor/github.com/libvirt/libvirt-go/error_compat.h b/vendor/github.com/libvirt/libvirt-go/error_compat.h
index 665ec079..f26dc09e 100644
--- a/vendor/github.com/libvirt/libvirt-go/error_compat.h
+++ b/vendor/github.com/libvirt/libvirt-go/error_compat.h
@@ -141,4 +141,10 @@
#define VIR_FROM_LIBSSH 66
#endif
+/* 3.7.0 */
+
+#ifndef VIR_FROM_RESCTRL
+#define VIR_FROM_RESCTRL 67
+#endif
+
#endif /* LIBVIRT_GO_ERROR_COMPAT_H__ */
diff --git a/vendor/github.com/libvirt/libvirt-go/events.go b/vendor/github.com/libvirt/libvirt-go/events.go
index 5ad90bd1..ef80d828 100644
--- a/vendor/github.com/libvirt/libvirt-go/events.go
+++ b/vendor/github.com/libvirt/libvirt-go/events.go
@@ -43,6 +43,7 @@ const (
EVENT_HANDLE_HANGUP = EventHandleType(C.VIR_EVENT_HANDLE_HANGUP)
)
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventRegisterDefaultImpl
func EventRegisterDefaultImpl() error {
if i := int(C.virEventRegisterDefaultImpl()); i != 0 {
return GetLastError()
@@ -50,6 +51,7 @@ func EventRegisterDefaultImpl() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventRunDefaultImpl
func EventRunDefaultImpl() error {
if i := int(C.virEventRunDefaultImpl()); i != 0 {
return GetLastError()
@@ -71,6 +73,7 @@ func eventHandleCallback(watch int, fd int, events int, callbackID int) {
callback(watch, fd, (EventHandleType)(events))
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventAddHandle
func EventAddHandle(fd int, events EventHandleType, callback EventHandleCallback) (int, error) {
callbackID := registerCallbackId(callback)
@@ -82,10 +85,12 @@ func EventAddHandle(fd int, events EventHandleType, callback EventHandleCallback
return int(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventUpdateHandle
func EventUpdateHandle(watch int, events EventHandleType) {
C.virEventUpdateHandle((C.int)(watch), (C.int)(events))
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventRemoveHandle
func EventRemoveHandle(watch int) {
C.virEventRemoveHandle((C.int)(watch))
}
@@ -104,6 +109,7 @@ func eventTimeoutCallback(timer int, callbackID int) {
callback(timer)
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventAddTimeout
func EventAddTimeout(freq int, callback EventTimeoutCallback) (int, error) {
callbackID := registerCallbackId(callback)
@@ -115,10 +121,12 @@ func EventAddTimeout(freq int, callback EventTimeoutCallback) (int, error) {
return int(ret), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventUpdateTimeout
func EventUpdateTimeout(timer int, freq int) {
C.virEventUpdateTimeout((C.int)(timer), (C.int)(freq))
}
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventRemoveTimeout
func EventRemoveTimeout(timer int) {
C.virEventRemoveTimeout((C.int)(timer))
}
@@ -162,6 +170,7 @@ type EventLoop interface {
var eventLoopImpl EventLoop
+// See also https://libvirt.org/html/libvirt-libvirt-event.html#virEventRegisterImpl
func EventRegisterImpl(impl EventLoop) {
eventLoopImpl = impl
C.virEventRegisterImpl_cgo()
diff --git a/vendor/github.com/libvirt/libvirt-go/interface.go b/vendor/github.com/libvirt/libvirt-go/interface.go
index 472556e0..8a0c7e29 100644
--- a/vendor/github.com/libvirt/libvirt-go/interface.go
+++ b/vendor/github.com/libvirt/libvirt-go/interface.go
@@ -48,6 +48,7 @@ type Interface struct {
ptr C.virInterfacePtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceCreate
func (n *Interface) Create(flags uint32) error {
result := C.virInterfaceCreate(n.ptr, C.uint(flags))
if result == -1 {
@@ -56,6 +57,7 @@ func (n *Interface) Create(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceDestroy
func (n *Interface) Destroy(flags uint32) error {
result := C.virInterfaceDestroy(n.ptr, C.uint(flags))
if result == -1 {
@@ -64,6 +66,7 @@ func (n *Interface) Destroy(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceIsActive
func (n *Interface) IsActive() (bool, error) {
result := C.virInterfaceIsActive(n.ptr)
if result == -1 {
@@ -75,6 +78,7 @@ func (n *Interface) IsActive() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetMACString
func (n *Interface) GetMACString() (string, error) {
result := C.virInterfaceGetMACString(n.ptr)
if result == nil {
@@ -84,6 +88,7 @@ func (n *Interface) GetMACString() (string, error) {
return mac, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetName
func (n *Interface) GetName() (string, error) {
result := C.virInterfaceGetName(n.ptr)
if result == nil {
@@ -93,6 +98,7 @@ func (n *Interface) GetName() (string, error) {
return name, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceGetXMLDesc
func (n *Interface) GetXMLDesc(flags InterfaceXMLFlags) (string, error) {
result := C.virInterfaceGetXMLDesc(n.ptr, C.uint(flags))
if result == nil {
@@ -103,6 +109,7 @@ func (n *Interface) GetXMLDesc(flags InterfaceXMLFlags) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceUndefine
func (n *Interface) Undefine() error {
result := C.virInterfaceUndefine(n.ptr)
if result == -1 {
@@ -111,6 +118,7 @@ func (n *Interface) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceFree
func (n *Interface) Free() error {
ret := C.virInterfaceFree(n.ptr)
if ret == -1 {
@@ -119,6 +127,7 @@ func (n *Interface) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-interface.html#virInterfaceRef
func (c *Interface) Ref() error {
ret := C.virInterfaceRef(c.ptr)
if ret == -1 {
diff --git a/vendor/github.com/libvirt/libvirt-go/libvirtd.sasl b/vendor/github.com/libvirt/libvirt-go/libvirtd.sasl
new file mode 100644
index 00000000..9275a70d
--- /dev/null
+++ b/vendor/github.com/libvirt/libvirt-go/libvirtd.sasl
@@ -0,0 +1,2 @@
+mech_list: digest-md5
+sasldb_path: /etc/libvirt/passwd.db
diff --git a/vendor/github.com/libvirt/libvirt-go/network.go b/vendor/github.com/libvirt/libvirt-go/network.go
index f8cc7eec..8b19c6ae 100644
--- a/vendor/github.com/libvirt/libvirt-go/network.go
+++ b/vendor/github.com/libvirt/libvirt-go/network.go
@@ -121,6 +121,7 @@ type NetworkDHCPLease struct {
Clientid string
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkFree
func (n *Network) Free() error {
ret := C.virNetworkFree(n.ptr)
if ret == -1 {
@@ -129,6 +130,7 @@ func (n *Network) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkRef
func (c *Network) Ref() error {
ret := C.virNetworkRef(c.ptr)
if ret == -1 {
@@ -137,6 +139,7 @@ func (c *Network) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkCreate
func (n *Network) Create() error {
result := C.virNetworkCreate(n.ptr)
if result == -1 {
@@ -145,6 +148,7 @@ func (n *Network) Create() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkDestroy
func (n *Network) Destroy() error {
result := C.virNetworkDestroy(n.ptr)
if result == -1 {
@@ -153,6 +157,7 @@ func (n *Network) Destroy() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkIsActive
func (n *Network) IsActive() (bool, error) {
result := C.virNetworkIsActive(n.ptr)
if result == -1 {
@@ -164,6 +169,7 @@ func (n *Network) IsActive() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkIsPersistent
func (n *Network) IsPersistent() (bool, error) {
result := C.virNetworkIsPersistent(n.ptr)
if result == -1 {
@@ -175,6 +181,7 @@ func (n *Network) IsPersistent() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetAutostart
func (n *Network) GetAutostart() (bool, error) {
var out C.int
result := C.virNetworkGetAutostart(n.ptr, (*C.int)(unsafe.Pointer(&out)))
@@ -189,6 +196,7 @@ func (n *Network) GetAutostart() (bool, error) {
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkSetAutostart
func (n *Network) SetAutostart(autostart bool) error {
var cAutostart C.int
switch autostart {
@@ -204,6 +212,7 @@ func (n *Network) SetAutostart(autostart bool) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetName
func (n *Network) GetName() (string, error) {
name := C.virNetworkGetName(n.ptr)
if name == nil {
@@ -212,6 +221,7 @@ func (n *Network) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetUUID
func (n *Network) GetUUID() ([]byte, error) {
var cUuid [C.VIR_UUID_BUFLEN](byte)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -222,6 +232,7 @@ func (n *Network) GetUUID() ([]byte, error) {
return C.GoBytes(cuidPtr, C.VIR_UUID_BUFLEN), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetUUIDString
func (n *Network) GetUUIDString() (string, error) {
var cUuid [C.VIR_UUID_STRING_BUFLEN](C.char)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -232,6 +243,7 @@ func (n *Network) GetUUIDString() (string, error) {
return C.GoString((*C.char)(cuidPtr)), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetBridgeName
func (n *Network) GetBridgeName() (string, error) {
result := C.virNetworkGetBridgeName(n.ptr)
if result == nil {
@@ -242,6 +254,7 @@ func (n *Network) GetBridgeName() (string, error) {
return bridge, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetXMLDesc
func (n *Network) GetXMLDesc(flags NetworkXMLFlags) (string, error) {
result := C.virNetworkGetXMLDesc(n.ptr, C.uint(flags))
if result == nil {
@@ -252,6 +265,7 @@ func (n *Network) GetXMLDesc(flags NetworkXMLFlags) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkUndefine
func (n *Network) Undefine() error {
result := C.virNetworkUndefine(n.ptr)
if result == -1 {
@@ -260,6 +274,7 @@ func (n *Network) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkUpdate
func (n *Network) Update(cmd NetworkUpdateCommand, section NetworkUpdateSection, parentIndex int, xml string, flags NetworkUpdateFlags) error {
cxml := C.CString(xml)
defer C.free(unsafe.Pointer(cxml))
@@ -270,6 +285,7 @@ func (n *Network) Update(cmd NetworkUpdateCommand, section NetworkUpdateSection,
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-network.html#virNetworkGetDHCPLeases
func (n *Network) GetDHCPLeases() ([]NetworkDHCPLease, error) {
if C.LIBVIR_VERSION_NUMBER < 1002006 {
return []NetworkDHCPLease{}, GetNotImplementedError("virNetworkGetDHCPLeases")
diff --git a/vendor/github.com/libvirt/libvirt-go/node_device.go b/vendor/github.com/libvirt/libvirt-go/node_device.go
index a5654f7a..01be1e4a 100644
--- a/vendor/github.com/libvirt/libvirt-go/node_device.go
+++ b/vendor/github.com/libvirt/libvirt-go/node_device.go
@@ -57,6 +57,7 @@ type NodeDevice struct {
ptr C.virNodeDevicePtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceFree
func (n *NodeDevice) Free() error {
ret := C.virNodeDeviceFree(n.ptr)
if ret == -1 {
@@ -65,6 +66,7 @@ func (n *NodeDevice) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceRef
func (c *NodeDevice) Ref() error {
ret := C.virNodeDeviceRef(c.ptr)
if ret == -1 {
@@ -73,6 +75,7 @@ func (c *NodeDevice) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceDestroy
func (n *NodeDevice) Destroy() error {
result := C.virNodeDeviceDestroy(n.ptr)
if result == -1 {
@@ -81,6 +84,7 @@ func (n *NodeDevice) Destroy() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceReset
func (n *NodeDevice) Reset() error {
result := C.virNodeDeviceReset(n.ptr)
if result == -1 {
@@ -89,6 +93,7 @@ func (n *NodeDevice) Reset() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceDettach
func (n *NodeDevice) Detach() error {
result := C.virNodeDeviceDettach(n.ptr)
if result == -1 {
@@ -97,6 +102,7 @@ func (n *NodeDevice) Detach() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceDetachFlags
func (n *NodeDevice) DetachFlags(driverName string, flags uint32) error {
cDriverName := C.CString(driverName)
defer C.free(unsafe.Pointer(cDriverName))
@@ -107,6 +113,7 @@ func (n *NodeDevice) DetachFlags(driverName string, flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceReAttach
func (n *NodeDevice) ReAttach() error {
result := C.virNodeDeviceReAttach(n.ptr)
if result == -1 {
@@ -115,6 +122,7 @@ func (n *NodeDevice) ReAttach() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceGetName
func (n *NodeDevice) GetName() (string, error) {
name := C.virNodeDeviceGetName(n.ptr)
if name == nil {
@@ -123,6 +131,7 @@ func (n *NodeDevice) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceGetXMLDesc
func (n *NodeDevice) GetXMLDesc(flags uint32) (string, error) {
result := C.virNodeDeviceGetXMLDesc(n.ptr, C.uint(flags))
if result == nil {
@@ -133,6 +142,7 @@ func (n *NodeDevice) GetXMLDesc(flags uint32) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceGetParent
func (n *NodeDevice) GetParent() (string, error) {
result := C.virNodeDeviceGetParent(n.ptr)
if result == nil {
@@ -142,7 +152,8 @@ func (n *NodeDevice) GetParent() (string, error) {
return C.GoString(result), nil
}
-func (p *NodeDevice) NumOfStorageCaps() (int, error) {
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceNumOfCaps
+func (p *NodeDevice) NumOfCaps() (int, error) {
result := int(C.virNodeDeviceNumOfCaps(p.ptr))
if result == -1 {
return 0, GetLastError()
@@ -150,7 +161,8 @@ func (p *NodeDevice) NumOfStorageCaps() (int, error) {
return result, nil
}
-func (p *NodeDevice) ListStorageCaps() ([]string, error) {
+// See also https://libvirt.org/html/libvirt-libvirt-nodedev.html#virNodeDeviceListCaps
+func (p *NodeDevice) ListCaps() ([]string, error) {
const maxCaps = 1024
var names [maxCaps](*C.char)
namesPtr := unsafe.Pointer(&names)
diff --git a/vendor/github.com/libvirt/libvirt-go/nwfilter.go b/vendor/github.com/libvirt/libvirt-go/nwfilter.go
index 4dba03fb..6d0c052d 100644
--- a/vendor/github.com/libvirt/libvirt-go/nwfilter.go
+++ b/vendor/github.com/libvirt/libvirt-go/nwfilter.go
@@ -42,6 +42,7 @@ type NWFilter struct {
ptr C.virNWFilterPtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterFree
func (f *NWFilter) Free() error {
ret := C.virNWFilterFree(f.ptr)
if ret == -1 {
@@ -50,6 +51,7 @@ func (f *NWFilter) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterRef
func (c *NWFilter) Ref() error {
ret := C.virNWFilterRef(c.ptr)
if ret == -1 {
@@ -58,6 +60,7 @@ func (c *NWFilter) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterGetName
func (f *NWFilter) GetName() (string, error) {
name := C.virNWFilterGetName(f.ptr)
if name == nil {
@@ -66,6 +69,7 @@ func (f *NWFilter) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterUndefine
func (f *NWFilter) Undefine() error {
result := C.virNWFilterUndefine(f.ptr)
if result == -1 {
@@ -74,6 +78,7 @@ func (f *NWFilter) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterGetUUID
func (f *NWFilter) GetUUID() ([]byte, error) {
var cUuid [C.VIR_UUID_BUFLEN](byte)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -84,6 +89,7 @@ func (f *NWFilter) GetUUID() ([]byte, error) {
return C.GoBytes(cuidPtr, C.VIR_UUID_BUFLEN), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterGetUUIDString
func (f *NWFilter) GetUUIDString() (string, error) {
var cUuid [C.VIR_UUID_STRING_BUFLEN](C.char)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -94,6 +100,7 @@ func (f *NWFilter) GetUUIDString() (string, error) {
return C.GoString((*C.char)(cuidPtr)), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-nwfilter.html#virNWFilterGetXMLDesc
func (f *NWFilter) GetXMLDesc(flags uint32) (string, error) {
result := C.virNWFilterGetXMLDesc(f.ptr, C.uint(flags))
if result == nil {
diff --git a/vendor/github.com/libvirt/libvirt-go/secret.go b/vendor/github.com/libvirt/libvirt-go/secret.go
index 1e35f7e9..4507e1e7 100644
--- a/vendor/github.com/libvirt/libvirt-go/secret.go
+++ b/vendor/github.com/libvirt/libvirt-go/secret.go
@@ -67,6 +67,7 @@ type Secret struct {
ptr C.virSecretPtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretFree
func (s *Secret) Free() error {
ret := C.virSecretFree(s.ptr)
if ret == -1 {
@@ -75,6 +76,7 @@ func (s *Secret) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretRef
func (c *Secret) Ref() error {
ret := C.virSecretRef(c.ptr)
if ret == -1 {
@@ -83,6 +85,7 @@ func (c *Secret) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretUndefine
func (s *Secret) Undefine() error {
result := C.virSecretUndefine(s.ptr)
if result == -1 {
@@ -91,6 +94,7 @@ func (s *Secret) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetUUID
func (s *Secret) GetUUID() ([]byte, error) {
var cUuid [C.VIR_UUID_BUFLEN](byte)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -101,6 +105,7 @@ func (s *Secret) GetUUID() ([]byte, error) {
return C.GoBytes(cuidPtr, C.VIR_UUID_BUFLEN), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetUUIDString
func (s *Secret) GetUUIDString() (string, error) {
var cUuid [C.VIR_UUID_STRING_BUFLEN](C.char)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -111,6 +116,7 @@ func (s *Secret) GetUUIDString() (string, error) {
return C.GoString((*C.char)(cuidPtr)), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetUsageID
func (s *Secret) GetUsageID() (string, error) {
result := C.virSecretGetUsageID(s.ptr)
if result == nil {
@@ -119,6 +125,7 @@ func (s *Secret) GetUsageID() (string, error) {
return C.GoString(result), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetUsageType
func (s *Secret) GetUsageType() (SecretUsageType, error) {
result := SecretUsageType(C.virSecretGetUsageType(s.ptr))
if result == -1 {
@@ -127,6 +134,7 @@ func (s *Secret) GetUsageType() (SecretUsageType, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetXMLDesc
func (s *Secret) GetXMLDesc(flags uint32) (string, error) {
result := C.virSecretGetXMLDesc(s.ptr, C.uint(flags))
if result == nil {
@@ -137,6 +145,7 @@ func (s *Secret) GetXMLDesc(flags uint32) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretGetValue
func (s *Secret) GetValue(flags uint32) ([]byte, error) {
var cvalue_size C.size_t
@@ -149,6 +158,7 @@ func (s *Secret) GetValue(flags uint32) ([]byte, error) {
return ret, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-secret.html#virSecretSetValue
func (s *Secret) SetValue(value []byte, flags uint32) error {
cvalue := make([]C.uchar, len(value))
diff --git a/vendor/github.com/libvirt/libvirt-go/storage_pool.go b/vendor/github.com/libvirt/libvirt-go/storage_pool.go
index 7044aa5f..901d72fc 100644
--- a/vendor/github.com/libvirt/libvirt-go/storage_pool.go
+++ b/vendor/github.com/libvirt/libvirt-go/storage_pool.go
@@ -103,6 +103,7 @@ type StoragePoolInfo struct {
Available uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolBuild
func (p *StoragePool) Build(flags StoragePoolBuildFlags) error {
result := C.virStoragePoolBuild(p.ptr, C.uint(flags))
if result == -1 {
@@ -111,6 +112,7 @@ func (p *StoragePool) Build(flags StoragePoolBuildFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolCreate
func (p *StoragePool) Create(flags StoragePoolCreateFlags) error {
result := C.virStoragePoolCreate(p.ptr, C.uint(flags))
if result == -1 {
@@ -119,6 +121,7 @@ func (p *StoragePool) Create(flags StoragePoolCreateFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolDelete
func (p *StoragePool) Delete(flags StoragePoolDeleteFlags) error {
result := C.virStoragePoolDelete(p.ptr, C.uint(flags))
if result == -1 {
@@ -127,6 +130,7 @@ func (p *StoragePool) Delete(flags StoragePoolDeleteFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolDestroy
func (p *StoragePool) Destroy() error {
result := C.virStoragePoolDestroy(p.ptr)
if result == -1 {
@@ -135,6 +139,7 @@ func (p *StoragePool) Destroy() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolFree
func (p *StoragePool) Free() error {
ret := C.virStoragePoolFree(p.ptr)
if ret == -1 {
@@ -143,6 +148,7 @@ func (p *StoragePool) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolRef
func (c *StoragePool) Ref() error {
ret := C.virStoragePoolRef(c.ptr)
if ret == -1 {
@@ -151,6 +157,7 @@ func (c *StoragePool) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetAutostart
func (p *StoragePool) GetAutostart() (bool, error) {
var out C.int
result := C.virStoragePoolGetAutostart(p.ptr, (*C.int)(unsafe.Pointer(&out)))
@@ -165,6 +172,7 @@ func (p *StoragePool) GetAutostart() (bool, error) {
}
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetInfo
func (p *StoragePool) GetInfo() (*StoragePoolInfo, error) {
var cinfo C.virStoragePoolInfo
result := C.virStoragePoolGetInfo(p.ptr, &cinfo)
@@ -179,6 +187,7 @@ func (p *StoragePool) GetInfo() (*StoragePoolInfo, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetName
func (p *StoragePool) GetName() (string, error) {
name := C.virStoragePoolGetName(p.ptr)
if name == nil {
@@ -187,6 +196,7 @@ func (p *StoragePool) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetUUID
func (p *StoragePool) GetUUID() ([]byte, error) {
var cUuid [C.VIR_UUID_BUFLEN](byte)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -197,6 +207,7 @@ func (p *StoragePool) GetUUID() ([]byte, error) {
return C.GoBytes(cuidPtr, C.VIR_UUID_BUFLEN), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetUUIDString
func (p *StoragePool) GetUUIDString() (string, error) {
var cUuid [C.VIR_UUID_STRING_BUFLEN](C.char)
cuidPtr := unsafe.Pointer(&cUuid)
@@ -207,6 +218,7 @@ func (p *StoragePool) GetUUIDString() (string, error) {
return C.GoString((*C.char)(cuidPtr)), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolGetXMLDesc
func (p *StoragePool) GetXMLDesc(flags StorageXMLFlags) (string, error) {
result := C.virStoragePoolGetXMLDesc(p.ptr, C.uint(flags))
if result == nil {
@@ -217,6 +229,7 @@ func (p *StoragePool) GetXMLDesc(flags StorageXMLFlags) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolIsActive
func (p *StoragePool) IsActive() (bool, error) {
result := C.virStoragePoolIsActive(p.ptr)
if result == -1 {
@@ -228,6 +241,7 @@ func (p *StoragePool) IsActive() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolIsPersistent
func (p *StoragePool) IsPersistent() (bool, error) {
result := C.virStoragePoolIsPersistent(p.ptr)
if result == -1 {
@@ -239,6 +253,7 @@ func (p *StoragePool) IsPersistent() (bool, error) {
return false, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolSetAutostart
func (p *StoragePool) SetAutostart(autostart bool) error {
var cAutostart C.int
switch autostart {
@@ -254,6 +269,7 @@ func (p *StoragePool) SetAutostart(autostart bool) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolRefresh
func (p *StoragePool) Refresh(flags uint32) error {
result := C.virStoragePoolRefresh(p.ptr, C.uint(flags))
if result == -1 {
@@ -262,6 +278,7 @@ func (p *StoragePool) Refresh(flags uint32) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolUndefine
func (p *StoragePool) Undefine() error {
result := C.virStoragePoolUndefine(p.ptr)
if result == -1 {
@@ -270,6 +287,7 @@ func (p *StoragePool) Undefine() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolCreateXML
func (p *StoragePool) StorageVolCreateXML(xmlConfig string, flags StorageVolCreateFlags) (*StorageVol, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -280,6 +298,7 @@ func (p *StoragePool) StorageVolCreateXML(xmlConfig string, flags StorageVolCrea
return &StorageVol{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolCreateXMLFrom
func (p *StoragePool) StorageVolCreateXMLFrom(xmlConfig string, clonevol *StorageVol, flags StorageVolCreateFlags) (*StorageVol, error) {
cXml := C.CString(string(xmlConfig))
defer C.free(unsafe.Pointer(cXml))
@@ -290,6 +309,7 @@ func (p *StoragePool) StorageVolCreateXMLFrom(xmlConfig string, clonevol *Storag
return &StorageVol{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolLookupByName
func (p *StoragePool) LookupStorageVolByName(name string) (*StorageVol, error) {
cName := C.CString(name)
defer C.free(unsafe.Pointer(cName))
@@ -300,6 +320,7 @@ func (p *StoragePool) LookupStorageVolByName(name string) (*StorageVol, error) {
return &StorageVol{ptr: ptr}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolNumOfVolumes
func (p *StoragePool) NumOfStorageVolumes() (int, error) {
result := int(C.virStoragePoolNumOfVolumes(p.ptr))
if result == -1 {
@@ -308,6 +329,7 @@ func (p *StoragePool) NumOfStorageVolumes() (int, error) {
return result, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolListVolumes
func (p *StoragePool) ListStorageVolumes() ([]string, error) {
const maxVols = 1024
var names [maxVols](*C.char)
@@ -327,6 +349,7 @@ func (p *StoragePool) ListStorageVolumes() ([]string, error) {
return goNames, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolListAllVolumes
func (p *StoragePool) ListAllStorageVolumes(flags uint32) ([]StorageVol, error) {
var cList *C.virStorageVolPtr
numVols := C.virStoragePoolListAllVolumes(p.ptr, (**C.virStorageVolPtr)(&cList), C.uint(flags))
diff --git a/vendor/github.com/libvirt/libvirt-go/storage_volume.go b/vendor/github.com/libvirt/libvirt-go/storage_volume.go
index 04fc16b2..22dd2843 100644
--- a/vendor/github.com/libvirt/libvirt-go/storage_volume.go
+++ b/vendor/github.com/libvirt/libvirt-go/storage_volume.go
@@ -123,6 +123,7 @@ type StorageVolInfo struct {
Allocation uint64
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolDelete
func (v *StorageVol) Delete(flags StorageVolDeleteFlags) error {
result := C.virStorageVolDelete(v.ptr, C.uint(flags))
if result == -1 {
@@ -131,6 +132,7 @@ func (v *StorageVol) Delete(flags StorageVolDeleteFlags) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolFree
func (v *StorageVol) Free() error {
ret := C.virStorageVolFree(v.ptr)
if ret == -1 {
@@ -139,6 +141,7 @@ func (v *StorageVol) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolRef
func (c *StorageVol) Ref() error {
ret := C.virStorageVolRef(c.ptr)
if ret == -1 {
@@ -147,6 +150,7 @@ func (c *StorageVol) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetInfo
func (v *StorageVol) GetInfo() (*StorageVolInfo, error) {
var cinfo C.virStorageVolInfo
result := C.virStorageVolGetInfo(v.ptr, &cinfo)
@@ -160,6 +164,7 @@ func (v *StorageVol) GetInfo() (*StorageVolInfo, error) {
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetInfoFlags
func (v *StorageVol) GetInfoFlags(flags StorageVolInfoFlags) (*StorageVolInfo, error) {
if C.LIBVIR_VERSION_NUMBER < 3000000 {
return nil, GetNotImplementedError("virStorageVolGetInfoFlags")
@@ -177,6 +182,7 @@ func (v *StorageVol) GetInfoFlags(flags StorageVolInfoFlags) (*StorageVolInfo, e
}, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetKey
func (v *StorageVol) GetKey() (string, error) {
key := C.virStorageVolGetKey(v.ptr)
if key == nil {
@@ -185,6 +191,7 @@ func (v *StorageVol) GetKey() (string, error) {
return C.GoString(key), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetName
func (v *StorageVol) GetName() (string, error) {
name := C.virStorageVolGetName(v.ptr)
if name == nil {
@@ -193,6 +200,7 @@ func (v *StorageVol) GetName() (string, error) {
return C.GoString(name), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetPath
func (v *StorageVol) GetPath() (string, error) {
result := C.virStorageVolGetPath(v.ptr)
if result == nil {
@@ -203,6 +211,7 @@ func (v *StorageVol) GetPath() (string, error) {
return path, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolGetXMLDesc
func (v *StorageVol) GetXMLDesc(flags uint32) (string, error) {
result := C.virStorageVolGetXMLDesc(v.ptr, C.uint(flags))
if result == nil {
@@ -213,6 +222,7 @@ func (v *StorageVol) GetXMLDesc(flags uint32) (string, error) {
return xml, nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolResize
func (v *StorageVol) Resize(capacity uint64, flags StorageVolResizeFlags) error {
result := C.virStorageVolResize(v.ptr, C.ulonglong(capacity), C.uint(flags))
if result == -1 {
@@ -221,6 +231,7 @@ func (v *StorageVol) Resize(capacity uint64, flags StorageVolResizeFlags) error
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolWipe
func (v *StorageVol) Wipe(flags uint32) error {
result := C.virStorageVolWipe(v.ptr, C.uint(flags))
if result == -1 {
@@ -228,6 +239,7 @@ func (v *StorageVol) Wipe(flags uint32) error {
}
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolWipePattern
func (v *StorageVol) WipePattern(algorithm StorageVolWipeAlgorithm, flags uint32) error {
result := C.virStorageVolWipePattern(v.ptr, C.uint(algorithm), C.uint(flags))
if result == -1 {
@@ -236,6 +248,7 @@ func (v *StorageVol) WipePattern(algorithm StorageVolWipeAlgorithm, flags uint32
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolUpload
func (v *StorageVol) Upload(stream *Stream, offset, length uint64, flags StorageVolUploadFlags) error {
if C.virStorageVolUpload(v.ptr, stream.ptr, C.ulonglong(offset),
C.ulonglong(length), C.uint(flags)) == -1 {
@@ -244,6 +257,7 @@ func (v *StorageVol) Upload(stream *Stream, offset, length uint64, flags Storage
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolDownload
func (v *StorageVol) Download(stream *Stream, offset, length uint64, flags StorageVolDownloadFlags) error {
if C.virStorageVolDownload(v.ptr, stream.ptr, C.ulonglong(offset),
C.ulonglong(length), C.uint(flags)) == -1 {
@@ -252,6 +266,7 @@ func (v *StorageVol) Download(stream *Stream, offset, length uint64, flags Stora
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-storage.html#virStoragePoolLookupByVolume
func (v *StorageVol) LookupPoolByVolume() (*StoragePool, error) {
poolPtr := C.virStoragePoolLookupByVolume(v.ptr)
if poolPtr == nil {
diff --git a/vendor/github.com/libvirt/libvirt-go/stream.go b/vendor/github.com/libvirt/libvirt-go/stream.go
index c6cdd063..fcd1cd3d 100644
--- a/vendor/github.com/libvirt/libvirt-go/stream.go
+++ b/vendor/github.com/libvirt/libvirt-go/stream.go
@@ -65,6 +65,7 @@ type Stream struct {
ptr C.virStreamPtr
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamAbort
func (v *Stream) Abort() error {
result := C.virStreamAbort(v.ptr)
if result == -1 {
@@ -74,6 +75,7 @@ func (v *Stream) Abort() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamFinish
func (v *Stream) Finish() error {
result := C.virStreamFinish(v.ptr)
if result == -1 {
@@ -83,6 +85,7 @@ func (v *Stream) Finish() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamFree
func (v *Stream) Free() error {
ret := C.virStreamFree(v.ptr)
if ret == -1 {
@@ -91,6 +94,7 @@ func (v *Stream) Free() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamRef
func (c *Stream) Ref() error {
ret := C.virStreamRef(c.ptr)
if ret == -1 {
@@ -99,6 +103,7 @@ func (c *Stream) Ref() error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamRecv
func (v *Stream) Recv(p []byte) (int, error) {
n := C.virStreamRecv(v.ptr, (*C.char)(unsafe.Pointer(&p[0])), C.size_t(len(p)))
if n < 0 {
@@ -111,6 +116,7 @@ func (v *Stream) Recv(p []byte) (int, error) {
return int(n), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamRecvFlags
func (v *Stream) RecvFlags(p []byte, flags StreamRecvFlagsValues) (int, error) {
if C.LIBVIR_VERSION_NUMBER < 3004000 {
return 0, GetNotImplementedError("virStreamRecvFlags")
@@ -127,6 +133,7 @@ func (v *Stream) RecvFlags(p []byte, flags StreamRecvFlagsValues) (int, error) {
return int(n), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamRecvHole
func (v *Stream) RecvHole(flags uint) (int64, error) {
if C.LIBVIR_VERSION_NUMBER < 3004000 {
return 0, GetNotImplementedError("virStreamSparseRecvHole")
@@ -141,6 +148,7 @@ func (v *Stream) RecvHole(flags uint) (int64, error) {
return int64(len), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamSend
func (v *Stream) Send(p []byte) (int, error) {
n := C.virStreamSend(v.ptr, (*C.char)(unsafe.Pointer(&p[0])), C.size_t(len(p)))
if n < 0 {
@@ -153,6 +161,7 @@ func (v *Stream) Send(p []byte) (int, error) {
return int(n), nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamSendHole
func (v *Stream) SendHole(len int64, flags uint32) error {
if C.LIBVIR_VERSION_NUMBER < 3004000 {
return GetNotImplementedError("virStreamSendHole")
@@ -209,6 +218,7 @@ func streamSinkHoleCallback(stream C.virStreamPtr, length C.longlong, callbackID
return 0
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamRecvAll
func (v *Stream) RecvAll(handler StreamSinkFunc) error {
callbackID := registerCallbackId(handler)
@@ -222,6 +232,7 @@ func (v *Stream) RecvAll(handler StreamSinkFunc) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamSparseRecvAll
func (v *Stream) SparseRecvAll(handler StreamSinkFunc, holeHandler StreamSinkHoleFunc) error {
if C.LIBVIR_VERSION_NUMBER < 3004000 {
return GetNotImplementedError("virStreamSparseSendAll")
@@ -312,6 +323,7 @@ func streamSourceSkipCallback(stream C.virStreamPtr, length C.longlong, callback
return 0
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamSendAll
func (v *Stream) SendAll(handler StreamSourceFunc) error {
callbackID := registerCallbackId(handler)
@@ -325,6 +337,7 @@ func (v *Stream) SendAll(handler StreamSourceFunc) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamSparseSendAll
func (v *Stream) SparseSendAll(handler StreamSourceFunc, holeHandler StreamSourceHoleFunc, skipHandler StreamSourceSkipFunc) error {
if C.LIBVIR_VERSION_NUMBER < 3004000 {
return GetNotImplementedError("virStreamSparseSendAll")
@@ -347,6 +360,7 @@ func (v *Stream) SparseSendAll(handler StreamSourceFunc, holeHandler StreamSourc
type StreamEventCallback func(*Stream, StreamEventType)
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamEventAddCallback
func (v *Stream) EventAddCallback(events StreamEventType, callback StreamEventCallback) error {
callbackID := registerCallbackId(callback)
@@ -370,6 +384,7 @@ func streamEventCallback(st C.virStreamPtr, events int, callbackID int) {
callback(&Stream{ptr: st}, StreamEventType(events))
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamEventUpdateCallback
func (v *Stream) EventUpdateCallback(events StreamEventType) error {
ret := C.virStreamEventUpdateCallback(v.ptr, (C.int)(events))
if ret == -1 {
@@ -379,6 +394,7 @@ func (v *Stream) EventUpdateCallback(events StreamEventType) error {
return nil
}
+// See also https://libvirt.org/html/libvirt-libvirt-stream.html#virStreamEventRemoveCallback
func (v *Stream) EventRemoveCallback() error {
ret := C.virStreamEventRemoveCallback(v.ptr)
if ret == -1 {