mirror of https://github.com/hak5/openwrt-owl.git
parent
42fed3f441
commit
bfbd6b9ffa
|
@ -1,16 +1,18 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
[ $# = 0 ] && { echo " $0 <group>"; exit; }
|
||||||
. /etc/functions.sh
|
. /etc/functions.sh
|
||||||
IF_NAME=$1
|
type=$1
|
||||||
|
|
||||||
PROTO=$(nvram get ${IF_NAME}_proto)
|
[ "$(nvram get ${type}_proto)" = "pppoe" ] || {
|
||||||
[ "$PROTO" = "pppoe" ] || exit 0
|
echo "$0: ${type}_proto isn't pppoe"
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
for module in slhc ppp_generic pppox pppoe; do
|
for module in slhc ppp_generic pppox pppoe; do
|
||||||
/sbin/insmod $module 2>/dev/null >/dev/null
|
/sbin/insmod $module 2>&- >&-
|
||||||
done
|
done
|
||||||
|
|
||||||
(
|
while :; do
|
||||||
while true; do
|
|
||||||
IFNAME=$(nvram get pppoe_ifname)
|
IFNAME=$(nvram get pppoe_ifname)
|
||||||
USERNAME=$(nvram get ppp_username)
|
USERNAME=$(nvram get ppp_username)
|
||||||
PASSWORD=$(nvram get ppp_passwd)
|
PASSWORD=$(nvram get ppp_passwd)
|
||||||
|
@ -18,12 +20,20 @@ done
|
||||||
REDIAL=${REDIAL:+lcp-echo-interval $REDIAL}
|
REDIAL=${REDIAL:+lcp-echo-interval $REDIAL}
|
||||||
IDLETIME=$(nvram get ppp_idletime)
|
IDLETIME=$(nvram get ppp_idletime)
|
||||||
IDLETIME=${IDLETIME:+lcp-echo-failure $IDLETIME}
|
IDLETIME=${IDLETIME:+lcp-echo-failure $IDLETIME}
|
||||||
MTUV=$(nvram get ppp_mtu)
|
MTU=$(nvram get ppp_mtu)
|
||||||
MTU=${MTUV:+mtu $MTUV}
|
MTU=${MTU:+ mtu $MTU mru $MTU}
|
||||||
MRU=${MTUV:+mru $MTUV}
|
|
||||||
|
|
||||||
ifconfig $IFNAME up
|
ifconfig $IFNAME up
|
||||||
echo -e "plugin rp-pppoe.so\nconnect /bin/true\nusepeerdns\ndefaultroute\nuser \"$USERNAME\"\npassword \"$PASSWORD\"\n$MTU\n$MRU\n$IDLETIME\n$REDIAL" > /tmp/.pppoe-data
|
/usr/sbin/pppd nodetach \
|
||||||
/usr/sbin/pppd nodetach file /tmp/.pppoe-data $IFNAME
|
plugin rp-pppoe.so \
|
||||||
done
|
connect /bin/true \
|
||||||
) &
|
usepeerdns \
|
||||||
|
defaultroute \
|
||||||
|
linkname $type \
|
||||||
|
user "$USERNAME" \
|
||||||
|
password "$PASSWORD" \
|
||||||
|
$MTU \
|
||||||
|
$IDLETIME \
|
||||||
|
$REDIAL \
|
||||||
|
$IFNAME
|
||||||
|
done &
|
||||||
|
|
|
@ -1,8 +1,9 @@
|
||||||
#!/bin/ash
|
#!/bin/ash
|
||||||
|
[ $# = 0 ] && { echo " $0 <group>"; exit; }
|
||||||
. /etc/functions.sh
|
. /etc/functions.sh
|
||||||
type=$1
|
type=$1
|
||||||
debug "### ifdown $type ###"
|
debug "### ifdown $type ###"
|
||||||
if=$(nvram get ${type}_ifname)
|
if=$(nvram get ${type}_ifname)
|
||||||
if_valid $if || return
|
if_valid $if || exit
|
||||||
kill $(cat /var/run/${if}.pid 2>&-) 2>&-
|
$DEBUG ifconfig $if down
|
||||||
$DEBUG ifconfig $if down
|
kill $(cat /var/run/${if}.pid 2>&-) 2>&-
|
||||||
|
|
|
@ -1,34 +1,33 @@
|
||||||
#!/bin/ash
|
#!/bin/ash
|
||||||
|
[ $# = 0 ] && { echo " $0 <group>"; exit; }
|
||||||
. /etc/functions.sh
|
. /etc/functions.sh
|
||||||
type=$1
|
type=$1
|
||||||
debug "### ifup $type ###"
|
debug "### ifup $type ###"
|
||||||
|
|
||||||
if=$(nvram get ${type}_ifname)
|
if=$(nvram get ${type}_ifname)
|
||||||
if [ "${if%%[0-9]}" = "ppp" ]; then
|
[ "${if%%[0-9]}" = "ppp" ] && if=$(nvram get pppoe_ifname)
|
||||||
if=$(nvram get pppoe_ifname)
|
|
||||||
fi
|
|
||||||
|
|
||||||
if_valid $if || return
|
|
||||||
|
|
||||||
|
if_valid $if || exit
|
||||||
mac=$(nvram get ${type}_hwaddr)
|
mac=$(nvram get ${type}_hwaddr)
|
||||||
$DEBUG ifconfig $if down 2>&-
|
$DEBUG ifconfig $if down 2>&-
|
||||||
|
|
||||||
if [ "${if%%[0-9]}" = "br" ]; then
|
if [ "${if%%[0-9]}" = "br" ]; then
|
||||||
stp=$(nvram get ${type}_stp)
|
stp=$(nvram get ${type}_stp)
|
||||||
$DEBUG brctl delbr $if 2>&-
|
$DEBUG brctl delbr $if 2>&-
|
||||||
$DEBUG brctl addbr $if
|
$DEBUG brctl addbr $if
|
||||||
$DEBUG brctl setfd $if 0
|
$DEBUG brctl setfd $if 0
|
||||||
$DEBUG brctl stp $if ${stp:-0}
|
$DEBUG brctl stp $if ${stp:-0}
|
||||||
for sif in $(nvram get ${type}_ifnames); do {
|
|
||||||
|
for sif in $(nvram get ${type}_ifnames); do
|
||||||
if_valid $sif || continue
|
if_valid $sif || continue
|
||||||
${mac:+$DEBUG ifconfig $sif down hw ether $mac}
|
${mac:+$DEBUG ifconfig $sif down hw ether $mac}
|
||||||
$DEBUG ifconfig $sif 0.0.0.0 up
|
$DEBUG ifconfig $sif 0.0.0.0 up
|
||||||
$DEBUG brctl addif $if $sif
|
$DEBUG brctl addif $if $sif
|
||||||
} done
|
done
|
||||||
else
|
else
|
||||||
${mac:+$DEBUG ifconfig $if down hw ether $mac}
|
${mac:+$DEBUG ifconfig $if down hw ether $mac}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if_proto=$(nvram get ${type}_proto)
|
if_proto=$(nvram get ${type}_proto)
|
||||||
case "$if_proto" in
|
case "$if_proto" in
|
||||||
static)
|
static)
|
||||||
|
@ -42,16 +41,13 @@ case "$if_proto" in
|
||||||
[ -f /etc/resolv.conf ] && return
|
[ -f /etc/resolv.conf ] && return
|
||||||
|
|
||||||
debug "# --- creating /etc/resolv.conf ---"
|
debug "# --- creating /etc/resolv.conf ---"
|
||||||
for dns in $(nvram get ${type}_dns); do {
|
for dns in $(nvram get ${type}_dns); do
|
||||||
echo "nameserver $dns" >> /etc/resolv.conf
|
echo "nameserver $dns" >> /etc/resolv.conf
|
||||||
} done
|
done
|
||||||
;;
|
;;
|
||||||
dhcp)
|
dhcp)
|
||||||
ip=$(nvram get ${type}_ipaddr)
|
ip=$(nvram get ${type}_ipaddr)
|
||||||
pidfile=/tmp/dhcp-${type}.pid
|
[ -f $pidfile ] && $DEBUG kill $(cat $pidfile)
|
||||||
if [ -f $pidfile ]; then
|
|
||||||
$DEBUG kill $(cat $pidfile)
|
|
||||||
fi
|
|
||||||
${DEBUG:-eval} "udhcpc -R -i $if ${ip:+-r $ip} -b -p $pidfile &"
|
${DEBUG:-eval} "udhcpc -R -i $if ${ip:+-r $ip} -b -p $pidfile &"
|
||||||
;;
|
;;
|
||||||
none|"")
|
none|"")
|
||||||
|
|
Loading…
Reference in New Issue