Hello community, here is the log from the commit of package yast2-apparmor for openSUSE:Factory checked in at 2017-11-01 11:08:38 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-apparmor (Old) and /work/SRC/openSUSE:Factory/.yast2-apparmor.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-apparmor" Wed Nov 1 11:08:38 2017 rev:64 rq:537517 version:4.0.1 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-apparmor/yast2-apparmor.changes 2017-09-27 16:53:32.322382449 +0200 +++ /work/SRC/openSUSE:Factory/.yast2-apparmor.new/yast2-apparmor.changes 2017-11-01 11:08:37.415997177 +0100 @@ -1,0 +2,14 @@ +Wed Oct 18 11:11:36 CDT 2017 - [email protected] + +- Remove more perl dependencies (boo#1062656) +- Remove ancient subdomain dependencies (boo#1062656) +- Fix yast-apparmor.spec description +- Fix "New" which renders GetString Dialog (boo#1062653) +- 4.0.1 + +------------------------------------------------------------------- +Tue Sep 30 14:09:45 CDT 2017 - [email protected] + +- Add VStretch() and HStretch() to aa-settings (bsc#1056942) + +------------------------------------------------------------------- Old: ---- yast2-apparmor-4.0.0.tar.bz2 New: ---- yast2-apparmor-4.0.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-apparmor.spec ++++++ --- /var/tmp/diff_new_pack.FTKdrg/_old 2017-11-01 11:08:37.879980229 +0100 +++ /var/tmp/diff_new_pack.FTKdrg/_new 2017-11-01 11:08:37.879980229 +0100 @@ -17,7 +17,7 @@ Name: yast2-apparmor -Version: 4.0.0 +Version: 4.0.1 Release: 0 Summary: YaST2 - Plugins for AppArmor Profile Management License: GPL-2.0 @@ -27,34 +27,16 @@ BuildRequires: update-desktop-files BuildRequires: yast2 BuildRequires: yast2-devtools >= 3.1.10 -Requires: perl-TimeDate Requires: yast2 Requires: yast2-ruby-bindings >= 1.0.0 -Requires: perl(Data::Dumper) -Requires: perl(Encode) -Requires: perl(Getopt::Long) -Requires: perl(Immunix::AppArmor) -Requires: perl(Locale::gettext) -Requires: perl(POSIX) -Requires: perl(ycp) -Obsoletes: yast2-subdomain -Provides: yast2-subdomain BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch -%if 0%{?suse_version} >= 1140 -# openSUSE-11.4 or newer -BuildRequires: perl-macros -%{perl_requires} -%endif %description -Yast2 forms and components for the management of Novell AppArmor +Yast2 forms and components for the management of AppArmor profiles. -This package is part of a suite of tools that used to be named -SubDomain. - %prep %setup -q @@ -66,15 +48,11 @@ %files %defattr(-,root,root) -%{_bindir}/* %{yast_clientdir} %{yast_yncludedir}/apparmor %{yast_libdir}/apparmor %{yast_moduledir} %{yast_desktopdir} -%dir %{_sysconfdir}/apparmor -%config(noreplace) %{_sysconfdir}/apparmor/reports.crontab -%config(noreplace) %{_sysconfdir}/apparmor/reports.conf %doc %{yast_docdir} %changelog ++++++ yast2-apparmor-4.0.0.tar.bz2 -> yast2-apparmor-4.0.1.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/bin/Makefile.am new/yast2-apparmor-4.0.1/bin/Makefile.am --- old/yast2-apparmor-4.0.0/bin/Makefile.am 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/bin/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +0,0 @@ -usrbin_SCRIPTS = \ - reportgen.pl - -usrbindir = /usr/bin/ - -EXTRA_DIST = $(usrbin_SCRIPTS) - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/bin/reportgen.pl new/yast2-apparmor-4.0.1/bin/reportgen.pl --- old/yast2-apparmor-4.0.0/bin/reportgen.pl 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/bin/reportgen.pl 1970-01-01 01:00:00.000000000 +0100 @@ -1,595 +0,0 @@ -#!/usr/bin/perl - -# ------------------------------------------------------------------ -# -# Copyright (C) 2002-2005 Novell/SUSE -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of version 2 of the GNU General Public -# License published by the Free Software Foundation. -# -# ------------------------------------------------------------------ - -################################################################################ -# /usr/bin/reportgen.pl -# -# - Calls Immunix::Reports.pm to write AppArmor events to a specified logfile -# - Expected to be executed by a cron job. -# -# Requires: -# /usr/lib/perl5/site_perl/Immunix::Reports.pm -# -# Input (Optional): -# -Report Name -# -Program Name 'progName' -# -Profile Name 'profile' -# -PID 'pid' -# -Severity 'sevLevel' -# -Denied Resources 'resource' -# -AA Mode 'aamode' -# -Mode 'mode' -# -################################################################################ -use strict; -use Immunix::Reports; -#use POSIX; # causes locale error w/ Exporter -use Locale::gettext; - -#setlocale(LC_MESSAGES, ""); # causes locale error w/ Exporter -textdomain("yast2-apparmor"); - -# Sloppy Global -my $headerFile = "/var/log/apparmor/reports/reportgen.header"; - -# Routines -################################################################################ -sub logMessage { - - my ($msg,$date) = @_; - - if (! $date) { - $date = localtime; - } - - my $msgLog = '/var/log/apparmor/cron-reports.log'; - - if (open (MLOG, ">>$msgLog") ) { - print MLOG "$date - reportgen.pl: $msg\n"; - close MLOG; - } - - return 0; -} - -sub makeHeader { - - my ($repType,$repConf,$filts) = @_; # Filters & Time are only for SIR - - my $header = undef; - my $date = localtime; - my $start = localtime($repConf->{'startTime'}); - - if ( $repType eq 'ess' ) { - - # Write ESS Header in csv format - $header->{'csv'} = gettext("# Executive Security Summary - Generated by AppArmor\n"); - $header->{'csv'} .= sprintf(gettext("# Period: %s to %s\n\n"), $start,$date); - - # Write ESS Header in html format - $header->{'html'} = "<table border='1' cellpadding='2'>\n"; - $header->{'html'} .= gettext("<tr><th colspan='7'>Executive Security - Summary - Generated by AppArmor</th></tr>"); - $header->{'html'} .= sprintf(gettext("<tr><th colspan='7'>Period: %s to - %s</th></tr>\n"), $start, $date); - - } elsif ( $repType eq 'aud' ) { - - # Write AUD Header in csv format - $header->{'csv'} = gettext("# Application Audit Report - Generated - by AppArmor\n"); - $header->{'csv'} .= sprintf(gettext("# Date Run: %s\n\n"), $date); - - # Write AUD Header in html format - $header->{'html'} = gettext("<table border='1' cellpadding='2'><tr><th - colspan='7'>Applications Audit Report - Generated by AppArmor</th></tr>\n"); - - } else { - - # Write SIR Header in csv format - $header->{'csv'} = gettext("# Security Incident Report - Generated by AppArmor\n"); - $header->{'csv'} .= sprintf(gettext("# Period: %s - %s\n"), $start, $date); - - my $count = 0; - - if ( $filts ) { - # We don't want startdate/enddate to be listed as filters - $count = keys(%$filts); - if ($filts->{'startdate'}) { - $filts->{'startdate'} = localtime($filts->{'startdate'}); - $count--; - } - if ($filts->{'enddate'}) { - $filts->{'enddate'} = localtime($filts->{'enddate'}); - $count--; - } - } - - if ( $count > 0 ) { - $header->{'csv'} .= gettext("# The following filters were used for report generation:\n"); - for (sort keys(%$filts)) { - unless ( $filts->{'startdate'} || $filts->{'enddate'} ) { - $header->{'csv'} .= sprintf(gettext("# Filter: %s, Value: %s\n\n"), $_, $filts->{$_}); - } - } - } else { - $header->{'csv'} .= gettext("# No filters were used for report generation:\n\n\n"); - } - - # Write SIR Header in html format - $header->{'html'} = gettext("<h3>Security Incident Report - Generated by AppArmor</h3>\n"); - $header->{'html'} .= sprintf(gettext("<h4>Period: %s - %s</h4>\n"), $start, $date); - - if ( $count > 0 ) { - - $header->{'html'} .= gettext("<h4>The following filters were used for report generation:</h4>"); - - for (sort keys(%$filts)) { - $header->{'html'} .= sprintf(gettext("<p>Filter: %s, Value: %s</p>"), $_, $filts->{$_}); - } - - } else { - $header->{'html'} .= gettext("<h4>No filters were used for report generation.</h4>"); - } - - $header->{'html'} .= "<hr>\n"; - - } - - my $mailHeader = $header->{'csv'}; - $mailHeader =~ s/^#\s*//; - - if ( open (HDR, ">$headerFile") ) { - print HDR "$mailHeader"; - close HDR; - } - - return $header; -} - -# Sets name of new report file to generate -sub getRepFileName { - - my ($hashName,$dir,$repConf) = @_; - my @dirList = (); - - my $plainName = $hashName->{'base'}; - - # Append date info to help id reports - my ($sec,$min,$hour,$mday,$month,$year,@junk) = localtime; - - $year += 1900; - $month += 1; - - $month = sprintf("%02d", $month); - $mday = sprintf("%02d", $mday); - $hour = sprintf("%02d", $hour); - $min = sprintf("%02d", $min); - $sec = sprintf("%02d", $sec); - $mday = sprintf("%02d", $mday); - - my $suffix = "-$year-$month-$mday\_$hour.$min.$sec"; - $plainName = $plainName . $suffix; - my $qtName = "\"$plainName\""; - - if (opendir (DIR, $dir)) { - @dirList = grep(/$qtName/, readdir(DIR) ); - close DIR; - } - my $numReps = scalar(@dirList) + 1; - $numReps = sprintf("%03d", $numReps); - my $newName = undef; - - # Prefix all names w/ .csv -- we'll change to .html later if required - $newName = "$dir/$plainName.$numReps.csv"; - - return $newName; -} - -sub getRepConf { - - my $repName = shift; - - my $repConf = '/etc/apparmor/reports.conf'; - my $tmpConf = '/var/log/apparmor/reports/reports.conf'; - my $config = undef; - my @mailList = (); - my %filts = (); # Report 'record' filters - my $rep = Immunix::Reports::getXmlReport($repName); - - if ( scalar(keys(%$rep)) < 2 ) { - logMessage(sprintf(gettext("Fatal Error: Couldn't get report configuration information %s. Exiting."), $repConf)); - exit 1; - } - - # Clear unnecessary filters - for my $filt (keys %$rep) { - #$rep->{$filt} =~ s/\s+//g; # repname won't be in here, so no spaces - if ( $rep->{$filt} eq "-" || $rep->{$filt} eq 'All' || - $rep->{$filt} eq '*' ) - { - delete($rep->{$filt}); - } - } - - #mark - my $filts = Immunix::Reports::getFilterList($rep); - - # Mail Type - csv, html, or both - if ( $rep->{'csv'} eq '1' && $rep->{'html'} eq '1' ) { - $rep->{'mailType'} = 'both'; - } elsif ( $rep->{'csv'} eq '1' && $rep->{'html'} eq '0' ) { - $rep->{'mailType'} = 'csv'; - } elsif ( $rep->{'csv'} eq '0' && $rep->{'html'} eq '1' ) { - $rep->{'mailType'} = 'html'; - } else { - $rep->{'mailType'} = 'none'; - } - - # Mail Address List - if ( $rep->{'addr1'} ) { push(@mailList,$rep->{'addr1'}); } - if ( $rep->{'addr2'} ) { push(@mailList,$rep->{'addr2'}); } - if ( $rep->{'addr3'} ) { push(@mailList,$rep->{'addr3'}); } - - - $rep->{'startTime'} = $rep->{'time'}; - $rep->{'endTime'} = time; - $rep->{'filters'} = %$filts; # mark ($filts needs to be hash, not hash ref - $rep->{'mailList'} = \@mailList; - - return $rep; - -} - -# Updates last-run time sig. in reports.conf -sub updateConf { - - my ($repName, $repConf) = @_; - my $time = $repConf->{'endTime'}; - - if (! $time) { $time = time; } - - #if ( ref($repName) ) { $repName = $repName->{'base'}; } - - my $repCfFile = '/etc/apparmor/reports.conf'; - my $tmpConf = '/var/log/apparmor/reports/reports.conf'; - - if ( open(OCF, "<$repCfFile") ) { - - if ( open(TCF, ">$tmpConf") ) { - - my $nameFlag = 0; - - while(<OCF>) { - - chomp; - - if ( /\<name\>/ ) { - #my $name = (split(/\"/, $_))[1]; - /\<name\>(.+)\<\/name\>/; - my $name = $1; - if ( $name eq $repName->{'base'} ) { - $nameFlag = 1; - } - } elsif ( $nameFlag == 1 ) { - if ( /\<time\>/ ) { - $_ = "\t<time>$time</time>"; - $nameFlag = 0; - } - } - - print TCF "$_\n"; - } - - close TCF; - - } else { - #logMessage("Error: Couldn't open (tmp) $tmpConf. ESS report execution not tracked."); - logMessage(sprintf(gettext("Error: Couldn't open (tmp) %s. ESS report execution not tracked."), $tmpConf)); - } - - close OCF; - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. ESS report execution not tracked."), $repCfFile)); - } - - if ( -e $repCfFile && -e $tmpConf ) { - Immunix::Reports::updateFiles($repCfFile,$tmpConf); - } - - return 0; - -} - -sub sendMail { - - my ($repName,$repFile,$repConf) = @_; - my $repCfFile = '/etc/apparmor/reports.conf'; - - if (! $repName || ! $repFile) { - logMessage(gettext("Error: Necessary input missing. Unable to generate report and send mail.")); - return 1; - } - - my $baseName = $repName->{'base'}; - - my $host = `hostname -f`; - chomp($host); - - my $toMail = $repConf->{'mailList'}; - my $rec = undef; - - if ( @$toMail > 0 ) { - for (@$toMail) { - if ( $repConf->{'mailType'} ) { - if ( $repConf->{'mailType'} eq 'csv' ) { - #`/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile < /dev/null`; - `/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile < $headerFile`; - } elsif ( $repConf->{'mailType'} eq 'html' ) { - $repFile =~ s/csv/html/; - #`/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile < /dev/null`; - `/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile < $headerFile`; - } elsif ( $repConf->{'mailType'} eq 'both' ) { - my $rep2 = $repFile; - $rep2 =~ s/csv/html/; - #`/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile -a $rep2 < /dev/null`; - `/usr/bin/mail $_ -s $baseName -r "AppArmor_Reporting\@$host" -a $repFile -a $rep2 < $headerFile`; - } - } else { - `/usr/bin/mail $_ -s $repName -r "AppArmor_Reporting\@$host" -a $repFile < $headerFile`; - } - } - } - - return 0; -} - -sub runEss { - - my ($repName,$repConf) = @_; - #my ($repName,$date,$lastRun) = @_; - - my $ref = (); - # getSevStats from ag_reports_ess - my $db = Immunix::Reports::getEssStats($ref); - - my $header = makeHeader('ess',$repConf); - - if ( $repConf->{'startTime'} && $repConf->{'startTime'} > 0 ) { - $ref->{'startdate'} = $repConf->{'startTime'}; - } else { - $ref->{'startdate'} = 1104566401; - } - - # CSV - if ( $repConf->{'mailType'} eq 'csv' || $repConf->{'mailType'} eq 'both' ) { - if ( open(ESS, ">$repName") ) { - - print ESS "$header->{'csv'}"; - - for (@$db) { - $_->{'startdate'} = Immunix::Reports::getDate("$repConf->{'startTime'}"); - $_->{'enddate'} = Immunix::Reports::getDate("$repConf->{'endTime'}"); - print ESS "$_->{'host'},$_->{'startdate'},$_->{'enddate'},"; - print ESS "$_->{'sevHi'},$_->{'sevMean'},$_->{'numRejects'},$_->{'numEvents'}\n"; - } - - close ESS; - - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. No ESS csv report generated."), $repName)); - } - } - - # HTML - if ( $repConf->{'mailType'} eq 'html' || $repConf->{'mailType'} eq 'both' ) { - $repName =~ s/csv/html/; - if ( open(ESS, ">$repName") ) { - - print ESS "<html><body bgcolor='fffeec'><font face='Helvetica,Arial,Sans-Serif'>\n"; - print ESS "$header->{'html'}"; - print ESS gettext("<tr bgcolor='edefff'><td>Hostname</td><td>Start Date</td><td>End Date</td>"); - print ESS gettext("<td>Highest Severity</td><td>Mean Severity</td><td>Number of REJECTs</td>"); - print ESS gettext("<td>Number of Events</td></tr>\n"); - - for (@$db) { - $_->{'startdate'} = Immunix::Reports::getDate("$repConf->{'startTime'}"); - $_->{'enddate'} = Immunix::Reports::getDate("$repConf->{'endTime'}"); - print ESS "<tr><td>$_->{'host'}</td><td>$_->{'startdate'}</td><td>$_->{'enddate'}</td>"; - print ESS "<td>$_->{'sevHi'}</td><td>$_->{'sevMean'}</td><td>$_->{'numRejects'}</td>"; - print ESS "<td>$_->{'numEvents'}</td></tr>\n"; - } - - print ESS "</table><br></body></html>"; - close ESS; - - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. No ESS html report generated."), $repName)); - } - } - - return 0; -} - -sub runAud { - - my ($repName,$repConf) = @_; - my $header = makeHeader('aud',$repConf); - - # CSV - if ( $repConf->{'mailType'} eq 'csv' || $repConf->{'mailType'} eq 'both' ) { - if ( open(AUD, ">$repName") ) { - - my $db = Immunix::Reports::getCfInfo(); - - print AUD "$header->{'csv'}"; - - for (@$db) { - print AUD "$_->{'host'},$_->{'date'},$_->{'prog'}, $_->{'prof'}, $_->{'pid'},"; - if ( $_->{'state'} eq 'confined' ) { - print AUD "$_->{'state'},$_->{'type'}\n"; - } else { - print AUD "$_->{'state'}, - \n"; - } - } - - close AUD; - - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. No AUD report generated."), $repName)); - } - } - - # HTML - if ( $repConf->{'mailType'} eq 'html' || $repConf->{'mailType'} eq 'both' ) { - - $repName =~ s/csv/html/; - if ( open(AUD, ">>$repName") ) { - - my $db = Immunix::Reports::getCfInfo(); - - print AUD "<html><body bgcolor='fffeec'><font face='Helvetica,Arial,Sans-Serif'>\n"; - print AUD gettext("<h3>Applications Audit Report - Generated by AppArmor</h3>\n"); - print AUD "$header->{'html'}"; - print AUD gettext("<tr bgcolor='edefff'><td>Hostname</td><td>Date</td><td>Application</td>"); - print AUD gettext("<td>Profile</td><td>PID</td><td>State</td><td>AppArmor Profile</td></tr>\n"); - - for (@$db) { - print AUD "<tr><td>$_->{'host'}</td><td>$_->{'date'}</td><td>$_->{'prog'}</td><td>$_->{'prof'}</td>"; - if ( $_->{'state'} eq 'confined' ) { - print AUD "<td>$_->{'pid'}</td><td>$_->{'state'}</td><td>$_->{'type'}</td></tr>\n"; - } else { - print AUD "<td>$_->{'pid'}</td><td>$_->{'state'}</td><td align='center'> - </td></tr>\n"; - } - } - - print AUD "<br></table></body></html>\n"; - - close AUD; - - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. No AUD report generated."), $repName)); - } - } - - return 0; -} - -sub runSir { - - my ($repName,$repFile,$repConf) = @_; - - my $filts = Immunix::Reports::setFormFilters($repConf); - $filts = Immunix::Reports::rewriteFilters($filts); - - my $start = '1104566401'; # default start, Jan 1, 2005 - - if ( $repConf->{'startTime'} && $repConf->{'startTime'} > 0 ) { - $start = $repConf->{'startTime'}; - } - - my $db = Immunix::Reports::grabEvents($filts,$start); - - if ($repConf->{'start'} && $repConf->{'start'} > $start ) { - $start = localtime($repConf->{'startTime'}); - } - - my $end = localtime($repConf->{'endTime'}); - - my $header = makeHeader('sir',$repConf,$filts); - - # CSV - if ( $repConf->{'mailType'} =~ /csv/ || $repConf->{'mailType'} =~ /both/ ) { - - if ( open(SIR, ">$repFile") ) { - - #my $ref = getSirFilters($repName); - - # Write Header - print SIR "$header->{'csv'}"; - - #Immunix::Reports::exportFormattedText($repName,$repFile,$db); # Replaced stuff below - - for (@$db) { - print SIR "$_->{'host'},$_->{'time'},$_->{'prog'},$_->{'profile'},"; - print SIR "$_->{'pid'},$_->{'severity'},$_->{'mode_deny'},$_->{'mode_req'},"; - print SIR "$_->{'resource'},$_->{'aamode'},$_->{'op'},$_->{'attr'},"; - print SIR "$_->{'name_alt'},$_->{'parent'},$_->{'active_hat'},"; - print SIR "$_->{'net_family'},$_->{'net_proto'},$_->{'net_socktype'}\n"; - - # old aa-eventd - #print SIR "$_->{'host'},$_->{'date'},$_->{'prog'},$_->{'profile'},$_->{'pid'},"; - #print SIR "$_->{'severity'},$_->{'mode'},$_->{'resource'},$_->{'aamode'}\n"; - } - - close SIR; - - } else { - logMessage(sprintf(gettext("Error: Couldn't open %s. No SIR report generated."), $repFile)); - } - } - - # HTML - if ( $repConf->{'mailType'} =~ /html/ || $repConf->{'mailType'} =~ /both/ ) { - #my $repName = $repConf->{'name'}; - #$repName =~ s/csv/html/; - $repFile =~ s/csv/html/; - - #Immunix::Reports::exportLog($repName,$repFile,$db); - Immunix::Reports::exportLog($repFile,$db,$header->{'html'}); - } - - return 0; -} - -# Main -################################################################################ -if (! $ARGV[0]) { - logMessage(gettext("Error: No arguments passed--Unable to execute reports. Exiting.")); - exit 1; -} - -my $args = undef; -my @dirList = (); -#my $date = localtime; -my $dir = '/var/log/apparmor/reports-archived'; -my $repName = undef; - -$repName->{'base'} = $ARGV[0]; # Report Name -$repName->{'quoted'} = "\"$repName->{'base'}\""; # Quoted Report Name - -logMessage(sprintf(gettext("Executing Scheduled Report: %s"), $repName->{'base'})); - -my $repConf = getRepConf($repName); - -if ( $repConf->{'exportpath'} && -d $repConf->{'exportpath'} ) { - $dir = $repConf->{'exportpath'}; -} - -my $repFile = getRepFileName($repName,$dir,$repConf); - -if ($repName->{'base'} =~ /Executive.Security.Summary/) { - runEss($repFile,$repConf); -} elsif ($repName->{'base'} =~ /Applications.Audit/) { - runAud($repFile,$repConf); -} else { - # Security Incident Report - runSir($repName,$repFile,$repConf); -} - -if ( ! -e $headerFile ) { $headerFile = '/dev/null'; } - -sendMail($repName,$repFile,$repConf); -updateConf($repName,$repConf); - -exit 0; - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/config/Makefile.am new/yast2-apparmor-4.0.1/config/Makefile.am --- old/yast2-apparmor-4.0.0/config/Makefile.am 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/config/Makefile.am 1970-01-01 01:00:00.000000000 +0100 @@ -1,8 +0,0 @@ -etc_DATA = \ - reports.conf \ - reports.crontab - -etcdir = /etc/apparmor - -EXTRA_DIST = $(etc_DATA) - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/config/reports.conf new/yast2-apparmor-4.0.1/config/reports.conf --- old/yast2-apparmor-4.0.0/config/reports.conf 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/config/reports.conf 1970-01-01 01:00:00.000000000 +0100 @@ -1,31 +0,0 @@ -<apparmor> - <report> - <name>Executive.Security.Summary</name> - <exportpath>/var/log/apparmor/reports-archived</exportpath> - <exporttype csv="0" html="0" /> - <email addr1="" addr2="" addr3="" /> - <time>1104566401</time> - </report> - <report> - <name>Applications.Audit</name> - <exportpath>/var/log/apparmor/reports-archived</exportpath> - <exporttype csv="0" html="0"/> - <email addr1="" addr2="" addr3="" /> - <time>1104566401</time> - </report> - <report> - <name>Security.Incident.Report</name> - <exportpath>/var/log/apparmor/reports-archived</exportpath> - <exporttype csv="0" html="0" /> - <prog></prog> - <profile></profile> - <pid></pid> - <resource></resource> - <severity></severity> - <aamode>R</aamode> - <mode></mode> - <email addr1="" addr2="" addr3="" /> - <time>1104566401</time> - </report> -</apparmor> - diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/config/reports.crontab new/yast2-apparmor-4.0.1/config/reports.crontab --- old/yast2-apparmor-4.0.0/config/reports.crontab 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/config/reports.crontab 1970-01-01 01:00:00.000000000 +0100 @@ -1,3 +0,0 @@ -59 23 * * * /usr/bin/reportgen.pl "Executive.Security.Summary" -59 23 * * * /usr/bin/reportgen.pl "Applications.Audit" -59 23 * * * /usr/bin/reportgen.pl "Security.Incident.Report" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/configure.in.in new/yast2-apparmor-4.0.1/configure.in.in --- old/yast2-apparmor-4.0.0/configure.in.in 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/configure.in.in 2017-10-30 11:08:23.084642962 +0100 @@ -4,9 +4,6 @@ @YAST2-INIT-COMMON@ @YAST2-INIT-YCP@ -PERL_VENDORLIB=`perl -V:vendorlib | sed "s!.*='!!;s!'.*!!"` -AC_SUBST(PERL_VENDORLIB) - ## some common checks @YAST2-CHECKS-COMMON@ @YAST2-CHECKS-YCP@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/package/yast2-apparmor.changes new/yast2-apparmor-4.0.1/package/yast2-apparmor.changes --- old/yast2-apparmor-4.0.0/package/yast2-apparmor.changes 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/package/yast2-apparmor.changes 2017-10-30 11:08:23.084642962 +0100 @@ -1,4 +1,18 @@ ------------------------------------------------------------------- +Wed Oct 18 11:11:36 CDT 2017 - [email protected] + +- Remove more perl dependencies (boo#1062656) +- Remove ancient subdomain dependencies (boo#1062656) +- Fix yast-apparmor.spec description +- Fix "New" which renders GetString Dialog (boo#1062653) +- 4.0.1 + +------------------------------------------------------------------- +Tue Sep 30 14:09:45 CDT 2017 - [email protected] + +- Add VStretch() and HStretch() to aa-settings (bsc#1056942) + +------------------------------------------------------------------- Tue Sep 26 14:18:59 UTC 2017 - [email protected] - Propose installation of apparmor packages when they are missing diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/package/yast2-apparmor.spec new/yast2-apparmor-4.0.1/package/yast2-apparmor.spec --- old/yast2-apparmor-4.0.0/package/yast2-apparmor.spec 2017-09-26 16:43:58.480756337 +0200 +++ new/yast2-apparmor-4.0.1/package/yast2-apparmor.spec 2017-10-30 11:08:23.084642962 +0100 @@ -17,7 +17,7 @@ Name: yast2-apparmor -Version: 4.0.0 +Version: 4.0.1 Release: 0 Summary: YaST2 - Plugins for AppArmor Profile Management Url: https://github.com/yast/yast-apparmor @@ -27,34 +27,16 @@ BuildRequires: update-desktop-files BuildRequires: yast2 BuildRequires: yast2-devtools >= 3.1.10 -Requires: perl(Data::Dumper) -Requires: perl(Encode) -Requires: perl(Getopt::Long) -Requires: perl(Immunix::AppArmor) -Requires: perl(Locale::gettext) -Requires: perl(POSIX) -Requires: perl(ycp) -Requires: perl-TimeDate Requires: yast2 Requires: yast2-ruby-bindings >= 1.0.0 -Obsoletes: yast2-subdomain -Provides: yast2-subdomain BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch -%if 0%{?suse_version} >= 1140 -# openSUSE-11.4 or newer -BuildRequires: perl-macros -%{perl_requires} -%endif %description -Yast2 forms and components for the management of Novell AppArmor +Yast2 forms and components for the management of AppArmor profiles. -This package is part of a suite of tools that used to be named -SubDomain. - %prep %setup -q @@ -67,14 +49,10 @@ %files %defattr(-,root,root) -%{_bindir}/* %{yast_clientdir} %{yast_yncludedir}/apparmor %{yast_libdir}/apparmor %{yast_moduledir} %{yast_desktopdir} -%dir %{_sysconfdir}/apparmor -%config(noreplace) %{_sysconfdir}/apparmor/reports.crontab -%config(noreplace) %{_sysconfdir}/apparmor/reports.conf %doc %{yast_docdir} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/src/lib/apparmor/apparmor_ui_dialog.rb new/yast2-apparmor-4.0.1/src/lib/apparmor/apparmor_ui_dialog.rb --- old/yast2-apparmor-4.0.0/src/lib/apparmor/apparmor_ui_dialog.rb 2017-09-26 16:43:58.500756337 +0200 +++ new/yast2-apparmor-4.0.1/src/lib/apparmor/apparmor_ui_dialog.rb 2017-10-30 11:08:23.128642962 +0100 @@ -114,20 +114,23 @@ log.info "Hash map #{hm}" @map = {} @map['dialog'] = 'getstring' + @text = hm['text'] + @default = hm['default'] end def run Yast::UI.OpenDialog( - Opt(:decorate, :defaultsize), + Opt(:decorate), VBox( - Inputfield(Id(:str), @text), + VSpacing(0.3), + InputField(Id(:str), Opt(:hstretch), @text, @default), + VSpacing(0.3), PushButton('&OK') ) ) - str = Yast::UI.QueryWidget(Id(:str), :Value) Yast::UI.UserInput() + @map['response'] = Yast::UI.QueryWidget(Id(:str), :Value) Yast::UI.CloseDialog() - @map['response'] = str @map end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-apparmor-4.0.0/src/lib/apparmor/settings.rb new/yast2-apparmor-4.0.1/src/lib/apparmor/settings.rb --- old/yast2-apparmor-4.0.0/src/lib/apparmor/settings.rb 2017-09-26 16:43:58.500756337 +0200 +++ new/yast2-apparmor-4.0.1/src/lib/apparmor/settings.rb 2017-10-30 11:08:23.128642962 +0100 @@ -57,10 +57,16 @@ Frame( Id(:aaEnableFrame), _('Configure Profiles'), + VBox( + VStretch(), HBox( - Label(_('Configure Profile modes')), - PushButton(Id(:modeconf), _('Configure')) - ) + HStretch(), + Label(_('Configure Profile modes ')), + PushButton(Id(:modeconf), _('Configure')), + HStretch() + ), + VStretch() + ), ), VSpacing(1), HBox(
