* Wed Aug 14 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-12.sme
- fix 3 regressions from SME10 [SME: 12654] fix www missing from shared and few groups [SME: 12146] fix group deletion leaves mail spool file [SME: 12431] fix path to /etc/systemd for seeking service files [SME: 12421]
This commit is contained in:
parent
c5e0b6f5aa
commit
8e4fd3be1e
@ -309,6 +309,7 @@ templates2events("/usr/lib/systemd/system/dhcpd.service.d/50koozali.conf", $even
|
|||||||
event_link("systemd-journald", $event, "02");
|
event_link("systemd-journald", $event, "02");
|
||||||
event_link("fix-startup", $event, "05");
|
event_link("fix-startup", $event, "05");
|
||||||
event_link("init-accounts", $event, "05");
|
event_link("init-accounts", $event, "05");
|
||||||
|
event_link("mail-spool-fix", $event, "05");
|
||||||
event_link("logrotate-migrate", $event, "06");
|
event_link("logrotate-migrate", $event, "06");
|
||||||
event_link("rotate_logfiles", $event, "07");
|
event_link("rotate_logfiles", $event, "07");
|
||||||
event_link("set-hostname", $event, "10");
|
event_link("set-hostname", $event, "10");
|
||||||
|
@ -59,4 +59,7 @@ $result && ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to delete dumm
|
|||||||
$result = $ldap->ldapdelgroup($groupName);
|
$result = $ldap->ldapdelgroup($groupName);
|
||||||
$result && ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to delete (ldap) group $groupName.\n" );
|
$result && ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to delete (ldap) group $groupName.\n" );
|
||||||
|
|
||||||
|
# delete mail spool file
|
||||||
|
unless ($x == 255) { unlink("/var/spool/mail/$groupName") or ( $x = 255, warn "Failed to delete /var/spool/mail/$groupName.\n" );}
|
||||||
|
|
||||||
exit ($x);
|
exit ($x);
|
||||||
|
@ -54,6 +54,11 @@ else
|
|||||||
@groups = $a->groups;
|
@groups = $a->groups;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# fix www missing in shared
|
||||||
|
my ( $name, $passwd, $gid, $members ) = getgrnam('shared');
|
||||||
|
my @mb= split(/ /, $members);
|
||||||
|
system("usermod -a -G shared www") unless ( grep(/^www$/, @mb) ) ;
|
||||||
|
|
||||||
foreach my $group (@groups)
|
foreach my $group (@groups)
|
||||||
{
|
{
|
||||||
my $groupName = $group->key;
|
my $groupName = $group->key;
|
||||||
@ -125,18 +130,23 @@ foreach my $group (@groups)
|
|||||||
# We need to add or remove this member from the group
|
# We need to add or remove this member from the group
|
||||||
# Get the supplementary group list for the member we are adding or
|
# Get the supplementary group list for the member we are adding or
|
||||||
# deleting.
|
# deleting.
|
||||||
my $cmd = "/usr/bin/id -G -n '$member'";
|
#my $cmd = "/usr/bin/id -G -n '$member'";
|
||||||
|
# this will not fail in case of apache before www in passwd
|
||||||
|
my $cmd = "/usr/bin/groups '$member'";
|
||||||
my $groups = `$cmd 2>/dev/null`;
|
my $groups = `$cmd 2>/dev/null`;
|
||||||
if ($? != 0)
|
if ($? != 0)
|
||||||
{
|
{
|
||||||
die "Failed to get supplementary group list for $member.\n";
|
die "Failed to get supplementary group list for $member.\n";
|
||||||
}
|
}
|
||||||
|
$groups =~ s/^.*:\s+//;
|
||||||
chomp ($groups);
|
chomp ($groups);
|
||||||
|
|
||||||
my @groupList = split (/\s+/, $groups);
|
my @groupList = split (/\s+/, $groups);
|
||||||
@groupList = grep (!/^$member$/, @groupList);
|
@groupList = grep (!/^$member$/, @groupList);
|
||||||
# Apache is an alias for www
|
# Apache is an alias for www
|
||||||
@groupList = map { $_ =~ s/^apache$/www/g; $_ } @groupList;
|
@groupList = map { $_ =~ s/^apache$/www/g; $_ } @groupList;
|
||||||
|
# www needs to be in shared
|
||||||
|
push(@groupList,'shared') if ( ($member eq 'www') and (! grep{$_ eq 'shared'} @groupList));
|
||||||
|
|
||||||
if ($oldMembers{$member})
|
if ($oldMembers{$member})
|
||||||
{
|
{
|
||||||
|
@ -105,7 +105,7 @@ foreach my $filen (reverse sort keys %files) {
|
|||||||
my $multiple = $service;
|
my $multiple = $service;
|
||||||
($multiple = $service ) =~ s/([a-zA-Z0-9\-_.]+@)(.*)/$1.service/ if ( $service =~ /@/ );
|
($multiple = $service ) =~ s/([a-zA-Z0-9\-_.]+@)(.*)/$1.service/ if ( $service =~ /@/ );
|
||||||
#print "$stats $service $multiple\n";
|
#print "$stats $service $multiple\n";
|
||||||
next unless ( -e "/usr/lib/systemd/system/$service" or -e "/etc/lib/systemd/system/$service" or -e "/usr/lib/systemd/system/$multiple");
|
next unless ( -e "/usr/lib/systemd/system/$service" or -e "/etc/systemd/system/$service" or -e "/usr/lib/systemd/system/$multiple");
|
||||||
# eliminate duplicates, this way we keep only the last entry of the lowest file as we do it in reverse order of file,
|
# eliminate duplicates, this way we keep only the last entry of the lowest file as we do it in reverse order of file,
|
||||||
# but from top to bottom of file.
|
# but from top to bottom of file.
|
||||||
$services{$service}=$stats;
|
$services{$service}=$stats;
|
||||||
|
@ -11,7 +11,7 @@ foreach my $service ($c->get_all_by_prop(type => 'service')){
|
|||||||
my $multiple = $servicename;
|
my $multiple = $servicename;
|
||||||
($multiple = $servicename ) =~ s/([a-zA-Z0-9\-_.]+@)(.*)/$1.service/ if ( $servicename =~ /@/ );
|
($multiple = $servicename ) =~ s/([a-zA-Z0-9\-_.]+@)(.*)/$1.service/ if ( $servicename =~ /@/ );
|
||||||
|
|
||||||
$OUT .= "# Systemd service file does not exist : " unless -e "/usr/lib/systemd/system/$servicename" || -e "/etc/lib/systemd/system/$servicename" || -e "/usr/lib/systemd/system/$multiple";
|
$OUT .= "# Systemd service file does not exist : " unless -e "/usr/lib/systemd/system/$servicename" || -e "/etc/systemd/system/$servicename" || -e "/usr/lib/systemd/system/$multiple";
|
||||||
$OUT .= "$status $servicename\n";
|
$OUT .= "$status $servicename\n";
|
||||||
$OUT .= "$status $multiple\n" unless $multiple eq $servicename ;
|
$OUT .= "$status $multiple\n" unless $multiple eq $servicename ;
|
||||||
|
|
||||||
|
@ -4,7 +4,7 @@ Summary: smeserver server and gateway - base module
|
|||||||
%define name smeserver-base
|
%define name smeserver-base
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
%define version 11.0.0
|
%define version 11.0.0
|
||||||
%define release 11
|
%define release 12
|
||||||
Version: %{version}
|
Version: %{version}
|
||||||
Release: %{release}%{?dist}
|
Release: %{release}%{?dist}
|
||||||
License: GPL
|
License: GPL
|
||||||
@ -184,6 +184,12 @@ fi
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Aug 14 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-12.sme
|
||||||
|
- fix 3 regressions from SME10 [SME: 12654]
|
||||||
|
fix www missing from shared and few groups [SME: 12146]
|
||||||
|
fix group deletion leaves mail spool file [SME: 12431]
|
||||||
|
fix path to /etc/systemd for seeking service files [SME: 12421]
|
||||||
|
|
||||||
* Tue Aug 13 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-11.sme
|
* Tue Aug 13 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-11.sme
|
||||||
- fix new systemd.log does not fill after log rotate [SME: 12688]
|
- fix new systemd.log does not fill after log rotate [SME: 12688]
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user