Bugzilla (bugzilla.redhat.com) will be under maintenance for infrastructure upgrades and will not be unavailable on July 31st between 12:30 AM - 05:30 AM UTC. We appreciate your understanding and patience. You can follow status.redhat.com for details.
Bug 883775 - list_all_interface and list_all_nwfilters have some problems
Summary: list_all_interface and list_all_nwfilters have some problems
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: perl-Sys-Virt
Version: 6.4
Hardware: x86_64
OS: Linux
medium
high
Target Milestone: rc
: ---
Assignee: Daniel Berrangé
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 886216
TreeView+ depends on / blocked
 
Reported: 2012-12-05 10:10 UTC by weizhang
Modified: 2013-02-21 09:52 UTC (History)
4 users (show)

Fixed In Version: perl-Sys-Virt-0.10.2-5.el6
Doc Type: Bug Fix
Doc Text:
Cause: An incorrect class name was used with the list_all_nwfilters method. Consequence: The objects return from the list_all_nwfilters method could not be used Fix: The object name was fixed Result: The list_all_nwfilters method can now be used.
Clone Of:
: 884382 (view as bug list)
Environment:
Last Closed: 2013-02-21 09:52:38 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:0377 0 normal SHIPPED_LIVE perl-Sys-Virt bug fix and enhancement update 2013-02-20 20:52:18 UTC

Description weizhang 2012-12-05 10:10:48 UTC
Description of problem:
when test list_all_interface and list_all_nwfilters, found that list_all_interface with default flag can not list any host interfaces
and for list_all_nwfilters, seems return the wrong object
Sys::Virt::NWFilters, which should be Sys::Virt::NWFilter without 's'


Version-Release number of selected component (if applicable):
perl-Sys-Virt-0.10.2-4.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
run perl script

#!/usr/bin/perl
use warnings;
use strict;
use Sys::Virt;

my $uri = "qemu:///system";
my $con = Sys::Virt->new(address => $uri, readonly => 0);

my @ifaces = $con->list_all_interfaces();
foreach my $if (@ifaces){
    print "$if\n";
}

my @nwlist = $con->list_all_nwfilters();
foreach my $nw (@nwlist){
    print "$nw\n";
}

  
Actual results:
list_all_interfaces can not list any interfaces
list_all_nwfilters return Sys::Virt::NWFilters but not Sys::Virt::NWFilter

Expected results:
list_all_interfaces with default flag can list interfaces
list_all_nwfilters return Sys::Virt::NWFilter

Additional info:

Comment 1 Daniel Berrangé 2012-12-05 19:40:06 UTC
The issue with list_all_nwfilters is a bug in the Perl binding. The issue with list_all_interfaces appears to be a libvirt bug - please file another BZ for that.

Comment 2 weizhang 2012-12-06 06:39:05 UTC
(In reply to comment #1)
> The issue with list_all_nwfilters is a bug in the Perl binding. The issue
> with list_all_interfaces appears to be a libvirt bug - please file another
> BZ for that.

ok, file a bug for it, bug #884382

Comment 3 weizhang 2012-12-06 09:26:59 UTC
And for list_all_nwfilters doc /usr/share/man/man3/Sys::Virt.3pm.gz

"The $flags parameter can be used to filter the list of returned secrets."

If there is no flag can be set now, please describe here with
"The $flags parameter is currently unused and defaults to zero."

Else, please list filter flag in
/usr/share/man/man3/Sys::Virt::NWFilter.3pm.gz

Comment 4 Daniel Berrangé 2012-12-10 19:51:09 UTC
commit 099adb558dceaa16a3aa903b3052403418cee404
Author: Daniel P. Berrange <berrange@redhat.com>
Date:   Mon Dec 10 16:45:29 2012 +0000

    Fix typo s/Sys::Virt::NWFilters/Sys::Virt::NWFilter/

Comment 5 Daniel Berrangé 2012-12-11 10:58:59 UTC
commit 4ab0cb16158b3ddcdb80418fd9ca423e04cb2f04
Author: Daniel P. Berrange <berrange@redhat.com>
Date:   Tue Dec 11 10:58:39 2012 +0000

    Fix docs for flags param in list_all_nwfilters

Comment 7 weizhang 2012-12-13 12:27:40 UTC
Verify pass on
perl-Sys-Virt-0.10.2-5.el6.x86_64

with script
#!/usr/bin/perl
use warnings;
use strict;
use Sys::Virt;

my $uri = "qemu:///system";
my $con = Sys::Virt->new(address => $uri, readonly => 0);

my @nwlist = $con->list_all_nwfilters();
foreach my $nw (@nwlist){
    my $name = $nw->get_name();
    print "$nw - $name\n";
}

it works well.

The doc change to
my @nwfilters = $vmm->list_all_nwfilters($flags)
           Return a list of all nwfilters currently known to the VMM. The elements in the returned list are instances of the
           Sys::Virt::NWFilter class.  The $flags parameter is currently unused and defaults to zero.

Comment 9 errata-xmlrpc 2013-02-21 09:52:38 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-0377.html


Note You need to log in before you can comment on or make changes to this bug.