Compare commits
4 Commits
11_0_0-16_
...
11_0_0-20_
Author | SHA1 | Date | |
---|---|---|---|
5c4bf19137 | |||
5b938b2987 | |||
3e5231bf84 | |||
6547750d1e |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -3,3 +3,4 @@
|
||||
*spec-20*
|
||||
*.tar.xz
|
||||
*.bak
|
||||
*gz
|
||||
|
@@ -0,0 +1 @@
|
||||
enabled
|
@@ -1 +0,0 @@
|
||||
system
|
10
root/etc/e-smith/db/accounts/migrate/10primary
Normal file
10
root/etc/e-smith/db/accounts/migrate/10primary
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
# Delete any pre-existing primary=system record (all lower case)
|
||||
my $p = $DB->get('primary');
|
||||
return unless defined $p;
|
||||
|
||||
my $type = $p->prop('type');
|
||||
return unless defined $type;
|
||||
|
||||
$p->delete if $type eq 'system';
|
||||
}
|
@@ -137,7 +137,9 @@ foreach my $member (@groupMembers)
|
||||
# new group to the list. Finally sort, join and run the usermod
|
||||
# function to update the group list for this member.
|
||||
|
||||
my $cmd = "/usr/bin/id -G -n '$member'";
|
||||
#my $cmd = "/usr/bin/id -G -n '$member'";
|
||||
# this will not fail in case of apache aliase before www in passwd
|
||||
my $cmd = "/usr/bin/groups '$member' 2>/dev/null | cut -d' ' -f3- ";
|
||||
my $groups = `$cmd 2>/dev/null`;
|
||||
if ($? != 0)
|
||||
{
|
||||
|
@@ -60,6 +60,6 @@ $result = $ldap->ldapdelgroup($groupName);
|
||||
$result && ( $x = $ldapauth ne 'enabled' ? $x : 255, warn "Failed to delete (ldap) group $groupName.\n" );
|
||||
|
||||
# delete mail spool file
|
||||
unless ($x == 255) { (if -e "/var/spool/mail/$groupName" ) {unlink("/var/spool/mail/$groupName") or ( $x = 255, warn "Failed to delete /var/spool/mail/$groupName.\n" );} }
|
||||
unless ($x == 255) { if ( -e "/var/spool/mail/$groupName" ) {unlink("/var/spool/mail/$groupName") or ( $x = 255, warn "Failed to delete /var/spool/mail/$groupName.\n" );} }
|
||||
|
||||
exit ($x);
|
||||
|
@@ -131,22 +131,22 @@ foreach my $group (@groups)
|
||||
# Get the supplementary group list for the member we are adding or
|
||||
# deleting.
|
||||
#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'";
|
||||
# this will not fail in case of apache before www in passwd
|
||||
my $cmd = "/usr/bin/groups '$member' 2>/dev/null | cut -d' ' -f3- ";
|
||||
my $groups = `$cmd 2>/dev/null`;
|
||||
if ($? != 0)
|
||||
{
|
||||
die "Failed to get supplementary group list for $member.\n";
|
||||
}
|
||||
$groups =~ s/^.*:\s+//;
|
||||
$groups =~ s/^.*:\s+//;
|
||||
chomp ($groups);
|
||||
|
||||
my @groupList = split (/\s+/, $groups);
|
||||
@groupList = grep (!/^$member$/, @groupList);
|
||||
# Apache is an alias for www
|
||||
@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));
|
||||
# www needs to be in shared
|
||||
push(@groupList,'shared') if ( ($member eq 'www') and (! grep{$_ eq 'shared'} @groupList));
|
||||
|
||||
if ($oldMembers{$member})
|
||||
{
|
||||
|
@@ -18,6 +18,15 @@ if (($c->get('EthernetDriver1')->value || 'unknown') eq 'dummy'){
|
||||
if (($c->get('InternalInterface')->prop('NICBonding') || 'disabled') eq 'enabled'){
|
||||
push @adapters, "bond\tbond\t10:00:01:02:03:04\tBonding virtual Interface\tbond0";
|
||||
}
|
||||
# if external VLAN is configured
|
||||
if (($c->get('ExternalInterface')->prop('VLAN') || 'disabled') ne 'disabled'){
|
||||
my $name= ($c->get('ExternalInterface')->prop('Name') eq "ppp0") ? $c->get('pppoe')->prop('PhysicalInterface') : $c->get('ExternalInterface')->prop('Name') ;
|
||||
my $vlan=$c->get('ExternalInterface')->prop('VLAN');
|
||||
$name=~ s/\.$vlan$//;
|
||||
my ($newl) = grep ( /$name$/ , @adapters);
|
||||
push @adapters, "$newl.$vlan";
|
||||
}
|
||||
#TODO if external virtual lan is configured
|
||||
|
||||
# Expand templates for every adapters found
|
||||
foreach my $adapter (@adapters){
|
||||
|
@@ -0,0 +1,10 @@
|
||||
{
|
||||
$is_vlan = "no";
|
||||
if ( ( exists $ExternalInterface{VLAN} && $ExternalInterface{VLAN} =~ /^\d+$/ ) && ($is_external || ( $ExternalInterface{Configuration} eq "pppoe") && $pppoe{PhysicalInterface} eq $THIS_DEVICE ) )
|
||||
{
|
||||
$ifup_this_device = "yes";
|
||||
$is_vlan = "yes";
|
||||
}
|
||||
|
||||
"";
|
||||
}
|
@@ -0,0 +1,4 @@
|
||||
{
|
||||
return unless ($is_vlan eq "yes");
|
||||
$OUT = "VLAN=yes\n";
|
||||
}
|
1
root/etc/modules-load.d/vlan.conf
Normal file
1
root/etc/modules-load.d/vlan.conf
Normal file
@@ -0,0 +1 @@
|
||||
8021q
|
@@ -559,9 +559,37 @@ ETHERNET_EXTERNAL:
|
||||
goto ETHERNET_EXTERNAL;
|
||||
}
|
||||
|
||||
goto ETHERNET_EXTERNAL_VLAN;# was SERVER_GATEWAY_DEDICATED;
|
||||
}
|
||||
#------------------------------------------------------------
|
||||
ETHERNET_EXTERNAL_VLAN:
|
||||
#------------------------------------------------------------
|
||||
{
|
||||
($rc, $choice) = $console->input_page
|
||||
(
|
||||
title => gettext("Select External Interface VLAN"),
|
||||
text =>
|
||||
gettext("Your ISP might have provided you a VLAN to use, if not leave empty."),
|
||||
value => $db->get_prop('ExternalInterface', 'VLAN') || ""
|
||||
);
|
||||
|
||||
goto ETHERNET_EXTERNAL unless ($rc == 0);
|
||||
# sanitize if a previous VLAN is present
|
||||
my $extIF = $db->get_prop('ExternalInterface', 'Name');
|
||||
$extIF =~ s/\.\d+$//;
|
||||
if ( $choice =~ /^\d+$/ )
|
||||
{
|
||||
$db->set_prop('ExternalInterface', 'VLAN', $choice );
|
||||
$db->set_prop('ExternalInterface', 'Name', $extIF . ".$choice") unless $db->get_prop('ExternalInterface', 'Name') =~ /\.$choice$/;
|
||||
}
|
||||
else
|
||||
{
|
||||
$db->delete_prop('ExternalInterface', 'VLAN');
|
||||
$db->set_prop('ExternalInterface', 'Name',$extIF);
|
||||
}
|
||||
|
||||
goto SERVER_GATEWAY_DEDICATED;
|
||||
}
|
||||
|
||||
#------------------------------------------------------------
|
||||
SERVER_GATEWAY_DEDICATED:
|
||||
#------------------------------------------------------------
|
||||
|
@@ -4,7 +4,7 @@ Summary: smeserver server and gateway - base module
|
||||
%define name smeserver-base
|
||||
Name: %{name}
|
||||
%define version 11.0.0
|
||||
%define release 16
|
||||
%define release 20
|
||||
Version: %{version}
|
||||
Release: %{release}%{?dist}
|
||||
License: GPL
|
||||
@@ -184,6 +184,17 @@ fi
|
||||
|
||||
|
||||
%changelog
|
||||
* Thu Jan 02 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-20.sme
|
||||
- Primary default to SSL required and redirect [SME: 12858]
|
||||
- cleanup remove primary=system [SME: 8268]
|
||||
|
||||
* Tue Dec 31 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-19.sme
|
||||
- fix www removed from shared on group creation [SME: 12848]
|
||||
|
||||
* Mon Dec 23 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-18.sme
|
||||
- add vlan support on External Interface [SME: 12677]
|
||||
- fix typo [SME: 12763]
|
||||
|
||||
* Mon Dec 23 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-16.sme
|
||||
- add kernel module support for rp-pppoe plugin [SME: 12678]
|
||||
will allow faster fiber connexion when using multiple queue interface (RSS)
|
||||
|
Reference in New Issue
Block a user