aboutsummaryrefslogtreecommitdiffstats
path: root/mageia/network-scripts
diff options
context:
space:
mode:
Diffstat (limited to 'mageia/network-scripts')
-rw-r--r--mageia/network-scripts/cellular.d/.keep0
-rw-r--r--mageia/network-scripts/hostname.d/.keep0
-rwxr-xr-xmageia/network-scripts/ifdown-hso57
-rwxr-xr-xmageia/network-scripts/ifup-hso78
-rwxr-xr-xmageia/network-scripts/ifup.d/vpn/vpn-ifdown8
-rwxr-xr-xmageia/network-scripts/ifup.d/vpn/vpn-ifup8
-rw-r--r--mageia/network-scripts/wireless.d/.keep0
7 files changed, 151 insertions, 0 deletions
diff --git a/mageia/network-scripts/cellular.d/.keep b/mageia/network-scripts/cellular.d/.keep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mageia/network-scripts/cellular.d/.keep
diff --git a/mageia/network-scripts/hostname.d/.keep b/mageia/network-scripts/hostname.d/.keep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mageia/network-scripts/hostname.d/.keep
diff --git a/mageia/network-scripts/ifdown-hso b/mageia/network-scripts/ifdown-hso
new file mode 100755
index 00000000..0cedb00e
--- /dev/null
+++ b/mageia/network-scripts/ifdown-hso
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+. /etc/init.d/functions
+
+cd /etc/sysconfig/network-scripts
+. ./network-functions
+
+CONFIG=${1}
+
+source_config
+
+[ -z "$CELLULAR_CID" ] && CELLULAR_CID=1
+[ "${DEBUG}" = "yes" ] && CHATDBG="-v"
+
+CHATSCRIPT=`mktemp /tmp/chatXXXXXX`
+cat > $CHATSCRIPT <<EOF
+ABORT ERROR
+TIMEOUT 5
+"" ATZ
+OK "AT_OWANCALL=${CELLULAR_CID},0,0"
+OK ""
+EOF
+
+if ! /usr/sbin/chat ${CHATDBG} -s -f ${CHATSCRIPT} < $MODEMPORT > $MODEMPORT; then
+ echo $"Disconnect script failed (HSO)"
+fi
+
+# ask status (it also waits for device state to be cleaner)
+# do not fail if status querying fail
+cat > $CHATSCRIPT <<EOF
+ABORT ERROR
+TIMEOUT 2
+"" ATZ
+OK "AT_OWANDATA=${CELLULAR_CID}"
+EOF
+/usr/sbin/chat ${CHATDBG} -s -f ${CHATSCRIPT} < $MODEMPORT > $MODEMPORT
+
+rm -f $CHATSCRIPT
+
+ip addr flush dev ${DEVICE} 2>/dev/null
+ip link set dev ${DEVICE} down 2>/dev/null
+retcode=$?
+
+# wait up to 5 seconds for device to actually come down...
+waited=0
+while ! check_device_down ${DEVICE} && [ "$waited" -lt 50 ] ; do
+ usleep 10000
+ waited=$(($waited+1))
+done
+
+if [ "$retcode" = 0 ] ; then
+ /etc/sysconfig/network-scripts/ifdown-post $CONFIG
+ # do NOT use $? because ifdown should return whether or not
+ # the interface went down.
+fi
+
+exit $retcode
diff --git a/mageia/network-scripts/ifup-hso b/mageia/network-scripts/ifup-hso
new file mode 100755
index 00000000..859e5bf9
--- /dev/null
+++ b/mageia/network-scripts/ifup-hso
@@ -0,0 +1,78 @@
+#! /bin/bash
+
+. /etc/init.d/functions
+
+cd /etc/sysconfig/network-scripts
+. ./network-functions
+
+CONFIG=$1
+[ -f "${CONFIG}" ] || CONFIG=ifcfg-${1}
+source_config
+
+if [ "${2}" = "boot" -a "${ONBOOT}" = "no" ]; then
+ exit
+fi
+
+[ -z "$CELLULAR_CID" ] && CELLULAR_CID=1
+[ "${DEBUG}" = "yes" ] && CHATDBG="-v"
+
+CHATSCRIPT=/etc/sysconfig/network-scripts/chat-${DEVNAME}
+[ -f ${CHATSCRIPT} ] || {
+ CHATSCRIPT=/etc/sysconfig/network-scripts/chat-${PARENTDEVNAME}
+}
+[ -f ${CHATSCRIPT} ] || {
+ echo $"/etc/sysconfig/network-scripts/chat-${DEVNAME} does not exist"
+ echo $"ifup-hso for ${DEVNAME} exiting"
+ logger -p daemon.info -t ifup-hso \
+ $"/etc/sysconfig/network-scripts/chat-${DEVNAME} does not exist for ${DEVICE}"
+ exit 1
+}
+
+CELLULAR_PIN=$(cat pin-${DEVICE} 2>/dev/null)
+if [ -n "$CELLULAR_PIN" -a -x /usr/sbin/comgt ]; then
+ COMGTPIN=$CELLULAR_PIN comgt PIN -d $MODEMPORT
+fi
+
+if ! /usr/sbin/chat ${CHATDBG} -s -f ${CHATSCRIPT} < $MODEMPORT > $MODEMPORT; then
+ echo $"Connect script failed"
+ exit 1
+fi
+
+CHATSCRIPT=`mktemp /tmp/chatXXXXXX`
+CHATRESULT=`mktemp /tmp/chatXXXXXX`
+cat > $CHATSCRIPT <<EOF
+ABORT ERROR
+TIMEOUT 10
+"" ATZ
+OK "AT_OWANCALL=${CELLULAR_CID},1,0"
+OK "AT_OWANDATA=${CELLULAR_CID}"
+OK ""
+EOF
+TRIES=10
+BOOTARG=$2
+
+while [ "$TRIES" -gt 0 ]; do
+ if /usr/sbin/chat ${CHATDBG} -s -V -f ${CHATSCRIPT} < $MODEMPORT > $MODEMPORT 2> ${CHATRESULT}; then
+ DATA=$(grep ^_OWANDATA $CHATRESULT)
+ if [ -n "$DATA" ]; then
+ set $(echo $DATA | cut -d ',' -f 2,4,5 --output-delimiter ' ')
+ IPADDR=$1
+ DNS1=$2
+ DNS2=$3
+ break
+ fi
+ fi
+ sleep 2
+ let TRIES=$TRIES-1
+done
+rm -f $CHATSCRIPT $CHATRESULT
+
+if [ "$TRIES" = 0 ]; then
+ echo $"Connect script failed (HSO)"
+ exit 1
+fi
+
+ifconfig $DEVICE $IPADDR up
+route add default dev $DEVICE ${METRIC:+metric $METRIC}
+export DNS1 DNS2
+exec /etc/sysconfig/network-scripts/ifup-post ${CONFIG} $BOOTARG
diff --git a/mageia/network-scripts/ifup.d/vpn/vpn-ifdown b/mageia/network-scripts/ifup.d/vpn/vpn-ifdown
new file mode 100755
index 00000000..466e54fd
--- /dev/null
+++ b/mageia/network-scripts/ifup.d/vpn/vpn-ifdown
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+if [ -r /etc/sysconfig/network-scripts/ifcfg-$1 ]; then
+ . /etc/sysconfig/network-scripts/ifcfg-$1
+ if [ -n "$VPN_TYPE" ] && [ -n "$VPN_NAME" ]; then
+ /usr/sbin/vpn-stop $VPN_TYPE $VPN_NAME
+ fi
+fi
diff --git a/mageia/network-scripts/ifup.d/vpn/vpn-ifup b/mageia/network-scripts/ifup.d/vpn/vpn-ifup
new file mode 100755
index 00000000..4425d154
--- /dev/null
+++ b/mageia/network-scripts/ifup.d/vpn/vpn-ifup
@@ -0,0 +1,8 @@
+#!/bin/sh
+
+if [ -r /etc/sysconfig/network-scripts/ifcfg-$1 ]; then
+ . /etc/sysconfig/network-scripts/ifcfg-$1
+ if [ -n "$VPN_TYPE" ] && [ -n "$VPN_NAME" ]; then
+ /usr/sbin/vpn-start $VPN_TYPE "$VPN_NAME"
+ fi
+fi
diff --git a/mageia/network-scripts/wireless.d/.keep b/mageia/network-scripts/wireless.d/.keep
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/mageia/network-scripts/wireless.d/.keep