提交 e43d1ae0 编写于 作者: D Daniel Veillard

* NEWS configure.in libvirt.spec.in doc/* include/libvirt/libvirt.h:

  release of 0.6.1
* po/*: rebuilt
* AUTHORS: updated to list new contributors
Daniel
上级 4ebe4c10
...@@ -62,6 +62,8 @@ Patches have also been contributed by: ...@@ -62,6 +62,8 @@ Patches have also been contributed by:
Ryota Ozaki <ozaki.ryota@gmail.com> Ryota Ozaki <ozaki.ryota@gmail.com>
James Morris <jmorris@namei.org> James Morris <jmorris@namei.org>
Daniel J Walsh <dwalsh@redhat.com> Daniel J Walsh <dwalsh@redhat.com>
Maximilian Wilhelm <max@rfc2324.org>
Ryota Ozaki <ozaki.ryota@gmail.com>
[....send patches to get your name here....] [....send patches to get your name here....]
......
Wed Mar 4 14:11:15 CET 2009 Daniel Veillard <veilard@redhat.com>
* NEWS configure.in libvirt.spec.in doc/* include/libvirt/libvirt.h:
release of 0.6.1
* po/*: rebuilt
* AUTHORS: updated to list new contributors
Wed Mar 4 12:37:13 GMT 2009 Daniel P. Berrange <berrange@redhat.com> Wed Mar 4 12:37:13 GMT 2009 Daniel P. Berrange <berrange@redhat.com>
Fix misc failures in test suite & make test cases more robust Fix misc failures in test suite & make test cases more robust
......
...@@ -5,6 +5,58 @@ ...@@ -5,6 +5,58 @@
http://libvirt.org/news.html http://libvirt.org/news.html
0.6.1: Mar 3 2009:
- New features: new APIs for Node device detach reattach and reset
(Mark McLoughlin), sVirt mandatory access control support (James
Morris and Dan Walsh)
- Portability: non gcc toolchain (John Levon), gcc-4.4 warnings fixes
(Mark McLoughlin), fix build without LXC and QEmu (Jim Meyering)
- Documentation: man page bugzilla URL (Mark McLoughlin), typo
in domain format (Jesse Farinacci), clock offset fix (Mark
McLoughlin), hostdev description typo (Mark McLoughlin), static
host IP (Charles Duffy), new example program (David Allan)
- Bug fixes: NULL dereference in LXC (Jim Meyering), fix domain
error reporting (John Levon), fix loop of libvirtd --timeout
(Daniel Berrange), limit history to 500 to restrict virsh memory
(Daniel Berrange), wrong lvm volume format check (Cole Robinson),
I/O error in daemon and associated remote acces crash (Daniel
Berrange), fix autostart of session daemon (Daniel Berrange),
restart guest on qemu migration failures (Chris Lalancette),
config parsing leaks (Ryota Ozaki), DBus multithreading activation
to avoid crashes (Daniel Berrange), mark defined network descriptions
as persistent (Cole Robinson), qemu+tls handshake negotiation hang
(Chris Lalancette)
- Improvements: don't hardcode ssh port (Guido Gnther), new test
cases and testing infrastructure (Jim Meyering), improve the
SExpr parser (John Levon), proper error reporting on xend
shutdown command (John Levon), proper handling of errors when
saving QEmu domains state (Guido Gnther), revamp of the internal
error memory APIs (John Levon), better virsh error reporting (John
Levon), more daemon options to allow running multiple daemons (Jim
Meyering), error handling when creating a QEmu domain (Guido Gnther),
fix timeouts in QEmu log reading (Guido Gnther), migration with
xend 3.3 fixes (John Levon), virsh XML dump flags cleanup (Cole
Robinson), fix build with loadable drivers (Maximilian Wilhelm),
internal XML APIs to read long long and hexa values (Mark
McLoughlin), function to parse node device XML descriptions and
associated test (Mark McLoughlin), generate network bridge names if
not provided (Cole Robinson), recognize ejectable media in hostdev
hal driver (Cole Robinson), integration of sVirt (Daniel Berrange)
- Cleanups: printf NULL string checks (John Levon), remove uses of
strerror and use virStrerror (Jim Meyering), remove redundant NULL
assignments (Jim Meyering), QEmu driver logging and exec cleanups
(Jim Meyering), many error handling cleanups (Jim Meyering), XML
module cleanups (Mark McLoughlin), compiler warning (Maximilian
Wilhelm), daemon TCP listen cleanup (Cole Robinson), size_t type
cleanup (Guido Gnther), parallel make fix (Michael Marineau),
storage error diagnostic fix (Ryota Ozaki), remove redundant monitor
watch variable (Cole Robinson), qemu AttachDevice error report
improvement (Cole Robinson), virsh output cleanup (Jim Meyering),
various tests cleanups and improvements (Jim Meyering), fix the
internal export list with new APIs (Daniel Berrange), cleanups on
new APIs for Node device (Daniel Berrange)
0.6.0: Jan 31 2009: 0.6.0: Jan 31 2009:
- New features: thread safety of the API and event handling (Daniel - New features: thread safety of the API and event handling (Daniel
Berrange), allow QEmu domains to survive daemon restart (Guido Berrange), allow QEmu domains to survive daemon restart (Guido
......
dnl Process this file with autoconf to produce a configure script. dnl Process this file with autoconf to produce a configure script.
AC_INIT([libvirt], [0.6.0]) AC_INIT([libvirt], [0.6.1])
AC_CONFIG_SRCDIR([src/libvirt.c]) AC_CONFIG_SRCDIR([src/libvirt.c])
AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_AUX_DIR([build-aux])
AM_CONFIG_HEADER([config.h]) AM_CONFIG_HEADER([config.h])
......
此差异已折叠。
...@@ -105,7 +105,8 @@ void <a href="#virConnResetLastError">virConnResetLastError</a> (<a href="libvi ...@@ -105,7 +105,8 @@ void <a href="#virConnResetLastError">virConnResetLastError</a> (<a href="libvi
<a name="VIR_FROM_DOMAIN">VIR_FROM_DOMAIN</a> = 20 /* Error from domain config */ <a name="VIR_FROM_DOMAIN">VIR_FROM_DOMAIN</a> = 20 /* Error from domain config */
<a name="VIR_FROM_UML">VIR_FROM_UML</a> = 21 /* Error at the UML driver */ <a name="VIR_FROM_UML">VIR_FROM_UML</a> = 21 /* Error at the UML driver */
<a name="VIR_FROM_NODEDEV">VIR_FROM_NODEDEV</a> = 22 /* Error from node device monitor */ <a name="VIR_FROM_NODEDEV">VIR_FROM_NODEDEV</a> = 22 /* Error from node device monitor */
<a name="VIR_FROM_XEN_INOTIFY">VIR_FROM_XEN_INOTIFY</a> = 23 /* Error from xen inotify layer */ <a name="VIR_FROM_XEN_INOTIFY">VIR_FROM_XEN_INOTIFY</a> = 23 /* Error from xen inotify layer */
<a name="VIR_FROM_SECURITY">VIR_FROM_SECURITY</a> = 24 /* Error from security framework */
}; };
</pre><p/> </pre><p/>
</div> </div>
...@@ -172,7 +173,8 @@ void <a href="#virConnResetLastError">virConnResetLastError</a> (<a href="libvi ...@@ -172,7 +173,8 @@ void <a href="#virConnResetLastError">virConnResetLastError</a> (<a href="libvi
<a name="VIR_ERR_NO_STORAGE_VOL">VIR_ERR_NO_STORAGE_VOL</a> = 50 /* storage pool not found */ <a name="VIR_ERR_NO_STORAGE_VOL">VIR_ERR_NO_STORAGE_VOL</a> = 50 /* storage pool not found */
<a name="VIR_WAR_NO_NODE">VIR_WAR_NO_NODE</a> = 51 /* failed to start node driver */ <a name="VIR_WAR_NO_NODE">VIR_WAR_NO_NODE</a> = 51 /* failed to start node driver */
<a name="VIR_ERR_INVALID_NODE_DEVICE">VIR_ERR_INVALID_NODE_DEVICE</a> = 52 /* invalid node device object */ <a name="VIR_ERR_INVALID_NODE_DEVICE">VIR_ERR_INVALID_NODE_DEVICE</a> = 52 /* invalid node device object */
<a name="VIR_ERR_NO_NODE_DEVICE">VIR_ERR_NO_NODE_DEVICE</a> = 53 /* node device not found */ <a name="VIR_ERR_NO_NODE_DEVICE">VIR_ERR_NO_NODE_DEVICE</a> = 53 /* node device not found */
<a name="VIR_ERR_NO_SECURITY_MODEL">VIR_ERR_NO_SECURITY_MODEL</a> = 54 /* security model not found */
}; };
</pre><p/> </pre><p/>
</div> </div>
......
此差异已折叠。
此差异已折叠。
...@@ -8,13 +8,16 @@ ...@@ -8,13 +8,16 @@
<exports symbol='VIR_NODEINFO_MAXCPUS' type='macro'/> <exports symbol='VIR_NODEINFO_MAXCPUS' type='macro'/>
<exports symbol='LIBVIR_VERSION_NUMBER' type='macro'/> <exports symbol='LIBVIR_VERSION_NUMBER' type='macro'/>
<exports symbol='VIR_USE_CPU' type='macro'/> <exports symbol='VIR_USE_CPU' type='macro'/>
<exports symbol='VIR_SECURITY_DOI_BUFLEN' type='macro'/>
<exports symbol='VIR_CPU_MAPLEN' type='macro'/> <exports symbol='VIR_CPU_MAPLEN' type='macro'/>
<exports symbol='VIR_UUID_BUFLEN' type='macro'/> <exports symbol='VIR_SECURITY_LABEL_BUFLEN' type='macro'/>
<exports symbol='VIR_CPU_USABLE' type='macro'/> <exports symbol='VIR_CPU_USABLE' type='macro'/>
<exports symbol='VIR_COPY_CPUMAP' type='macro'/> <exports symbol='VIR_COPY_CPUMAP' type='macro'/>
<exports symbol='VIR_DOMAIN_SCHED_FIELD_LENGTH' type='macro'/> <exports symbol='VIR_DOMAIN_SCHED_FIELD_LENGTH' type='macro'/>
<exports symbol='VIR_SECURITY_MODEL_BUFLEN' type='macro'/>
<exports symbol='VIR_UUID_STRING_BUFLEN' type='macro'/> <exports symbol='VIR_UUID_STRING_BUFLEN' type='macro'/>
<exports symbol='VIR_GET_CPUMAP' type='macro'/> <exports symbol='VIR_GET_CPUMAP' type='macro'/>
<exports symbol='VIR_UUID_BUFLEN' type='macro'/>
<exports symbol='VIR_UNUSE_CPU' type='macro'/> <exports symbol='VIR_UNUSE_CPU' type='macro'/>
<exports symbol='VIR_DOMAIN_EVENT_DEFINED' type='enum'/> <exports symbol='VIR_DOMAIN_EVENT_DEFINED' type='enum'/>
<exports symbol='VIR_CRED_EXTERNAL' type='enum'/> <exports symbol='VIR_CRED_EXTERNAL' type='enum'/>
...@@ -107,6 +110,7 @@ ...@@ -107,6 +110,7 @@
<exports symbol='virConnectAuthPtr' type='typedef'/> <exports symbol='virConnectAuthPtr' type='typedef'/>
<exports symbol='virStorageVolInfo' type='typedef'/> <exports symbol='virStorageVolInfo' type='typedef'/>
<exports symbol='virSchedParameterType' type='typedef'/> <exports symbol='virSchedParameterType' type='typedef'/>
<exports symbol='virSecurityLabel' type='typedef'/>
<exports symbol='virStorageVolInfoPtr' type='typedef'/> <exports symbol='virStorageVolInfoPtr' type='typedef'/>
<exports symbol='virConnectCredentialPtr' type='typedef'/> <exports symbol='virConnectCredentialPtr' type='typedef'/>
<exports symbol='virStoragePoolPtr' type='typedef'/> <exports symbol='virStoragePoolPtr' type='typedef'/>
...@@ -129,6 +133,7 @@ ...@@ -129,6 +133,7 @@
<exports symbol='virSchedParameterPtr' type='typedef'/> <exports symbol='virSchedParameterPtr' type='typedef'/>
<exports symbol='virConnectAuth' type='typedef'/> <exports symbol='virConnectAuth' type='typedef'/>
<exports symbol='virConnectCredential' type='typedef'/> <exports symbol='virConnectCredential' type='typedef'/>
<exports symbol='virSecurityModelPtr' type='typedef'/>
<exports symbol='virDomainEventSuspendedDetailType' type='typedef'/> <exports symbol='virDomainEventSuspendedDetailType' type='typedef'/>
<exports symbol='virVcpuInfoPtr' type='typedef'/> <exports symbol='virVcpuInfoPtr' type='typedef'/>
<exports symbol='virStoragePoolBuildFlags' type='typedef'/> <exports symbol='virStoragePoolBuildFlags' type='typedef'/>
...@@ -140,13 +145,17 @@ ...@@ -140,13 +145,17 @@
<exports symbol='virStoragePoolState' type='typedef'/> <exports symbol='virStoragePoolState' type='typedef'/>
<exports symbol='virStoragePoolInfoPtr' type='typedef'/> <exports symbol='virStoragePoolInfoPtr' type='typedef'/>
<exports symbol='virDomainCreateFlags' type='typedef'/> <exports symbol='virDomainCreateFlags' type='typedef'/>
<exports symbol='virSecurityLabelPtr' type='typedef'/>
<exports symbol='virSecurityModel' type='typedef'/>
<exports symbol='_virDomainInfo' type='struct'/> <exports symbol='_virDomainInfo' type='struct'/>
<exports symbol='_virConnectAuth' type='struct'/> <exports symbol='_virConnectAuth' type='struct'/>
<exports symbol='_virVcpuInfo' type='struct'/> <exports symbol='_virVcpuInfo' type='struct'/>
<exports symbol='_virDomainInterfaceStats' type='struct'/> <exports symbol='_virDomainInterfaceStats' type='struct'/>
<exports symbol='_virStoragePoolInfo' type='struct'/> <exports symbol='_virStoragePoolInfo' type='struct'/>
<exports symbol='_virConnectCredential' type='struct'/> <exports symbol='_virConnectCredential' type='struct'/>
<exports symbol='_virSecurityLabel' type='struct'/>
<exports symbol='_virStorageVolInfo' type='struct'/> <exports symbol='_virStorageVolInfo' type='struct'/>
<exports symbol='_virSecurityModel' type='struct'/>
<exports symbol='_virDomainBlockStats' type='struct'/> <exports symbol='_virDomainBlockStats' type='struct'/>
<exports symbol='_virNodeInfo' type='struct'/> <exports symbol='_virNodeInfo' type='struct'/>
<exports symbol='_virSchedParameter' type='struct'/> <exports symbol='_virSchedParameter' type='struct'/>
...@@ -163,7 +172,8 @@ ...@@ -163,7 +172,8 @@
<exports symbol='virInitialize' type='function'/> <exports symbol='virInitialize' type='function'/>
<exports symbol='virNodeDeviceGetName' type='function'/> <exports symbol='virNodeDeviceGetName' type='function'/>
<exports symbol='virStoragePoolSetAutostart' type='function'/> <exports symbol='virStoragePoolSetAutostart' type='function'/>
<exports symbol='virStorageVolCreateXML' type='function'/> <exports symbol='virNodeDeviceDettach' type='function'/>
<exports symbol='virDomainGetSecurityLabel' type='function'/>
<exports symbol='virConnectDomainEventDeregister' type='function'/> <exports symbol='virConnectDomainEventDeregister' type='function'/>
<exports symbol='virDomainGetSchedulerParameters' type='function'/> <exports symbol='virDomainGetSchedulerParameters' type='function'/>
<exports symbol='virDomainLookupByUUIDString' type='function'/> <exports symbol='virDomainLookupByUUIDString' type='function'/>
...@@ -203,6 +213,7 @@ ...@@ -203,6 +213,7 @@
<exports symbol='virStorageVolGetXMLDesc' type='function'/> <exports symbol='virStorageVolGetXMLDesc' type='function'/>
<exports symbol='virDomainSetSchedulerParameters' type='function'/> <exports symbol='virDomainSetSchedulerParameters' type='function'/>
<exports symbol='virConnectGetType' type='function'/> <exports symbol='virConnectGetType' type='function'/>
<exports symbol='virStorageVolCreateXML' type='function'/>
<exports symbol='virDomainSave' type='function'/> <exports symbol='virDomainSave' type='function'/>
<exports symbol='virDomainCreate' type='function'/> <exports symbol='virDomainCreate' type='function'/>
<exports symbol='virConnectListDomains' type='function'/> <exports symbol='virConnectListDomains' type='function'/>
...@@ -236,6 +247,7 @@ ...@@ -236,6 +247,7 @@
<exports symbol='virDomainLookupByName' type='function'/> <exports symbol='virDomainLookupByName' type='function'/>
<exports symbol='virConnectFindStoragePoolSources' type='function'/> <exports symbol='virConnectFindStoragePoolSources' type='function'/>
<exports symbol='virDomainPinVcpu' type='function'/> <exports symbol='virDomainPinVcpu' type='function'/>
<exports symbol='virNodeGetSecurityModel' type='function'/>
<exports symbol='virDomainRestore' type='function'/> <exports symbol='virDomainRestore' type='function'/>
<exports symbol='virStorageVolGetPath' type='function'/> <exports symbol='virStorageVolGetPath' type='function'/>
<exports symbol='virNetworkLookupByUUIDString' type='function'/> <exports symbol='virNetworkLookupByUUIDString' type='function'/>
...@@ -265,9 +277,11 @@ ...@@ -265,9 +277,11 @@
<exports symbol='virDomainGetMaxVcpus' type='function'/> <exports symbol='virDomainGetMaxVcpus' type='function'/>
<exports symbol='virEventHandleCallback' type='function'/> <exports symbol='virEventHandleCallback' type='function'/>
<exports symbol='virDomainGetSchedulerType' type='function'/> <exports symbol='virDomainGetSchedulerType' type='function'/>
<exports symbol='virNodeDeviceReset' type='function'/>
<exports symbol='virDomainDetachDevice' type='function'/> <exports symbol='virDomainDetachDevice' type='function'/>
<exports symbol='virStoragePoolNumOfVolumes' type='function'/> <exports symbol='virStoragePoolNumOfVolumes' type='function'/>
<exports symbol='virStoragePoolGetUUIDString' type='function'/> <exports symbol='virStoragePoolGetUUIDString' type='function'/>
<exports symbol='virNodeDeviceReAttach' type='function'/>
<exports symbol='virStoragePoolUndefine' type='function'/> <exports symbol='virStoragePoolUndefine' type='function'/>
<exports symbol='virConnectAuthCallbackPtr' type='function'/> <exports symbol='virConnectAuthCallbackPtr' type='function'/>
<exports symbol='virDomainAttachDevice' type='function'/> <exports symbol='virDomainAttachDevice' type='function'/>
...@@ -344,6 +358,7 @@ ...@@ -344,6 +358,7 @@
<exports symbol='VIR_ERR_OPERATION_DENIED' type='enum'/> <exports symbol='VIR_ERR_OPERATION_DENIED' type='enum'/>
<exports symbol='VIR_FROM_STORAGE' type='enum'/> <exports symbol='VIR_FROM_STORAGE' type='enum'/>
<exports symbol='VIR_ERR_NO_KERNEL' type='enum'/> <exports symbol='VIR_ERR_NO_KERNEL' type='enum'/>
<exports symbol='VIR_WAR_NO_STORAGE' type='enum'/>
<exports symbol='VIR_ERR_GNUTLS_ERROR' type='enum'/> <exports symbol='VIR_ERR_GNUTLS_ERROR' type='enum'/>
<exports symbol='VIR_ERR_POST_FAILED' type='enum'/> <exports symbol='VIR_ERR_POST_FAILED' type='enum'/>
<exports symbol='VIR_ERR_OS_TYPE' type='enum'/> <exports symbol='VIR_ERR_OS_TYPE' type='enum'/>
...@@ -352,6 +367,7 @@ ...@@ -352,6 +367,7 @@
<exports symbol='VIR_ERR_INVALID_CONN' type='enum'/> <exports symbol='VIR_ERR_INVALID_CONN' type='enum'/>
<exports symbol='VIR_ERR_NONE' type='enum'/> <exports symbol='VIR_ERR_NONE' type='enum'/>
<exports symbol='VIR_ERR_OK' type='enum'/> <exports symbol='VIR_ERR_OK' type='enum'/>
<exports symbol='VIR_FROM_NETWORK' type='enum'/>
<exports symbol='VIR_ERR_XML_DETAIL' type='enum'/> <exports symbol='VIR_ERR_XML_DETAIL' type='enum'/>
<exports symbol='VIR_FROM_NET' type='enum'/> <exports symbol='VIR_FROM_NET' type='enum'/>
<exports symbol='VIR_FROM_XENXM' type='enum'/> <exports symbol='VIR_FROM_XENXM' type='enum'/>
...@@ -368,14 +384,14 @@ ...@@ -368,14 +384,14 @@
<exports symbol='VIR_FROM_DOMAIN' type='enum'/> <exports symbol='VIR_FROM_DOMAIN' type='enum'/>
<exports symbol='VIR_ERR_NO_TARGET' type='enum'/> <exports symbol='VIR_ERR_NO_TARGET' type='enum'/>
<exports symbol='VIR_ERR_NETWORK_EXIST' type='enum'/> <exports symbol='VIR_ERR_NETWORK_EXIST' type='enum'/>
<exports symbol='VIR_WAR_NO_STORAGE' type='enum'/> <exports symbol='VIR_FROM_SECURITY' type='enum'/>
<exports symbol='VIR_ERR_WRITE_FAILED' type='enum'/> <exports symbol='VIR_ERR_WRITE_FAILED' type='enum'/>
<exports symbol='VIR_ERR_INTERNAL_ERROR' type='enum'/> <exports symbol='VIR_ERR_INTERNAL_ERROR' type='enum'/>
<exports symbol='VIR_ERR_CONF_SYNTAX' type='enum'/> <exports symbol='VIR_ERR_CONF_SYNTAX' type='enum'/>
<exports symbol='VIR_ERR_INVALID_STORAGE_POOL' type='enum'/> <exports symbol='VIR_ERR_INVALID_STORAGE_POOL' type='enum'/>
<exports symbol='VIR_FROM_REMOTE' type='enum'/> <exports symbol='VIR_FROM_REMOTE' type='enum'/>
<exports symbol='VIR_ERR_NO_SUPPORT' type='enum'/> <exports symbol='VIR_ERR_NO_SUPPORT' type='enum'/>
<exports symbol='VIR_FROM_NETWORK' type='enum'/> <exports symbol='VIR_ERR_NO_SECURITY_MODEL' type='enum'/>
<exports symbol='VIR_FROM_QEMU' type='enum'/> <exports symbol='VIR_FROM_QEMU' type='enum'/>
<exports symbol='VIR_FROM_XEND' type='enum'/> <exports symbol='VIR_FROM_XEND' type='enum'/>
<exports symbol='VIR_ERR_INVALID_STORAGE_VOL' type='enum'/> <exports symbol='VIR_ERR_INVALID_STORAGE_VOL' type='enum'/>
...@@ -447,6 +463,15 @@ ...@@ -447,6 +463,15 @@
<info>This macro is to calculate the total number of CPUs supported but not necessary active in the host.</info> <info>This macro is to calculate the total number of CPUs supported but not necessary active in the host.</info>
<arg name='nodeinfo' info='virNodeInfo instance'/> <arg name='nodeinfo' info='virNodeInfo instance'/>
</macro> </macro>
<macro name='VIR_SECURITY_DOI_BUFLEN' file='libvirt'>
<info>Macro providing the maximum length of the virSecurityModel doi string.</info>
</macro>
<macro name='VIR_SECURITY_LABEL_BUFLEN' file='libvirt'>
<info>Macro providing the maximum length of the virSecurityLabel label string. Note that this value is based on that used by Labeled NFS.</info>
</macro>
<macro name='VIR_SECURITY_MODEL_BUFLEN' file='libvirt'>
<info>Macro providing the maximum length of the virSecurityModel model string.</info>
</macro>
<macro name='VIR_UNUSE_CPU' file='libvirt'> <macro name='VIR_UNUSE_CPU' file='libvirt'>
<info>This macro is to be used in conjunction with virDomainPinVcpu() API. USE_CPU macro reset the bit (CPU not usable) of the related cpu in cpumap.</info> <info>This macro is to be used in conjunction with virDomainPinVcpu() API. USE_CPU macro reset the bit (CPU not usable) of the related cpu in cpumap.</info>
<arg name='cpumap' info='pointer to a bit map of real CPUs (in 8-bit bytes) (IN/OUT)'/> <arg name='cpumap' info='pointer to a bit map of real CPUs (in 8-bit bytes) (IN/OUT)'/>
...@@ -538,9 +563,10 @@ ...@@ -538,9 +563,10 @@
<enum name='VIR_ERR_NO_MEMORY' file='virterror' value='2' type='virErrorNumber' info='memory allocation failure'/> <enum name='VIR_ERR_NO_MEMORY' file='virterror' value='2' type='virErrorNumber' info='memory allocation failure'/>
<enum name='VIR_ERR_NO_NAME' file='virterror' value='21' type='virErrorNumber' info='missing domain name information'/> <enum name='VIR_ERR_NO_NAME' file='virterror' value='21' type='virErrorNumber' info='missing domain name information'/>
<enum name='VIR_ERR_NO_NETWORK' file='virterror' value='43' type='virErrorNumber' info='network not found'/> <enum name='VIR_ERR_NO_NETWORK' file='virterror' value='43' type='virErrorNumber' info='network not found'/>
<enum name='VIR_ERR_NO_NODE_DEVICE' file='virterror' value='53' type='virErrorNumber' info=' node device not found'/> <enum name='VIR_ERR_NO_NODE_DEVICE' file='virterror' value='53' type='virErrorNumber' info='node device not found'/>
<enum name='VIR_ERR_NO_OS' file='virterror' value='22' type='virErrorNumber' info='missing domain OS information'/> <enum name='VIR_ERR_NO_OS' file='virterror' value='22' type='virErrorNumber' info='missing domain OS information'/>
<enum name='VIR_ERR_NO_ROOT' file='virterror' value='18' type='virErrorNumber' info='missing root device information'/> <enum name='VIR_ERR_NO_ROOT' file='virterror' value='18' type='virErrorNumber' info='missing root device information'/>
<enum name='VIR_ERR_NO_SECURITY_MODEL' file='virterror' value='54' type='virErrorNumber' info=' security model not found'/>
<enum name='VIR_ERR_NO_SOURCE' file='virterror' value='19' type='virErrorNumber' info='missing source device information'/> <enum name='VIR_ERR_NO_SOURCE' file='virterror' value='19' type='virErrorNumber' info='missing source device information'/>
<enum name='VIR_ERR_NO_STORAGE_POOL' file='virterror' value='49' type='virErrorNumber' info='storage pool not found'/> <enum name='VIR_ERR_NO_STORAGE_POOL' file='virterror' value='49' type='virErrorNumber' info='storage pool not found'/>
<enum name='VIR_ERR_NO_STORAGE_VOL' file='virterror' value='50' type='virErrorNumber' info='storage pool not found'/> <enum name='VIR_ERR_NO_STORAGE_VOL' file='virterror' value='50' type='virErrorNumber' info='storage pool not found'/>
...@@ -582,6 +608,7 @@ ...@@ -582,6 +608,7 @@
<enum name='VIR_FROM_QEMU' file='virterror' value='10' type='virErrorDomain' info='Error at the QEMU daemon'/> <enum name='VIR_FROM_QEMU' file='virterror' value='10' type='virErrorDomain' info='Error at the QEMU daemon'/>
<enum name='VIR_FROM_REMOTE' file='virterror' value='13' type='virErrorDomain' info='Error from remote driver'/> <enum name='VIR_FROM_REMOTE' file='virterror' value='13' type='virErrorDomain' info='Error from remote driver'/>
<enum name='VIR_FROM_RPC' file='virterror' value='7' type='virErrorDomain' info='Error in the XML-RPC code'/> <enum name='VIR_FROM_RPC' file='virterror' value='7' type='virErrorDomain' info='Error in the XML-RPC code'/>
<enum name='VIR_FROM_SECURITY' file='virterror' value='24' type='virErrorDomain' info=' Error from security framework'/>
<enum name='VIR_FROM_SEXPR' file='virterror' value='4' type='virErrorDomain' info='Error in the S-Expression code'/> <enum name='VIR_FROM_SEXPR' file='virterror' value='4' type='virErrorDomain' info='Error in the S-Expression code'/>
<enum name='VIR_FROM_STATS_LINUX' file='virterror' value='16' type='virErrorDomain' info='Error in the Linux Stats code'/> <enum name='VIR_FROM_STATS_LINUX' file='virterror' value='16' type='virErrorDomain' info='Error in the Linux Stats code'/>
<enum name='VIR_FROM_STORAGE' file='virterror' value='18' type='virErrorDomain' info='Error from storage driver'/> <enum name='VIR_FROM_STORAGE' file='virterror' value='18' type='virErrorDomain' info='Error from storage driver'/>
...@@ -591,7 +618,7 @@ ...@@ -591,7 +618,7 @@
<enum name='VIR_FROM_XEND' file='virterror' value='2' type='virErrorDomain' info='Error at connection with xend daemon'/> <enum name='VIR_FROM_XEND' file='virterror' value='2' type='virErrorDomain' info='Error at connection with xend daemon'/>
<enum name='VIR_FROM_XENSTORE' file='virterror' value='3' type='virErrorDomain' info='Error at connection with xen store'/> <enum name='VIR_FROM_XENSTORE' file='virterror' value='3' type='virErrorDomain' info='Error at connection with xen store'/>
<enum name='VIR_FROM_XENXM' file='virterror' value='15' type='virErrorDomain' info='Error at Xen XM layer'/> <enum name='VIR_FROM_XENXM' file='virterror' value='15' type='virErrorDomain' info='Error at Xen XM layer'/>
<enum name='VIR_FROM_XEN_INOTIFY' file='virterror' value='23' type='virErrorDomain' info=' Error from xen inotify layer'/> <enum name='VIR_FROM_XEN_INOTIFY' file='virterror' value='23' type='virErrorDomain' info='Error from xen inotify layer'/>
<enum name='VIR_FROM_XML' file='virterror' value='5' type='virErrorDomain' info='Error in the XML code'/> <enum name='VIR_FROM_XML' file='virterror' value='5' type='virErrorDomain' info='Error in the XML code'/>
<enum name='VIR_MEMORY_VIRTUAL' file='libvirt' value='1' type='virDomainMemoryFlags' info=' addresses are virtual addresses'/> <enum name='VIR_MEMORY_VIRTUAL' file='libvirt' value='1' type='virDomainMemoryFlags' info=' addresses are virtual addresses'/>
<enum name='VIR_MIGRATE_LIVE' file='libvirt' value='1' type='virDomainMigrateFlags' info=' live migration'/> <enum name='VIR_MIGRATE_LIVE' file='libvirt' value='1' type='virDomainMigrateFlags' info=' live migration'/>
...@@ -736,6 +763,14 @@ see note above'/> ...@@ -736,6 +763,14 @@ see note above'/>
<info>a virSchedParameterPtr is a pointer to a virSchedParameter structure.</info> <info>a virSchedParameterPtr is a pointer to a virSchedParameter structure.</info>
</typedef> </typedef>
<typedef name='virSchedParameterType' file='libvirt' type='enum'/> <typedef name='virSchedParameterType' file='libvirt' type='enum'/>
<struct name='virSecurityLabel' file='libvirt' type='struct _virSecurityLabel'/>
<typedef name='virSecurityLabelPtr' file='libvirt' type='virSecurityLabel *'>
<info>a virSecurityLabelPtr is a pointer to a virSecurityLabel.</info>
</typedef>
<struct name='virSecurityModel' file='libvirt' type='struct _virSecurityModel'/>
<typedef name='virSecurityModelPtr' file='libvirt' type='virSecurityModel *'>
<info>a virSecurityModelPtr is a pointer to a virSecurityModel.</info>
</typedef>
<struct name='virStoragePool' file='libvirt' type='struct _virStoragePool'/> <struct name='virStoragePool' file='libvirt' type='struct _virStoragePool'/>
<typedef name='virStoragePoolBuildFlags' file='libvirt' type='enum'/> <typedef name='virStoragePoolBuildFlags' file='libvirt' type='enum'/>
<typedef name='virStoragePoolDeleteFlags' file='libvirt' type='enum'/> <typedef name='virStoragePoolDeleteFlags' file='libvirt' type='enum'/>
...@@ -1100,6 +1135,12 @@ see note above'/> ...@@ -1100,6 +1135,12 @@ see note above'/>
<arg name='domain' type='virDomainPtr' info='pointer to domain object'/> <arg name='domain' type='virDomainPtr' info='pointer to domain object'/>
<arg name='nparams' type='int *' info='number of scheduler parameters(return value)'/> <arg name='nparams' type='int *' info='number of scheduler parameters(return value)'/>
</function> </function>
<function name='virDomainGetSecurityLabel' file='libvirt' module='libvirt'>
<info>Extract security label of an active domain.</info>
<return type='int' info='0 in case of success, -1 in case of failure, and -2 if the operation is not supported (caller decides if that&apos;s an error).'/>
<arg name='domain' type='virDomainPtr' info='a domain object'/>
<arg name='seclabel' type='virSecurityLabelPtr' info='pointer to a virSecurityLabel structure'/>
</function>
<function name='virDomainGetUUID' file='libvirt' module='libvirt'> <function name='virDomainGetUUID' file='libvirt' module='libvirt'>
<info>Get the UUID for a domain</info> <info>Get the UUID for a domain</info>
<return type='int' info='-1 in case of error, 0 in case of success'/> <return type='int' info='-1 in case of error, 0 in case of success'/>
...@@ -1454,6 +1495,11 @@ see note above'/> ...@@ -1454,6 +1495,11 @@ see note above'/>
<return type='int' info='0 in case of success, -1 in case of error'/> <return type='int' info='0 in case of success, -1 in case of error'/>
<arg name='network' type='virNetworkPtr' info='pointer to a defined network'/> <arg name='network' type='virNetworkPtr' info='pointer to a defined network'/>
</function> </function>
<function name='virNodeDeviceDettach' file='libvirt' module='libvirt'>
<info></info>
<return type='int' info=''/>
<arg name='dev' type='virNodeDevicePtr' info=''/>
</function>
<function name='virNodeDeviceFree' file='libvirt' module='libvirt'> <function name='virNodeDeviceFree' file='libvirt' module='libvirt'>
<info>Drops a reference to the node device, freeing it if this was the last reference.</info> <info>Drops a reference to the node device, freeing it if this was the last reference.</info>
<return type='int' info='the 0 for success, -1 for error.'/> <return type='int' info='the 0 for success, -1 for error.'/>
...@@ -1493,11 +1539,21 @@ see note above'/> ...@@ -1493,11 +1539,21 @@ see note above'/>
<return type='int' info='the number of capabilities supported by the device.'/> <return type='int' info='the number of capabilities supported by the device.'/>
<arg name='dev' type='virNodeDevicePtr' info='the device'/> <arg name='dev' type='virNodeDevicePtr' info='the device'/>
</function> </function>
<function name='virNodeDeviceReAttach' file='libvirt' module='libvirt'>
<info>Re-attach a previously dettached node device to the node so that it may be used by the node again. Depending on the hypervisor, this may involve operations such as resetting the device, unbinding it from a dummy device driver and binding it to its appropriate driver. If the device is currently in use by a guest, this method may fail.</info>
<return type='int' info=''/>
<arg name='dev' type='virNodeDevicePtr' info='pointer to the node device'/>
</function>
<function name='virNodeDeviceRef' file='libvirt' module='libvirt'> <function name='virNodeDeviceRef' file='libvirt' module='libvirt'>
<info>Increment the reference count on the dev. For each additional call to this method, there shall be a corresponding call to virNodeDeviceFree to release the reference count, once the caller no longer needs the reference to this object. This method is typically useful for applications where multiple threads are using a connection, and it is required that the connection remain open until all threads have finished using it. ie, each new thread using a dev would increment the reference count.</info> <info>Increment the reference count on the dev. For each additional call to this method, there shall be a corresponding call to virNodeDeviceFree to release the reference count, once the caller no longer needs the reference to this object. This method is typically useful for applications where multiple threads are using a connection, and it is required that the connection remain open until all threads have finished using it. ie, each new thread using a dev would increment the reference count.</info>
<return type='int' info=''/> <return type='int' info=''/>
<arg name='dev' type='virNodeDevicePtr' info=''/> <arg name='dev' type='virNodeDevicePtr' info=''/>
</function> </function>
<function name='virNodeDeviceReset' file='libvirt' module='libvirt'>
<info>Reset a previously dettached node device to the node before or after assigning it to a guest. The exact reset semantics depends on the hypervisor and device type but, for example, KVM will attempt to reset PCI devices with a Function Level Reset, Secondary Bus Reset or a Power Management D-State reset. If the reset will affect other devices which are currently in use, this function may fail.</info>
<return type='int' info=''/>
<arg name='dev' type='virNodeDevicePtr' info='pointer to the node device'/>
</function>
<function name='virNodeGetCellsFreeMemory' file='libvirt' module='libvirt'> <function name='virNodeGetCellsFreeMemory' file='libvirt' module='libvirt'>
<info>This call returns the amount of free memory in one or more NUMA cells. The @freeMems array must be allocated by the caller and will be filled with the amount of free memory in kilobytes for each cell requested, starting with startCell (in freeMems[0]), up to either (startCell + maxCells), or the number of additional cells in the node, whichever is smaller.</info> <info>This call returns the amount of free memory in one or more NUMA cells. The @freeMems array must be allocated by the caller and will be filled with the amount of free memory in kilobytes for each cell requested, starting with startCell (in freeMems[0]), up to either (startCell + maxCells), or the number of additional cells in the node, whichever is smaller.</info>
<return type='int' info='the number of entries filled in freeMems, or -1 in case of error.'/> <return type='int' info='the number of entries filled in freeMems, or -1 in case of error.'/>
...@@ -1517,6 +1573,12 @@ see note above'/> ...@@ -1517,6 +1573,12 @@ see note above'/>
<arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/> <arg name='conn' type='virConnectPtr' info='pointer to the hypervisor connection'/>
<arg name='info' type='virNodeInfoPtr' info='pointer to a virNodeInfo structure allocated by the user'/> <arg name='info' type='virNodeInfoPtr' info='pointer to a virNodeInfo structure allocated by the user'/>
</function> </function>
<function name='virNodeGetSecurityModel' file='libvirt' module='libvirt'>
<info>Extract the security model of a hypervisor.</info>
<return type='int' info='0 in case of success, -1 in case of failure, and -2 if the operation is not supported (caller decides if that&apos;s an error).'/>
<arg name='conn' type='virConnectPtr' info='a connection object'/>
<arg name='secmodel' type='virSecurityModelPtr' info='pointer to a virSecurityModel structure'/>
</function>
<function name='virNodeListDevices' file='libvirt' module='libvirt'> <function name='virNodeListDevices' file='libvirt' module='libvirt'>
<info>Collect the list of node devices, and store their names in @names If the optional &apos;cap&apos; argument is non-NULL, then the count will be restricted to devices with the specified capability</info> <info>Collect the list of node devices, and store their names in @names If the optional &apos;cap&apos; argument is non-NULL, then the count will be restricted to devices with the specified capability</info>
<return type='int' info='the number of node devices found or -1 in case of error'/> <return type='int' info='the number of node devices found or -1 in case of error'/>
......
此差异已折叠。
...@@ -76,6 +76,51 @@ ...@@ -76,6 +76,51 @@
<p>Here is the list of official releases, however since it is early on in the <p>Here is the list of official releases, however since it is early on in the
development of libvirt, it is preferable when possible to just use the <a href="downloads.html">CVS version or snapshot</a>, contact the mailing list development of libvirt, it is preferable when possible to just use the <a href="downloads.html">CVS version or snapshot</a>, contact the mailing list
and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p> and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p>
<h3>0.6.1: Mar 3 2009</h3>
<ul><li>New features: new APIs for Node device detach reattach and reset
(Mark McLoughlin), sVirt mandatory access control support (James
Morris and Dan Walsh)</li><li>Portability: non gcc toolchain (John Levon), gcc-4.4 warnings fixes
(Mark McLoughlin), fix build without LXC and QEmu (Jim Meyering)</li><li>Documentation: man page bugzilla URL (Mark McLoughlin), typo
in domain format (Jesse Farinacci), clock offset fix (Mark
McLoughlin), hostdev description typo (Mark McLoughlin), static
host IP (Charles Duffy), new example program (David Allan)</li><li>Bug fixes: NULL dereference in LXC (Jim Meyering), fix domain
error reporting (John Levon), fix loop of libvirtd --timeout
(Daniel Berrange), limit history to 500 to restrict virsh memory
(Daniel Berrange), wrong lvm volume format check (Cole Robinson),
I/O error in daemon and associated remote acces crash (Daniel
Berrange), fix autostart of session daemon (Daniel Berrange),
restart guest on qemu migration failures (Chris Lalancette),
config parsing leaks (Ryota Ozaki), DBus multithreading activation
to avoid crashes (Daniel Berrange), mark defined network descriptions
as persistent (Cole Robinson), qemu+tls handshake negotiation hang
(Chris Lalancette)</li><li>Improvements: don't hardcode ssh port (Guido Gnther), new test
cases and testing infrastructure (Jim Meyering), improve the
SExpr parser (John Levon), proper error reporting on xend
shutdown command (John Levon), proper handling of errors when
saving QEmu domains state (Guido Gnther), revamp of the internal
error memory APIs (John Levon), better virsh error reporting (John
Levon), more daemon options to allow running multiple daemons (Jim
Meyering), error handling when creating a QEmu domain (Guido Gnther),
fix timeouts in QEmu log reading (Guido Gnther), migration with
xend 3.3 fixes (John Levon), virsh XML dump flags cleanup (Cole
Robinson), fix build with loadable drivers (Maximilian Wilhelm),
internal XML APIs to read long long and hexa values (Mark
McLoughlin), function to parse node device XML descriptions and
associated test (Mark McLoughlin), generate network bridge names if
not provided (Cole Robinson), recognize ejectable media in hostdev
hal driver (Cole Robinson), integration of sVirt (Daniel Berrange)</li><li>Cleanups: printf NULL string checks (John Levon), remove uses of
strerror and use virStrerror (Jim Meyering), remove redundant NULL
assignments (Jim Meyering), QEmu driver logging and exec cleanups
(Jim Meyering), many error handling cleanups (Jim Meyering), XML
module cleanups (Mark McLoughlin), compiler warning (Maximilian
Wilhelm), daemon TCP listen cleanup (Cole Robinson), size_t type
cleanup (Guido Gnther), parallel make fix (Michael Marineau),
storage error diagnostic fix (Ryota Ozaki), remove redundant monitor
watch variable (Cole Robinson), qemu AttachDevice error report
improvement (Cole Robinson), virsh output cleanup (Jim Meyering),
various tests cleanups and improvements (Jim Meyering), fix the
internal export list with new APIs (Daniel Berrange), cleanups on
new APIs for Node device (Daniel Berrange)</li></ul>
<h3>0.6.0: Jan 31 2009</h3> <h3>0.6.0: Jan 31 2009</h3>
<ul><li>New features: thread safety of the API and event handling (Daniel <ul><li>New features: thread safety of the API and event handling (Daniel
Berrange), allow QEmu domains to survive daemon restart (Guido Berrange), allow QEmu domains to survive daemon restart (Guido
......
...@@ -5,6 +5,58 @@ ...@@ -5,6 +5,58 @@
<p>Here is the list of official releases, however since it is early on in the <p>Here is the list of official releases, however since it is early on in the
development of libvirt, it is preferable when possible to just use the <a href="downloads.html">CVS version or snapshot</a>, contact the mailing list development of libvirt, it is preferable when possible to just use the <a href="downloads.html">CVS version or snapshot</a>, contact the mailing list
and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p> and check the <a href="ChangeLog.html">ChangeLog</a> to gauge progress.</p>
<h3>0.6.1: Mar 3 2009</h3>
<ul>
<li>New features: new APIs for Node device detach reattach and reset
(Mark McLoughlin), sVirt mandatory access control support (James
Morris and Dan Walsh)</li>
<li>Portability: non gcc toolchain (John Levon), gcc-4.4 warnings fixes
(Mark McLoughlin), fix build without LXC and QEmu (Jim Meyering)</li>
<li>Documentation: man page bugzilla URL (Mark McLoughlin), typo
in domain format (Jesse Farinacci), clock offset fix (Mark
McLoughlin), hostdev description typo (Mark McLoughlin), static
host IP (Charles Duffy), new example program (David Allan)</li>
<li>Bug fixes: NULL dereference in LXC (Jim Meyering), fix domain
error reporting (John Levon), fix loop of libvirtd --timeout
(Daniel Berrange), limit history to 500 to restrict virsh memory
(Daniel Berrange), wrong lvm volume format check (Cole Robinson),
I/O error in daemon and associated remote acces crash (Daniel
Berrange), fix autostart of session daemon (Daniel Berrange),
restart guest on qemu migration failures (Chris Lalancette),
config parsing leaks (Ryota Ozaki), DBus multithreading activation
to avoid crashes (Daniel Berrange), mark defined network descriptions
as persistent (Cole Robinson), qemu+tls handshake negotiation hang
(Chris Lalancette)</li>
<li>Improvements: don't hardcode ssh port (Guido Günther), new test
cases and testing infrastructure (Jim Meyering), improve the
SExpr parser (John Levon), proper error reporting on xend
shutdown command (John Levon), proper handling of errors when
saving QEmu domains state (Guido Günther), revamp of the internal
error memory APIs (John Levon), better virsh error reporting (John
Levon), more daemon options to allow running multiple daemons (Jim
Meyering), error handling when creating a QEmu domain (Guido Günther),
fix timeouts in QEmu log reading (Guido Günther), migration with
xend 3.3 fixes (John Levon), virsh XML dump flags cleanup (Cole
Robinson), fix build with loadable drivers (Maximilian Wilhelm),
internal XML APIs to read long long and hexa values (Mark
McLoughlin), function to parse node device XML descriptions and
associated test (Mark McLoughlin), generate network bridge names if
not provided (Cole Robinson), recognize ejectable media in hostdev
hal driver (Cole Robinson), integration of sVirt (Daniel Berrange)</li>
<li>Cleanups: printf NULL string checks (John Levon), remove uses of
strerror and use virStrerror (Jim Meyering), remove redundant NULL
assignments (Jim Meyering), QEmu driver logging and exec cleanups
(Jim Meyering), many error handling cleanups (Jim Meyering), XML
module cleanups (Mark McLoughlin), compiler warning (Maximilian
Wilhelm), daemon TCP listen cleanup (Cole Robinson), size_t type
cleanup (Guido Günther), parallel make fix (Michael Marineau),
storage error diagnostic fix (Ryota Ozaki), remove redundant monitor
watch variable (Cole Robinson), qemu AttachDevice error report
improvement (Cole Robinson), virsh output cleanup (Jim Meyering),
various tests cleanups and improvements (Jim Meyering), fix the
internal export list with new APIs (Daniel Berrange), cleanups on
new APIs for Node device (Daniel Berrange)</li>
</ul>
<h3>0.6.0: Jan 31 2009</h3> <h3>0.6.0: Jan 31 2009</h3>
<ul> <ul>
<li>New features: thread safety of the API and event handling (Daniel <li>New features: thread safety of the API and event handling (Daniel
......
...@@ -663,22 +663,6 @@ Blank lines and comments beginning with <code>#</code> are ignored. ...@@ -663,22 +663,6 @@ Blank lines and comments beginning with <code>#</code> are ignored.
after commas between the fields (and this is what we check against), after commas between the fields (and this is what we check against),
but the <code>openssl x509</code> tool shows spaces. but the <code>openssl x509</code> tool shows spaces.
</p> </p>
</td></tr><tr><td> tls_allowed_ip_list ["ip1", "ip2", "ip3"] </td><td> (none - clients can connect from anywhere) </td><td>
<p>
Enable an access control list of the IP addresses of clients
who can connect to the TLS or TCP ports on this server.
</p>
<p>
The default is that clients can connect from any IP address.
</p>
<p>
This list may contain wildcards such as <code>192.168.*</code>
See the POSIX <code>fnmatch</code> function for the format
of the wildcards.
</p>
<p>
Note that if this is an empty list, <i>no client can connect</i>.
</p>
</td></tr></table> </td></tr></table>
<h3> <h3>
<a name="Remote_IPv6" id="Remote_IPv6">IPv6 support</a> <a name="Remote_IPv6" id="Remote_IPv6">IPv6 support</a>
......
...@@ -793,27 +793,6 @@ Blank lines and comments beginning with <code>#</code> are ignored. ...@@ -793,27 +793,6 @@ Blank lines and comments beginning with <code>#</code> are ignored.
</p> </p>
</td> </td>
</tr> </tr>
<tr>
<td> tls_allowed_ip_list ["ip1", "ip2", "ip3"] </td>
<td> (none - clients can connect from anywhere) </td>
<td>
<p>
Enable an access control list of the IP addresses of clients
who can connect to the TLS or TCP ports on this server.
</p>
<p>
The default is that clients can connect from any IP address.
</p>
<p>
This list may contain wildcards such as <code>192.168.*</code>
See the POSIX <code>fnmatch</code> function for the format
of the wildcards.
</p>
<p>
Note that if this is an empty list, <i>no client can connect</i>.
</p>
</td>
</tr>
</table> </table>
<h3> <h3>
<a name="Remote_IPv6" id="Remote_IPv6">IPv6 support</a> <a name="Remote_IPv6" id="Remote_IPv6">IPv6 support</a>
......
...@@ -442,7 +442,7 @@ extern virConnectAuthPtr virConnectAuthPtrDefault; ...@@ -442,7 +442,7 @@ extern virConnectAuthPtr virConnectAuthPtrDefault;
* version * 1,000,000 + minor * 1000 + micro * version * 1,000,000 + minor * 1000 + micro
*/ */
#define LIBVIR_VERSION_NUMBER 6000 #define LIBVIR_VERSION_NUMBER 6001
int virGetVersion (unsigned long *libVer, int virGetVersion (unsigned long *libVer,
const char *type, const char *type,
......
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
%define with_network 0%{!?_without_network:1} %define with_network 0%{!?_without_network:1}
# Xen is available only on i386 x86_64 ia64 # Xen is available only on i386 x86_64 ia64
%ifnarch i386 i686 x86_64 ia64 %ifnarch i386 i586 i686 x86_64 ia64
%define with_xen 0 %define with_xen 0
%endif %endif
...@@ -249,7 +249,9 @@ rm -fr %{buildroot} ...@@ -249,7 +249,9 @@ rm -fr %{buildroot}
%makeinstall %makeinstall
(cd docs/examples ; make clean ; rm -rf .deps Makefile Makefile.in) (cd docs/examples ; make clean ; rm -rf .deps Makefile Makefile.in)
(cd docs/examples/python ; rm -f Makefile Makefile.in) (cd docs/examples/python ; rm -rf .deps Makefile Makefile.in)
(cd examples/hellolibvirt ; make clean ; rm -rf .deps .libs Makefile Makefile.in)
(cd examples/domain-events/events-c ; make clean ;rm -rf .deps .libs Makefile Makefile.in)
rm -f $RPM_BUILD_ROOT%{_libdir}/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/*.la
rm -f $RPM_BUILD_ROOT%{_libdir}/*.a rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la rm -f $RPM_BUILD_ROOT%{_libdir}/python*/site-packages/*.la
...@@ -437,6 +439,7 @@ fi ...@@ -437,6 +439,7 @@ fi
%doc docs/*.html docs/html docs/*.gif %doc docs/*.html docs/html docs/*.gif
%doc docs/examples %doc docs/examples
%doc docs/libvirt-api.xml %doc docs/libvirt-api.xml
%doc examples
%if %{with_python} %if %{with_python}
%files python %files python
......
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册