summaryrefslogtreecommitdiff
path: root/data/templates/wwan
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2020-04-04 11:08:50 +0200
committerChristian Poessinger <christian@poessinger.com>2020-04-04 11:17:50 +0200
commit2e1562fb02e7a2b45e84c0b8d861d149bfa890d2 (patch)
tree520fdfacce938fd8e37c7e2ff0faf3027cfa3c57 /data/templates/wwan
parent943eca2844b04c737f66f76fee663d40e23c2ccd (diff)
downloadvyos-1x-2e1562fb02e7a2b45e84c0b8d861d149bfa890d2.tar.gz
vyos-1x-2e1562fb02e7a2b45e84c0b8d861d149bfa890d2.zip
wwan: T1988: move Jinja2 templates to data/templates folder
This makes the actual code which generates the configs much more human readable.
Diffstat (limited to 'data/templates/wwan')
-rw-r--r--data/templates/wwan/chat.tmpl6
-rw-r--r--data/templates/wwan/ip-pre-up.script.tmpl23
-rw-r--r--data/templates/wwan/peer.tmpl30
3 files changed, 59 insertions, 0 deletions
diff --git a/data/templates/wwan/chat.tmpl b/data/templates/wwan/chat.tmpl
new file mode 100644
index 000000000..78453bc5b
--- /dev/null
+++ b/data/templates/wwan/chat.tmpl
@@ -0,0 +1,6 @@
+ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT 'NO CARRIER' ABORT DELAYED
+'' AT
+OK ATZ
+OK 'AT+CGDCONT=1,"IP","{{ apn }}"'
+OK ATD*99#
+CONNECT ''
diff --git a/data/templates/wwan/ip-pre-up.script.tmpl b/data/templates/wwan/ip-pre-up.script.tmpl
new file mode 100644
index 000000000..f20c75ea3
--- /dev/null
+++ b/data/templates/wwan/ip-pre-up.script.tmpl
@@ -0,0 +1,23 @@
+#!/bin/sh
+# As WWAN is an "on demand" interface we need to re-configure it when it
+# becomes 'up'
+
+ipparam=$6
+
+# device name and metric are received using ipparam
+device=`echo "$ipparam"|awk '{ print $1 }'`
+
+if [ "$device" != "{{ intf }}" ]; then
+ exit
+fi
+
+# add some info to syslog
+DIALER_PID=$(cat /var/run/{{ intf }}.pid)
+logger -t pppd[$DIALER_PID] "executing $0"
+
+echo "{{ description }}" > /sys/class/net/{{ intf }}/ifalias
+
+{% if vrf -%}
+logger -t pppd[$DIALER_PID] "configuring interface {{ intf }} for VRF {{ vrf }}"
+ip link set dev {{ intf }} master {{ vrf }}
+{% endif %}
diff --git a/data/templates/wwan/peer.tmpl b/data/templates/wwan/peer.tmpl
new file mode 100644
index 000000000..7de1c8764
--- /dev/null
+++ b/data/templates/wwan/peer.tmpl
@@ -0,0 +1,30 @@
+### Autogenerated by interfaces-wirelessmodem.py ###
+
+{% if description %}
+# {{ description }}
+{% endif %}
+ifname {{ intf }}
+ipparam "{{ intf }} {{ metric }}"
+linkname {{ intf }}
+{% if name_server -%}
+usepeerdns
+{%- endif %}
+# physical device
+/dev/{{ device }}
+lcp-echo-failure 0
+115200
+debug
+logfile {{ logfile }}
+nodefaultroute
+ipcp-max-failure 4
+ipcp-accept-local
+ipcp-accept-remote
+noauth
+crtscts
+lock
+persist
+{% if on_demand -%}
+demand
+{%- endif %}
+
+connect '/usr/sbin/chat -v -t6 -f {{ chat_script }}'