# # Officially exported symbols, for which header # file definitions are installed in /usr/include/libvirt # either from libvirt.h and virterror.h # # Versions here are *fixed* to match the libvirt version # at which the symbol was introduced. This ensures that # a new client app requiring symbol foo() can't accidentally # run with old libvirt.so not providing foo() - the global # soname version info can't enforce this since we never # change the soname # LIBVIRT_0.0.3 { global: virConnectClose; virConnectGetType; virConnectGetVersion; virConnectListDomains; virConnectNumOfDomains; virConnectOpen; virConnectOpenReadOnly; virDomainCreateLinux; virDomainDestroy; virDomainFree; virDomainGetID; virDomainGetInfo; virDomainGetMaxMemory; virDomainGetName; virDomainGetOSType; virDomainGetXMLDesc; virDomainLookupByID; virDomainLookupByName; virDomainRestore; virDomainResume; virDomainSave; virDomainSetMaxMemory; virDomainShutdown; virDomainSuspend; virGetVersion; }; LIBVIRT_0.0.5 { global: virDomainLookupByUUID; virDomainGetUUID; } LIBVIRT_0.0.3; LIBVIRT_0.1.0 { global: virInitialize; virNodeGetInfo; virDomainReboot; virCopyLastError; virConnSetErrorFunc; virResetLastError; virResetError; virConnGetLastError; virGetLastError; virSetErrorFunc; virConnCopyLastError; virConnResetLastError; virDefaultErrorFunc; } LIBVIRT_0.0.5; LIBVIRT_0.1.1 { global: virDomainLookupByUUIDString; virDomainGetUUIDString; virDomainSetMemory; virDomainDefineXML; virDomainCreate; virDomainUndefine; virConnectListDefinedDomains; } LIBVIRT_0.1.0; LIBVIRT_0.1.4 { global: virDomainSetVcpus; virDomainPinVcpu; virDomainGetVcpus; } LIBVIRT_0.1.1; LIBVIRT_0.1.5 { global: virConnectNumOfDefinedDomains; } LIBVIRT_0.1.4; LIBVIRT_0.1.9 { global: virDomainCoreDump; virDomainAttachDevice; virDomainDetachDevice; } LIBVIRT_0.1.5; LIBVIRT_0.2.0 { global: virConnectNumOfNetworks; virConnectListNetworks; virConnectNumOfDefinedNetworks; virConnectListDefinedNetworks; virNetworkLookupByName; virNetworkLookupByUUID; virNetworkLookupByUUIDString; virNetworkCreateXML; virNetworkDefineXML; virNetworkUndefine; virNetworkCreate; virNetworkDestroy; virNetworkFree; virNetworkGetName; virNetworkGetUUID; virNetworkGetUUIDString; virNetworkGetXMLDesc; virNetworkGetBridgeName; } LIBVIRT_0.1.9; LIBVIRT_0.2.1 { global: virConnectGetCapabilities; virConnectGetMaxVcpus; virDomainGetMaxVcpus; virDomainGetAutostart; virDomainSetAutostart; virNetworkGetAutostart; virNetworkSetAutostart; } LIBVIRT_0.2.0; LIBVIRT_0.2.3 { global: virDomainGetSchedulerType; virDomainGetSchedulerParameters; virDomainSetSchedulerParameters; } LIBVIRT_0.2.1; LIBVIRT_0.3.0 { global: virConnectGetHostname; virConnectGetURI; virDomainGetConnect; virNetworkGetConnect; } LIBVIRT_0.2.3; LIBVIRT_0.3.2 { global: virDomainMigrate; virDomainBlockStats; virDomainInterfaceStats; } LIBVIRT_0.3.0; LIBVIRT_0.3.3 { global: virNodeGetCellsFreeMemory; virNodeGetFreeMemory; } LIBVIRT_0.3.2; LIBVIRT_0.4.0 { global: virConnectOpenAuth; virConnectAuthPtrDefault; } LIBVIRT_0.3.3; LIBVIRT_0.4.1 { global: virStoragePoolGetConnect; virConnectNumOfStoragePools; virConnectNumOfDefinedStoragePools; virConnectListStoragePools; virConnectListDefinedStoragePools; virStoragePoolLookupByName; virStoragePoolLookupByUUID; virStoragePoolLookupByUUIDString; virStoragePoolLookupByVolume; virStoragePoolCreateXML; virStoragePoolDefineXML; virStoragePoolUndefine; virStoragePoolCreate; virStoragePoolBuild; virStoragePoolDestroy; virStoragePoolDelete; virStoragePoolRefresh; virStoragePoolFree; virStoragePoolGetName; virStoragePoolGetUUID; virStoragePoolGetUUIDString; virStoragePoolGetInfo; virStoragePoolGetXMLDesc; virStoragePoolSetAutostart; virStoragePoolGetAutostart; virStoragePoolNumOfVolumes; virStoragePoolListVolumes; virStorageVolGetConnect; virStorageVolLookupByName; virStorageVolLookupByKey; virStorageVolLookupByPath; virStorageVolCreateXML; virStorageVolDelete; virStorageVolFree; virStorageVolGetName; virStorageVolGetKey; virStorageVolGetInfo; virStorageVolGetXMLDesc; virStorageVolGetPath; } LIBVIRT_0.4.0; LIBVIRT_0.4.2 { global: virDomainBlockPeek; virDomainMemoryPeek; } LIBVIRT_0.4.1; LIBVIRT_0.4.5 { global: virConnectFindStoragePoolSources; } LIBVIRT_0.4.2; LIBVIRT_0.5.0 { global: virDomainCreateXML; virEventRegisterImpl; virConnectDomainEventRegister; virConnectDomainEventDeregister; virNodeNumOfDevices; virNodeListDevices; virNodeDeviceLookupByName; virNodeDeviceFree; virNodeDeviceGetXMLDesc; virNodeDeviceGetName; virNodeDeviceGetParent; virNodeDeviceNumOfCaps; virNodeDeviceListCaps; } LIBVIRT_0.4.5; LIBVIRT_0.6.0 { global: virConnectRef; virDomainRef; virNetworkRef; virStoragePoolRef; virStorageVolRef; virNodeDeviceRef; } LIBVIRT_0.5.0; LIBVIRT_0.6.1 { global: virFreeError; virSaveLastError; virNodeDeviceDettach; virNodeDeviceReAttach; virNodeDeviceReset; virDomainGetSecurityLabel; virNodeGetSecurityModel; } LIBVIRT_0.6.0; LIBVIRT_0.6.3 { global: virNodeDeviceCreateXML; virNodeDeviceDestroy; } LIBVIRT_0.6.1; LIBVIRT_0.6.4 { global: virInterfaceGetConnect; virConnectNumOfInterfaces; virConnectListInterfaces; virInterfaceLookupByName; virInterfaceLookupByMACString; virInterfaceGetName; virInterfaceGetMACString; virInterfaceGetXMLDesc; virInterfaceRef; virInterfaceFree; virInterfaceDefineXML; virInterfaceUndefine; virInterfaceCreate; virInterfaceDestroy; virStorageVolCreateXMLFrom; virConnectDomainXMLFromNative; virConnectDomainXMLToNative; } LIBVIRT_0.6.3; LIBVIRT_0.7.0 { global: virConnectNumOfDefinedInterfaces; virConnectListDefinedInterfaces; } LIBVIRT_0.6.4; LIBVIRT_0.7.1 { global: virSecretGetConnect; virConnectNumOfSecrets; virConnectListSecrets; virSecretLookupByUUID; virSecretLookupByUUIDString; virSecretLookupByUsage; virSecretDefineXML; virSecretGetUUID; virSecretGetUUIDString; virSecretGetUsageType; virSecretGetUsageID; virSecretGetXMLDesc; virSecretSetValue; virSecretGetValue; virSecretUndefine; virSecretRef; virSecretFree; } LIBVIRT_0.7.0; LIBVIRT_0.7.2 { global: virStreamNew; virStreamRef; virStreamSend; virStreamRecv; virStreamSendAll; virStreamRecvAll; virStreamEventAddCallback; virStreamEventUpdateCallback; virStreamEventRemoveCallback; virStreamFinish; virStreamAbort; virStreamFree; virDomainMigrateToURI; } LIBVIRT_0.7.1; LIBVIRT_0.7.3 { global: virConnectGetLibVersion; virConnectIsEncrypted; virConnectIsSecure; virDomainIsActive; virDomainIsPersistent; virNetworkIsActive; virNetworkIsPersistent; virStoragePoolIsActive; virStoragePoolIsPersistent; virInterfaceIsActive; } LIBVIRT_0.7.2; LIBVIRT_0.7.5 { global: virConnectCompareCPU; virDomainMemoryStats; } LIBVIRT_0.7.3; LIBVIRT_0.7.7 { global: virDomainAttachDeviceFlags; virDomainDetachDeviceFlags; virConnectBaselineCPU; virDomainGetJobInfo; virDomainAbortJob; } LIBVIRT_0.7.5; LIBVIRT_0.8.0 { global: virStorageVolWipe; virDomainMigrateSetMaxDowntime; virConnectDomainEventRegisterAny; virConnectDomainEventDeregisterAny; virDomainUpdateDeviceFlags; virConnectListNWFilters; virConnectNumOfNWFilters; virNWFilterLookupByName; virNWFilterLookupByUUID; virNWFilterLookupByUUIDString; virNWFilterFree; virNWFilterGetName; virNWFilterGetUUID; virNWFilterGetUUIDString; virNWFilterGetXMLDesc; virNWFilterRef; virNWFilterDefineXML; virNWFilterUndefine; virDomainManagedSave; virDomainHasManagedSaveImage; virDomainManagedSaveRemove; virDomainSnapshotCreateXML; virDomainSnapshotGetXMLDesc; virDomainSnapshotNum; virDomainSnapshotListNames; virDomainSnapshotLookupByName; virDomainHasCurrentSnapshot; virDomainSnapshotCurrent; virDomainRevertToSnapshot; virDomainSnapshotDelete; virDomainSnapshotFree; } LIBVIRT_0.7.7; LIBVIRT_0.8.1 { global: virDomainGetBlockInfo; } LIBVIRT_0.8.0; LIBVIRT_0.8.2 { global: virDomainCreateWithFlags; } LIBVIRT_0.8.1; LIBVIRT_0.8.5 { global: virDomainSetMemoryParameters; virDomainGetMemoryParameters; virDomainGetVcpusFlags; virDomainSetVcpusFlags; } LIBVIRT_0.8.2; LIBVIRT_0.8.6 { global: virDomainOpenConsole; virDomainIsUpdated; } LIBVIRT_0.8.5; LIBVIRT_0.8.8 { global: virConnectGetSysinfo; } LIBVIRT_0.8.6; LIBVIRT_0.9.0 { global: virDomainGetBlkioParameters; virDomainMigrateSetMaxSpeed; virDomainSetBlkioParameters; virDomainSetMemoryFlags; virEventRegisterDefaultImpl; virEventRunDefaultImpl; virStorageVolDownload; virStorageVolUpload; } LIBVIRT_0.8.8; LIBVIRT_0.9.2 { global: virDomainGetSchedulerParametersFlags; virDomainGetState; virDomainInjectNMI; virDomainMigrate2; virDomainMigrateToURI2; virDomainScreenshot; virDomainSetSchedulerParametersFlags; virInterfaceChangeBegin; virInterfaceChangeCommit; virInterfaceChangeRollback; } LIBVIRT_0.9.0; LIBVIRT_0.9.3 { global: virDomainGetControlInfo; virDomainGetVcpuPinInfo; virDomainPinVcpuFlags; virDomainSendKey; virEventAddHandle; virEventAddTimeout; virEventRemoveHandle; virEventRemoveTimeout; virEventUpdateHandle; virEventUpdateTimeout; virNodeGetCPUStats; virNodeGetMemoryStats; } LIBVIRT_0.9.2; LIBVIRT_0.9.4 { global: virDomainRestoreFlags; virDomainSaveFlags; virDomainSaveImageDefineXML; virDomainSaveImageGetXMLDesc; virDomainUndefineFlags; virDomainDestroyFlags; virDomainBlockJobAbort; virDomainGetBlockJobInfo; virDomainBlockJobSetSpeed; virDomainBlockPull; } LIBVIRT_0.9.3; LIBVIRT_0.9.5 { global: virDomainBlockStatsFlags; virDomainMigrateGetMaxSpeed; virDomainSnapshotGetConnect; virDomainSnapshotGetDomain; virDomainSnapshotGetName; } LIBVIRT_0.9.4; LIBVIRT_0.9.7 { global: virDomainOpenGraphics; virDomainReset; virDomainSnapshotGetParent; virDomainSnapshotListChildrenNames; virDomainSnapshotNumChildren; } LIBVIRT_0.9.5; LIBVIRT_0.9.8 { global: virConnectIsAlive; virConnectSetKeepAlive; virDomainBlockResize; virDomainGetBlockIoTune; virDomainSetBlockIoTune; virNodeSuspendForDuration; } LIBVIRT_0.9.7; LIBVIRT_0.9.9 { global: virDomainGetInterfaceParameters; virDomainGetNumaParameters; virDomainSetInterfaceParameters; virDomainSetNumaParameters; } LIBVIRT_0.9.8; LIBVIRT_0.9.10 { global: virDomainBlockRebase; virDomainGetCPUStats; virDomainGetDiskErrors; virDomainGetMetadata; virDomainPMSuspendForDuration; virDomainSetMetadata; virDomainShutdownFlags; virStorageVolResize; virStorageVolWipePattern; } LIBVIRT_0.9.9; LIBVIRT_0.9.11 { global: virDomainPMWakeup; } LIBVIRT_0.9.10; LIBVIRT_0.9.13 { global: virConnectListAllDomains; virDomainListAllSnapshots; virDomainSnapshotHasMetadata; virDomainSnapshotIsCurrent; virDomainSnapshotListAllChildren; virDomainSnapshotRef; } LIBVIRT_0.9.11; LIBVIRT_0.10.0 { global: virDomainGetHostname; virConnectRegisterCloseCallback; virConnectUnregisterCloseCallback; virDomainGetSecurityLabelList; virDomainPinEmulator; virDomainGetEmulatorPinInfo; } LIBVIRT_0.9.13; LIBVIRT_0.10.2 { global: virConnectListAllInterfaces; virConnectListAllNetworks; virConnectListAllNodeDevices; virConnectListAllNWFilters; virConnectListAllSecrets; virConnectListAllStoragePools; virDomainBlockCommit; virNetworkUpdate; virNodeGetMemoryParameters; virNodeSetMemoryParameters; virStoragePoolListAllVolumes; } LIBVIRT_0.10.0; LIBVIRT_1.0.0 { global: virNodeGetCPUMap; } LIBVIRT_0.10.2; LIBVIRT_1.0.1 { global: virDomainFSTrim; virDomainSendProcessSignal; } LIBVIRT_1.0.0; LIBVIRT_1.0.2 { global: virDomainOpenChannel; virTypedParamsAddBoolean; virTypedParamsAddDouble; virTypedParamsAddFromString; virTypedParamsAddInt; virTypedParamsAddLLong; virTypedParamsAddString; virTypedParamsAddUInt; virTypedParamsAddULLong; virTypedParamsClear; virTypedParamsFree; virTypedParamsGet; virTypedParamsGetBoolean; virTypedParamsGetDouble; virTypedParamsGetInt; virTypedParamsGetLLong; virTypedParamsGetString; virTypedParamsGetUInt; virTypedParamsGetULLong; } LIBVIRT_1.0.1; LIBVIRT_1.0.3 { global: virDomainGetJobStats; virDomainMigrateGetCompressionCache; virDomainMigrateSetCompressionCache; virNodeDeviceLookupSCSIHostByWWN; } LIBVIRT_1.0.2; LIBVIRT_1.0.5 { global: virNodeDeviceDetachFlags; } LIBVIRT_1.0.3; LIBVIRT_1.0.6 { global: virGetLastErrorMessage; } LIBVIRT_1.0.5; LIBVIRT_1.1.0 { global: virDomainMigrate3; virDomainMigrateToURI3; } LIBVIRT_1.0.6; LIBVIRT_1.1.1 { global: virDomainCreateWithFiles; virDomainCreateXMLWithFiles; virDomainSetMemoryStatsPeriod; } LIBVIRT_1.1.0; LIBVIRT_1.1.3 { global: virConnectGetCPUModelNames; } LIBVIRT_1.1.1; LIBVIRT_1.2.1 { global: virConnectNetworkEventRegisterAny; virConnectNetworkEventDeregisterAny; } LIBVIRT_1.1.3; LIBVIRT_1.2.3 { global: virDomainCoreDumpWithFormat; } LIBVIRT_1.2.1; LIBVIRT_1.2.5 { global: virDomainFSFreeze; virDomainFSThaw; virDomainGetTime; virDomainSetTime; } LIBVIRT_1.2.3; LIBVIRT_1.2.6 { global: virNodeGetFreePages; virNetworkDHCPLeaseFree; virNetworkGetDHCPLeases; } LIBVIRT_1.2.5; LIBVIRT_1.2.7 { global: virConnectGetDomainCapabilities; } LIBVIRT_1.2.6; LIBVIRT_1.2.8 { global: virConnectGetAllDomainStats; virDomainBlockCopy; virDomainListGetStats; virDomainOpenGraphicsFD; virDomainStatsRecordListFree; } LIBVIRT_1.2.7; LIBVIRT_1.2.9 { global: virNodeAllocPages; } LIBVIRT_1.2.8; LIBVIRT_1.2.11 { global: virDomainFSInfoFree; virDomainGetFSInfo; } LIBVIRT_1.2.9; LIBVIRT_1.2.12 { global: virDomainDefineXMLFlags; } LIBVIRT_1.2.11; LIBVIRT_1.2.14 { global: virDomainIOThreadInfoFree; virDomainGetIOThreadInfo; virDomainPinIOThread; virDomainInterfaceAddresses; virDomainInterfaceFree; } LIBVIRT_1.2.12; LIBVIRT_1.2.15 { global: virDomainAddIOThread; virDomainDelIOThread; } LIBVIRT_1.2.14; LIBVIRT_1.2.16 { global: virDomainSetUserPassword; } LIBVIRT_1.2.15; LIBVIRT_1.2.17 { global: virTypedParamsAddStringList; } LIBVIRT_1.2.16; LIBVIRT_1.2.19 { global: virDomainRename; } LIBVIRT_1.2.17; LIBVIRT_1.3.3 { global: virDomainMigrateStartPostCopy; virDomainGetPerfEvents; virDomainSetPerfEvents; } LIBVIRT_1.2.19; LIBVIRT_2.0.0 { global: virConnectStoragePoolEventRegisterAny; virConnectStoragePoolEventDeregisterAny; virDomainGetGuestVcpus; virDomainSetGuestVcpus; } LIBVIRT_1.3.3; LIBVIRT_2.2.0 { global: virConnectNodeDeviceEventRegisterAny; virConnectNodeDeviceEventDeregisterAny; } LIBVIRT_2.0.0; LIBVIRT_3.0.0 { global: virStorageVolGetInfoFlags; virConnectSecretEventRegisterAny; virConnectSecretEventDeregisterAny; } LIBVIRT_2.2.0; LIBVIRT_3.1.0 { global: virDomainSetBlockThreshold; virDomainSetVcpu; } LIBVIRT_3.0.0; LIBVIRT_3.4.0 { global: virStreamRecvFlags; virStreamRecvHole; virStreamSendHole; virStreamSparseRecvAll; virStreamSparseSendAll; } LIBVIRT_3.1.0; LIBVIRT_3.7.0 { global: virDomainMigrateGetMaxDowntime; virDomainManagedSaveGetXMLDesc; virDomainManagedSaveDefineXML; } LIBVIRT_3.4.0; LIBVIRT_3.9.0 { global: virDomainSetLifecycleAction; } LIBVIRT_3.7.0; LIBVIRT_4.1.0 { global: virStoragePoolLookupByTargetPath; } LIBVIRT_3.9.0; LIBVIRT_4.4.0 { global: virDomainDetachDeviceAlias; virConnectCompareHypervisorCPU; virConnectBaselineHypervisorCPU; } LIBVIRT_4.1.0; LIBVIRT_4.5.0 { global: virGetLastErrorCode; virGetLastErrorDomain; virNodeGetSEVInfo; virDomainGetLaunchSecurityInfo; virNWFilterBindingLookupByPortDev; virConnectListAllNWFilterBindings; virNWFilterBindingCreateXML; virNWFilterBindingGetXMLDesc; virNWFilterBindingDelete; virNWFilterBindingRef; virNWFilterBindingFree; virNWFilterBindingGetPortDev; virNWFilterBindingGetFilterName; } LIBVIRT_4.4.0; # .... define new API here using predicted next version number ....