[libvirt] [PATCH] Fix incorrect path length check in sanlock lockspace setup

Eric Blake eblake at redhat.com
Tue Aug 30 16:30:54 UTC 2011


On 08/30/2011 10:25 AM, Daniel P. Berrange wrote:
> The code for creating a sanlock lockspace accidentally used
> SANLK_NAME_LEN instead of SANLK_PATH_LEN for a size check.
> This meant disk paths were limited to 48 bytes !
>
> * src/locking/lock_driver_sanlock.c: Fix disk path length
>    check
> ---
>   src/locking/lock_driver_sanlock.c |    4 ++--
>   1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/locking/lock_driver_sanlock.c b/src/locking/lock_driver_sanlock.c
> index b85f1fa..b93fe01 100644
> --- a/src/locking/lock_driver_sanlock.c
> +++ b/src/locking/lock_driver_sanlock.c
> @@ -159,10 +159,10 @@ static int virLockManagerSanlockSetupLockspace(void)
>       memcpy(ls.name, VIR_LOCK_MANAGER_SANLOCK_AUTO_DISK_LOCKSPACE, SANLK_NAME_LEN);
>       ls.host_id = 0; /* Doesn't matter for initialization */
>       ls.flags = 0;
> -    if (!virStrcpy(ls.host_id_disk.path, path, SANLK_NAME_LEN)) {
> +    if (!virStrcpy(ls.host_id_disk.path, path, SANLK_PATH_LEN)) {
>           virLockError(VIR_ERR_INTERNAL_ERROR,
>                        _("Lockspace path '%s' exceeded %d characters"),
> -                     path, SANLK_NAME_LEN);
> +                     path, SANLK_PATH_LEN);

ACK.

-- 
Eric Blake   eblake at redhat.com    +1-801-349-2682
Libvirt virtualization library http://libvirt.org




More information about the libvir-list mailing list