Hello community, here is the log from the commit of package yast2-firewall for openSUSE:Factory checked in at 2019-01-10 15:16:02 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-firewall (Old) and /work/SRC/openSUSE:Factory/.yast2-firewall.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "yast2-firewall" Thu Jan 10 15:16:02 2019 rev:73 rq:663874 version:4.1.5 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-firewall/yast2-firewall.changes 2019-01-05 14:40:31.388573715 +0100 +++ /work/SRC/openSUSE:Factory/.yast2-firewall.new.28833/yast2-firewall.changes 2019-01-10 15:16:04.914762208 +0100 @@ -1,0 +2,15 @@ +Tue Jan 8 13:22:25 CET 2019 - schubi@suse.de + +- Restart running firewalld service if data has been changed. + (bsc#1114673) +- 4.1.5 + +------------------------------------------------------------------- +Tue Jan 8 08:53:09 UTC 2019 - knut.anderssen@suse.com + +- AutoYast schema: + - Allowed the new 'forward_ports', 'rich_rules' and + 'source_ports' elements in zone entries (bsc#1108199) +- 4.1.4 + +------------------------------------------------------------------- Old: ---- yast2-firewall-4.1.3.tar.bz2 New: ---- yast2-firewall-4.1.5.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-firewall.spec ++++++ --- /var/tmp/diff_new_pack.udopg5/_old 2019-01-10 15:16:05.538761611 +0100 +++ /var/tmp/diff_new_pack.udopg5/_new 2019-01-10 15:16:05.542761607 +0100 @@ -17,7 +17,7 @@ Name: yast2-firewall -Version: 4.1.3 +Version: 4.1.5 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ yast2-firewall-4.1.3.tar.bz2 -> yast2-firewall-4.1.5.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firewall-4.1.3/package/yast2-firewall.changes new/yast2-firewall-4.1.5/package/yast2-firewall.changes --- old/yast2-firewall-4.1.3/package/yast2-firewall.changes 2019-01-02 10:52:29.000000000 +0100 +++ new/yast2-firewall-4.1.5/package/yast2-firewall.changes 2019-01-08 16:34:03.000000000 +0100 @@ -1,4 +1,19 @@ ------------------------------------------------------------------- +Tue Jan 8 13:22:25 CET 2019 - schubi@suse.de + +- Restart running firewalld service if data has been changed. + (bsc#1114673) +- 4.1.5 + +------------------------------------------------------------------- +Tue Jan 8 08:53:09 UTC 2019 - knut.anderssen@suse.com + +- AutoYast schema: + - Allowed the new 'forward_ports', 'rich_rules' and + 'source_ports' elements in zone entries (bsc#1108199) +- 4.1.4 + +------------------------------------------------------------------- Thu Dec 20 11:19:51 UTC 2018 - knut.anderssen@suse.com - Startup dialog: Replace the old UI::ServiceStatus by the new diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firewall-4.1.3/package/yast2-firewall.spec new/yast2-firewall-4.1.5/package/yast2-firewall.spec --- old/yast2-firewall-4.1.3/package/yast2-firewall.spec 2019-01-02 10:52:29.000000000 +0100 +++ new/yast2-firewall-4.1.5/package/yast2-firewall.spec 2019-01-08 16:34:03.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-firewall -Version: 4.1.3 +Version: 4.1.5 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firewall-4.1.3/src/autoyast-rnc/firewall.rnc new/yast2-firewall-4.1.5/src/autoyast-rnc/firewall.rnc --- old/yast2-firewall-4.1.3/src/autoyast-rnc/firewall.rnc 2019-01-02 10:52:29.000000000 +0100 +++ new/yast2-firewall-4.1.5/src/autoyast-rnc/firewall.rnc 2019-01-08 16:34:03.000000000 +0100 @@ -129,10 +129,13 @@ zone_short? & zone_description? & zone_target? & + fwd_forward_ports? & fwd_interfaces? & - fwd_services? & fwd_ports? & fwd_protocols? & + fwd_rich_rules? & + fwd_services? & + fwd_source_ports? & fwd_sources? & masquerade? }* @@ -168,6 +171,24 @@ element (source | listentry) {text}* } +fwd_rich_rules = + element rich_rules { + LIST, + element (rich_rule | litentry) {text}* + } + +fwd_source_ports = + element source_ports { + LIST, + element (souce_port | litentry) {text}* + } + +fwd_forward_ports = + element forward_ports { + LIST, + element (forward_port | litentry) {text}* + } + zone_name = element name { text } zone_short = element short { text } zone_description = element description { text } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firewall-4.1.3/src/lib/y2firewall/dialogs/main.rb new/yast2-firewall-4.1.5/src/lib/y2firewall/dialogs/main.rb --- old/yast2-firewall-4.1.3/src/lib/y2firewall/dialogs/main.rb 2019-01-02 10:52:29.000000000 +0100 +++ new/yast2-firewall-4.1.5/src/lib/y2firewall/dialogs/main.rb 2019-01-08 16:34:03.000000000 +0100 @@ -130,6 +130,17 @@ # modifications def apply_changes return false if Yast::Mode.config + # Firewall settings will be written into the permanent configurations only. + # So the running firewalld service will not be changed. Even a reload does + # not help (see man pages). So the running firewalld service has to be + # restarted. + # Set a flag only. Restarting will be done by system_service.save. + if fw.modified? && # Data has been changed by user + fw.system_service.running? && # The service is already running + fw.system_service.action != :stop # and will not be stopped by the user + fw.system_service.restart + end + fw.write_only fw.system_service.save end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-firewall-4.1.3/test/lib/y2firewall/dialogs/main_test.rb new/yast2-firewall-4.1.5/test/lib/y2firewall/dialogs/main_test.rb --- old/yast2-firewall-4.1.3/test/lib/y2firewall/dialogs/main_test.rb 2019-01-02 10:52:29.000000000 +0100 +++ new/yast2-firewall-4.1.5/test/lib/y2firewall/dialogs/main_test.rb 2019-01-08 16:34:03.000000000 +0100 @@ -54,11 +54,19 @@ describe "#run" do let(:result) { :next } - let(:firewall_service) { instance_double("Yast2::SystemService", save: true) } + let(:action) { nil } + let(:firewall_service) do + instance_double("Yast2::SystemService", + save: true, + running?: true, + restart: nil, + action: action) + end before do allow_any_instance_of(CWM::Dialog).to receive(:run).and_return(result) allow(firewall).to receive(:system_service).and_return(firewall_service) + allow(firewall).to receive(:modified?).and_return(true) end context "when the user accepts the changes" do @@ -74,6 +82,26 @@ subject.run end + context "user has not changed the service running state" do + let(:action) { nil } + + it "restart the running firewalld systemd service" do + expect(firewall.system_service).to receive(:restart) + + subject.run + end + end + + context "service has been stopped by the user" do + let(:action) { :stop } + + it "do not restart the running firewalld systemd service" do + expect(firewall.system_service).to_not receive(:restart) + + subject.run + end + end + it "returns :next" do expect(subject.run).to eql(:next) end