Compare commits

...

3 Commits

Author SHA1 Message Date
ccd94a71e2 * Thu Mar 06 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-30.sme
- systemd unit for ippp [SME: 12876]
- systemd unit for wan [SME: 12875]
- improve networking service unit [SME: 12541]
2025-03-06 17:14:41 -05:00
33833b4033 * Thu Mar 06 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-30.sme
-  systemd unit for ippp [SME: 12876]
-  systemd unit for wan [SME: 12875]
2025-03-06 17:11:29 -05:00
a3f80cc6fa test 2025-03-05 22:14:37 -05:00
28 changed files with 178 additions and 46 deletions

View File

@@ -45,7 +45,7 @@ foreach (qw(
/etc/diald.conf
/etc/diald.filter
/etc/diald/link
/var/service/ippp/config
/usr/lib/systemd/system/ippp.service.d/50koozali.conf
/etc/ppp/ioptions
))
{

View File

@@ -1,4 +1,3 @@
# dhcpd
:programname, isequal, "dhcpd" /var/log/dhcpd/dhcpd.log
& stop

View File

@@ -0,0 +1,3 @@
# ippp
:programname, isequal, "ippp" /var/log/ippp/ippp.log
& stop

View File

@@ -0,0 +1,3 @@
# wan
:programname, isequal, "wan" /var/log/wan/wan.log
& stop

View File

@@ -0,0 +1,11 @@
[Service]
Environment={
$OUT = 'ppp_options="';
$OUT .= "user $DialupUserAccount name $DialupUserAccount ";
# If you really want to change the options used by ipppd, then
# you can set the IpppdOptions property of the 'isdn' service.
# If you do this, you'd better know what you are doing!
$OUT .= $isdn{'IpppdOptions'} || "noauth debug -vj -vjccomp -bsdcomp -ac -pc";
$OUT .= " noipdefault ipcp-accept-local ipcp-accept-remote";
$OUT .= ' ipparam diald"';
}

View File

@@ -75,15 +75,15 @@ lpd=service|InitscriptOrder|60|status|enabled
mariadb=service|InitscriptOrder|90|status|enabled
masq=service|InitscriptOrder|06|Logging|none|Stealth|no|status|disabled
maxIbayNameLength=2
modSSL=service|status|enabled
modSSL=configuration|status|enabled
mysql.init=service|InitscriptOrder|99|status|enabled
named=service|chroot|yes|status|enabled
network=service|InitscriptOrder|10|status|enabled
ntpd=service|InitscriptOrder|55|status|disabled
php=service|status|enabled
php=configuration|status|enabled
pop3s=service|access|private|status|enabled
popd=service|access|private|status|enabled
pppoe=service|DemandIdleTime|no|InitscriptOrder|57|SynchronousPPP|no|status|disabled
pppoe=configuration|DemandIdleTime|no|InitscriptOrder|57|SynchronousPPP|no|status|disabled
qmail=service|InitscriptOrder|80|status|enabled
random=service|InitscriptOrder|20|status|enabled
scanner=service|ScannerFns|iscan|UpdateTime|1:14|scanMail|yes|status|enabled

View File

@@ -0,0 +1,9 @@
/var/log/ippp/ippp.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}

9
root/etc/logrotate.d/wan Normal file
View File

@@ -0,0 +1,9 @@
/var/log/wan/wan.log {
weekly
rotate 5
copytruncate
compress
notifempty
missingok
}

View File

@@ -11,7 +11,7 @@
# This should run before dialds are started and before any attempt
# is made to reconfigure ippp interfaces differently.
config_file=./config
LocalIP=$(/sbin/e-smith/config get LocalIP|| echo "127.0.0.88")
modprobe hisax
# TODO should check here for failure!!
@@ -55,4 +55,5 @@ ifconfig ippp0 "$LocalIP" \
# where all the traffic is to/from the local
# system. i.e. our reply must go out via the
# diald slip proxy.
exec ipppd ippp0 -detach -hostroute $pppopts
# will be done in main process
exit 0

View File

@@ -1 +0,0 @@
/var/service/ippp

View File

@@ -1 +0,0 @@
/var/service/wan

View File

@@ -0,0 +1,21 @@
[Unit]
Description=Koozali SME Server ippp service for dialup
After=network-pre.target
After=networking.service
Requires=network.target
[Service]
Type=simple
#this needs to be updated in a dropin file
Environment=pppopts="user sme name sme noauth debug -vj -vjccomp -bsdcomp -ac -pc noipdefault ipcp-accept-local ipcp-accept-remote ipparam diald"
ExecStartPre=-/sbin/e-smith/service-status ippp
ExecStartPre=/sbin/e-smith/systemd/ippp-pre
ExecStart=/usr/sbin/ipppd ippp0 -detach -hostroute $pppopts
Restart=always
RestartSec=20s
SyslogIdentifier=ippp
[Install]
WantedBy=sme-server.target

View File

@@ -1,8 +1,11 @@
[Unit]
Description= Network management for Koozali SME Server, using old sysvinit script
After=network-pre.target
Wants=network-online.target
Wants=network.target
Before=network-online.target wan.service
Before=network-online.target
Before=network.target
Before=wan.service
Conflicts=NetworkManager.service
[Service]

View File

@@ -1,16 +1,24 @@
[Unit]
Description=WAN interface for Koozali SME Server
After=network-pre.target networking.service
After=network-pre.target
After=networking.service
Before=network-online.target
PartOf=networking.service
[Service]
Type=oneshot
PermissionsStartOnly=true
WorkingDirectory=/var/service/wan
Type=simple
ExecStartPre=/sbin/e-smith/service-status wan
ExecStart=/usr/bin/sv u /service/wan
ExecStop=/usr/bin/sv stop /service/wan
ExecReload=/usr/bin/sv t /service/wan
ExecStart=/var/service/wan/run
ExecReload=/var/service/wan/run
#run.static will just exit, this might create an infinite loop
#unless set on-failure on-abnormal on-abort on-watchdog
Restart=on-failure
RestartSec=20s
RemainAfterExit=yes
SyslogIdentifier=wan
[Install]
WantedBy=sme-server.target

View File

@@ -1,6 +0,0 @@
#! /bin/sh
exec \
/usr/bin/setuidgid smelog \
/usr/bin/multilog t s5000000 \
/var/log/ippp

View File

@@ -1,7 +0,0 @@
#! /bin/sh
exec \
/usr/bin/setuidgid smelog \
/usr/bin/multilog t s5000000 \
/var/log/wan

View File

@@ -9,4 +9,5 @@ then
fi
echo script run.$config not found - please report this as a bug
sleep 100
#sleep 100
exit 0

View File

@@ -0,0 +1,31 @@
#!/bin/sh
#----------------------------------------------------------------------
# copyright (C) 1999-2006 Mitel Networks Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
#----------------------------------------------------------------------
exec 2>&1
. ./dhclient.config
configfile=/var/lib/dhclient/dhclient-$interface.conf
leasefile=/var/lib/dhclient/dhclient-$interface.leases
export PEERDNS=no
exec /sbin/dhclient -d \
-cf $configfile \
-lf $leasefile \
$interface

View File

@@ -0,0 +1,31 @@
#!/bin/sh
#----------------------------------------------------------------------
# copyright (C) 1999-2006 Mitel Networks Corporation
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
#----------------------------------------------------------------------
exec 2>&1
. ./dhclient.config
configfile=/var/lib/dhclient/dhclient-$interface.conf
leasefile=/var/lib/dhclient/dhclient-$interface.leases
export PEERDNS=no
exec /sbin/dhclient -d \
-cf $configfile \
-lf $leasefile \
$interface

View File

@@ -3,7 +3,8 @@
ISDN=$(/sbin/e-smith/config getprop isdn status)
if [ "$ISDN" = "enabled" ]
then
sv u /service/ippp
# Stop and then start. If the units are not running yet, they will be started.
/usr/bin/systemctl restart ippp
sleep 10
# TODO check here that ISDN device is available!!
fi

View File

@@ -0,0 +1,21 @@
#------------------------------------------------------------
# !!DO NOT MODIFY THIS FILE!!
#
# Manual changes will be lost when this file is regenerated.
#
# Please read the developer's guide, which is available
# at http://www.contribs.org/development/
#
# Copyright (C) 1999-2006 Mitel Networks Corporation
#------------------------------------------------------------
/sbin/ifconfig eth1 up mtu 1500
/sbin/modprobe ppp_generic
/sbin/modprobe ppp_async
/sbin/modprobe ppp_synctty
DEVICE=eth1
# add pppoe module
/sbin/modprobe pppoe
PPPD_MLIMIT=100000000
# PPPOE_TIMEOUT should be about 4*LCP_INTERVAL
PPPOE_TIMEOUT=120

View File

@@ -4,7 +4,7 @@ Summary: smeserver server and gateway - base module
%define name smeserver-base
Name: %{name}
%define version 11.0.0
%define release 29
%define release 30
Version: %{version}
Release: %{release}%{?dist}
License: GPL
@@ -49,10 +49,9 @@ Requires: bash-completion
Requires: smeserver-runit >= 2.6.0-7
Requires: smeserver-php >= 3.0.0-22
Requires: smeserver-yum >= 2.6.0-43
# daemontools bins in use
# daemontools bins in use :
# /var/service/wan/run.pppoe
Requires: /usr/bin/softlimit
Requires: /usr/bin/setuidgid
Requires: /usr/bin/multilog
Obsoletes: nss_ldap < 254
Obsoletes: cpu
Obsoletes: rlinetd, e-smith-mod_ssl
@@ -122,25 +121,13 @@ mkdir -p $RPM_BUILD_ROOT/etc/selinux
--dir /home/e-smith/ssl.crt 'attr(0700,root,root)' \
--dir /home/e-smith/ssl.pem 'attr(0700,root,root)' \
--dir /var/service/wan 'attr(1755,root,root)' \
--file /var/service/wan/down 'attr(0644,root,root)' \
--file /var/service/wan/run 'attr(0750,root,root)' \
--file /var/service/wan/run.dhclient 'attr(0750,root,root)' \
--file /var/service/wan/run.pppoe 'attr(0750,root,root)' \
--file /var/service/wan/run.static 'attr(0750,root,root)' \
--file /var/service/wan/run.dialup 'attr(0750,root,root)' \
--file /var/service/wan/run.disabled 'attr(0750,root,root)' \
--dir /var/service/wan/supervise 'attr(0700,root,root)' \
--dir /var/service/wan/log 'attr(1755,root,root)' \
--file /var/service/wan/log/run 'attr(0750,root,root)' \
--dir /var/service/wan/log/supervise 'attr(0700,root,root)' \
--dir /var/log/wan 'attr(2750,smelog,smelog)' \
--dir /var/service/ippp 'attr(1755,root,root)' \
--file /var/service/ippp/down 'attr(0644,root,root)' \
--file /var/service/ippp/run 'attr(0750,root,root)' \
--dir /var/service/ippp/supervise 'attr(0700,root,root)' \
--dir /var/service/ippp/log 'attr(1755,root,root)' \
--file /var/service/ippp/log/run 'attr(0750,root,root)' \
--dir /var/service/ippp/log/supervise 'attr(0700,root,root)' \
--dir /var/log/ippp 'attr(2750,smelog,smelog)' \
--dir /etc/e-smith/skel/user/.ssh 'attr(0700,root,root)' \
--file /etc/sysconfig/modules/dummy.modules 'attr(0755,root,root)' \
@@ -168,6 +155,9 @@ rm -rf $RPM_BUILD_ROOT
/sbin/e-smith/create-system-user smelastsys 2999 \
'sme last system user marker' /tmp /bin/false
exit 0
%post
LEXICONS=$(find /etc/e-smith/locale/*/etc/e-smith/web/panels/password/cgi-bin/userpassword -type f 2>/dev/null)
@@ -192,6 +182,11 @@ fi
%changelog
* Thu Mar 06 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-30.sme
- systemd unit for ippp [SME: 12876]
- systemd unit for wan [SME: 12875]
- improve networking service unit [SME: 12541]
* Wed Mar 05 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-29.sme
- change key type from service to configuration [SME: 11367]