Bug#488205: Parser is incomplete and buggy

Michael Tautschnig mt at debian.org
Thu Jun 26 23:36:46 UTC 2008


Package: liblinux-lvm-perl
Version: 0.13-2
Severity: grave
Justification: renders package unusable

The attached perl code causes output like the following:

----------------------------------------------------------------------

    Finding volume group "FILE"
Use of uninitialized value in hash element at Linux/LVM.pm line 324.
Use of uninitialized value in hash element at Linux/LVM.pm line 230.
Use of uninitialized value in hash element at Linux/LVM.pm line 231.
Use of uninitialized value in hash element at Linux/LVM.pm line 324.
Use of uninitialized value in hash element at Linux/LVM.pm line 230.
Use of uninitialized value in hash element at Linux/LVM.pm line 231.
Use of uninitialized value in hash element at Linux/LVM.pm line 324.
Use of uninitialized value in hash element at Linux/LVM.pm line 230.
Use of uninitialized value in hash element at Linux/LVM.pm line 231.
$VAR1 = {
          '' => {
                  'status' => 'allocatable',
                  'free_pe' => '40090',
                  'total_pe' => '103090'
                }
        };

----------------------------------------------------------------------

Obtained using the following perl script, doing only parts of what the example
in the man page shows and what should thus be feasible:

----------------------------------------------------------------------
#!/usr/bin/perl -w

use strict;

use Linux::LVM;
use Data::Dumper;

# get the existing volume groups
foreach my $vg (get_volume_group_list()) {
  my %pv_info = get_physical_volume_information($vg);
  print Dumper \%pv_info;
}
----------------------------------------------------------------------

Clearly, the line-by-line parser doesn't work as expected:
- It refers to unset variables repeatedly because the respective value is not
  known _yet_
- My volume group _does_ have a name (FILE), but this is never stored in the
  hash
- The physical volume output is missing the device information

As the sole purpose of this package is taking the burden of parsing the
vgdisplay output off of the user, it becomes useless.

Apparently, a rewrite is planned (see #460604), and I guess the package should
not be part of Lenny unless this happens.

Thanks,
Michael

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-perl-maintainers/attachments/20080627/306cdceb/attachment.pgp 


More information about the pkg-perl-maintainers mailing list