summarylogtreecommitdiffstats
path: root/0000c-advman.systemd.patch
diff options
context:
space:
mode:
Diffstat (limited to '0000c-advman.systemd.patch')
-rw-r--r--0000c-advman.systemd.patch203
1 files changed, 203 insertions, 0 deletions
diff --git a/0000c-advman.systemd.patch b/0000c-advman.systemd.patch
new file mode 100644
index 000000000000..4b0fd62363cd
--- /dev/null
+++ b/0000c-advman.systemd.patch
@@ -0,0 +1,203 @@
+diff -pNaru10 a/script/advman b/script/advman
+--- a/script/advman 2023-01-04 00:01:44.519381965 -0500
++++ b/script/advman 2023-01-04 00:05:51.579295372 -0500
+@@ -1,134 +1,35 @@
+ #!/bin/bash
+
+ set -u
+ if [ "${EUID}" -ne 0 ]; then
+ echo "Must be root"
+ exit 1
+ fi
+
+-COMMAND=0
+-SCRIPT=$0
+-INSTALLPATH=/usr/share/advtty
+-DEAMON=advttyd
+-SERVICE=vcomd
+-DRIVER=advvcom
+-CONFIGFILE=/etc/advttyd.conf
+-DEAMONFILE=$INSTALLPATH/$DEAMON
+-#DKMSFILE=/lib/modules/$(uname -r)/updates/dkms/$DRIVER.ko
+-#KERNEL=$(uname -r|cut -c1-3)
+-if false # [ $KERNEL = "2.4" ]
+-then
+-DRIVERFILE=$INSTALLPATH/$DRIVER.o
+-else
+-DRIVERFILE=$DRIVER
+-fi
+-
+-RETURN=
+ OBJECTIVE=
+
+-hasdriver()
+-{
+- COUNT=$(lsmod | grep $DRIVER -c)
+- if [ $COUNT -gt 0 ]
+- then
+- echo "kernel moduel $DRIVER.ko detected..."
+- RETURN=1
+- else
+- echo "kernel moduel $DRIVER.ko not installed... try objective \"insert\" first"
+- RETURN=0
+- fi
+-}
+-
+-insdriver()
+-{
+- if false # [ $KERNEL = "2.4" ]
+- then
+- echo "inserting kernel moduel $DRIVER.o ..."
+- modprobe $DRIVERFILE
+- elif [ -e $DRIVERFILE ]
+- then
+- echo "inserting kernel module $DRIVER.ko ..."
+- modprobe $DRIVERFILE
+- else
+- echo "inserting DKMS moduel $DRIVER ..."
+- modprobe $DRIVER
+- fi
+-}
+-
+-rmdriver()
+-{
+- if false # [ $KERNEL = "2.4" ]
+- then
+- echo "removing kernel moduel $DRIVER..."
+- rmmod $DRIVER
+- else
+- echo "removing kernel moduel $DRIVER.ko..."
+- rmmod $DRIVER.ko
+- fi
+-}
+-
+-stopService()
+-{
+- echo "stoping all local services..."
+- killall -s 9 $SERVICE
+-}
+-
+-startDeamon()
+-{
+- # for 2.4.x kernel, we should make node by myself
+- if false # [ $KERNEL = "2.4" ]
+- then
+- i=1
+- while [[ $i -le 256 ]]
+- do
+- if [ -z $(awk '$2=="vttyAP"{print $1}' /proc/devices) ]
+- then
+- mknod /dev/vttyAP$i c $(awk '$2=="vttyap/%d"{print $1}' /proc/devices) $i
+- else
+- mknod /dev/vttyAP$i c $(awk '$2=="vttyAP"{print $1}' /proc/devices) $i
+- fi
+- ((i = i + 1))
+- done
+- fi
+- echo "invoking local deamon..."
+- install -m 700 -oroot -groot -d /tmp/advmon
+- $DEAMONFILE -d -w ${INSTALLPATH}
+-
+-}
+-
+-stopDeamon()
+-{
+-# killall -s 9 $DEAMON
+- if false # [ $KERNEL = "2.4" ]
+- then
+- rm -rf /dev/vttyAP*
+- fi
+-
+-}
+-
+-
+ usage()
+ {
+ cat << EOF
+ usage: $0 options
+
+ This script lists helps you manage local advtty service.
+
+ OPTIONS:
+ -h Show this message
+ -o Execute objective:
+ start - start advtty local service
+ stop - stop advtty local service
+ restart - restart advtty local service
+- insert - insert $DRIVER.ko module
+- remove - remove $DRIVER.ko module
++ insert - insert module
++ remove - remove module
+
+ Example:
+ $0 -o start
+ $0 -o restart
+ $0 -o stop
+
+ EOF
+ }
+
+ while getopts 'ho:' OPTION
+@@ -143,57 +44,34 @@ do
+ ;;
+ ?)
+ usage
+ exit
+ ;;
+ esac
+ done
+
+ case $OBJECTIVE in
+ start)
+- hasdriver
+- if [ $RETURN -eq 1 ]
+- then
+- echo "starting service...."
+- startDeamon
+- else
+- echo "installing driver & start service..."
+- insdriver
+- startDeamon
+- fi
++ systemctl start 'advtty-vcom.service'
+ exit 0
+ ;;
+ restart)
+- hasdriver
+- if [ $RETURN -eq 1 ]
+- then
+- stopService
+- echo "starting service...."
+- startDeamon
+- else
+- echo "can not start service..."
+- insdriver
+- startDeamon
+- fi
++ systemctl reload 'advtty-vcom.service'
+ exit 0
+
+ ;;
+ stop)
+- echo stop
+- stopService
+- stopDeamon
++ systemctl stop 'advtty-vcom.service'
+ exit 0
+ ;;
+ insert)
+- insdriver
++ modprobe 'advvcom'
+ exit 0
+ ;;
+ remove)
+- stopService
+- stopDeamon
+- rmdriver
++ systemctl stop 'advtty-vcom.service'
+ exit 0
+ ;;
+ esac
+ usage
+
+