[libvirt] [libvirt-php] Add libvirt_storagepool_build() function
Michal Novotny
minovotn at redhat.com
Wed Apr 20 08:52:18 UTC 2011
On 04/20/2011 04:33 AM, Lyre wrote:
> also add flags for this function, currently not used.
> ---
> src/libvirt-php.c | 31 +++++++++++++++++++++++++++++++
> src/libvirt-php.h | 1 +
> 2 files changed, 32 insertions(+), 0 deletions(-)
>
> diff --git a/src/libvirt-php.c b/src/libvirt-php.c
> index d436e1c..54331bb 100644
> --- a/src/libvirt-php.c
> +++ b/src/libvirt-php.c
> @@ -129,6 +129,7 @@ static function_entry libvirt_functions[] = {
> PHP_FE(libvirt_storagepool_refresh, NULL)
> PHP_FE(libvirt_storagepool_set_autostart, NULL)
> PHP_FE(libvirt_storagepool_get_autostart, NULL)
> + PHP_FE(libvirt_storagepool_build, NULL)
> /* Network functions */
> PHP_FE(libvirt_network_define_xml, NULL)
> PHP_FE(libvirt_network_undefine, NULL)
> @@ -542,6 +543,13 @@ PHP_MINIT_FUNCTION(libvirt)
> /* Forcibly modify device (ex. force eject a cdrom) */
> REGISTER_LONG_CONSTANT("VIR_DOMAIN_DEVICE_MODIFY_FORCE", 4, CONST_CS | CONST_PERSISTENT);
>
> + /* REGISTER_LONG_CONSTANT */
> + REGISTER_LONG_CONSTANT("VIR_STORAGE_POOL_BUILD_NEW", 0, CONST_CS | CONST_PERSISTENT);
> + /* Repair / reinitialize */
> + REGISTER_LONG_CONSTANT("VIR_STORAGE_POOL_BUILD_REPAIR", 1, CONST_CS | CONST_PERSISTENT);
> + /* Extend existing pool */
> + REGISTER_LONG_CONSTANT("VIR_STORAGE_POOL_BUILD_RESIZE", 2, CONST_CS | CONST_PERSISTENT);
> +
> REGISTER_INI_ENTRIES();
>
> /* Initialize libvirt and set up error callback */
> @@ -3582,6 +3590,29 @@ PHP_FUNCTION(libvirt_storagepool_get_autostart)
> }
> }
>
> +/*
> + Function name: libvirt_storagepool_build
> + Since version: 0.4.2
> + Description: Function is used to Build the underlying storage pool, e.g. create the destination directory for NFS
> + Arguments: @res [resource]: libvirt storagepool resource
> + Returns: TRUE if success, FALSE on error
> +*/
> +PHP_FUNCTION(libvirt_storagepool_build)
> +{
> + php_libvirt_storagepool *pool = NULL;
> + zval *zpool;
> + int flags = 0;
> +
> + GET_STORAGEPOOL_FROM_ARGS ("r", &zpool);
> +
> + if (virStoragePoolBuild (pool->pool, flags) == 0)
> + {
> + RETURN_TRUE;
> + }
> +
> + RETURN_FALSE;
> +}
> +
> /* Listing functions */
> /*
> Function name: libvirt_list_storagepools
> diff --git a/src/libvirt-php.h b/src/libvirt-php.h
> index 4e8dec6..2d79f60 100644
> --- a/src/libvirt-php.h
> +++ b/src/libvirt-php.h
> @@ -193,6 +193,7 @@ PHP_FUNCTION(libvirt_storagepool_get_volume_count);
> PHP_FUNCTION(libvirt_storagepool_refresh);
> PHP_FUNCTION(libvirt_storagepool_set_autostart);
> PHP_FUNCTION(libvirt_storagepool_get_autostart);
> +PHP_FUNCTION(libvirt_storagepool_build);
> /* Network functions */
> PHP_FUNCTION(libvirt_network_define_xml);
> PHP_FUNCTION(libvirt_network_undefine);
Thanks a lot for your patch Lyre! I've never used this function in
libvirt so based on this I never implemented it. Honestly, I rarely use
storage pools. It's already been pushed into the repo however ;-)
Thanks,
Michal
--
Michal Novotny <minovotn at redhat.com>, RHCE
Virtualization Team (xen userspace), Red Hat
More information about the libvir-list
mailing list