Hello community, here is the log from the commit of package yast2-network for openSUSE:Factory checked in at 2018-02-24 16:36:19 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-network (Old) and /work/SRC/openSUSE:Factory/.yast2-network.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-network" Sat Feb 24 16:36:19 2018 rev:379 rq:579489 version:4.0.16 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-network/yast2-network.changes 2018-01-28 00:37:37.374556839 +0100 +++ /work/SRC/openSUSE:Factory/.yast2-network.new/yast2-network.changes 2018-02-24 16:36:20.228019283 +0100 @@ -1,0 +2,13 @@ +Fri Feb 23 11:27:58 UTC 2018 - knut.anders...@suse.com + +- Really translate firewalld zones (bsc#1082246) +- 4.0.16 + +------------------------------------------------------------------- +Wed Feb 14 10:40:04 UTC 2018 - knut.anders...@suse.com + +- Virtualization Bridge Proposal: Do not propose network interfaces + without link as bridgeable (bsc#1062596, bsc#1072951). +- 4.0.15 + +------------------------------------------------------------------- Old: ---- yast2-network-4.0.14.tar.bz2 New: ---- yast2-network-4.0.16.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-network.spec ++++++ --- /var/tmp/diff_new_pack.iUMqse/_old 2018-02-24 16:36:20.995991642 +0100 +++ /var/tmp/diff_new_pack.iUMqse/_new 2018-02-24 16:36:20.995991642 +0100 @@ -17,7 +17,7 @@ Name: yast2-network -Version: 4.0.14 +Version: 4.0.16 Release: 0 BuildArch: noarch ++++++ yast2-network-4.0.14.tar.bz2 -> yast2-network-4.0.16.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/package/yast2-network.changes new/yast2-network-4.0.16/package/yast2-network.changes --- old/yast2-network-4.0.14/package/yast2-network.changes 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/package/yast2-network.changes 2018-02-23 12:45:48.000000000 +0100 @@ -1,4 +1,17 @@ ------------------------------------------------------------------- +Fri Feb 23 11:27:58 UTC 2018 - knut.anders...@suse.com + +- Really translate firewalld zones (bsc#1082246) +- 4.0.16 + +------------------------------------------------------------------- +Wed Feb 14 10:40:04 UTC 2018 - knut.anders...@suse.com + +- Virtualization Bridge Proposal: Do not propose network interfaces + without link as bridgeable (bsc#1062596, bsc#1072951). +- 4.0.15 + +------------------------------------------------------------------- Wed Jan 24 16:03:20 UTC 2018 - mfi...@suse.com - bnc#1056109 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/package/yast2-network.spec new/yast2-network-4.0.16/package/yast2-network.spec --- old/yast2-network-4.0.14/package/yast2-network.spec 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/package/yast2-network.spec 2018-02-23 12:45:48.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package yast2-network # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: yast2-network -Version: 4.0.14 +Version: 4.0.16 Release: 0 BuildArch: noarch diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/src/include/network/lan/address.rb new/yast2-network-4.0.16/src/include/network/lan/address.rb --- old/yast2-network-4.0.14/src/include/network/lan/address.rb 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/src/include/network/lan/address.rb 2018-02-23 12:45:48.000000000 +0100 @@ -1015,39 +1015,11 @@ true end - # If the traffic would be blocked, ask the user - # if he wants to change it - # @param [Hash] event the event being handled - # @return change it? - def NeedToAssignFwZone(event) - event = deep_copy(event) - ret = Ops.get(event, "ID") - if ret == :next - # If firewall is active and interface in no zone, nothing - # gets through (#62309) so warn and redirect to details - name = Convert.to_string(UI.QueryWidget(Id("IFCFGID"), :Value)) - if SuSEFirewall4Network.IsOn && - SuSEFirewall4Network.GetZoneOfInterface(name) == "" && - SuSEFirewall4Network.UnconfiguredIsBlocked - return Popup.YesNoHeadline( - Label.WarningMsg, - _( - "The firewall is active, but this interface is not\n" \ - "in any zone. All its traffic would be blocked.\n" \ - "Assign it to a zone now?" - ) - ) - end - end - false - end - # Validator for network masks adresses # @param [String] key the widget being validated # @param [Hash] event the event being handled # @return whether valid - def ValidateBootproto(_key, event) - event = deep_copy(event) + def ValidateBootproto(_key, _event) if UI.QueryWidget(:bootproto, :CurrentButton) == :static ipa = Convert.to_string(UI.QueryWidget(:ipaddr, :Value)) if ipa != "" && !IP.Check(ipa) @@ -1097,10 +1069,7 @@ end end end - if NeedToAssignFwZone(event) - UI.FakeUserInput("ID" => "t_general") - return false - end + true end @@ -1612,7 +1581,7 @@ zones = [["", _("Automatically Assigned Zone")]] if firewalld.installed? Y2Firewall::Firewalld::Zone.known_zones.map do |name, full_name| - zones << [name, full_name] + zones << [name, Builtins.dgettext("base", full_name)] end else zones = [["", _("Firewall is not installed.")]] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/src/modules/Lan.rb new/yast2-network-4.0.16/src/modules/Lan.rb --- old/yast2-network-4.0.14/src/modules/Lan.rb 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/src/modules/Lan.rb 2018-02-23 12:45:48.000000000 +0100 @@ -960,24 +960,15 @@ # then each configuration (except bridges) move to the bridge # and add old device name into bridge_ports LanItems.Items.each do |current, config| - ifcfg = config["ifcfg"].to_s - bridge_name = format("br%s", NetworkInterfaces.GetFreeDevice("br")) - - if !LanItems.IsBridgeable(bridge_name, current) - log.info "The interface #{ifcfg} is not bridgeable." - next - end - + next unless connected_and_bridgeable?(bridge_name, current, config) LanItems.current = current - - propose_current_item!(config) if !LanItems.IsCurrentConfigured - + # first configure all connected unconfigured devices with dhcp (with default parameters) + next if !LanItems.IsCurrentConfigured && !LanItems.ProposeItem + ifcfg = LanItems.GetCurrentName next unless configure_as_bridge!(ifcfg, bridge_name) - # reconfigure existing device as newly created bridge's port configure_as_bridge_port(ifcfg) - refresh_lan_items end @@ -1131,23 +1122,26 @@ NetworkInterfaces.Commit end - def propose_current_item!(config) - # first configure all connected unconfigured devices with dhcp (with default parameters) - hwinfo = config.fetch("hwinfo", {}) - - if hwinfo.fetch("link", false) == true - log.warn("item number #{LanItems.current} has link:false detected") - + # Convenience method that returns true if the current item has link and can + # be enslabed in a bridge. + # + # @return [Boolean] true if it is bridgeable + def connected_and_bridgeable?(bridge_name, item, config) + if !LanItems.IsBridgeable(bridge_name, item) + log.info "The interface #{config["ifcfg"]} cannot be proposed as bridge." return false end + hwinfo = config.fetch("hwinfo", {}) + unless hwinfo.fetch("link", false) + log.warn("Lan item #{item} has link:false detected") + return false + end if hwinfo.fetch("type", "") == "wlan" - log.warn("not proposing WLAN interface") - + log.warn("Not proposing WLAN interface for lan item: #{item}") return false end - - LanItems.ProposeItem + true end def refresh_lan_items diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/src/modules/SuSEFirewall4Network.rb new/yast2-network-4.0.16/src/modules/SuSEFirewall4Network.rb --- old/yast2-network-4.0.14/src/modules/SuSEFirewall4Network.rb 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/src/modules/SuSEFirewall4Network.rb 2018-02-23 12:45:48.000000000 +0100 @@ -259,12 +259,6 @@ true end - # @return Whether the UI should warn about interfaces - # that are not in any zone - def UnconfiguredIsBlocked - !SuSEFirewall.IsAnyNetworkInterfaceSupported - end - # Function sets that a firewall proposal was changed by user # by editing firewall zone of network interface # (applicable during 2nd stage of installation only) @@ -349,7 +343,6 @@ publish function: :IsProtectedByFirewall, type: "boolean (string)" publish function: :GetZoneOfInterface, type: "string (string)" publish function: :ProtectByFirewall, type: "boolean (string, string, boolean)" - publish function: :UnconfiguredIsBlocked, type: "boolean ()" publish function: :ChangedByUser, type: "void (boolean)" publish function: :IsInstalled, type: "boolean ()" publish function: :SetEnabled1stStage, type: "void (boolean)" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-network-4.0.14/test/lan_test.rb new/yast2-network-4.0.16/test/lan_test.rb --- old/yast2-network-4.0.14/test/lan_test.rb 2018-01-25 10:37:34.000000000 +0100 +++ new/yast2-network-4.0.16/test/lan_test.rb 2018-02-23 12:45:48.000000000 +0100 @@ -337,8 +337,10 @@ before do allow(Yast::NetworkInterfaces).to receive(:GetFreeDevice).with("br").and_return("1") allow(Yast::LanItems).to receive(:IsCurrentConfigured).and_return(true) + allow(Yast::Lan).to receive(:ProposeItem) allow(Yast::Lan).to receive(:configure_as_bridge!) allow(Yast::Lan).to receive(:configure_as_bridge_port) + allow(Yast::Lan).to receive(:refresh_lan_items) allow(Yast::LanItems).to receive(:Items) .and_return( @@ -347,10 +349,10 @@ end context "when an interface is not bridgeable" do - it "doest not propose the interface" do + it "does not propose the interface" do allow(Yast::LanItems).to receive(:IsBridgeable).with(anything, anything).and_return(false) allow(Yast::LanItems).to receive(:IsCurrentConfigured).and_return(false) - expect(Yast::Lan).not_to receive(:propose_current_item!).with("ifcfg" => "wlan0") + expect(Yast::Lan).not_to receive(:ProposeItem) Yast::Lan.ProposeVirtualized end @@ -358,14 +360,24 @@ context "when an interface is bridgeable" do before do - allow(Yast::LanItems).to receive(:IsBridgeable).with(anything, 0).and_return(true) - allow(Yast::LanItems).to receive(:IsBridgeable).with(anything, 1).and_return(false) - allow(Yast::LanItems).to receive(:IsBridgeable).with(anything, 2).and_return(false) + allow(Yast::Lan).to receive(:connected_and_bridgeable?) + .with(anything, 0, anything).and_return(true) + allow(Yast::Lan).to receive(:connected_and_bridgeable?) + .with(anything, 1, anything).and_return(false) + allow(Yast::Lan).to receive(:connected_and_bridgeable?) + .with(anything, 2, anything).and_return(false) + end + + it "does not configure the interface if it is not connected" do + allow(Yast::Lan).to receive(:connected_and_bridgeable?).with(anything).and_return(false) + expect(Yast::Lan).not_to receive(:ProposeItem) + + Yast::Lan.ProposeVirtualized end it "configures the interface with defaults before anything if not configured" do allow(Yast::LanItems).to receive(:IsCurrentConfigured).and_return(false) - expect(Yast::Lan).to receive(:propose_current_item!).with("ifcfg" => "eth0") + expect(Yast::LanItems).to receive(:ProposeItem) Yast::Lan.ProposeVirtualized end