4 <h1>C# API bindings
</h1>
8 <h2><a name=
"description">Description
</a></h2>
11 The C# libvirt bindings are a class library. They use a Microsoft
12 Visual Studio project architecture, and have been tested with Windows
13 .NET, and Mono, on both Linux and Windows.
16 Compiling them produces
<b>LibvirtBindings.dll
</b>, which can
17 be added as a .NET reference to any .NET project needing access
23 <h2><a name=
"requirements">Requirements
</a></h2>
26 These bindings depend upon the libvirt libraries being installed.
29 In the .NET case, this is
<b>libvirt-
0.dll
</b>, produced from
30 compiling libvirt for windows.
35 <!-- 2010-10-19 JC: Commented out until we have C# tarballs to download
36 <h2><a name="getting">Getting them</a></h2>
39 The latest versions of the libvirt C# bindings can be downloaded from:
43 <li><a href="ftp://libvirt.org/libvirt/csharp/">libvirt.org FTP server</a></li>
44 <li><a href="http://libvirt.org/sources/csharp/">libvirt.org HTTP server</a></li>
48 <h2><a name=
"git">GIT source repository
</a></h2>
50 The C# bindings source code is maintained in a
<a
51 href=
"http://git-scm.com/">git
</a> repository available on
52 <a href=
"http://libvirt.org/git/">libvirt.org
</a>:
56 git clone git://libvirt.org/libvirt-csharp.git
60 They can also be browsed online:
64 <a href=
"http://libvirt.org/git/?p=libvirt-csharp.git;a=summary">http://libvirt.org/git/?p=libvirt-csharp.git;a=summary
</a>
69 <h2><a name=
"usage">Usage
</a></h2>
72 The libvirt C# bindings class library exposes the
<b>Libvirt
</b>
73 namespace. This namespace exposes all of the needed types (enum,
74 struct), plus many classes exposing the libvirt API methods.
77 These classes are grouped into functional areas, with each class
78 exposing libvirt methods related to that area.
81 For example, the libvirt methods related to connections, such as
82 <b>virConnectOpenAuth
</b> and
<b>virConnectNumOfDomains
</b>, are in
83 the
<b>Connect
</b> class.
85 They are accessed as
<b>Connect.OpenAuth
</b>, and
86 <b>Connect.NumOfDomains
</b> respectively.
89 In the same manner, the other class name mappings are:
91 <table class=
"top_table">
92 <tr><th>Name of libvirt function
</th><th>C# class name
</th></tr>
93 <tr><td>virDomain...
</td><td>Domain
</td></tr>
94 <tr><td>virEvent...
</td><td>Event
</td></tr>
95 <tr><td>virInterface...
</td><td>Interface
</td></tr>
96 <tr><td>virNetwork...
</td><td>Network
</td></tr>
97 <tr><td>virNode...
</td><td>Node
</td></tr>
98 <tr><td>virSecret...
</td><td>Secret
</td></tr>
99 <tr><td>virStoragePool...
</td><td>StoragePool
</td></tr>
100 <tr><td>virStorageVolume...
</td><td>StorageVolume
</td></tr>
101 <tr><td>virStream...
</td><td>Stream
</td></tr>
104 There are some additions as well:
108 There is a class named
<b>Library
</b>, exposing the
109 <b>virGetVersion
</b> and
<b>virInitialize
</b> methods
112 There is a class named
<b>Errors
</b>, exposing the error
113 related methods. For example,
<b>virSetErrorFunc
</b> and
114 <b>virConnResetLastError
</b>.
120 <h2><a name=
"authors">Authors
</a></h2>
123 The C# bindings are the work of Arnaud Champion
124 <<a href=
"mailto:arnaud.champion AT devatom.fr">arnaud.champion AT devatom.fr
</a>>,
125 based upon the previous work of Jarom
ír
Červenka.
130 <h2><a name=
"notes">Test Configuration
</a></h2>
133 Testing is performed using the following configurations:
136 <li>Windows
7 (
64 bits) / .Net
4</li>
137 <li>Windows
7 (
64 bits) / Mono
2.6.7 (compiled in
32 bits)
</li>
138 <li>Ubuntu
10.10 amd64 / Mono
2.6.7 (compiled in
64 bits)
</li>
143 <h2><a name=
"type">Type Coverage
</a></h2>
146 Coverage of the libvirt types is:
148 <table class=
"top_table">
149 <tr><th>Type
</th><th>Name
</th><th>Binding?
</th><th>Tested?
</th><th>Sample Code?
</th><th>Works?
</th><th>Tested .Net/Windows Works?
</th><th>Tested Mono (
32-bit)/Windows Works?
</th><th>Tested Mono (
64-bit)/Linux Works?
</th></tr>
150 <tr><td>enum
</td><td>virCPUCompareResult
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
151 <tr><td>struct
</td><td>virConnect
</td><td>Yes, an IntPtr as the struct is not public
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
152 <tr><td>struct
</td><td>virConnectAuth
</td><td>Yes
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
153 <tr><td>struct
</td><td>virConnectCredential
</td><td>Yes
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
154 <tr><td>enum
</td><td>virConnectCredentialType
</td><td>Yes
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
155 <tr><td>enum
</td><td>virConnectFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
156 <tr><td>struct
</td><td>virDomain
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
157 <tr><td>struct
</td><td>virDomainBlockInfo
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
158 <tr><td>struct
</td><td>virDomainBlockStatsInfo
</td><td>Yes
</td><td>Yes
</td><td>virDomainStats
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
159 <tr><td>enum
</td><td>virDomainCoreDumpFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
160 <tr><td>enum
</td><td>virDomainCreateFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
161 <tr><td>enum
</td><td>virDomainDeviceModifyFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
162 <tr><td>enum
</td><td>virDomainEventDefinedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
163 <tr><td>struct
</td><td>virDomainEventGraphicsAddress
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
164 <tr><td>enum
</td><td>virDomainEventGraphicsAddressType
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
165 <tr><td>enum
</td><td>virDomainEventGraphicsPhase
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
166 <tr><td>struct
</td><td>virDomainEventGraphicsSubject
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
167 <tr><td>struct
</td><td>virDomainEventGraphicsSubjectIdentity
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
168 <tr><td>enum
</td><td>virDomainEventID
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
169 <tr><td>enum
</td><td>virDomainEventIOErrorAction
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
170 <tr><td>enum
</td><td>virDomainEventResumedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
171 <tr><td>enum
</td><td>virDomainEventStartedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
172 <tr><td>enum
</td><td>virDomainEventStoppedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
173 <tr><td>enum
</td><td>virDomainEventSuspendedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
174 <tr><td>enum
</td><td>virDomainEventType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
175 <tr><td>enum
</td><td>virDomainEventUndefinedDetailType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
176 <tr><td>enum
</td><td>virDomainEventWatchdogAction
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
177 <tr><td>struct
</td><td>virDomainInfo
</td><td>Yes
</td><td>Yes
</td><td>virConnectSetErrorFunc, virDomainStats
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
178 <tr><td>struct
</td><td>virDomainInterfaceStatsStruct
</td><td>Yes
</td><td>Yes
</td><td>virDomainStats
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
179 <tr><td>struct
</td><td>virDomainJobInfo
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
180 <tr><td>enum
</td><td>virDomainJobType
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
181 <tr><td>enum
</td><td>virDomainMemoryFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
182 <tr><td>struct
</td><td>virDomainMemoryStatStruct
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
183 <tr><td>enum
</td><td>virDomainMemoryStatTags
</td><td>Yes
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
184 <tr><td>enum
</td><td>virDomainMigrateFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
185 <tr><td>struct
</td><td>virDomainSnapshot
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
186 <tr><td>enum
</td><td>virDomainSnapshotDeleteFlags
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
187 <tr><td>enum
</td><td>virDomainState
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
188 <tr><td>enum
</td><td>virDomainXMLFlags
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
189 <tr><td>enum
</td><td>virEventHandleType
</td><td>Yes
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
190 <tr><td>struct
</td><td>virInterface
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
191 <tr><td>enum
</td><td>virInterfaceXMLFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
192 <tr><td>struct
</td><td>virNWFilter
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
193 <tr><td>struct
</td><td>virNetwork
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
194 <tr><td>struct
</td><td>virNodeDevice
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
195 <tr><td>struct
</td><td>virNodeInfo
</td><td>Yes
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
196 <tr><td>struct
</td><td>virSchedParameter
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
197 <tr><td>enum
</td><td>virSchedParameterType
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
198 <tr><td>struct
</td><td>virSecret
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
199 <tr><td>enum
</td><td>virSecretUsageType
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
200 <tr><td>struct
</td><td>virSecurityLabel
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
201 <tr><td>struct
</td><td>virSecurityModel
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
202 <tr><td>enum
</td><td>virStoragePoolBuildFlags
</td><td>Yes
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
203 <tr><td>enum
</td><td>virStoragePoolDeleteFlags
</td><td>Yes
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
204 <tr><td>struct
</td><td>virStoragePoolInfo
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
205 <tr><td>struct
</td><td>virStoragePool
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
206 <tr><td>enum
</td><td>virStoragePoolState
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
207 <tr><td>struct
</td><td>virStorageVol
</td><td>Yes, an IntPtr as the struct is not public
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
208 <tr><td>enum
</td><td>virStorageVolDeleteFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
209 <tr><td>struct
</td><td>virStorageVolInfo
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
210 <tr><td>enum
</td><td>virStorageVolType
</td><td>Yes
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
211 <tr><td>struct
</td><td>virStream
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
212 <tr><td>enum
</td><td>virStreamEventType
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
213 <tr><td>enum
</td><td>virStreamFlags
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
214 <tr><td>struct
</td><td>virVcpuInfo
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
215 <tr><td>enum
</td><td>virVcpuState
</td><td>No
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
216 <tr><td>struct
</td><td>virError
</td><td>Yes
</td><td>Yes
</td><td>virConnectSetErrorFunc, virDomainStats
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
221 <h2><a name=
"funccover">Function Coverage
</a></h2>
224 Coverage of the libvirt functions is:
226 <table class=
"top_table">
227 <tr><th>Name
</th><th>Binding?
</th><th>Type?
</th><th>Tested?
</th><th>Sample Code?
</th><th>Working?
</th><th>Tested .Net/Windows Works?
</th><th>Tested Mono (
32-bit)/Windows Works?
</th><th>Tested Mono (
64-bit)/Linux Works?
</th></tr>
228 <tr><td>virConnectAuthCallback
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
229 <tr><td>virConnectBaselineCPU
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
230 <tr><td>virConnectClose
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
231 <tr><td>virConnectCompareCPU
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
232 <tr><td>virConnectDomainEventCallback
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
233 <tr><td>virConnectDomainEventDeregister
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
234 <tr><td>virConnectDomainEventDeregisterAny
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
235 <tr><td>virConnectDomainEventGenericCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
236 <tr><td>virConnectDomainEventGraphicsCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
237 <tr><td>virConnectDomainEventIOErrorCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
238 <tr><td>virConnectDomainEventIOErrorReasonCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
239 <tr><td>virConnectDomainEventRTCChangeCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
240 <tr><td>virConnectDomainEventRegister
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
241 <tr><td>virConnectDomainEventRegisterAny
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
242 <tr><td>virConnectDomainEventWatchdogCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
243 <tr><td>virConnectDomainXMLFromNative
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
244 <tr><td>virConnectDomainXMLToNative
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
245 <tr><td>virConnectFindStoragePoolSources
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
246 <tr><td>virConnectGetCapabilities
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
247 <tr><td>virConnectGetHostname
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
248 <tr><td>virConnectGetLibVersion
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
249 <tr><td>virConnectGetMaxVcpus
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
250 <tr><td>virConnectGetType
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
251 <tr><td>virConnectGetURI
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
252 <tr><td>virConnectGetVersion
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
253 <tr><td>virConnectIsEncrypted
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
254 <tr><td>virConnectIsSecure
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
255 <tr><td>virConnectListDefinedDomains
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
256 <tr><td>virConnectListDefinedInterfaces
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
257 <tr><td>virConnectListDefinedNetworks
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
258 <tr><td>virConnectListDefinedStoragePools
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
259 <tr><td>virConnectListDomains
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
260 <tr><td>virConnectListInterfaces
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes, if the host handle the method
</td><td> </td><td> </td><td> </td></tr>
261 <tr><td>virConnectListNWFilters
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
262 <tr><td>virConnectListNetworks
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
263 <tr><td>virConnectListSecrets
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
264 <tr><td>virConnectListStoragePools
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpen
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
265 <tr><td>virConnectNumOfDefinedDomains
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
266 <tr><td>virConnectNumOfDefinedInterfaces
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
267 <tr><td>virConnectNumOfDefinedNetworks
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
268 <tr><td>virConnectNumOfDefinedStoragePools
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
269 <tr><td>virConnectNumOfDomains
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
270 <tr><td>virConnectNumOfInterfaces
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
271 <tr><td>virConnectNumOfNWFilters
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
272 <tr><td>virConnectNumOfNetworks
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
273 <tr><td>virConnectNumOfSecrets
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
274 <tr><td>virConnectNumOfStoragePools
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpen
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
275 <tr><td>virConnectOpen
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpen, virEventRegisterImpl, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
276 <tr><td>virConnectOpenAuth
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
277 <tr><td>virConnectOpenReadOnly
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
278 <tr><td>virConnectRef
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
279 <tr><td>virDomainAbortJob
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
280 <tr><td>virDomainAttachDevice
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
281 <tr><td>virDomainAttachDeviceFlags
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
282 <tr><td>virDomainBlockPeek
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
283 <tr><td>virDomainBlockStats
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
284 <tr><td>virDomainCoreDump
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
285 <tr><td>virDomainCreate
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
286 <tr><td>virDomainCreateLinux
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
287 <tr><td>virDomainCreateWithFlags
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
288 <tr><td>virDomainCreateXML
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
289 <tr><td>virDomainDefineXML
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
290 <tr><td>virDomainDestroy
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
291 <tr><td>virDomainDetachDevice
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
292 <tr><td>virDomainDetachDeviceFlags
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
293 <tr><td>virDomainFree
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
294 <tr><td>virDomainGetAutostart
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
295 <tr><td>virDomainGetBlockInfo
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
296 <tr><td>virDomainGetConnect
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
297 <tr><td>virDomainGetID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
298 <tr><td>virDomainGetInfo
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
299 <tr><td>virDomainGetJobInfo
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
300 <tr><td>virDomainGetMaxMemory
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
301 <tr><td>virDomainGetMaxVcpus
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
302 <tr><td>virDomainGetName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
303 <tr><td>virDomainGetOSType
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
304 <tr><td>virDomainGetSchedulerParameters
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
305 <tr><td>virDomainGetSchedulerType
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
306 <tr><td>virDomainGetSecurityLabel
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
307 <tr><td>virDomainGetUUID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
308 <tr><td>virDomainGetUUIDString
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
309 <tr><td>virDomainGetVcpus
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
310 <tr><td>virDomainGetXMLDesc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
311 <tr><td>virDomainHasCurrentSnapshot
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
312 <tr><td>virDomainHasManagedSaveImage
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
313 <tr><td>virDomainInterfaceStats
</td><td>No
</td><td>function
</td><td>Yes
</td><td>virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
314 <tr><td>virDomainIsActive
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
315 <tr><td>virDomainIsPersistent
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
316 <tr><td>virDomainLookupByID
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectOpenAuth, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
317 <tr><td>virDomainLookupByName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
318 <tr><td>virDomainLookupByUUID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
319 <tr><td>virDomainLookupByUUIDString
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
320 <tr><td>virDomainManagedSave
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
321 <tr><td>virDomainManagedSaveRemove
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
322 <tr><td>virDomainMemoryPeek
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
323 <tr><td>virDomainMemoryStats
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
324 <tr><td>virDomainMigrate
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
325 <tr><td>virDomainMigrateSetMaxDowntime
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
326 <tr><td>virDomainMigrateToURI
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
327 <tr><td>virDomainPinVcpu
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
328 <tr><td>virDomainReboot
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
329 <tr><td>virDomainRef
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
330 <tr><td>virDomainRestore
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
331 <tr><td>virDomainResume
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
332 <tr><td>virDomainRevertToSnapshot
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
333 <tr><td>virDomainSave
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
334 <tr><td>virDomainSetAutostart
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
335 <tr><td>virDomainSetMaxMemory
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
336 <tr><td>virDomainSetMemory
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
337 <tr><td>virDomainSetSchedulerParameters
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
338 <tr><td>virDomainSetVcpus
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
339 <tr><td>virDomainShutdown
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
340 <tr><td>virDomainSnapshotCreateXML
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
341 <tr><td>virDomainSnapshotCurrent
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
342 <tr><td>virDomainSnapshotDelete
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
343 <tr><td>virDomainSnapshotFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
344 <tr><td>virDomainSnapshotGetXMLDesc
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
345 <tr><td>virDomainSnapshotListNames
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
346 <tr><td>virDomainSnapshotLookupByName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
347 <tr><td>virDomainSnapshotNum
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
348 <tr><td>virDomainSuspend
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
349 <tr><td>virDomainUndefine
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
350 <tr><td>virDomainUpdateDeviceFlags
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
351 <tr><td>virEventAddHandleFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
352 <tr><td>virEventAddTimeoutFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
353 <tr><td>virEventHandleCallback
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
354 <tr><td>virEventRegisterImpl
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
355 <tr><td>virEventRemoveHandleFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
356 <tr><td>virEventRemoveTimeoutFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
357 <tr><td>virEventTimeoutCallback
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
358 <tr><td>virEventUpdateHandleFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
359 <tr><td>virEventUpdateTimeoutFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
360 <tr><td>virFreeCallback
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virEventRegisterImpl
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
361 <tr><td>virGetVersion
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
362 <tr><td>virInitialize
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
363 <tr><td>virInterfaceCreate
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
364 <tr><td>virInterfaceDefineXML
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
365 <tr><td>virInterfaceDestroy
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
366 <tr><td>virInterfaceFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
367 <tr><td>virInterfaceGetConnect
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
368 <tr><td>virInterfaceGetMACString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
369 <tr><td>virInterfaceGetName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
370 <tr><td>virInterfaceGetXMLDesc
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
371 <tr><td>virInterfaceIsActive
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
372 <tr><td>virInterfaceLookupByMACString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
373 <tr><td>virInterfaceLookupByName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
374 <tr><td>virInterfaceRef
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
375 <tr><td>virInterfaceUndefine
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
376 <tr><td>virNWFilterDefineXML
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
377 <tr><td>virNWFilterFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
378 <tr><td>virNWFilterGetName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
379 <tr><td>virNWFilterGetUUID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
380 <tr><td>virNWFilterGetUUIDString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
381 <tr><td>virNWFilterGetXMLDesc
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
382 <tr><td>virNWFilterLookupByName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
383 <tr><td>virNWFilterLookupByUUID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
384 <tr><td>virNWFilterLookupByUUIDString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
385 <tr><td>virNWFilterRef
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
386 <tr><td>virNWFilterUndefine
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
387 <tr><td>virNetworkCreate
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
388 <tr><td>virNetworkCreateXML
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
389 <tr><td>virNetworkDefineXML
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
390 <tr><td>virNetworkDestroy
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
391 <tr><td>virNetworkFree
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
392 <tr><td>virNetworkGetAutostart
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
393 <tr><td>virNetworkGetBridgeName
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
394 <tr><td>virNetworkGetConnect
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
395 <tr><td>virNetworkGetName
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
396 <tr><td>virNetworkGetUUID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
397 <tr><td>virNetworkGetUUIDString
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
398 <tr><td>virNetworkGetXMLDesc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
399 <tr><td>virNetworkIsActive
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
400 <tr><td>virNetworkIsPersistent
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
401 <tr><td>virNetworkLookupByName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
402 <tr><td>virNetworkLookupByUUID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
403 <tr><td>virNetworkLookupByUUIDString
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
404 <tr><td>virNetworkRef
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
405 <tr><td>virNetworkSetAutostart
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
406 <tr><td>virNetworkUndefine
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
407 <tr><td>virNodeDeviceCreateXML
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
408 <tr><td>virNodeDeviceDestroy
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
409 <tr><td>virNodeDeviceDettach
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
410 <tr><td>virNodeDeviceFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
411 <tr><td>virNodeDeviceGetName
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
412 <tr><td>virNodeDeviceGetParent
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
413 <tr><td>virNodeDeviceGetXMLDesc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
414 <tr><td>virNodeDeviceListCaps
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
415 <tr><td>virNodeDeviceLookupByName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
416 <tr><td>virNodeDeviceNumOfCaps
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
417 <tr><td>virNodeDeviceReAttach
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
418 <tr><td>virNodeDeviceRef
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
419 <tr><td>virNodeDeviceReset
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
420 <tr><td>virNodeGetCellsFreeMemory
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
421 <tr><td>virNodeGetFreeMemory
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
422 <tr><td>virNodeGetInfo
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
423 <tr><td>virNodeGetSecurityModel
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
424 <tr><td>virNodeListDevices
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
425 <tr><td>virNodeNumOfDevices
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
426 <tr><td>virSecretDefineXML
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
427 <tr><td>virSecretFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
428 <tr><td>virSecretGetConnect
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
429 <tr><td>virSecretGetUUID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
430 <tr><td>virSecretGetUUIDString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
431 <tr><td>virSecretGetUsageID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
432 <tr><td>virSecretGetUsageType
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
433 <tr><td>virSecretGetValue
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
434 <tr><td>virSecretGetXMLDesc
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
435 <tr><td>virSecretLookupByUUID
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
436 <tr><td>virSecretLookupByUUIDString
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
437 <tr><td>virSecretLookupByUsage
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
438 <tr><td>virSecretRef
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
439 <tr><td>virSecretSetValue
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
440 <tr><td>virSecretUndefine
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
441 <tr><td>virStoragePoolBuild
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
442 <tr><td>virStoragePoolCreate
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
443 <tr><td>virStoragePoolCreateXML
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
444 <tr><td>virStoragePoolDefineXML
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
445 <tr><td>virStoragePoolDelete
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
446 <tr><td>virStoragePoolDestroy
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
447 <tr><td>virStoragePoolFree
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
448 <tr><td>virStoragePoolGetAutostart
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
449 <tr><td>virStoragePoolGetConnect
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
450 <tr><td>virStoragePoolGetInfo
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
451 <tr><td>virStoragePoolGetName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
452 <tr><td>virStoragePoolGetUUID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
453 <tr><td>virStoragePoolGetUUIDString
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
454 <tr><td>virStoragePoolGetXMLDesc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
455 <tr><td>virStoragePoolIsActive
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
456 <tr><td>virStoragePoolIsPersistent
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
457 <tr><td>virStoragePoolListVolumes
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
458 <tr><td>virStoragePoolLookupByName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
459 <tr><td>virStoragePoolLookupByUUID
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
460 <tr><td>virStoragePoolLookupByUUIDString
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
461 <tr><td>virStoragePoolLookupByVolume
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
462 <tr><td>virStoragePoolNumOfVolumes
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
463 <tr><td>virStoragePoolRef
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
464 <tr><td>virStoragePoolRefresh
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
465 <tr><td>virStoragePoolSetAutostart
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
466 <tr><td>virStoragePoolUndefine
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
467 <tr><td>virStorageVolCreateXML
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
468 <tr><td>virStorageVolCreateXMLFrom
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
469 <tr><td>virStorageVolDelete
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
470 <tr><td>virStorageVolFree
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
471 <tr><td>virStorageVolGetConnect
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>Maybe
</td><td> </td><td> </td><td> </td></tr>
472 <tr><td>virStorageVolGetInfo
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
473 <tr><td>virStorageVolGetKey
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
474 <tr><td>virStorageVolGetName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
475 <tr><td>virStorageVolGetPath
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
476 <tr><td>virStorageVolGetXMLDesc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
477 <tr><td>virStorageVolLookupByKey
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
478 <tr><td>virStorageVolLookupByName
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
479 <tr><td>virStorageVolLookupByPath
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td> </td><td>Yes
</td><td> </td><td> </td><td> </td></tr>
480 <tr><td>virStorageVolRef
</td><td>Yes
</td><td>function
</td><td>No
</td><td> </td><td>No
</td><td> </td><td> </td><td> </td></tr>
481 <tr><td>virStorageVolWipe
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
482 <tr><td>virStreamAbort
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
483 <tr><td>virStreamEventAddCallback
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
484 <tr><td>virStreamEventCallback
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
485 <tr><td>virStreamEventRemoveCallback
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
486 <tr><td>virStreamEventUpdateCallback
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
487 <tr><td>virStreamFinish
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
488 <tr><td>virStreamFree
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
489 <tr><td>virStreamNew
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
490 <tr><td>virStreamRecv
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
491 <tr><td>virStreamRecvAll
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
492 <tr><td>virStreamRef
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
493 <tr><td>virStreamSend
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
494 <tr><td>virStreamSendAll
</td><td>No
</td><td>function
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
495 <tr><td>virStreamSinkFunc
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
496 <tr><td>virStreamSourceFunc
</td><td>No
</td><td>delegate
</td><td> </td><td> </td><td> </td><td> </td><td> </td><td> </td></tr>
497 <tr><td>virGetLastError
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectSetErrorFunc
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
498 <tr><td>virConnSetErrorFunc
</td><td>Yes
</td><td>function
</td><td>Yes
</td><td>virConnectSetErrorFunc
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>
499 <tr><td>virErrorFunc
</td><td>Yes
</td><td>delegate
</td><td>Yes
</td><td>virConnectSetErrorFunc, virDomainInfos
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td><td>Yes
</td></tr>