Bug 1101510

Summary: no need to require iptables-ipv6
Product: Red Hat Enterprise Linux 7 Reporter: Jiri Popelka <jpopelka>
Component: libvirtAssignee: Ján Tomko <jtomko>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: low Docs Contact:
Priority: unspecified    
Version: 7.0CC: ajia, dyuan, ejhuff, honzhang, jiahu, lsu, mzhan, rbalakri, twoerner
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libvirt-1.2.7-1.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 07:36:21 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:

Description Jiri Popelka 2014-05-27 11:27:06 UTC
libvirt.spec Requires iptables-ipv6.
It's there because previously /sbin/ip6tables was shipped in iptables-ipv6.
Some time ago /sbin/ip6tables has moved into iptables package so the iptables-ipv6 requirement can be safely removed because libvirt requires also iptables.

Moreover because iptables-ipv6 is now provided by iptables-services subpackage (the ip6tables sysV init script moved into iptables-services) that requirement in libvirt pulls in the iptables-services package.

See also bug #1101484, comment #4

Comment 1 Ján Tomko 2014-07-08 11:35:36 UTC
Proposed upstream patch dropping the iptables-ipv6 requirement on Fedora >= 17 and RHEL >= 7:
https://www.redhat.com/archives/libvir-list/2014-July/msg00371.html

Comment 2 Ján Tomko 2014-07-08 13:34:32 UTC
Now pushed:
commit 66e706121045b965c7c469aebc28c6f258577cd4
Author:     Ján Tomko <jtomko>
CommitDate: 2014-07-08 15:29:46 +0200

    Don't require iptables-ipv6 on >= F17 and RHEL >= 7
    
    We only need ip6tables, which is now a part of the iptables package:
    http://pkgs.fedoraproject.org/cgit/iptables.git/commit/?h=1392835
    
    This needlessly pulls in iptables-services:
    https://bugzilla.redhat.com/show_bug.cgi?id=1101510
    which can conflict with firewalld:
    https://bugzilla.redhat.com/show_bug.cgi?id=1101484

git describe: v1.2.6-77-g66e7061

Comment 4 Edward J. Huff 2014-08-29 19:57:19 UTC
Related:  In F20, when you press the windows key and type "firew", two firewall icons come up.  This can be fixed without removing other packages you don't want to remove only by going outside of yum and using rpm -e --nodeps iptables-services .

When this patch is approved and released to F20, how will iptables-services get removed for those who did not explicitly install it, and not get removed for those who did?

Comment 5 Ján Tomko 2014-09-02 15:24:45 UTC
This patch is not planned for F20. Are you experiencing the issues from bug 1101484 on F20?

Yum does not clean up old dependencies by default, I think the "clean_requirements_on_remove" option in yum.conf can do that.

Comment 6 Hu Jianwei 2014-11-26 06:56:26 UTC
Verify as below

Tested build:
libvirt-1.2.8-7.el7.src.rpm

<1> Download libvirt-1.2.8-7.el7.src.rpm on rhel6.6, after installing, the code lines have been integrated.
[root@ibm-x3850x5-06 rpmbuild]# pwd
/root/rpmbuild
[root@hp-dl385g7-09 rpmbuild]# cat SPECS/libvirt.spec | grep iptables-ipv6 -b3
31184-BuildRequires: dnsmasq >= 2.41
31215-BuildRequires: iptables
31239-    %if (0%{?fedora} && 0%{?fedora} < 17) || (0%{?rhel} && 0%{?rhel} < 7)
31313:BuildRequires: iptables-ipv6
31342-    %endif
31353-BuildRequires: radvd
31374-%endif
--
37475-Requires: radvd
37491-Requires: iptables
37510-            %if (0%{?fedora} && 0%{?fedora} < 17) || (0%{?rhel} && 0%{?rhel} < 7)
37592:Requires: iptables-ipv6
37616-            %endif
37635-
37636-%description daemon-driver-network
--
37978-Requires: libvirt-daemon = %{version}-%{release}
38027-Requires: iptables
38046-            %if (0%{?fedora} && 0%{?fedora} < 17) || (0%{?rhel} && 0%{?rhel} < 7)
38128:Requires: iptables-ipv6
38152-            %endif
38171-Requires: ebtables
38190-

<2>Rebuild package on rhel6.6, the missing iptables-ipv6 will be listed in dependencies list.
[root@hp-dl385g7-09 rpmbuild]# uname -r
2.6.32-504.4.1.el6.x86_64
[root@hp-dl385g7-09 rpmbuild]# rpm -qa | grep iptables
iptables-1.4.7-14.el6.x86_64
[root@hp-dl385g7-09 rpmbuild]# rpmbuild -bp SPECS/libvirt.spec 
error: Failed build dependencies:
	autoconf is needed by libvirt-1.2.8-7.el6.x86_64
	automake is needed by libvirt-1.2.8-7.el6.x86_64
...
	iptables-ipv6 is needed by libvirt-1.2.8-7.el6.x86_64
...
	systemtap-sdt-devel is needed by libvirt-1.2.8-7.el6.x86_64
	scrub is needed by libvirt-1.2.8-7.el6.x86_64

<3>Rebuild package on rhel7.1, can pass the dependencies checking.
[root@ibm-x3850x5-06 rpmbuild]# uname -r
3.10.0-196.el7.x86_64

[root@ibm-x3850x5-06 rpmbuild]# rpm -qa | grep iptables
iptables-services-1.4.21-13.el7.x86_64
iptables-1.4.21-13.el7.x86_64

[root@ibm-x3850x5-06 rpmbuild]# rpmbuild -bp SPECS/libvirt.spec 
Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.Awp9sK
+ umask 022
+ cd /root/rpmbuild/BUILD
+ cd /root/rpmbuild/BUILD
+ rm -rf libvirt-1.2.8
+ /usr/bin/gzip -dc /root/rpmbuild/SOURCES/libvirt-1.2.8.tar.gz
+ /usr/bin/tar -xf -
+ STATUS=0
+ '[' 0 -ne 0 ']'
+ cd libvirt-1.2.8
+ /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w .
+ PATCHCOUNT=217
+ PATCHLIST=/tmp/lua_XQUBfS
+ git init -q
+ git config user.name rpm-build
+ git config user.email rpm-build
+ git config gc.auto 0
+ git add .
+ git commit -q -a --author 'rpm-build <rpm-build>' -m 'libvirt-1.2.8 base'
++ grep '\.patch$' /tmp/lua_XQUBfS
++ wc -l
+ COUNT=217
+ '[' 217 -ne 217 ']'
+ '[' 217 -gt 0 ']'
+ xargs git am
Applying: RHEL: screenshot: Implement multiple screen support
...

We can get expected results, move to Verified.

Comment 8 errata-xmlrpc 2015-03-05 07:36:21 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.

https://rhn.redhat.com/errata/RHSA-2015-0323.html