Bug 883775

Summary: list_all_interface and list_all_nwfilters have some problems
Product: Red Hat Enterprise Linux 6 Reporter: weizhang <weizhan>
Component: perl-Sys-VirtAssignee: Daniel Berrangé <berrange>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: high Docs Contact:
Priority: medium    
Version: 6.4CC: dallan, dyuan, mzhan, rwu
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
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.
Story Points: ---
Clone Of:
: 884382 (view as bug list) Environment:
Last Closed: 2013-02-21 09:52:38 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 886216    

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>
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>
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